Úvod
Nick Szabo poprvé popsal smart kontrakty v 90. letech 20. století Tehdy definoval smart kontrakt jako nástroj, který formalizuje a zabezpečuje počítačové sítě kombinací protokolů a uživatelských rozhraní.
Szabo diskutoval o potenciálním využití chytrých smluv v různých oblastech zahrnujících smluvní dohody, jako jsou kreditní systémy, zpracování plateb a správa práv k obsahu.
Ve světě kryptoměn můžeme smart contract definovat jako aplikaci nebo program, který běží na blockchainu. Obecně fungují jako digitální dohoda, která je vynucována konkrétní sadou pravidel. Tato pravidla jsou předdefinována počítačovým kódem, který je replikován a prováděn všemi uzly v síti.
Inteligentní smlouvy blockchainu umožňují vytvářet nedůvěryhodné protokoly. To znamená, že dvě strany se mohou zavázat prostřednictvím blockchainu, aniž by se musely navzájem znát nebo důvěřovat. Mohou si být jisti, že při nesplnění podmínek nebude zakázka splněna. Kromě toho může použití inteligentních smluv eliminovat potřebu zprostředkovatelů a výrazně snížit provozní náklady.
Přestože protokol Bitcoin podporuje chytré kontrakty již mnoho let, stal se populární tvůrcem a spoluzakladatelem Etherea Vitalikem Buterinem. Je však třeba poznamenat, že každý blockchain může představovat jiný způsob implementace chytrých kontraktů.
Tento článek se zaměřuje na chytré smlouvy, které běží na virtuálním stroji Ethereum (EVM), který je nezbytnou součástí blockchainu Ethereum.
Jak tedy fungují?
Jednoduše řečeno, inteligentní smlouva funguje jako deterministický program. Provádí konkrétní úkol, když jsou splněny určité podmínky. Proto systém inteligentních smluv často následuje funkce „pokud...pak...“. Ale navzdory terminologii nemají chytré smlouvy žádnou právní hodnotu a nejsou inteligentní. Je to jednoduše kód běžící na distribuovaném systému (blockchain).
V síti Ethereum jsou chytré smlouvy zodpovědné za provádění a správu blockchainových operací, které probíhají, když uživatelé (adresy) vzájemně komunikují. Jakákoli adresa, která není inteligentní smlouvou, se nazývá externě vlastněný účet (EOA). Chytré smlouvy jsou tedy řízeny počítačovým kódem a EOA jsou řízeny uživateli.
Inteligentní smlouvy Ethereum se v zásadě skládají z kódu smlouvy a dvou veřejných klíčů. První veřejný klíč je ten, který poskytl tvůrce smlouvy. Druhý klíč představuje samotnou smlouvu a funguje jako digitální identifikátor jedinečný pro každou inteligentní smlouvu.
Nasazení chytré smlouvy se provádí prostřednictvím blockchainové transakce. Lze jej aktivovat pouze při volání EOA (nebo jinými smart kontrakty). První spuštění je však vždy způsobeno EOA (uživatelem).
Hlavní rysy
Inteligentní smlouva Ethereum má často následující vlastnosti:
Distribuováno. Inteligentní smlouvy jsou replikovány a distribuovány napříč všemi uzly sítě Ethereum. To je jeden z hlavních rozdílů oproti jiným řešením, která spoléhají na centralizované servery.
Determinista. Inteligentní smlouvy provádějí pouze akce, pro které byly navrženy, za předpokladu, že jsou splněny požadavky. Navíc výsledek bude vždy stejný bez ohledu na to, kdo je provede.
Autonomní. Inteligentní smlouvy mohou automatizovat všechny druhy úkolů a fungují jako samospouštěcí program. Ve většině případů však, pokud se chytrá smlouva nespustí, zůstane „neaktivní“ a neprovede žádnou akci.
Neměnný. Inteligentní smlouvy nelze po nasazení upravit. Lze je „smazat“ pouze v případě, že určitá funkce byla dříve implementována. Můžeme tedy říci, že chytré smlouvy mohou poskytnout kód odolný proti neoprávněné manipulaci.
Přizpůsobitelné. Před jejich nasazením lze chytré smlouvy kódovat různými způsoby. Lze je tedy použít k vytváření mnoha typů decentralizovaných aplikací (DApps). Je to proto, že Ethereum je Turingův kompletní blockchain.
Bez důvěry. Dvě nebo více stran mohou komunikovat prostřednictvím inteligentních smluv, aniž by se navzájem znaly nebo jim důvěřovaly. Technologie blockchain navíc zajišťuje přesnost dat.
Průhlednost. Jelikož jsou chytré smlouvy založeny na veřejném blockchainu, jejich zdrojový kód je nejen neměnný, ale také viditelný pro každého.
Mohu chytrou smlouvu upravit nebo smazat?
Do smart kontraktu Ethereum po jeho nasazení není možné přidávat nové funkce. Pokud však jeho tvůrce zařadí do kódu funkci zvanou SELFDESTRUCT, je schopen v budoucnu smart kontrakt „smazat“ a nahradit jej novým. Na druhou stranu, pokud funkce není zahrnuta v kódu předem, není možné ji smazat.
Je pozoruhodné, že škálovatelné inteligentní smlouvy umožňují vývojářům mít větší flexibilitu ohledně neměnnosti smluv. Existuje mnoho způsobů, jak vytvořit škálovatelné inteligentní smlouvy s různou mírou složitosti.
Ve zjednodušeném příkladu si představte, že smart kontrakt je rozdělen na několik malých kontraktů. Některé z nich jsou navrženy jako neměnné, zatímco jiné mají povolenou funkci „Smazat“. To znamená, že část kódu (inteligentní smlouvy) lze odstranit a nahradit, zatímco ostatní funkce zůstanou nedotčeny.
Výhody a případy použití
Jako programovatelný kód jsou smart kontrakty vysoce přizpůsobitelné a mohou být navrženy různými způsoby a poskytují mnoho typů služeb a řešení.
Jako decentralizované, samostatně se spouštějící programy mohou chytré smlouvy zajistit zvýšenou transparentnost a snížit provozní náklady. V závislosti na jejich implementaci mohou také zvýšit efektivitu a snížit administrativní náklady.
Inteligentní smlouvy jsou zvláště užitečné v situacích zahrnujících převod nebo výměnu finančních prostředků mezi dvěma nebo více stranami.
Jinými slovy, chytré smlouvy mohou být navrženy pro širokou škálu případů použití. Příklady zahrnují vytváření tokenizovaných aktiv, hlasovacích systémů, kryptoměnových peněženek, decentralizovaných burz, her a mobilních aplikací. Mohou být také nasazeny s dalšími blockchainovými řešeními, která se zabývají zdravotnictvím, charitou, dodavatelským řetězcem, správou a decentralizovaným financováním (DeFi).
ERC-20
Tokeny vydané na blockchainu Ethereum se řídí standardem známým jako ERC-20. Standard popisuje základní funkce všech tokenů na bázi Etherea. Proto se tato digitální aktiva často nazývají tokeny ERC-20 a představují velkou část existujících kryptoměn.
Mnoho blockchainových společností a startupů nasadilo chytré smlouvy na vydávání svých digitálních tokenů v síti Ethereum. Po vydání distribuovala většina těchto společností své tokeny ERC-20 prostřednictvím počátečních nabídek mincí (ICO). Využití chytrých kontraktů ve většině případů umožnilo spolehlivou a efektivní výměnu finančních prostředků a distribuci tokenů.
Limity
Inteligentní smlouvy se skládají z počítačového kódu napsaného lidmi. To představuje mnoho rizik, protože kód podléhá zranitelnostem a chybám. V ideálním případě by je měli napsat a nasadit zkušení programátoři, zvláště pokud se týkají citlivých informací nebo velkých finančních částek.
Kromě toho někteří tvrdí, že centralizované systémy mohou poskytnout většinu řešení a funkcí nabízených inteligentními smlouvami. Hlavním rozdílem je, že chytré smlouvy běží na distribuované P2P síti, nikoli na centralizovaném serveru. A protože jsou založeny na blockchainovém systému, bývají neměnné nebo jen velmi obtížně měnitelné.
Být neoblomný může být v některých situacích skvělé, ale v jiných velmi špatné. Například, když byla v roce 2016 hacknuta decentralizovaná autonomní organizace (DAO) s názvem „DAO“, byly ukradeny miliony etheru (ETH) kvůli chybám v jejich kódu inteligentních smluv.
Protože jejich inteligentní smlouva byla neměnná, vývojáři nebyli schopni opravit kód. To nakonec vedlo k hard forku, který dal vzniknout druhému řetězci Ethereum. Jednoduše řečeno, řetězec „odvolá“ hack a vrátí prostředky právoplatným vlastníkům (toto je součást současného blockchainu Ethereum). Druhý řetězec se rozhodl do hacku nezasahovat a uvedl, že věci, které se dějí na blockchainu, by se nikdy neměly měnit (tento řetězec se nyní nazývá Ethereum Classic).
Je důležité si uvědomit, že problém nepochází z blockchainu Ethereum. Místo toho to bylo způsobeno špatnou implementací inteligentní smlouvy.
Další omezení smart kontraktů souvisí s jejich nejistým právním postavením. Nejen proto, že jde ve většině zemí o šedou zónu, ale také proto, že chytré smlouvy nejsou vhodné pro současný právní rámec.
Mnoho smluv například vyžaduje, aby obě strany byly řádně identifikovány a byly starší 18 let. Pseudonymita poskytovaná technologií blockchain ve spojení s nedostatkem zprostředkovatelů může tyto požadavky ohrozit. Ačkoli existují potenciální řešení tohoto problému, právní vymahatelnost chytrých smluv je skutečnou výzvou, zejména pokud jde o distribuované sítě bez hranic.
Kritiky
Někteří nadšenci do blockchainu vidí chytré smlouvy jako řešení, které brzy nahradí a zautomatizuje velkou část našich obchodních a administrativních systémů. I když je to možné, pravděpodobně se to zdaleka nestává normou.
Chytré smlouvy jsou jistě zajímavou technologií. Ale skutečnost, že jsou distribuované, deterministické, transparentní a poněkud neměnné, je může v určitých situacích učinit méně atraktivními.
Kritika je v podstatě založena na skutečnosti, že smart kontrakty nepředstavují vhodné řešení mnoha reálných problémů. Ve skutečnosti některé organizace těží z používání tradičních serverových řešení.
Ve srovnání s inteligentními smlouvami je údržba centralizovaných serverů jednodušší a levnější a mají tendenci mít vyšší efektivitu z hlediska rychlosti a mezisíťové komunikace (interoperabilita).
Abych to uzavřel
Není pochyb o tom, že chytré kontrakty měly významný dopad ve světě kryptoměn a zcela jistě způsobily revoluci v blockchainovém prostoru. Přestože koncoví uživatelé přímo neinteragují s inteligentními smlouvami, je pravděpodobné, že v budoucnu budou pohánět širokou škálu aplikací, od finančních služeb až po řízení dodavatelského řetězce.
Inteligentní smlouvy a blockchain společně mají potenciál narušit téměř každou oblast naší společnosti. Ale jen čas ukáže, zda tyto revoluční technologie překonají mnoho překážek širokému přijetí.

