Definice
Ve zkratce jde říci, že smart kontrakty („smart contracts“) jsou zabezpečené programy, které reprezentují automaticky vypořádatelné dohody dvou a více protistran. Vedle vynutitelnosti a automatického vypořádání je jejich další základní charakteristika determinismus. To znamená, že se stejnými vstupními parametry vždy dosáhnete stejného výsledku. Jazyk smart kontraktů by pak měl být srozumitelný jak lidem, tak strojům.
Na jedné straně smart kontrakty sdílejí některé základní principy obecného práva a reprezentují shodu a formalizaci vztahů/transakcí, na druhou stranu je rozdíl v tom, že se téměř výhradně zabývají otázkou exekuce daného kontraktu. Jejich automatické vypořádání je v kontrastu se smlouvami v obecném právu, které jsou vždy podrobeny soudní interpretaci.
Jelikož u smart kontraktů z podstaty věci odpadá problém s tím, že by mohly být špatně nebo nepřesně interpretovány, důležitost celého smluvního procesu je soustředěna na fázi před samotným “podpisem”. Dalším rozdílem je, že smart kontrakty jsou většinou vypořádány v reálném čase, zatímco klasické smlouvy téměř výhradně ad hoc.
Výhody
Mezi hlavní výhody smart kontraktů patří právě jejich vynutitelnost v reálném čase. Zkrátka nemusíte čekat, až vám dá soud za pravdu. Další výhodou je, že odstranění prostředníku v rozhodování vede k tomu, že jsou často výrazně levnější. V neposlední řadě ono automatické procesování efektivně odstraňuje možnosti uplácení, diskriminace a nefér jednání. Čitelnost jejich kódu také umožňuje lépe monitorovat jejich průběh a tím zlepšovat kontrolu a auditovatelnost.
Nevýhody
Na druhé straně je také nutné se podívat na nevýhody smart kontraktů, které vycházejí ze stejné podstaty jako jejich výhody. Opravdu velký důraz musí být věnován fázi ex-ante, tedy fázi psaní kontraktu, jelikož je v ní potřeba postihnout všechny možné varianty situací a výsledků. A protože postihnout úplně všechno je prakticky nemožné, řeší se to přidáním klauzule o exit variantě za určitých specifických podmínek.
Jelikož smart kontrakty běží na blockchainu, některá další specifika vyplývají právě z vlastností daného blockchainu. Ať už to je potenciální vliv těžařů (centralizace, ohrožení “denial of service”), nebo rychlost procesování transakcí, kapacita sítě, škálovatelnost, atd. Přirozená transparentnost smart kontraktů může teoreticky vést až k vyzrazení důvěrných informaci, ale tomu se dá předejít zabezpečením některých části smart kontraktu přístupovými právy.
Vypořádání
Důležitým aspektem smart kontraktů je také využití takzvaných oracles, které slouží k dodání výsledků z externích zdrojů.
Představte si například kontrakt na pojištění zpoždění letu – počítačový systém (oracle) zaznamená zpoždění letu, smart kontrakt automaticky vypořádá pojistné plnění (tj. pojištěný nemusí hlásit pojistnou škodu a škoda se ani nemusí nijak vypořádávat, protože pojistná událost je dostatečně jednoduchá).
Dalším příkladem je kontrakt, který bude vázán na cenu zlata ke konci roku. Aby se mohl kontrakt automaticky vypořádat, musí dostat tuto informaci ze zdroje mimo blockchain. Na využití konkrétní oracle se obě strany dohodnou již v době podpisu kontraktu, není teda již následně třeba žádných dalších manuálních zásahů. V rozhodný den oracle dodá z komoditní burzy aktuální tržní cenu, a smart kontrakt se automaticky vypořádá dle smluvních podmínek. Přes eleganci tohoto řešení je potřeba zmínit i potenciální nebezpečí možného ovlivnění těchto datových zdrojů, a tím i výsledku samotného kontraktu.
Shrnutí
Výše popsaná specifika smart kontraktů předurčují jejich využití zejména pro méně komplexní a do jisté míry automatizovatelné situace. Pro tento typ situací ale zcela jistě reprezentují velmi zajímavou příležitost pro transparentnější a výsledkově předpovídatelnější formu kontraktu. Jejich potenciál je ohromný, ale zároveň je potřeba mít na paměti také jejich limitace a výzvy, které bude potřeba pro jejich masovější rozšíření překonat.
#smartcontracts #blockchain #oracles #smlouvy #smluvnivztahy