Umesto da svaku radnju ručno obrađuje neka osoba ili kompanija, određena pravila mogu biti zapisana u kodu i izvršena prema pravilima blockchain sistema.
Naziv ipak može da zavara. „Pametan“ ne znači da program samostalno razmišlja ili procenjuje posledice svojih odluka. Rezultat njegovog izvršenja proizlazi iz programskog koda, ulaznih podataka i trenutnog stanja sistema.
01 — Kako pametni ugovor postaje deo blockchain sistema?
Pametni ugovor nastaje kao programski kod. Programer ili razvojni tim definiše njegove funkcije, uslove, dozvole i način na koji određene radnje mogu promeniti stanje sistema.
Nakon razvoja i testiranja, kod se postavlja na blockchain mrežu. Na mrežama poput Ethereuma ugovor dobija adresu preko koje mu korisnici, aplikacije i drugi pametni ugovori mogu pristupiti.
Postavljanje ugovora na mrežu ne znači da on počinje samostalno da donosi odluke ili izvršava radnje. Njegove funkcije moraju biti pozvane na način koji konkretna mreža i ugovor dozvoljavaju.
Korisnik pritom najčešće ne komunicira direktno sa kodom. Interakciju obično pokreće kroz aplikaciju i novčanik, dok blockchain mreža obezbeđuje infrastrukturu na kojoj se programska logika izvršava.
02 — Kako pametni ugovor funkcioniše kada ga koristimo?
Pametni ugovor ne pokreće svaku radnju sam od sebe. Izvršenje počinje kada mreža primi odgovarajući zahtev, a zatim primenjuje programsku logiku ugovora prema pravilima sistema.
Pojednostavljeno, interakciju možemo pratiti kroz pet koraka:
ZAHTEV
Korisnik kroz aplikaciju bira radnju koju želi da izvrši.
ODOBRENJE
Novčanik prikazuje zahtev, a korisnik potpisom odobrava odgovarajuću transakciju.
POZIV UGOVORA
Transakcija poziva određenu funkciju pametnog ugovora i prosleđuje potrebne podatke.
IZVRŠENJE
Mreža izvršava programsku logiku ugovora prema njegovom kodu i pravilima sistema.
NOVO STANJE
Ako je izvršenje prihvaćeno, rezultat postaje deo novog stanja blockchain sistema.
Transakcija koja menja stanje kroz pametni ugovor koristi resurse mreže i zahteva mrežnu naknadu.
Pametni ugovor ne bira rezultat — rezultat proizlazi iz koda, ulaznih podataka i trenutnog stanja sistema.
03 — Šta pametni ugovori omogućavaju?
Prenos coina nije jedina radnja koju blockchain sistem može da podrži. Na programabilnim mrežama pametni ugovori omogućavaju da se u kod zapišu složenija pravila koja određuju kako korisnici, aplikacije i kriptovalute mogu međusobno da deluju.
Zbog toga isti osnovni koncept pametnog ugovora može imati veoma različite primene. Pametni ugovori mogu definisati pravila kreiranja i prenosa tokena, omogućavati zamene na decentralizovanim berzama i druge funkcije finansijskih protokola, učestvovati u funkcionisanju određenih stablecoina, evidentirati digitalno vlasništvo poput NFT-jeva ili koordinisati glasanje i upravljanje protokolom.
Ono što povezuje ove primene nije njihova namena, već činjenica da se određena pravila izvršavaju kroz programsku logiku postavljenu na blockchain mrežu.
Pametni ugovor zato možemo posmatrati kao jedan od osnovnih gradivnih elemenata blockchain aplikacija: aplikacija korisniku daje interfejs, dok jedan ili više pametnih ugovora mogu definisati pravila po kojima se određene radnje izvršavaju.
04 — Šta naziv „pametan ugovor“ ne znači?
NE RAZMIŠLJA SAMOSTALNO
Pametni ugovor ne razume nameru korisnika niti procenjuje posledice. Izvršava programsku logiku na osnovu podataka koje dobije.
NIJE NUŽNO PRAVNI UGOVOR
Naziv opisuje programski mehanizam. Da li određeni odnos predstavlja pravno obavezujući ugovor zavisi od njegovog sadržaja i primenljivih propisa.
AUTOMATSKO NE ZNAČI NEPOGREŠIVO
Automatsko izvršenje smanjuje potrebu za ručnom obradom, ali ne potvrđuje da su pravila bezbedna, pravedna ili ispravno dizajnirana.
05 — Gde nastaje rizik pametnog ugovora?
Blockchain mreža može pravilno izvršiti programski kod, a da rezultat ipak nije ono što je korisnik očekivao. Zbog toga sigurnost pametnog ugovora ne zavisi samo od mreže na kojoj se nalazi.
Pri proceni sistema korisno je proveriti nekoliko različitih izvora rizika:
GREŠKE U KODU
Da li programska logika radi ono što je predviđeno?
Propust u kodu može dovesti do neočekivanog ponašanja ili gubitka imovine.
ADMINISTRATORSKE PRIVILEGIJE
Ko ima posebne dozvole nad sistemom?
Određene adrese mogu imati mogućnost da menjaju parametre, pauziraju funkcije ili upravljaju delovima sistema.
NADOGRADIVOST
Može li se logika sistema naknadno promeniti?
Neki ugovori omogućavaju nadogradnju, pa je važno razumeti ko može da je odobri i pod kojim uslovima.
SPOLJNI PODACI
Da li rezultat zavisi od informacije izvan blockchaina?
Ako ugovor koristi spoljne podatke, njegovo izvršenje zavisi i od načina na koji ti podaci dospevaju u sistem.
INTERAKCIJA KORISNIKA
Šta korisnik zapravo odobrava svojim potpisom?
Ispravan kod ne sprečava korisnika da potpiše neželjenu ili pogrešno pripremljenu transakciju.
Pametni ugovor ne uklanja poverenje — menja ono što moramo da proverimo.
Želite da razumete više od osnovnih pojmova?
Knjiga Kripto Revolucija vodi vas od osnova kriptovaluta i blockchain tehnologije ka boljem razumevanju tržišta, rizika i investicionih odluka.
Istražite knjigu →