Ievads

Niks Szabo pirmo reizi aprakstīja viedos līgumus deviņdesmitajos gados. Toreiz viņš viedo līgumu definēja kā rīku, kas formalizē un nodrošina datortīklus, apvienojot protokolus ar lietotāja saskarnēm.

Szabo apsprieda viedo līgumu iespējamo izmantošanu dažādās jomās, kas ietver līgumiskus līgumus, piemēram, kredītsistēmas, maksājumu apstrādi un satura tiesību pārvaldību.

Kriptovalūtu pasaulē mēs varam definēt viedo līgumu kā lietojumprogrammu vai programmu, kas darbojas blokķēdē. Parasti tie darbojas kā digitāls līgums, ko nodrošina īpašs noteikumu kopums. Šos noteikumus iepriekš nosaka datora kods, ko replicē un izpilda visi tīkla mezgli.

Blockchain viedie līgumi ļauj izveidot neuzticamus protokolus. Tas nozīmē, ka divas puses var uzņemties saistības, izmantojot blokķēdi, vienai otrai nepazīstot vai neuzticoties. Viņi var būt pārliecināti, ka, ja nosacījumi netiks izpildīti, līgums netiks izpildīts. Izņemot to, viedo līgumu izmantošana var novērst vajadzību pēc starpniekiem, ievērojami samazinot darbības izmaksas.

Lai gan Bitcoin protokols jau daudzus gadus ir atbalstījis viedos līgumus, tos populārus padarīja Ethereum radītājs un līdzdibinātājs Vitaliks Buterins. Tomēr ir vērts atzīmēt, ka katra blokķēde var piedāvāt atšķirīgu viedo līgumu ieviešanas metodi.

Šajā rakstā galvenā uzmanība tiks pievērsta viedajiem līgumiem, kas darbojas Ethereum virtuālajā mašīnā (EVM), kas ir būtiska Ethereum blokķēdes sastāvdaļa.


Kā viņi strādā?

Vienkārši izsakoties, viedais līgums darbojas kā deterministiska programma. Tas izpilda noteiktu uzdevumu, kad un ja ir izpildīti noteikti nosacījumi. Kā tāda viedā līgumu sistēma bieži seko paziņojumiem “ja… tad…”. Taču, neskatoties uz populāro terminoloģiju, viedie līgumi nav ne likumīgi, ne viedi līgumi. Tie ir tikai koda fragments, kas darbojas izplatītajā sistēmā (blokķēdē).

Ethereum tīklā viedie līgumi ir atbildīgi par blokķēdes darbību izpildi un pārvaldību, kas notiek, kad lietotāji (adreses) mijiedarbojas viens ar otru. Jebkura adrese, kas nav viedlīgums, tiek saukta par ārēji piederošu kontu (EOA). Tādējādi viedos līgumus kontrolē datora kods, un EOA kontrolē lietotāji.

Būtībā Ethereum viedie līgumi sastāv no līguma koda un divām publiskajām atslēgām. Pirmā publiskā atslēga ir tā, ko nodrošina līguma veidotājs. Otra atslēga apzīmē pašu līgumu, kas darbojas kā digitālais identifikators, kas ir unikāls katram viedajam līgumam.

Jebkura vieda līguma izvietošana tiek veikta, izmantojot blokķēdes darījumu, un tos var aktivizēt tikai tad, kad to izsauc EOA (vai citi viedie līgumi). Tomēr pirmo trigeri vienmēr izraisa EOA (lietotājs).


Galvenās iezīmes

Ethereum viedajam līgumam bieži ir šādas īpašības:

Izplatīts. Viedie līgumi tiek replicēti un izplatīti visos Ethereum tīkla mezglos. Šī ir viena no galvenajām atšķirībām no citiem risinājumiem, kuru pamatā ir centralizēti serveri.

Deterministisks. Viedie līgumi veic tikai tās darbības, kurām tie bija paredzēti, ja tiek izpildītas prasības. Turklāt rezultāts vienmēr būs vienāds neatkarīgi no tā, kurš tos izpilda.

Autonoms. Viedie līgumi var automatizēt visu veidu uzdevumus, darbojoties kā pašizpildoša programma. Tomēr vairumā gadījumu, ja viedais līgums netiek aktivizēts, tas paliks neaktīvs un neveiks nekādas darbības.

Nemainīgs. Viedos līgumus pēc izvietošanas nevar mainīt. Tos var "dzēst" tikai tad, ja iepriekš tika ieviesta noteikta funkcija. Tādējādi mēs varam teikt, ka viedie līgumi var nodrošināt pret viltojumiem drošu kodu.

Pielāgojams. Pirms izvietošanas viedos līgumus var kodēt dažādos veidos. Tātad tos var izmantot, lai izveidotu dažāda veida decentralizētas lietojumprogrammas (DApps). Tas ir saistīts ar faktu, ka Ethereum ir Tjūringa pilnīga blokķēde.

Neuzticams. Divas vai vairākas puses var mijiedarboties, izmantojot viedos līgumus, nepazīstot viena otru vai neuzticoties viena otrai. Turklāt blokķēdes tehnoloģija nodrošina datu precizitāti.

Caurspīdīgs. Tā kā viedie līgumi ir balstīti uz publisku blokķēdi, to pirmkods ir ne tikai nemainīgs, bet arī redzams ikvienam.


Vai es varu mainīt vai dzēst viedo līgumu?

Pēc izvietošanas Ethereum viedajam līgumam nav iespējams pievienot jaunas funkcijas. Tomēr, ja tā veidotājs kodā iekļauj funkciju ar nosaukumu SELFDESTRUCT, viņi turpmāk varēs "dzēst" viedo līgumu un aizstāt to ar jaunu. Savukārt, ja funkcija iepriekš nav iekļauta kodā, viņi to nevarēs dzēst.

Proti, tā sauktie jaunināmie viedie līgumi ļauj izstrādātājiem nodrošināt lielāku elastību attiecībā uz līgumu nemainīgumu. Ir daudz veidu, kā izveidot atjaunināmus viedos līgumus ar dažādu sarežģītības pakāpi.

Ņemot vienkāršotu piemēru, iedomāsimies, ka viedais līgums ir sadalīts vairākos mazākos līgumos. Daži no tiem ir veidoti tā, lai tie būtu nemainīgi, savukārt citiem ir iespējota dzēšanas funkcija. Tas nozīmē, ka daļu koda (viedos līgumus) var dzēst un aizstāt, bet citas funkcijas paliek neskartas.


Priekšrocības un lietošanas gadījumi

Kā programmējams kods viedie līgumi ir ļoti pielāgojami, un tos var izstrādāt dažādos veidos, piedāvājot dažādus pakalpojumus un risinājumus.

Tā kā viedie līgumi ir decentralizētas un pašizpildošas programmas, tie var nodrošināt lielāku pārredzamību un samazināt darbības izmaksas. Atkarībā no ieviešanas tie var arī palielināt efektivitāti un samazināt birokrātiskos izdevumus.

Viedie līgumi ir īpaši noderīgi situācijās, kas ietver līdzekļu pārskaitījumu vai apmaiņu starp divām vai vairākām pusēm.

Citiem vārdiem sakot, viedos līgumus var izstrādāt dažādiem lietošanas gadījumiem. Daži piemēri ietver marķierizētu līdzekļu, balsošanas sistēmu, kriptovalūtu maku, decentralizētu biržu, spēļu un mobilo lietojumprogrammu izveidi. Tos var arī izvietot kopā ar citiem blokķēdes risinājumiem, kas risina veselības aprūpes, labdarības, piegādes ķēdes, pārvaldības un decentralizētās finansēšanas (DeFi) jomas.


ERC-20

Ethereum blokķēdē izdotie marķieri atbilst standartam, kas pazīstams kā ERC-20. Standarts apraksta visu uz Ethereum balstīto marķieru pamatfunkcijas. Kā tādi šie digitālie aktīvi bieži tiek saukti par ERC-20 marķieriem, un tie veido lielu daļu no esošajām kriptovalūtām.

Daudzi blokķēdes uzņēmumi un jaunuzņēmumi izvietoja viedos līgumus, lai Ethereum tīklā izdotu savus digitālos marķierus. Pēc emisijas lielākā daļa šo uzņēmumu izplatīja savus ERC-20 žetonus, izmantojot sākotnējās monētu piedāvāšanas (ICO) pasākumus. Vairumā gadījumu viedo līgumu izmantošana ļāva neuzticamā un efektīvā veidā apmainīties ar līdzekļiem un izplatīt marķierus.


Ierobežojumi

Viedie līgumi ir izgatavoti no datora koda, ko uzrakstījuši cilvēki. Tas rada daudzus riskus, jo kods ir pakļauts ievainojamībām un kļūdām. Ideālā gadījumā tos vajadzētu rakstīt un izvietot pieredzējušiem programmētājiem, jo ​​īpaši, ja tie ietver sensitīvu informāciju vai lielas naudas summas.

Izņemot to, daži apgalvo, ka centralizētās sistēmas var nodrošināt lielāko daļu viedo līgumu piedāvāto risinājumu un funkcionalitātes. Galvenā atšķirība ir tā, ka viedie līgumi darbojas sadalītā P2P tīklā, nevis centralizētā serverī. Un, tā kā tie ir balstīti uz blokķēdes sistēmu, tie mēdz būt nemainīgi vai ļoti grūti maināmi.

Būt nemainīgam dažās situācijās var būt lieliski, bet citās – ļoti slikti. Piemēram, kad 2016. gadā tika uzlauzta decentralizētā autonomā organizācija (DAO), ko sauc par DAO, viņu viedā līguma koda nepilnību dēļ tika nozagti miljoniem ētera (ETH).

Tā kā viņu viedais līgums bija negrozāms, izstrādātāji nevarēja labot kodu. Tas galu galā noveda pie cietas dakšas, kas radīja otru Ethereum ķēdi. Vienkārši sakot, viena ķēde "atgrieza" uzlaušanu un atdeva līdzekļus likumīgajiem īpašniekiem (tā ir daļa no pašreizējās Ethereum blokķēdes). Otra ķēde nolēma neiejaukties uzlaušanā, norādot, ka lietas, kas notiek blokķēdē, nekad nedrīkst mainīt (šo ķēdi tagad sauc par Ethereum Classic).

Ir svarīgi atzīmēt, ka problēma nav radusies no Ethereum blokķēdes. Tā vietā to izraisīja kļūdaina viedā līguma ieviešana.

Vēl viens viedo līgumu ierobežojums ir saistīts ar to nenoteikto juridisko statusu. Ne tikai tāpēc, ka lielākajā daļā valstu tas atrodas pelēkajā zonā, bet arī tāpēc, ka viedie līgumi neatbilst pašreizējam tiesiskajam regulējumam.

Piemēram, daudzos līgumos ir noteikts, ka abām pusēm jābūt pareizi identificētām un jābūt vecākām par 18 gadiem. Pseidonimitāte, ko nodrošina blokķēdes tehnoloģija, apvienojumā ar starpnieku trūkumu var apdraudēt šīs prasības. Lai gan šim jautājumam ir iespējami risinājumi, viedo līgumu juridiskā izpilde ir īsts izaicinājums, jo īpaši, ja runa ir par bezrobežu, izplatītiem tīkliem.


Kritika

Daži blokķēdes entuziasti viedos līgumus uzskata par risinājumu, kas drīzumā aizstās un automatizēs lielu daļu no mūsu komerciālajām un birokrātiskajām sistēmām. Lai gan tā ir iespējama realitāte, tā, iespējams, ir tālu no tā, lai kļūtu par normu.

Viedie līgumi noteikti ir interesanta tehnoloģija. Taču, ja tie ir izplatīti, deterministiski, caurspīdīgi un zināmā mērā nemainīgi, dažās situācijās tie var kļūt mazāk pievilcīgi.

Būtībā kritika balstās uz faktu, ka viedie līgumi nav piemērots risinājums daudzām reālās pasaules problēmām. Patiesībā dažām organizācijām labāk ir izmantot parastās serveru alternatīvas.

Salīdzinot ar viedajiem līgumiem, centralizētos serverus ir vieglāk un lētāk uzturēt, un tiem ir tendence nodrošināt lielāku efektivitāti ātruma un starptīklu komunikācijas (sadarbspējas) ziņā.


Noslēguma domas

Nav šaubu, ka viedie līgumi radīja lielu ietekmi kriptovalūtu pasaulē, un tie noteikti radīja revolūciju blokķēdes telpā. Lai gan galalietotāji nevar tieši mijiedarboties ar viedajiem līgumiem, tie, visticamāk, nākotnē nodrošinās plašu lietojumprogrammu klāstu, sākot no finanšu pakalpojumiem līdz piegādes ķēdes pārvaldībai.

Kopā viedie līgumi un blokķēde var izjaukt gandrīz visas mūsu sabiedrības jomas. Taču tikai laiks rādīs, vai šīm revolucionārajām tehnoloģijām izdosies pārvarēt daudzos šķēršļus liela mēroga ieviešanai.