Ett smart kontrakt är en datoralgoritm utformad för att generera, hantera och ge information om äganderätten till något. Oftast pratar vi om användningen av blockchain-teknik . I en snävare mening är ett smart kontrakt en uppsättning funktioner och data (nuvarande tillstånd) som finns på en specifik adress i blockkedjan [1] .
Det första landet som bekräftade den rättsliga kraften av smarta kontrakt på statlig nivå var Vitryssland [2] .
Konceptet och termen "Smarta kontrakt" föreslogs i början av 1990-talet av Nick Szabo . Målet var att genomföra en kommersiell verksamhet genom ett datornätverk utan medverkan av mellanhänder. Som det enklaste exemplet skrev Szabo att " en varuautomat är ett innehavarkontrakt: alla som har mynt kan delta i utbytet med säljaren", och detta sker automatiskt utan direkt deltagande av säljaren, vars roll är att ställa in maskin, lasta varor och hämtning av pengar, men säljaren är inte skyldig att kommunicera direkt med köparen. Ett smart kontrakt utför också självständigt de beskrivna åtgärderna (till exempel tillhandahåller en digital vara, skickar pengar, offentligt eller privat publicerar information) om villkoren kodade i det är uppfyllda, precis som det är implementerat i en varuautomat. Redan 1997 utvecklades ett antal algoritmer och protokoll som var lämpliga för den grundläggande implementeringen av idén [3] . Men flaskhalsen förblev betalningssystemen, som inte kunde erhållas utan mellanhandsadministratörer.
Den praktiska implementeringen av Nick Szabos idéer blev möjlig tack vare framväxten av blockchain -teknologin 2008 [4] , som gav kontrakt med fullständig autonomi och gjorde det möjligt att överge en tredjepartsadministratör som fungerade som kontrollant och skiljedomare. Redan i det första Bitcoin- protokollet, genom användningen av ett skriptprogrammeringsspråk, blev det möjligt att implementera de grundläggande funktionerna i smarta kontrakt. Men deras kapacitet var begränsad - av säkerhetsskäl hade de inte Turing-fullständighet och användes inte i stor utsträckning. Utvecklingen av protokoll på högre nivå (inklusive universella smarta kontrakt) på toppen av bitcoin-protokollet [5] började dock dyka upp , liknande hur många applikationsprotokoll som finns ovanpå TCP/IP .
Smarta kontrakt blev först utbredda med tillkomsten av Ethereum . Idén till projektet föddes 2013. I det ögonblicket kom grundaren av Bitcoin Magazine , Vitalik Buterin , till slutsatsen att blockchain-tekniken kunde användas mycket mer allmänt, inte bara i kryptovalutor . Han lade fram idén om en universell decentraliserad blockchain-plattform där vem som helst kan programmässigt implementera olika informationslagrings- och bearbetningssystem. Huvudvillkoret är att handlingar ska beskrivas som matematiska regler [6] .
Ethereums smarta kontrakt är utvecklade på ett av språken designade för att översättas till bytekoden för den virtuella Ethereum-maskinen - Solidity (liknande C eller JavaScript ), Vyper och Serpent (liknande Python ), LLL (lågnivåversion av Lisp ), Mutan (baserat på Go ) [7] [8] .
Parterna undertecknar ett smart kontrakt med metoder som liknar att underteckna en sändning av pengar i levande kryptovalutanätverk. Efter undertecknande av parterna lagras kontraktet i blockkedjan och träder i kraft. För att säkerställa det automatiserade utförandet av kontraktsåtaganden krävs en existensmiljö (Ethereum blockchain-noder), som låter dig automatisera utförandet av kontraktsklausuler helt. Detta innebär att smarta kontrakt endast kan existera i en miljö som har obehindrad åtkomst för exekverbar kod till smarta kontraktsobjekt.
Alla villkor i kontraktet måste ha en programbeskrivning och en tydlig exekveringslogik. I detta avseende har de första smarta kontrakten till uppgift att formalisera de enklaste relationerna, bestående av ett litet antal villkor. Med obehindrad tillgång till kontraktsobjekten övervakar det smarta kontraktet uppnåendet eller överträdelsen av poäng enligt de angivna villkoren och fattar oberoende beslut baserat på de programmerade villkoren. Således är huvudprincipen för ett smart kontrakt den fullständiga automatiseringen och tillförlitligheten av utförandet av avtalsrelationer [9] .
Smarta kontrakt kan interagera med externa system genom blockchain-orakel, som kan matcha villkoren för smarta kontrakt och extern information. Oraklet skickar information till det smarta kontraktet från externa resurser i en form som är förståelig för blockkedjan [10] .
För att smarta kontrakt ska existera krävs vissa villkor:
Det första stora och lovande området för blockchain-utveckling är finansiellt. Detta inkluderar kryptovalutor, smarta kontrakt och statliga register. Nu tar det till exempel flera veckor att sälja ett hus, men det kan bara ta 3 minuter.
— Vitalik Buterin , Moskva , 30 augusti 2017 [16]Förespråkare av smarta kontrakt hävdar[ vem? ] att många av deras slag kan göras delvis eller helt självutförande och självförsörjande. Smarta kontrakt baserade på kryptografi kan ge större säkerhet än traditionella avtal baserade på lag och minska andra transaktionskostnader i samband med ingående av kontrakt och eventuella juridiska kostnader. Potentiella applikationer: sjukvård , utlåning , valsystem , media , internet of things , uthyrning , leverans , clearing , etc.
Enligt den brittiska tidskriften The Economist har smarta kontrakt potential att bli den viktigaste tillämpningen av blockkedjeteknologi [13] .
Användningen av smarta kontraktsverktyg ger impulser till framväxten av nya affärsmodeller, vilket påverkar ökad konkurrens och utvecklingen av nya tjänster på finansmarknaden [14] .
Smarta kontrakt kan få juridisk betydelse om de följer statens lagar. För att göra detta är det nödvändigt att smarta kontrakt innehåller de villkor och begränsningar som fastställts av statens lagstiftning [17] .
Vitryssland blev det första landet i världen att lagstifta smarta kontrakt den 21 december 2017 i enlighet med dekretet om utvecklingen av den digitala ekonomin [2] [18] . Utvecklaren av det juridiska konceptet för ett smart kontrakt var den vitryska advokaten Denis Aleinikov [19] [20] . Landet planerar att tillåta banker att ingå smarta kontrakt [21] [22] .
Observatörer uttrycker oro över att spridningen av automatiserad kontraktsunderhållsteknik kan leda till en försvagning av de befintliga sociala institutioner som mänskligheten har byggt upp under många generationer. Dessutom kan sådan teknik leda till att ett stort antal administrativa jobb försvinner, precis som robotisering har lett till att industrijobben försvinner [13] . Detta gäller i synnerhet notarier, bankanställda samt tjänstemän som deltar i registrering av transaktioner med fastigheter [23] .
Ett smart kontrakt har inte funktionell flexibilitet. När man använder traditionella mekanismer för att ingå ett avtal är det alltid möjligt att komma överens eller ändra dess villkor, men när man använder smarta kontrakt är det problematiskt att genomföra sådana ändringar under dess genomförande. Avsaknaden av en officiellt fastställd status för ett smart kontrakt i världens lagstiftningspraxis kan göra det svårt att lösa tvister som uppstår när villkoren för dess verkställande kränks [14] .
Processen att skapa ett smart kontrakt är komplex, och ju fler villkor och aspekter som kontraktet måste spåra (varornas skick under transport, tullåtgärder etc.), desto svårare är det att beskriva och ta hänsyn till dem på tidpunkten för ingående av ett sådant avtal [14] .
Utvecklarnas försumlighet kan leda till skadlig användning av smarta kontrakt [14] , vilket framgår av historien om läckan av över tre miljoner Ethereum-mynt från DAO- projektet [24] .
Kryptovalutor | |
---|---|
PoW baserad på SHA-2 | |
PoW baserad på Scrypt | |
PoW baserad på CryptoNote | |
Andra PoW-algoritmer | |
PoS- algoritmer | |
Andra tekniker | |
Relaterade ämnen |
|