Zdánlivě nerušená šílenstvím roku 2020 a do značné míry nevyrušená divokými výkyvy cen bitcoinů, které v prosinci skončily novými historickými maximy, technická komunita bitcoinů pokračuje v orbě. Software Bitcoinu a mnoho jeho projektů se v průběhu roku postupně vylepšovalo, protože byl optimalizován software, opravovány chyby a opravovány úniky soukromí. Převážná část této práce, stejně důležitá jako ona, nepřitahuje titulky.

Pohled z ptačí perspektivy na technologický vývoj bitcoinů v průběhu roku však pomáhá upozornit na nové milníky v probíhajícím technologickém pochodu bitcoinů vpřed. I v roce 2020 zavedla trvale rostoucí komunita pro vývoj bitcoinů řadu užitečných nových funkcí, několik zvláště důležitých upgradů a některá obzvláště pozoruhodná vylepšení.

Jelikož se tento volatilní rok chýlí ke konci, jedná se o některé z nejvýznamnějších technických vývojů bitcoinů za posledních 12 měsíců…

Nové nástroje na ochranu soukromí s PayJoin a CoinSwap

V oblasti ochrany osobních údajů bitcoinů představovaly letos projekty PayJoin a CoinSwap dva slibné pokroky.

PayJoin, také známý jako Pay to Endpoint (P2EP), je trik, který umožňuje příjemcům transakcí podílet se na transakci prostřednictvím CoinJoin, v zásadě posílat finanční prostředky sami sobě a zároveň přijímat skutečnou platbu od skutečného odesílatele. Pokud by snoop provádějící analýzu blockchainu měl předpokládat, že všechny mince zaslané v transakci patřily stejné osobě – ​​jako obvykle bych – mýlí se. To již přináší výhody soukromí odesílatele i příjemce, protože snoop by mezi nimi zaměňoval (minulé) vlastnictví mincí. Navíc, pokud dost lidí používá PayJoin, mohlo by to udělat tuto důležitou heuristiku pro analýzu blockchainu úplně zbytečnou, což by zase prospělo i soukromí těch, kteří sami neuskutečnili transakce PayJoin.

Ačkoli demo verze nástroje PayJoin již byly implementovány pro online hazardní hru Bustabit a software pro míchání mincí JoinMarket na konci roku 2018 a Samourai Wallet v roce 2019 propuštěn jeho vlastní – omezenější – verze pod záštitou Cohoots (s mírně odlišnými kompromisy v oblasti ochrany osobních údajů) byla PayJoin letos implementována do několika populárních bitcoinových projektů. To zahrnovalo zejména široce používaný software pro zpracování plateb BTCPay v duben, umožňující uživatelům BTCPay přijímat transakce PayJoin z kompatibilních peněženek. Peněženka Wasabi zaměřená na soukromí byla první peněženkou, která tuto kompatibilitu nabídla později ten stejný měsíc, zatímco JoinMarket (září), Modrá peněženka (říjen) a peněženka Sparrow (listopad) následoval později v tomto roce.

Mezitím se vývojář bitcoinů Chris Belcher rozhodl realizovat implementaci CoinSwap, techniky ochrany osobních údajů poprvé navrženo v roce 2013 přispěvatelem Bitcoin Core Gregory Maxwell. CoinSwap využívá Atomic Swaps (trik, který je také základem Lightning Network) a umožňuje uživatelům vyměňovat si mince, aniž by si museli navzájem důvěřovat. Každý uživatel by skončil s mincemi, které nelze spojit s jeho vlastní historií transakcí.

Belcher, jeden z předních světových odborníků na bitcoinové soukromí, v Smět zveřejnil podrobný přehled toho, jak by mohl být protokol CoinSwap implementován, aby bylo zajištěno maximální soukromí. Návrh by umožnil, aby transakce CoinSwap byly nerozeznatelné od ostatních transakcí, použití technik rozdělení k zakrytí částek, směrování plateb k zmarení únosných účastníků a další. O několik měsíců později, v červnu, Nadace pro lidská práva oznámila, že její první grant na rozvoj bitcoinů půjde Belcherovi a jeho snaze o realizaci projektu.

Belcher pracoval na jeho implementaci po většinu roku, v prosinci oznámil „velký den pro soukromí a zastupitelnost bitcoinů“: uskutečnil vůbec první úspěšnou transakci CoinSwap v testovací síti bitcoinů (testnet).

Síť blesků se stala robustnějšími se strážními věžemi (a dalšími)

Lightning Network, bitcoinový protokol vrstvy 2 pro rychlejší, levnější a více soukromých plateb, se i v roce 2020 plošně zlepšoval. S implementacemi Lightning LND, Eclair, C-Lightning a – od roku červenec – Electrum zavádějící řadu nových verzí softwaru a rostoucí počet projektů navazujících na protokol, byl vývoj Lightning aktivnější než kdy dříve. Mezi nejvýznamnějším vývojem Watchtowers vyřešily jednu ze zbývajících slabin Lightning Network, což vedlo k robustnějšímu protokolu.

Jedním z kompromisů Lightning Network je, že uživatelé musí dávat pozor na své platební kanály, aby zajistili, že se partneři platebních kanálů nebudou pokoušet podvádět tím, že budou vysílat staré státy kanálu a požadovat více finančních prostředků, než jim bylo přiděleno. Uživatelé blesku mohou vstoupit, pokud se partner kanálu pokusí podvádět, ale to vyžaduje monitorování bitcoinového blockchainu, což příležitostní uživatelé nemusí dělat velmi pravidelně.

Aby se snížilo riziko, že dojde k chybě pokusu o podvádění, protokol Lightning umožňuje outsourcing monitorování kanálů nestranným pozorovatelům zvaným Strážné věže. Přidání prvního softwaru Strážné věže představeného LND do konce roku 2019, Únor letošního roku vyšlo alfa vydání vyhrazené implementace Strážné věže Oko satoshi. Krátce nato bylo navrženo Specifikace protokolu Strážné věže byl aktualizován, zatímco C-Lightning zavedl podporu Eye of Satoshi dovnitř Smět. Následovala verze 1 Eye of Satoshi červenec.

Další pozoruhodný vývoj blesku v roce 2020 zahrnuje pokračování prací na kotevní výstupy zajistit, aby uživatelé mohli jednostranně žádat o prostředky z kanálu, i když poplatky na řetězci od poslední aktualizace platebního kanálu vzrostly více, než se očekávalo, Vícecestné platby což uživatelům umožňuje provádět platby Lightning v menších částech, nativní aplikace pro zasílání zpráv Lightning Network Kolos, nástroj pro správu kanálů Faraday, beta verze Lightning Loop, ale také některé nově objevené slabiny, stejně jako (navrhovaná) řešení a mnoho dalšího.

Po miniscriptu bylo programování bitcoinů snazší díky programu Minsc

Kód vložený do bitcoinových transakcí, který určuje, jaké podmínky musí být splněny, aby se mince mohly použít v další transakci, je napsán v programovacím jazyce speciálně navrženém pro bitcoiny, který se nazývá Script. Se skriptem však může být obtížné pracovat: v žargonu programátorů je skript těžko „důvodný“. To znamená, že zejména když se stane trochu složitějším, může být obtížné pochopit, co skript ve skutečnosti umožňuje: transakce může neúmyslně obsahovat kód, který umožňuje utrácení mincí za jiných podmínek, než bylo původně zamýšleno. To je jeden z důvodů, proč mnoho bitcoinových softwarových aplikací, jako jsou peněženky, upustilo od využití plného potenciálu Script.

V minulých letech (bývalí) vědci z Blockstream Andrew Poelstra, Pieter Wuille a Sanket Kanjalkar navrhli „svléknutou“ verzi Script, zvanou Miniscript. Miniscript je výběr „nástrojů“ ze „sady nástrojů Script“, které jsou pečlivě vybírány tak, aby umožňovaly prakticky cokoli, co lze pomocí Script dělat, ale je snazší používat a snáze ověřovat programátory. I když je řada Miniscriptů stále platnou řádkou Script, v podstatě se vyhýbá lidské chybě tím, že brání neočekávaným, možná nechtěným výsledkům kódu; Miniscript je snazší uvažovat. v listopad letošního roku vedoucí výzkumu a vývoje v Rugged Bytes Dmitrij Petukhov zveřejnil formální specifikaci Miniscript.

Aby bylo vytváření bitcoinových transakcí ještě jednodušší, Wuille také navrhl „politický jazyk“ pro Miniscript, vlastní programovací jazyk, který lze kompilovat (převádět) do Miniscript, a tedy Script. V návaznosti na práci Wuille vyvinul vývojář bitcoinů Nadav Ivgi letos další nový programovací jazyk s názvem Minsc. Poprvé oznámeno v červenec, a následoval hlavní upgrade v roce listopad, Minsc je stále nedokončenou prací, ale má výrazně zjednodušit vytváření bitcoinových transakcí. To by mohlo pomoci odemknout řadu slibných funkcí, které plně využívají všestrannosti bitcoinů, jako jsou interoperabilní peněženky CoinJoin, inteligentní řešení kontraktů, protokoly vrstvy 2 a další.

Inteligentní smlouvy se díky DLC staly chytřejšími

Kdykoli chytré smlouvy závisí na externích datech – datech, která nežijí na blockchainu – spoléhají se na externí zdroj pro tato data, který se označuje jako „věštec“. Pokud by například dva uživatelé chtěli vsadit na výsledek sportovního zápasu, věštec by musel použít výsledek zápasu k vypořádání sázky ve prospěch toho, kdo předpověděl správnou předpověď (alespoň v případě sporu).

Velmi základní nastavení sportovního sázení by se mohlo skládat z adresy multisignature (multisig) dvou-ze tří, kde oba hráči a věštec mají po jednom klíči a věštec je informován o podrobnostech sázky. Po zápase mohli oba hráči spolupracovat a poslat finanční prostředky z multisig vítězi bez klíče věštce. Pokud však poražený odmítne spolupracovat, věštec může pomocí svého třetího klíče spolupracovat s vítězem a poslat jim prostředky z multisig. Tento systém funguje, ale má dvě hlavní nevýhody. Zaprvé, oba hráči musí věřit věštci, aby se nekolidovali se svým protivníkem. A za druhé, věštce musí být informován o sázce a možná hrát aktivní roli v procesu vypořádání: to znamená, že hráči nemají od věštce žádné soukromí, zatímco nastavení se příliš neomezuje, pokud chce více než několik hráčů sázka.

Lepším řešením bylo v roce 2017 navrhováno Thaddeus Dryja, výzkumný pracovník iniciativy Digital Currency Initiative, iniciativa MIT Media Lab: diskrétní logovací smlouvy (DLC). DLC používají chytrý matematický trik, kde věštec publikuje kryptografický podpis, který odpovídá výsledku události. Ve výše uvedeném příkladu by Oracle zveřejnil jeden podpis, pokud vyhraje první tým, a jiný podpis, pokud vyhraje druhý tým. Trik: chytrá smlouva je navržena tak, aby umožnila vítěznému hráči použít zveřejněný podpis k získání finančních prostředků.

V DLC je zapojení věštce do inteligentní smlouvy minimalizováno na zveřejnění podpisu; to by například v rámci sportovního sázení mohla provést stávající zpravodajská služba jako součást svého pravidelného vysílání. To také znamená, že věštkyně nemusí být informována o podrobnostech sázky a ve skutečnosti ani nemusí vědět, že sázka vůbec byla. Mezitím může libovolný počet lidí použít podpisy k vypořádání svých sázek bez dalšího zapojení věštce, což je velkým přínosem pro škálovatelnost. A zatímco věštba by teoreticky mohla s někým stále domlouvat a vysílat špatný výsledek, takové nepoctivé chování by bylo každému jasné a do budoucna by to poškodilo reputaci věštce.

v leden letošního roku CEO Chris Stewart oznámil, že jeho společnost Suredbits ve spolupráci s Crypto Garage zahájila práce na specifikace pro DLC. v Únor, Inženýr Suredbits Nadav Kohen navázal na první pracovní kód. A tím září, Suredbits a Crypto Garage vyvinuli svůj software tak, aby jej bylo možné použít: Stewart a vývojář bitcoinů Nicolas Dorier se zapojili do vůbec prvního DLC bitcoinů, aby vsadili na výsledek amerických prezidentských voleb. Stewart, který vsadil na Bidena, získal své výhry prosinec.

Držení je bezpečnější s bitcoinovými trezory

Dlouhý seznam výměnných hacků a dalších bitcoinových loupeží svědčí o tom, že bezpečné ukládání soukromých klíčů je i nadále výzvou, zejména tam, kde je v sázce mnoho mincí.

Ve vývoji jsou však bezpečnější řešení pro ukládání mincí. Bitcoinové trezory – koncept sahající až do roku 2016 – jsou typem chytré smlouvy, která zajišťuje coiny, takže jejich skutečné utratění trvá několik potvrzených transakcí a časové zpoždění. To dává potenciálním obětem příležitost vrátit loupež, než bude příliš pozdě.

V roce 2020 byly vydány dva typy prototypů trezoru.

První prototyp trezoru oznámil v roce přispěvatel Bitcoin Core Bryan Bishop duben. Stručně řečeno, návrh Bishopu je založen na předem podepsané (a dosud nevysílané) transakci, která utrácí (některé) mince z trezoru do běžné („horké“) peněženky uživatele s časovým zpožděním, zatímco alternativní možnost utrácení bez časového zámku může mince přesměrovat na alternativní adresu; možná nový a ještě bezpečnější trezor. Důležité je, že soukromý klíč použitý k podepsání předem podepsaných transakcí se při vytvoření trezoru odstraní, takže útočník mohl kdykoli ukrást samotnou předem podepsanou transakci.

Toto nastavení útočníkovi mimořádně ztěžuje nárokování mincí. I když dojde k odcizení předem podepsané transakce, mohl zloděj pouze utratit mince do horké peněženky, a pokud oběť nedůvěřuje bezpečnosti své horké peněženky, může použít časovou prodlevu pro přesun mincí do místo toho extra zabezpečená adresa. (Aby se zabránilo tomu, že zloděj ukradne mince pouhým kompromitováním horké peněženky a trpělivým čekáním, až tam uživatel trezoru pošle své mince, Bishopova konstrukce umožňuje uživatelům v té době vybírat z trezoru jen malé kousky.)

O něco později dovnitř duben, Vývojář bitcoinů Antoine Poinsot oznámil alternativní demo aplikace Vault, které navrhl společně s generálním ředitelem společnosti Chainsmiths Kevinem Loacem, nazvaným Revault. Revault se v některých ohledech podobá aplikaci Bishop’s Vaults, jako je použití předem podepsaných transakcí, ale je speciálně navržen pro víceuživatelská nastavení pomocí adresy s více adresami. Revault umožňuje předem určené podmnožině skupiny uživatelů utrácet mince z trezoru do horké peněženky, také s časovým zpožděním. Kterýkoli účastník trezoru může toto časové zpoždění využít k vrácení prostředků do trezoru, pokud nesouhlasí s výdaji, nebo může prostředky přesměrovat na alternativní extra zabezpečenou adresu, pokud vůbec nevěří tomu, o co jde.

Kromě toho společnost Revault vyžaduje, aby při vyřazení z trezoru, kdy nastane časový zámek, uživatelé okamžitě vytvořili transakci z horké peněženky, což také vyžaduje, aby se server podepsal. Server je naprogramován tak, aby podepsal jakoukoli transakci, ale nikdy konfliktní transakci, takže pokud by útočník prolomil (jak trezor, tak i) horkou peněženku, musel by se pokusit získat mince dříve než kdokoli jiný a než vyprší časový zámek. To by mělo být zřejmé, pokud je horká peněženka ohrožena, což znepokojuje skupinu uživatelů Revault a umožňuje jim přesměrovat prostředky před vypršením časového limitu.

Nyní je dobré začít používat taproot, protože se uvažuje o aktivaci

Taproot bude nastaven jako první upgrade bitcoinového protokolu od aktivace Segregated Witness v srpnu 2017. Nejprve navrhováno přispěvatel bitcoinového jádra Gregory Maxwell v lednu 2018, Taproot umožňuje uživatelům „skrýt“ chytré kontrakty v běžně vypadajících bitcoinových transakcích: složitou multisig konstrukci nelze odlišit od jednoduché platby.

Upgrade Taproot by také zahrnoval algoritmus Schnorr Signature. Mnoho kryptografů považuje Schnorrovo podpisové schéma za nejlepší v oboru, protože jeho matematické vlastnosti nabízejí silnou úroveň správnosti, netrpí tvárností a ověřuje se relativně rychle. „Lineární matematika“ společnosti Schnorr by také umožnila řadu nových možností, jako jsou kompaktnější typy multisig řešení, šikovné nastavení inteligentních kontraktů a samozřejmě samotný Taproot.

Po dalším vývoji v průběhu roku 2020 byl kód společnosti Taproot v říjnu sloučen do základny kódů Bitcoin Core a bude součástí Bitcoin Core 0.21.0, který má být vydán každý den, přičemž aktuálně jsou k dispozici kandidáti na vydání. Bitcoin Core 0.21.0 však nebude obsahovat aktivační logiku pro Taproot. To bude pravděpodobně zahrnuto do nadcházejícího menšího vydání Bitcoin Core (pravděpodobně Bitcoin Core 0.21.1).

Samotná aktivační logika byla po většinu roku 2020 tématem diskuse, avšak s řadou možností aktivační mechanismy v úvahu. Většina z nich by zpočátku využívala koordinaci hašovací síly, aby nakonec dosáhla termínu, kdy se aktualizace aktivuje i bez podpory hashové síly. Ale jako říjen Průzkum zveřejněný přispěvatelem Bitcoin Core AJ Towns objasnil, ne všichni přispěvatelé Bitcoin Core souhlasí s tím, že termín by měl být předem naprogramován nebo jak daleko by měl být termín (stejně jako některé další drobné neshody).

Ale bez ohledu na to, který aktivační mechanismus je nakonec zvolen, zdá se stále pravděpodobnější, že Taproot může být aktivován hladce prostřednictvím koordinace hash síly. V listopadu zahájila velká těžební skupina Poolin iniciativu, která vyzvala ostatní těžební fondy, aby vyjádřily svůj názor na Taproot a aktivaci Taproot. The Odezva zatím je velmi příznivý pro Taproot, s podporou více než 90 procent celkové hash síly a proti navrhovanému upgradu nejsou žádné těžební fondy.

Pro ještě obsáhlejší a podrobnější shrnutí technologického vývoje bitcoinů do roku 2020 viz také Bitcoin Optech 2020 Year-in-Review Special.