Bitcoin je často vnímán jako ten starý dobrý blockchain vynikající v ohledech bezpečnosti či decentralizace, který toho ovšem o moc více nenabídne. Chvílemi se až může zdát, že budoucnost směřuje pouze k divoké tokenizaci všeho možného na alternativních blockchainech, „demo“ decentralizovaným financím nebo sběratelství jpegů. Zdání ovšem často klamou. Co kdyby se i Bitcoin mohl stát plnohodnotnou „smart contract platformou“? A jak do toho všeho zapadá projekt RGB?
Hned na úvod se hodí zmínit, že pokud jste se nechali altcoinery přesvědčit o tom, že na Bitcoinu žádné smart contracty nejsou a nikdy být nemohou, jste na omylu. Smart contracty na Bitcoinu byly, jsou a v budoucnu jich bude nejspíš ještě dost přibývat. Pro konkrétní příklady není třeba chodit daleko. Na principu „chytrých smluv“ jsou založeny například multi-sig funkce nebo celý Lightning Network. V rámci takzvaných 2. vrstev pak existuje mnoho dalších protokolů vzniklých při pokusech přinést na Bitcoin smart contracty, o některých z nich si něco málo řekneme ještě níže v článku.
Aby to bylo fér, je ale třeba říct, že dosavadní smart contracty na Bitcoinu patří mezi ty jednodušší. V případě pokusů na 2. vrstvě se pak většinou jednalo o ve výsledku nefunkční nebo konceptuálně nesmyslná řešení, od kterých se časem víceméně upustilo nebo se minimálně nerozšířila tak masivně jako Lightning Network, který je samozřejmě světlou výjimkou. Budoucnost by ovšem mohla být slibnější!
RGB je škálovatelným a na principech důvěrnosti postaveným smart contract systémem pro Bitcoin a Lightning Network, který umožňuje vytváření a procesování jednodušších i velmi složitých „chytrých smluv“. RGB není typickým tokenovým protokolem na 2. vrstvě. Každopádně je s jeho pomocí možné vydávat a spravovat vysoce škálovatelná, programovatelná a soukromá tokenizovaná aktiva různých druhů.
Začátek příběhu RGB sahá až někam do roku 2016, kdy klient organizace BHB Network požádal o přezkoumání připravovaného projektu s ERC20 tokenem. Tým analytiků dospěl k závěru, že jde o hrozný nápad z hlediska škálovatelnosti, bezpečnosti i soukromí. Jeden z tehdejších členů týmu, Giacomo Zucco, tehdy ale začal nad tímto odsouzením dále přemýšlet a dospěl k závěru, že vývojáři usilující o tokenizaci se mohou rovnou spolehnout na robustnost blockchainu Bitcoinu. Pokud však mají být tokenizovaná aktiva postavena na Bitcoinu, pak musí brát v úvahu omezení základní vrstvy a snažit se nezneužívat tolik vzácný blokový prostor. Lightning Network naštěstí nabízí všechny vlastnosti potřebné k vyvinutí ideálního protokolu třetí vrstvy, který bude splňovat kritéria škálovatelnosti, bezpečnosti i soukromí. A po těchto uvědoměních se začaly dít věci...
Principy tzv. client-side validation (validace na straně klienta), které byly představeny už v roce 2016 Peterem Toddem, doplněné o koncept tzv. single-use seals (jednorázové pečetě), pak dodaly celé ideji off-chain smart contractů naději na ještě lepší odlehčení a zdokonalení soukromí. Tyto počáteční koncepty byly propojeny a zpracovány do původního návrhu ještě pod taktovkou vývojářského uskupení BHB Network.
Projekt RGB si už ve svých začátcích získal podporu a financování od velkých organizací jako Poseidon Group, Fulgur Ventures, a dokonce i Bitfinexu (Tether). Jednou z hlavních původních vizí byla právě přítomnost tokenů USDT na bitcoinové/lightningové síti (i když úplně prapůvodní vizí Giacoma Zucca byl spíše boj proti shitcoinům na ethereové síti).
V roce 2019 pak Giacomo Zucco založil asociaci LNP/BP Standards Assosiation s vizí plně se věnovat podpoře projektů pracujících na zdokonalování lightningových a bitcoinových protokolů a podpořil změny v organizaci projektu. RGB poté převzal jako nový hlavní vývojář Maxim Orlovsky, který společně se svým týmem a nezávislými přispěvateli dodnes doplnil až 95 % kódu v rámci dočesávání základů a rozšiřování dílčích funkcionalit.
Zajímavostí je, že jedním z přispěvatelů projektu, kteří Orlovskému poskytovali drahocenné rady a peer-reviews, byl i náš „krajan“ Martin Habovštiak ze slovenské Paralelné Polis. Jeho hlavním příspěvkem do projektu byla expertiza programovacího jazyka Rust.
To, co se Giacomu Zuccovi a Peteru Toddovi podařilo vymyslet v reálných teoretických rovinách, dovedl tým Maxima Orlovského do stadia, kdy existuje funkční produkt téměř ready pro ostrý provoz.
Aby bylo vysvětlení technické stránky srozumitelné, je nutné nejprve dodat, že RGB nemá ani principy sítě jako třeba bitcoinový nebo lightningový protokol. RGB lze popsat jako open-source sadu protokolů, v jejímž rámci je každý smart contract pouze jakýmsi souborem účastníků contractu, kteří mohou interagovat pomocí různých komunikačních kanálů (ve výchozím režimu se počítá s LN).
RGB využívá blockchain Bitcoinu pouze jako vrstvu pro potvrzení stavu závazku vůči anti-double-spending principům, po uzavření kanálu udržuje kód smart contractu a data mimo řetěz, díky čemuž jej lze považovat za metodu s dobrou škálovatelností (nezahlcuje bitcoinový blockchain daty a žádostmi o validace). Vývoj stavu smart contractu je definován a validován schématem mimo řetězec, za vším stojí právě koncept client-side validation.
Jestliže chceme pro lepší pochopení všech problematik zařadit RGB do vrstvených protokolových struktur správně, budeme se muset smířit s faktem, že jeho místo je někde mezi 2. a 3. vrstvou. Důvodem je jednoduše to, že set protokolů RGB může působit jako 2. vrstva nad základní bitcoinovou vrstvou (i když velmi neefektivně a se zbytečným zatížením bitcoinové sítě), a zároveň i jako 3. vrstva, tedy nadstavba nad 2. vrstvou – Lightning Networkem. Pokud se ztrácíte v pojmech souvisejících s vrstvami a označeních jednotlivých sítí, koukněte na naše články o LNP/BP protokolech a Lightning Networku.
Aby mohla client-side validation (validace na straně klienta) správně fungovat s ohledem na škálovatelnost, bezpečí i soukromí a vyloučit potřebu provedení on-chainové validace při každém převodu vlastněného tokenizovaného aktiva v rámci RGB, musel být celý původní nápad doplněn ještě konceptem tzv. single-use seals (jednorázové pečetě). Ten umožní zredukovat potřebu provádění on-chainových validací pouze na moment uzavírání komunikačního kanálu s dílčími smart contract operacemi, které byly dříve off-chainově validovány všemi účastníky contractu.
Zjednodušeně lze říct, že RGB využívá jako bezpečnostní mechanismus single-use seals, které jsou už v základním protokolu Bitcoinu definované nad výstupy bitcoinových transakcí (UTXO – unspent transaction output). RGB vám ale navíc při vypořádávání UTXO (které je zároveň i uzavřením single-use seal jednorázové pečetě) umožňuje více než jen posílat bitcoiny. Ve skutečnosti můžete současně přeposílat v podstatě jakákoliv data smart contractů, která byla dosud díky client-side validation měněna a validována soukromě mimo blockchain Bitcoinu (v rámci schématu RGB/lightningových kanálů). Tato provázání tedy ve výsledku umožňují kterékoli straně, která má historii stavu smart contractu, ověřit jeho jedinečnost při finálním vypořádání UTXO na bitcoinový blockchain.
Koncepty výše vám možná připadají až podezřele moc podobné funkcionalitám Lightning Networku. A tu podobnost nelze popřít. RGB v tomto ohledu dobře odkrývá jednu z variant, jak si vlastně představovat 3. (nebo 2.–3.) vrstvu Bitcoinu. Už od začátku mělo být boostem Lightningu, aby na něm umožnilo přesuny tokenizovaných aktiv peer to peer, bez rizika double-spendingů, bez zahlcování 1. vrstvy daty, a zároveň s ohledem na soukromí a decentralizaci. Jelikož RGB nemá ani vlastnosti propojené sítě, vydavatelé smart contractů v podstatě ztrácejí moc a přehled v momentě, kdy jejich střípky vypustí do světa. Přestože jsou jednotlivé smart contracty udržovány odděleně, je možná i jejich vzájemná interakce prostřednictvím Bifrostu, dalšího nadstavbového protokolu nad Lightningem.
Standardy LNP/BP (Bitcoin Protocol / Lightning Network Protocol) jsou sadou specifikací a osvědčených praktik pro řešení na 2. a 3. vrstvě, která nechtějí počítat se soft forky nebo hard forky na úrovni bitcoinového blockchainu.
Návrh RGB plně splňuje všechna kritéria specifikace LNP/BP:
Návrh RGB počítá se všemi menšími i většími implementacemi a upgrady, které na bitcoinový a lightningový protokol přišly v minulosti nebo jsou momentálně aktuální. Nabídne pochopitelně plnou kompatibilitu s Lightning Networkem a dále například se SegWitem, Schnorrovými podpisy a Taprootem, Eltoo, Miniscriptem, Atomic swapy a podporuje třeba také připojení na síť Tor.
RGB není prvním projektem usilujícím o přinesení smart contractů na Bitcoin. V minulosti vznikaly nejrůznější modely, z nichž některé jsou ve vývoji i dnes. Například dříve zmiňovaný koncept Colored coins spočíval v „obarvování“ velmi malých částí bitcoinu (např.: pár tisíc satoshi), čímž se tyto bitcoiny staly rozeznatelnými od ostatních a mohla k nim být přidána informace, jejíž význam byl čitelný pro software kompatibilní s Colored coins. Koncept ovšem pracoval s verzí skladování dat na bitcoinovém blockchainu, což se ukázalo být velmi neperspektivní cestou. Ve výsledku ale posloužil jako inspirace k dalším zajímavým snahám.
Navazujícími projekty se snahou o vytvoření smart contractů na Bitcoinu jsou pak například Omni a Counterparty. Jedná se o samostatné protokoly postavené na Bitcoinu. Omni byl první platformou, na které se objevil stablecoin Tether (USDT). Velkým problémem je ale jejich vysoká míra závislosti na 1. bitcoinové vrstvě. Podobně jsou na tom i sidechainy RSK a Liquid. Na těch už sice vznikají pokusy o vytvoření DeFi produktů nebo NFTéček, dost se ovšem polemizuje o jejich bezpečnosti. Všechny tyto projekty mají problémy se škálovatelností vlivem neefektivní práce s daty a odbavování transakcí.
Jelikož RGB není samostatným blockchainem, sidechainem, a dokonce ani zcela propojenou sítí s problematicky řešenou škálovatelností, bezpečností, decentralizací či soukromím, ba naopak funguje jako boost Lightning Networku, čímž efektivně a neinvazivně využívá záruky blockchainu Bitcoinu, jeho šance na úspěšné přinesení smart contractů na Bitcoin jsou vyšší něž u jeho předchůdců. RGB navíc nekončí decentralizovanými financemi či střádáním sběratelských předmětů, jeho potenciál by měl sahat mnohem dále.
RGB díky své stavbě nabídne široké možnosti při tokenizaci aktiv. Umožní vytváření a pokročilé operace se zaměnitelnými tokeny, jaké známe z prostředí DeFi (decentralizované finance na alternativních blockchainech), nebo vydávání tokenizovaných cenných papírů (např. akcie, opce a futures), to může probíhat naprosto anonymně, ale také zcela veřejně. Samozřejmostí je i možnost vydávání stablecoinů. RGB podporuje také minting v poslední době populárních NFTéček (nezaměnitelných tokenů), která lze používat k tokenizaci umění, herních skinů nebo jakýchkoliv sběratelských předmětů. S RGB bude možné prodávat nejen přímé vlastnictví NFT, ale taky oprávnění pro jednorázový či mnohonásobný přístup k němu, čímž vzniknou ještě šikovnější způsoby monetizace obsahu. Dále je skrze něj možná definice různých forem nositelských práv (voting apod.).
RGB by ale mělo najít využití v mnoha odvětvích daleko za hranicemi finančního světa. Dle slov jeho vývojářů může dále přinést chytrá řešení v oblasti:
Na protokolu RGB by měly dobře fungovat rovněž utility (užitkové) tokeny používané pro přístupy ke službám, produktům a informacím (energie, lékařské záznamy atd.).
Nemá smysl zakrývat, že RGB je z velké části vyvíjeno jako konkurence smart contractů hlavně na Ethereu. A i když s tím mnozí mohou nesouhlasit, je dobré si přiznat, že současné ethereové DeFi a podobné snahy na dalších smart contract platformách sice nějak fungují, ale mají stále nedostatky v základních otázkách, ať už se bavíme o škálovatelnosti, zabezpečení, nebo soukromí. Další komplikací jsou možné budoucí tendence k cenzuře některých transakcí sloužících pro přesun nadměrně hodnotného tokenizovaného aktiva. Na transparentním blockchainu by mohli zabezpečovatelé sítě (těžaři) tyto transakce odmítat pro nedostatečnou odměnu za zpracování takto velkých přesunů hodnoty. Pojďme si tedy shrnout, jak tyto problematiky řeší ve srovnání s Ethereem právě RGB:
Díky sofistikovaným principům jako client-side validation a single-use seals zkombinovaným se silnými bezpečnostními zárukami bitcoinového blockchainu a soukromím lightningových kanálů přinese RGB na Bitcoin vše, co je slibováno vývojáři Etherea a dalšími „next gen blockchain“ projekty. K tomu by mělo poskytnout zcela nové možnosti ve světě smart contractů, což povede ke vzniku plně decentralizovaných technologických řešení i mimo finanční odvětví. Může být tohle vše vůbec reálné?
Je třeba vzít v úvahu, že vývojáři svým projektům obvykle pevně věří, a není tedy divu, že je momentální dění kolem RGB vykreslováno dost nadějně. Určitě by se ale neslušelo naznačovat, že se jedná pouze o jakési neopodstatněné pozdvižení. O RGB se pozitivně vyjadřuje stále více osobností z jádra bitcoinerů a jak se implementace blíží své finální podobě, k projektu se přidávají další vývojáři, aby pomohli vyřešit dílčí překážky a vše mohlo dospět k úspěšnému konci vývoje.
Vždy je ale dobré poslechnout si názor nezávislého odborníka. Martin Habovštiak byl ochoten poskytnout jeho osobní pohled a zhodnocení projektu, které postavil na zkušenostech získaných při tom, když v začátcích RGB pomáhal Maximu Orlovskému s některými záludnostmi programovacího jazyka Rust.
Martin Habovštiak
Martin je programátor se specializací na bezpečnost, soukromí, Bitcoin a systémové programování. Dlouho byl aktivním členem Progressbaru a je spoluzakladatelem Bratislavské Paralelní Polis. Vymyslel Turbo kanály, našel zranitelnosti v různém softwaru a má bohatý profil na GitHubu. Více se o něm dozvíte na jeho osobní stránce, kde můžete využívat i placené mikrokonzultace ohledně Lightning Network.
Od roku 2019, kdy se naplno rozjelo kódování, projekt zaznamenal výrazný posun. Postup byl od začátku natolik rychlý, že už v červnu 2020 vstoupilo RGB do beta testování. Od té doby se doplňují dílčí implementace a probíhá vývoj dalších produktů, které RGB přiblíží běžným uživatelům. Dopsání kódu je odhadováno na přelom roku 2021 a 2022. Finální implementace RGB by tedy po dalším testování mohla být vypuštěna už v průběhu příštího roku.
Pro začátek je tu již zmiňovaná organizace Pandora Core AG, která již vydala první peněženku s podporou RGB (MyCitadel) a vyvinula nástroj pro vydávání aktiv (Bitcoin Pro). V první polovině roku 2022 se pak chystá na RGB vypustit algoritmický stablecoin, další aktivum v podobě wrapped Bitcoinu a USDT bridge (z ERC20 na RGB).
Existují už také na RGB přímo nenavázané společnosti, které plánují stavět na jeho protokolu. Jednou z nich je například švýcarská Condensat technologies, ta má velké cíle a plánuje otevření první bitcoinové banky. S Pandora Core AG chce spolupracovat na emisi a správě bitcoinových aktiv. Podobným směrem míří také další ve Švýcarsku regulovaná společnost s kryptoměnovými produkty Bitcoin Suisse. Firma Nodl má zase zájem budovat infrastrukturu RGB uzlů. Trendy záměry má pak uskupení Satoshi Games, které čeká na vypuštění RGB mainnetu, proto aby na něm mohlo později stavět své blockchainové hry.
RGB má před sebou jistě pár zajímavých měsíců až let a jen čas ukáže, jaký potenciál opravdu skrývá. Již nyní může být ovšem pro nás všechny důkazem toho, že blockchainové technologie jdou prudce kupředu a co se před pár lety zdálo nemožné, se dnes pomalu stává realitou. Pokud se vám podaří na chvíli odvrátit pozornost od sledování bitcoinových cyklů a přepnete se do režimu nižších časových preferencí, budete se mít nejspíše ještě opravdu na co těšit.
Matouš Wachutka
Jsem content specialista, věnuji se tvorbě a optimalizaci webového obsahu. Studuji Bitcoin společně s dalšími systémy decentralizace a zajímám se o jejich souvislosti s principy osobní svobody a zodpovědnosti. Jako redaktor Bitcoin Alzy se snažím přispět k šíření těchto idejí. Volný čas trávím třeba zkoumáním alternativních konceptů reality.