Ethereum: hogyan működnek az intelligens szerződések?

Az intelligens szerződések a fő jellemzők, amelyek az Ethereumot olyan sikeressé tették. 

Mik azok az intelligens szerződések és mire valók

A Bitcoin protokoll nem ad lehetőséget arra valóban összetett intelligens szerződések létrehozása, mert alapvetően csak a tranzakciók engedélyezésére készült. 

Ezzel szemben a Bitcoin után 6 évvel megszületett Ethereumot a kezdetektől fogva úgy tervezték, hogy alapvetően egy olyan hálózat legyen, amely képes intelligens szerződések tárolása és végrehajtása

2014-ben az Ethereum társalapítója Vitalik Buterin kifejezetten írta a whitepaper hogy az általa tervezett hálózat a intelligens szerződéseken alapuló következő generációs platform, valamint hogy a Bitcoin blokklánc-technológián alapuló alternatív alkalmazásai közé tartozott a digitális eszközök használata is az egyéni valuták és pénzügyi eszközök, a nem helyettesíthető eszközök és az összetettebb alkalmazások megjelenítésére. 

Konkrétan ez utóbbiak, azaz az okos szerződések a digitális eszközök tetszőleges szabályokat megvalósító kóddal történő közvetlen vezérlését magukban foglaló alkalmazásokat, vagy blokkláncon alapuló decentralizált autonóm szervezeteket, ún. DAO-enzimek.  

Vitalik írta: 

„Az Ethereum egy olyan blokkláncot szándékozik nyújtani beépített Turing-komplett programozási nyelvvel, amellyel „szerződések” hozhatók létre, amelyek segítségével tetszőleges állapotátmeneti függvények kódolhatók, lehetővé téve a felhasználók számára a fent leírt rendszerek bármelyikének létrehozását. – és sok más, amit még nem képzeltünk el – egyszerűen csak néhány soros kódba írva logikát”.

Így az Ethereum intelligens szerződései olyan kódsorok, amelyek segítségével ez lehetséges programozza be az utasítások automatikus végrehajtását hálózat által, ha bizonyos feltételek teljesülnek, anélkül, hogy azok végrehajtását közvetítőre kellene bízni.

Valójában maga Buterin tette idézőjelbe a „szerződések” kifejezést, mert a felek közötti valódi szerződések helyett azok decentralizált számítógépes programok hálózaton. 

Általános szempontból tehát működésük nem túl bonyolult. 

okos szerződés
Az intelligens szerződések akkor jönnek létre, ha az abban foglalt feltételeket ellenőrizték

Intelligens szerződések bevezetése az Ethereum blokkláncon

Először is egy vagy több fejlesztőnek nyilvánvalóan létre kell hoznia az intelligens szerződést a megfelelő kódsorok megírásával, majd küldje el az Ethereum hálózatra. 

Technikai értelemben az Ethereum blokkláncon való közzététel azt jelenti, hogy a hálózat összes csomópontja fogadja és végrehajtja azt. A közzétételt követően az összes benne lévő utasítást az összes csomópont pontosan ugyanúgy hajtja végre. 

Ezért nemcsak a kiadását, hanem az utasítások végrehajtása visszafordíthatatlan miután közzéteszik a blokkláncon. 

Ezért igazán számít, hogy milyen utasításokat tartalmaz – melyek lehetnek a legkülönfélébbek – és hogy hányan használják. Valójában ahhoz, hogy egy intelligens szerződés utasításait ténylegesen végrehajtsák, ennek léteznie kell egy vagy több tranzakció, amely ezeket hívja

Azt is érdemes megjegyezni, hogy ezek az utasítások általában erőforrások, például adatok vagy tokenek használatát foglalják magukban, így azok tényleges végrehajtásához, minden szükséges feltételnek teljesülnie kell. 

Néha ezek az adatok kívülről származnak, az úgynevezett orákulumoknak köszönhetően, míg néha egyszerűen a blokklánc tranzakcióiból származnak. 

Általában az a tranzakció, amely az intelligens szerződésben foglalt utasítások végrehajtását váltja ki fizetésével jár a díj az ETH-ban, és sok esetben a végrehajtás tényleges kiváltása magában foglalja magára az intelligens szerződésre vagy más intelligens szerződésekre vonatkozó tokenek kifizetését vagy küldését is. 

Technikailag az intelligens szerződések egyfajta fiók a Ethereum blokklánc, amelyet a hálózat „vezérel”, nem pedig egy központi entitás. Tárolhatnak ETH-t vagy tokeneket, és azt is Önállóan küldje el a tranzakciókat a hálózaton.

Hogyan léphet kapcsolatba a kóddal és általánosabban a dApps-szal

A felhasználók interakcióba léphetnek az intelligens szerződésekkel olyan tranzakciók küldésével, amelyek aktiválják a kódjukban meghatározott függvények egyikét. 

Ezért az intelligens szerződések működése az Ethereumon általában nagyon egyszerű: csak el kell küldeni egy bizonyos típusú tranzakciót egy intelligens szerződéshez, és ez elindítja a csomópontok által az intelligens szerződés funkciójában foglalt összes utasítás végrehajtását magát a tranzakciót. 

Nyilvánvalóan attól függően, hogy a meghívott függvény mely utasításokat tartalmazza, nagyon eltérő következmények generálhatók, nemcsak intelligens szerződésenként, hanem függvényenként is. 

Az intelligens szerződések óriási összetettsége ezért pontosan abból adódik, hogy az egyes intelligens szerződések mit csinálnak, és nem általában abból, hogy az Ethereum hálózat támogatja és végrehajtja őket. Sőt, teljességgel lehetetlen felsorolni, hogy a hálózaton lévő összes intelligens szerződés hogyan működik valójában. 


Forrás: https://en.cryptonomist.ch/2022/06/11/ethereum-smart-contracts-3/