Katastr na blockchainu?
Mnoho lidí tvrdí, že blockchain je revoluční technologie, která by se měla nasadit naprosto všude. Měli bychom tak mít na blockchainu katastr, zdravotnictví, školství a pravděpodobně i mapu veřejných toalet. Proč jsou podobné nápady totální kravina, si vysvětlíme v tomto článku.
Motiv
Existují dva důvody, proč se blockchain cpe do všech oblastí. Tím prvním je fakt, že daný propagátor je někdo, kdo této technologii vůbec nerozumí (pouze si to myslí). Přijde mu totiž strašně cool mít vše decentralizované a vidí v tom ohromný potenciál. Používá buzzwordy, u kterých většinou ani netuší, jak fungují, ale to nevadí — hlavně, že to bude moderní a revoluční.
Druhá skupina těmto technologiím naopak rozumí a jen využívá faktu, že ostatní ne. Proč nejít do velké automobilky a netvrdit manažerům, že blockchain je budoucnost a pokud chtějí udržet krok s konkurencí, měli by mít technické průkazy na blockchainu? Zároveň by si měli pospíšit a koupit nějaký pozemek v metaverse, kde si vybudují své virtuální prodejny. Byla by totiž ohromná škoda takto přijít o potenciální zákazníky. To, že se v metaverse pohybuje 10 lidí, z čehož polovina jsou vývojáři, je jen detail…
Lidem z této druhé skupiny to ani tak nemám za zlé. Pouze využívají situace a získají na podobný nesmysl zakázku v řádech miliónů dolarů. Když vysoce postavení kravaťáci po několika měsících či letech zjistí, že to nemá žádné reálné využití a spálili na tom ohromné množství peněz, tak už jsou o dům dále, kde opět vysvětlují ohromný přínos blockchainu.
Katastr
Ze všech možných příkladů jsem si pro tento článek vybral katastr nemovitostí. Jedná se to totiž o využití blockchainu, které se často dává za příklad. Prý by poté vše fungovalo mnohem lépe a efektivněji. No, pojďme se na to podívat více do detailu.
Katastr nemovitostí je databáze, ve které jsou uloženy informace o jednotlivých nemovitostech — jejich popis, polohové určení, seznam vlastníků a podobně. Dnes jsou tato data uložena v centralizované databázi spravované příslušným úřadem.
Tato databáze bude (alespoň v to pevně doufám) ve vysoké dostupnosti přes více různých lokalit, pravidelně auditovaná a zálohovaná. To bychom ale nyní údajně měli chtít nahradit blockchainem.
Blockchain
Co je to blockchain? Jedná se o decentralizovanou databázi, která existovala již mnohem dříve, než vznikl samotný Bitcoin. Sama o sobě je vcelku neefektivní a její hlavní předností je vhodnost pro decentralizované systémy, u kterých chceme zaručit, že bude velmi obtížné až nereálné upravovat minulost a celá síť se shodne na jednom identickém stavu.
Proč neefektivní? Blockchain se skládá z jednotlivých bloků. Tyto bloky obsahují určitá data — nejčastěji transakce (ale může to být cokoliv jiného) a každý blok má svou hlavičku, kde jsou uloženy informace o daném bloku. Pokud budeme chtít například zjistit, kolik bitcoinů se nachází na dané adrese, musíme lineárně procházet jeden blok po druhém, transakci po transakci a počítat, kolik bitcoinů na danou adresu přišlo a odešlo.
Jasně, v dnešní době na to máme většinou databázi bokem, kde jsou hodnoty již napočítány, takže zjistit zůstatek je vcelku triviální. To už je ale něco mimo blockchain. Samotná struktura opravdu není nijak revoluční, jak se často tvrdí. Pouze má takové vlastnosti, které ji činí vhodnou pro určité specifické případy užití — například Bitcoin.
Ti z vás, kteří si alespoň trochu přičuchli k programování, zajisté znají strukturu zvanou lineární (spojový) seznam. Jednotlivé datové položky jsou zde provázány pomocí ukazatelů. Základní vlastností spojového seznamu je fakt, že lze vložit určitá data doprostřed této struktury.
Blockchain se této struktuře velmi podobá s tím rozdílem, že jednotlivé bloky nejsou spojeny ukazateli (referencemi) ale výstupem hashovací funkce předchozího bloku. To zajišťuje nezměnitelnost minulosti.
Pokud je systém využívající blockchain správně navržený, nelze jednotlivé bloky upravit, ani mezi ně vložit nové informace. Musely by se přepočítat veškeré následující hashe, což je většinou extrémně náročné.
Decentralizace?
Blockchain bez decentralizace nedává smysl — jedná se pak pouze o velmi neefektivní strukturu, kterou je vhodnější nahradit centralizovanou databází.
Dobře, budeme tedy mít decentralizovaný blockchain obsahující data z katastru nemovitostí.
Kdo jej ale bude provozovat? Kolik lidí poběží ihned po oznámení této novinky do Alzy pro nový několika-terabajtový SSD disk, aby si na něj mohli ukládat záznamy z katastru? Anebo to budou provozovat pouze úřady a samotná decentralizace bude jen na papíře, jak je poslední dobou zvykem?
Kdo vůbec bude mít pravomoc se do sítě připojit? Kdokoliv? Kdo zajistí, že si jeden člověk nezaloží více identit? Kdo bude mít právo sestavovat nové bloky? Jak se zajistí konsenzus? Otázek bychom měli mnoho, pojďme si to projít postupně.
Ověřování
Dokážu si představit, že se každých x minut/vteřin vytvoří blok, jenž bude obsahovat jednotlivé zápisy do katastru. Aby byl systém decentralizovaný, měla by se síť skládat z většího množství jednotlivých uzlů. To znamená, že se nový zápis do katastru bude muset šířit touto sítí, aby se dostal ke všem členům.
Zde máme ale první problém. Jak já, jako člen sítě, zjistím, zda je zápis platný? Jak mám ověřit, jestli je smlouva Franty Vomáčky o koupi pozemku v Horní Dolní platná? Jak mám vědět, jestli nějaký Franta vůbec existuje a všechny náležitosti jsou v kupní smlouvě správné?
Narážím zde na Oracle problém — tedy přenesení dat z reálného světa (např. existence parcely) do toho virtuálního. Tento problém je extrémně těžké vyřešit a v případě katastru bychom buď nijak nemohli zajistit pravost dat a sítí by se šířily i blbosti anebo by ověřování bylo omezeno na určitou malou skupinu uzlů (pravděpodobně úřady), čímž se ale popírá smysl decentralizace.
U Bitcoinu (a jiných kryptoměn) lze naopak pravost transakce ověřit vcelku jednoduše:
- Sedí digitální podpis?
- Má transakce správný formát?
- Je na dané adrese dostatek bitcoinů?
- Nebyly bitcoiny již v minulosti utraceny?
- Apod.
Konsenzus
A co sestavování bloků? Zde je tento problém ještě markantnější. Jak mám vědět, které zápisy zahrnout do nového bloku a které vyřadit, protože nejsou pravdivé? Co mi zabrání v tom si do bloku zařadit naprosto vymyšlené zápisy, jen abych škodil? Anebo začnu generovat bloky s naprosto náhodnými daty — jen tak, protože můžu.
Odpovědí na to jsou algoritmy konsenzu — Proof of Work, Proof of Stake, případně další. Uživatel je motivován uzavírat korektní bloky, které obsahují pouze validní informace (v našem případě zápisy do katastru). Za tuto činnost je na oplátku finančně odměněn. Naopak mu hrozí určitá ztráta, pokud by se rozhodl škodit. Blockchain bez algoritmu konsenzu nemá naprosto žádný smysl, není to nic revolučního.
Takže co teď? Budeme to zabezpečovat pomocí Proof of Work? Kolik lidí bude kvůli katastru dobrovolně pálit ohromné množství drahé energie?
Sice jsem si musel koupit drahé těžební zařízení a měsíčně zaplatím desítky tisíc za elektřinu ale na oplátku máme velmi bezpečný katastr!
Ne, tohle si opravdu nikdo neřekne. Potřebujeme totiž mít v systému určitou finanční odměnu. Bez ní nedává tento koncept opět žádný smysl. Podobné je to u konsenzu Proof of Stake.
Dobře, vytvoříme tedy nový a revoluční katastr-coin! Uživatelé budou tento token uzamykat (stakovat) a pokud budou uzavírat platné bloky, dostanou nové katastr-coiny! Zároveň jim ho sebereme, pokud by škodili!
Katastr-coin
Kdo bude tento shipcoin vydávat? Jakou bude mít monetární politiku? Bude jeho využitelnost k něčemu jinému, než pro spekulaci na cenu?
Pokud nebude mít žádnou hodnotu (nebo velmi malou), systém jako celek nebude fungovat, budou chybět incentivy. Kdo a jak mu ale nějakou hodnotu zajistí? Kdo a proč by si ho kupoval? Jaká bude využitelnost tohoto tokenu mimo tento systém? Ulehčím vám přemýšlení — žádná.
Závěr
Blockchain je zajímavá technologie ale sama o sobě není nijak extra revoluční. Dává smysl pouze v omezených případech, kdy je opravdu potřeba decentralizace, je do systému správně začleněn ideální mechanismus konsenzu (ideálně s nějakou automatickou úpravou vlastností na základě stavu sítě) a existují v něm finanční incentivy pro jednotlivé členy.
Z tohoto důvodu se blockchain uchytil jako technologie primárně v oblasti decentralizovaných peněz/tokenů. Sice se o využití na jiných místech neustále mluví — reálné a přínosné případy užití zde zatím však moc nejsou.
Zajisté by některé problémy popsané výše šly vyřešit, netvrdím, že ne. Opravdu by to pak ale dávalo smysl? Byl by systém rychlejší, spolehlivější a bezpečnější? Nebo by tomu bylo spíše naopak?
Jediné smysluplné využití vidím u finančních operací v rámci převodů nemovitostí— dokážu si představit určitý smart-contract, který urychlí samotný prodej po finanční stránce nebo jej učiní bezpečnějším. To samé může platit pro poskytování hypoték.
Necpěme ale blockchain všude jen kvůli tomu, že je to cool a in. V plno případech jsou totiž centralizované řešení mnohem efektivnější a smysluplnější.
Chcete být informováni ihned jakmile vydám další článek ohledně Bitcoinu, Lightning Network nebo ekonomie? Sledujte mne na Twitteru!