Pametni ugovori pojavili su se kao koncept još devedesetih godina, kada je kriptograf Nick Szabo opisao ideju digitalnih ugovora koji se automatski izvršavaju ako su ispunjeni određeni uvjeti. Tada je to bio više teorijski prijedlog nego praktična tehnologija, jer nije postojala infrastruktura koja bi mogla sigurno i decentralizirano pokretati takav kod. Tek s pojavom blockchain mreža i posebno platformi poput Ethereuma, pametni ugovori su dobili stvarno okruženje u kojem mogu funkcionirati bez posrednika, cenzure i single point of failure.
Danas su pametni ugovori temelj puno šire ekonomije od pukog slanja kriptovaluta. Na njima se grade protokoli za razmjenu vrijednosti, decentralizirano kreditiranje, tokene stvarne imovine (RWA), NFT-ovi, pa čak i sustavi upravljanja decentraliziranim organizacijama (DAO). Sve to funkcionira jer se logika ugovora zapisuje kao kod na blockchainu, gdje je jednom objavljen ugovor transparentan, javno provjerljiv i teško promjenjiv.
Ključna razlika u odnosu na klasične digitalne aplikacije jest u tome što se pametni ugovori izvršavaju na decentraliziranoj mreži čvorova, a ne na serverima u vlasništvu pojedine tvrtke. Time se uklanja potreba za povjerenjem u centralnu stranu i zamjenjuje je povjerenjem u protokol i konsenzusni mehanizam same mreže. U praksi to znači da će se ugovor izvršiti točno onako kako je napisan – čak i ako se stranke “predomisle” ili nestanu.

Što je zapravo pametni ugovor?
Pametni ugovor je programski kod pohranjen na blockchainu koji automatski izvršava unaprijed definiranu logiku kada se zadovolje određeni uvjeti. U najjednostavnijem obliku to je skup funkcija i stanja (varijabli) koji zajedno čine mali autonomni program. Najvažnije je da je logika ugovora deterministička: isti ulaz, na istom block heightu, uvijek daje isti izlaz na svim čvorovima mreže.
Na mrežama kao što je Ethereum, pametni ugovori se kompajliraju u bytecode i izvršavaju na virtualnom stroju zvanom EVM (Ethereum Virtual Machine). Svaka interakcija s ugovorom – primjerice slanje tokena ili otvaranje pozicije na DeFi protokolu – generira transakciju koju čvorovi provjeravaju, izvršavaju i zatim upisuju u blok. Time se nova stanja ugovora (npr. ažurirani saldo, nova pozicija u likvidnosti) trajno upisuju u lanac.
Za razliku od običnih računalnih programa, pametni ugovori imaju nekoliko specifičnih svojstava: nepromjenjivost (kod je nakon deploya u pravilu nepromjenjiv ili teško promjenjiv), transparentnost (izvorni kod je javno dostupan ili ga se može dekompilirati s blockchaina) i kompozabilnost (drugi ugovori mogu izravno pozivati njihove funkcije). Upravo ta kompozabilnost omogućuje da se protokoli poput Uniswap, Aave ili MakerDAO međusobno nadograđuju bez centralne koordinacije.
Kako pametni ugovori tehnički funkcioniraju
Da bismo razumjeli kako pametni ugovor “mijenja svijet”, treba shvatiti što se događa ispod haube. Kada developer napiše ugovor u jeziku poput Solidityja ili Vypera, kod se kompajlira u EVM bytecode. Taj bytecode se potom deploya na mrežu slanjem posebne transakcije bez “to” adrese, unutar koje je sadržan kod i inicijalni state.
Čim rudari ili validatori uključe tu transakciju u blok, na blockchainu nastaje nova adresa ugovora. Svaki poziv tom ugovoru zapravo je transakcija usmjerena prema toj adresi, s eventualnim dodatnim podacima (data payload) koji označavaju koju funkciju pozivamo i s kojim argumentima. EVM tada, na svakom čvoru, izvršava bytecode ugovora, pri čemu se troši gas – mjera računalnog rada. Gas služi kao zaštita protiv beskonačnih petlji i DoS napada, jer svaka instrukcija ima svoju cijenu.

Unutarnja arhitektura pametnog ugovora sastoji se od storage prostora (trajno stanje), memorije (privremeno stanje za vrijeme izvršavanja) i koda. Storage je najskuplji resurs, jer svaka promjena storagea povećava veličinu blockchaina. Zbog toga su dobro dizajnirani ugovori vrlo pažljivi s načinom pohrane podataka, često koristeći kompresiju, mapping strukture i eventove umjesto pohrane kompleksnih objekata.
Jedno od ključnih ograničenja klasičnog EVM modela jest nemogućnost direktnog pristupa vanjskim podacima (off-chain informacijama). Pametni ugovor ne zna sam po sebi koliko je danas cijena neke dionice ili vrijednost ETH/USD para. Za to se koriste oracles – specijalizirani servisi (npr. Chainlink) koji sakupljaju podatke iz vanjskog svijeta i dostavljaju ih ugovoru kroz transakcije. To uvodi dodatni sloj povjerenja i predstavlja značajan tehnički rizik ako se oracle kompromitira ili ne radi ispravno.
Primjene: od DeFi-ja do RWA tokenizacije
Najvidljivija primjena pametnih ugovora danas je u svijetu DeFi protokola. Uniswap koristi ugovore koji implementiraju automatizirane market makere (AMM), gdje se omjeri tokena u poolu i matematička funkcija (npr. x*y=k) koriste za određivanje cijene bez order booka. Aave i Compound koriste pametne ugovore za upravljanje kolateralom, pozajmicama i likvidacijom, sve prema strogo definiranom setu pravila zapisanih u kodu.
Drugo veliko područje su RWA – tokenizacija stvarne imovine poput obveznica, nekretnina ili potraživanja. Pametni ugovori ovdje služe kao sloj logike koji definira tko smije držati koji token, pod kojim uvjetima se mogu prenositi i kako se distribuiraju kamate ili dividende. Primjeri su projekti poput Centrifuge ili MakerDAO-ovih RWA vaultova, gdje off-chain entiteti (trustovi, SPV-ovi) povezuju pravni svijet s on-chain logikom.
Pametni ugovori također omogućuju stvaranje programabilnih tokova plaćanja, primjerice streamanja plaća u realnom vremenu putem protokola kao što su Superfluid ili Sablier. Ovdje ugovor periodično oslobađa sredstva korisniku u skladu s unaprijed definiranim rasporedom, bez potrebe da tvrtka svaki put ručno inicira isplatu.
Kako u praksi koristiti pametne ugovore
Ako ste krajnji korisnik, vjerojatno već svakodnevno koristite pametne ugovore, a da toga niste svjesni. Svaki put kada koristite decentraliziranu razmjenu, staking pool, lending protokol ili mintate NFT-ove, vaš novčanik (MetaMask, Rabby, Ledger Live i slični) zapravo šalje transakcije prema specifičnim ugovorima. Vi samo vidite frontend, ali prava logika događa se na adresama ugovora na blockchainu.
Prvi korak za svjesno korištenje je razumjeti koju točno funkciju ugovora pozivate. Većina modernih sučelja (npr. Etherscan, Blockscout) omogućuje da za verificirane ugovore vidite njihov ABI i imenovane funkcije. Tako možete provjeriti da li, primjerice, funkcija “approve” daje trajnu dozvolu nekom protokolu da troši vaše tokene, ili se radi o jednokratnoj autorizaciji.
Ako ste developer, proces uključuje pisanje ugovora u jeziku poput Solidityja, testiranje pomoću frameworka (Hardhat, Foundry, Truffle), te distribuciju na testne mreže i na produkcijski Layer 1 ili Layer 2. Posebnu pažnju treba posvetiti sigurnosnim auditima, jer jednom kad je ugovor na mainnetu i korisnici u njega deponiraju sredstva, svaka greška može dovesti do gubitka milijuna dolara.
Sigurnosni rizici i tehnička ograničenja
Pametni ugovori nisu magično rješenje za sve probleme – oni uvode vlastiti skup rizika koje morate razumjeti prije ozbiljnog korištenja ili investiranja. Jedan od najvećih rizika su bugovi u kodu. Zbog nepromjenjivosti, greške poput reentrancy napada (poznat iz DAO hacka), integer overflowa ili loše implementirane logike pristupnih prava mogu biti iskorištene za trajno izvlačenje sredstava iz ugovora.
Drugi kritičan rizik je kompleksnost kompozabilnosti. Budući da ugovori mogu zvati druge ugovore, nastaju lanci ovisnosti koje je teško u potpunosti analizirati. Ako koristite lending protokol koji se oslanja na oracle iz treće strane i koristi likvidnost iz trećeg protokola, ranjivost u bilo kojem od tih slojeva može se propagirati i utjecati na vaša sredstva. To je posebno vidljivo u slučajevima flash loan napada, gdje napadač koristi niz ugovora u jednoj transakciji da manipulira cijenama ili stanjima.
Treće ograničenje je skalabilnost. Klasični EVM pametni ugovori su ograničeni veličinom bloka i maksimalnom količinom gasa po bloku. Složenije operacije, poput masovnih airdropova ili on-chain order bookova, mogu biti preskupe ili čak tehnički neizvedive na preopterećenim mrežama. Tu u igru ulaze rješenja drugog sloja, rollupovi i optimizirani VM-ovi koji pokušavaju smanjiti trošak i povećati propusnost bez žrtvovanja sigurnosti.

Najbolje prakse i alati za sigurno korištenje
Za korisnike je ključna praksa provjera reputacije protokola i provjera je li ugovor prošao nezavisni sigurnosni audit. Alati poput block explorer analiza, portfolio dashboarda i sigurnosnih skenera pomažu identificirati sumnjive obrasce ponašanja, poput centraliziranih admin privilegija, mogućnosti pauziranja ili upgradea bez governancea.
Za developere postoje specijalizirani alati poput Slither, MythX, Echidna i Foundry fuzzera koji automatski traže poznate klase ranjivosti. Uz to, formalne metode (npr. model checking, specifikacija u jezicima poput Scribble ili Certora) omogućuju matematičku provjeru da ugovor zadovoljava zadana svojstva. Sve to treba kombinirati s ručnim auditom iskusnih sigurnosnih stručnjaka.
Jedan od obrazaca koji se sve više koristi je “upgradeable proxy” arhitektura, gdje se stanje ugovora drži u jednom kontraktu, a logika u drugom, zamjenjivom. Iako to omogućuje ispravke bugova i nadogradnje funkcionalnosti, istovremeno uvodi centralizacijski rizik – entitet koji kontrolira upgrade ključ može promijeniti ponašanje ugovora na način koji korisnici ne očekuju. Zato je transparentno upravljanje i jasan governance model ovdje presudan.
Zaključak
Pametni ugovori mijenjaju način na koji razmišljamo o povjerenju, automatizaciji i vlasništvu u digitalnom prostoru. Njihova glavna prednost je mogućnost da složena pravila i financijske logike budu zapisana kao transparentan, deterministički kod koji se izvršava na decentraliziranoj mreži, bez potrebe za posrednicima. To je temelj DeFi protokola, tokenizacije stvarne imovine, programabilnih plaćanja i niza drugih primjena koje bi uz klasičnu infrastrukturu bile znatno teže ili skuplje za implementirati.
S druge strane, pametni ugovori nose realne nedostatke: bugovi u kodu, složeni lanci ovisnosti između protokola, rizici oracles sloja i ograničenja skalabilnosti. Uz to, upgradeable arhitekture uvode dodatni povjerenje u upravljačke entitete i zahtijevaju pažljivo dizajnirane governance mehanizme. Korisnici koji žele sigurno sudjelovati u ekosustavu trebaju razumjeti osnovne principe rada ugovora, reputaciju projekata i rizike na koje se izlažu.
Ova tehnologija je najrelevantnija za developere koji grade nove protokole, investitore koji žele razumjeti gdje zapravo “živi” rizik njihovih ulaganja, poduzetnike koji žele tokenizirati imovinu ili automatizirati poslovne procese, te za sve koji se ozbiljnije bave blockchain edukacijom. Za tu publiku pametni ugovori nisu samo buzzword, nego konkretan alat za dizajn novih, programabilnih ekonomskih sustava – pod uvjetom da se koristi s punom sviješću o tehničkim mogućnostima i ograničenjima.



