|
| 1 | +--- |
| 2 | +title: 'Zpravodaj „Bitcoin Optech” č. 303' |
| 3 | +permalink: /cs/newsletters/2024/05/17/ |
| 4 | +name: 2024-05-17-newsletter-cs |
| 5 | +slug: 2024-05-17-newsletter-cs |
| 6 | +type: newsletter |
| 7 | +layout: newsletter |
| 8 | +lang: cs |
| 9 | +--- |
| 10 | +Zpravodaj tento týden představuje nové schéma pro anonymní tokeny užívání, které |
| 11 | +by mohly být použity pro oznamování LN kanálů a v několika dalších koordinačních |
| 12 | +protokolech odolných vůči sybilím útokům, odkazuje na diskuzi o novém schématu |
| 13 | +rozdělování BIP39 vět seedu, oznamuje alternativu k BitVM pro ověřování úspěšného |
| 14 | +spuštění libovolných programů v interaktivních kontraktových protokolech |
| 15 | +a sdílí návrhy na aktualizaci procesu tvorby BIPů. |
| 16 | + |
| 17 | +## Novinky |
| 18 | + |
| 19 | +- **Anonymní tokeny užívání:** Adam Gibson zaslal do fóra Delving Bitcoin |
| 20 | + [příspěvek][gibson autct] o schématu, které vyvinul a které umožní komukoliv, |
| 21 | + kdo je schopen [utratit klíčem][topic taproot] nějaké UTXO, aby prokázal možnost |
| 22 | + utratit jej bez nutnosti konkrétní UTXO odhalit. Tato práce navazuje na Gibsonův |
| 23 | + předchozí vývoj [PoDLE][news85 podle], mechanismu proti sybilímu útoku (je |
| 24 | + používán v implementaci [coinjoinu][topic coinjoin] Joinmarket), a [RIDDLE][news205 riddle]. |
| 25 | + |
| 26 | + Jednou možností použití, kterou popisuje, je oznamování LN kanálů. Každý LN |
| 27 | + uzel oznamuje ostatním uzlům své kanály, aby mohly nalézt cesty sítí pro platby. |
| 28 | + Část těchto informací o kanálu je uložena v paměti a oznámení jsou často |
| 29 | + posílána opakovaně, aby bylo zajištěno, že dosáhnou co největšího počtu uzlů. |
| 30 | + Byl-li by útočník schopen levně produkovat oznámení o falešných kanálech, |
| 31 | + narušoval by tím hledání cest a plýtval by významným množstvím paměti a přenosového |
| 32 | + pásma čestných uzlů. LN uzly se proti tomu brání tím, že akceptují pouze oznámení |
| 33 | + podepsaná klíčem, který patří validnímu UTXO. To po vlastnících kanálu požaduje, |
| 34 | + aby identifikovali konkrétní UTXO, které spolu vlastní. Kvůli tomu lze |
| 35 | + asociovat prostředky kanálu s jinými minulými i budoucími onchain transakcemi, |
| 36 | + které vytvoří (nebo někdo může kvůli tomu vytvořit nepřesné asociace). |
| 37 | + |
| 38 | + Gibsonovo schéma, nazývané anonymní tokeny užívání se stromy křivek |
| 39 | + (anonymous usage tokens with curve trees, autct), umožňuje spoluvlastníkům |
| 40 | + kanálu podepsat zprávu, aniž by museli odhalit své UTXO. Útočník bez UTXO |
| 41 | + by nemohl takový validní podpis vytvořit. Útočník, který UTXO má k dispozici, |
| 42 | + by validní podpis vytvořit mohl, avšak musel by v něm držet tolik prostředků, |
| 43 | + kolik by uzel musel držet v kanálu. To omezuje dopady útoku v nejhorším možném |
| 44 | + případě. [Zpravodaj č. 261][news261 lngossip] obsahuje předchozí diskuzi |
| 45 | + o přerušení vztahu mezi [oznámeními kanálu][topic channel announcements] |
| 46 | + a konkrétními UTXO. |
| 47 | + |
| 48 | + Gibson dále popisuje několik dalších možných způsobů použití autct. Základní |
| 49 | + mechanismus pro podobný druh soukromí – kruhové podpisy (ring signatures) – |
| 50 | + je známý již dlouho. Avšak Gibson používá nový kryptografický konstrukt |
| 51 | + ([curve trees][], stromy křivek), díky kterému jsou důkazy kompaktnější |
| 52 | + a rychlejší na ověření. Každý důkaz skrytě zavazuje použitému klíči, |
| 53 | + jediné UTXO tedy nemůže vytvořit neomezený počet validních podpisů. |
| 54 | + |
| 55 | + Vedle [kódu][autct repo] zveřejnil Gibson také [fórum][hodlboard] jako |
| 56 | + ověření konceptu, které pro zaregistrování vyžaduje poskytnutí autct |
| 57 | + důkazu. Výsledkem je prostředí, kde je o každém účastníkovi známo, |
| 58 | + že vlastní bitcoiny, ale nikdo nemusí poskytnout žádné další informace |
| 59 | + o sobě či svých bitcoinech. |
| 60 | + |
| 61 | +- **Dělení BIP39 vět seedu:** Rama Gan zaslal do emailové skupiny |
| 62 | + Bitcoin-Dev odkaz na [sadu nástrojů][penlock website] pro generování |
| 63 | + a dělení [BIP39][] vět seedu bez nutnosti používání jakýchkoliv |
| 64 | + elektronických výpočetních zařízení (kromě tisku instrukcí a šablon). |
| 65 | + Podobá se schématu [codex32][topic codex32], ale pracuje s BIP39, |
| 66 | + které jsou kompatibilní s téměř všemi současnými hardwarovými |
| 67 | + podpisovými zařízeními a mnoha softwarovými peněženkami. |
| 68 | + |
| 69 | + Andrew Poelstra, spoluautor codex32, poskytl v [odpovědi][poelstra penlock1] |
| 70 | + několik komentářů a návrhů. Bez vyzkoušení obou schémat (každé |
| 71 | + by zabralo několik hodin) nám není přesně známo, kde každé z nich |
| 72 | + učinilo kompromisy. Avšak zdá se, že obě dvě v základu nabízejí shodné |
| 73 | + možnosti: instrukce pro bezpečné offline generování seedu, možnost |
| 74 | + rozdělit seed do několika částí pomocí [Shamirova sdílení tajných dat][sss], |
| 75 | + schopnost spojit části do původního seedu a schopnost ověřit kontrolní |
| 76 | + součty jednotlivých částí i původního seedu, čímž může uživatel odhalit |
| 77 | + poškození dat dostatečně brzy na to, aby původní data mohl stále obnovit. |
| 78 | + |
| 79 | +- **Alternativa k BitVM:** Sergio Demian Lerner se spoluautory zaslali |
| 80 | + do emailové skupiny Bitcoin-Dev [příspěvek][lerner bitvmx] o nové |
| 81 | + virtuální procesorové architektuře částečně založené na myšlenkách |
| 82 | + stojících za [BitVM][topic acc]. Cílem jejich projektu nazvaného |
| 83 | + BitVMX je efektivně vytvářet doklady o řádném provedení nějakého |
| 84 | + programu, který může být zkompilován pro běh na běžné procesorové |
| 85 | + architektuře, jako je [RISC-V][]. Podobně jako BitVM nevyžaduje ani |
| 86 | + BitVMX změny konsenzu, ale potřebuje, aby se jedna či více určených |
| 87 | + stran ujaly role důvěryhodného ověřovatele. Znamená to, že skupina uživatelů, |
| 88 | + kteří se interaktivně účastní protokolu, může zabránit jednomu (či více) |
| 89 | + z účastníků ve výběru peněz z kontraktu, dokud tento účastník úspěšně |
| 90 | + nespustí libovolný program specifikovaný tímto kontraktem. |
| 91 | + |
| 92 | + Lerner odkazuje na [článek][bitvmx paper] o BitVMX, který jej porovnává |
| 93 | + s původním BitVM (viz [zpravodaj č. 273][news273 bitvm]) a (i přes nedostupné |
| 94 | + podrobnosti) k následným projektům původních vývojářů BitVM. Doprovodná |
| 95 | + [webová stránka][bitvmx website] poskytuje dodatečné informace v méně |
| 96 | + technické podobě. |
| 97 | + |
| 98 | +- **Diskuze o změnách BIP2 pokračuje:** Mark „Murch” Erhardt |
| 99 | + [pokračuje][erhardt bip2] v emailové skupině Bitcoin-Dev v diskuzi |
| 100 | + o změnách [BIP2][], což je dokument, který popisuje proces navrhování |
| 101 | + a schvalování BIP, návrhů na zlepšení bitcoinu. Jeho email popisuje |
| 102 | + několik problémů, navrhuje řešení mnoha z nich a žádá o poskytnutí |
| 103 | + zpětné vazby. [Zpravodaj č. 297][news297 bip2] popisuje předchozí |
| 104 | + diskuzi o změnách BIP2. |
| 105 | + |
| 106 | +## Vydání nových verzí |
| 107 | + |
| 108 | +*Vydání nových verzí oblíbených páteřních bitcoinových projektů. Prosíme, |
| 109 | +zvažte upgrade či pomoc s testováním.* |
| 110 | + |
| 111 | +- [LND v0.18.0-beta.rc2][] je kandidátem na vydání příští hlavní verze |
| 112 | + tohoto oblíbeného LN uzlu. |
| 113 | + |
| 114 | +## Významné změny kódu a dokumentace |
| 115 | + |
| 116 | +_Významné změny z tohoto týdne v [Bitcoin Core][bitcoin core repo], [Core |
| 117 | +Lightning][core lightning repo], [Eclair][eclair repo], [LDK][ldk repo], |
| 118 | +[LND][lnd repo], [libsecp256k1][libsecp256k1 repo], [Hardware Wallet |
| 119 | +Interface (HWI)][hwi repo], [Rust Bitcoin][rust bitcoin repo], [BTCPay |
| 120 | +Server][btcpay server repo], [BDK][bdk repo], [Bitcoin Improvement |
| 121 | +Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], |
| 122 | +[Bitcoin Inquisition][bitcoin inquisition repo] a [repozitáři BINANA][binana |
| 123 | +repo]._ |
| 124 | + |
| 125 | +- [Core Lightning #7190][] přidává do výpočtu hodnoty časového zámku [HTLC][topic htlc] |
| 126 | + dodatečný offset (nazývaný `chainlag`). To umožní HTLC cílit aktuální výšku bloku namísto |
| 127 | + výšky, kterou uzel naposledy zpracoval. Díky tomu mohou být platby bezpečné |
| 128 | + i během synchronizace blockchainu. |
| 129 | + |
| 130 | +- [LDK #2973][] přidává do `OnionMessenger`u podporu pro zachycování [onion zpráv][topic |
| 131 | + onion messages] určených pro offline uzly. Generuje události při zachycení zprávy a když |
| 132 | + je spojení opět online. Uživatelé by měli udržovat seznam spojení, pro která se budou |
| 133 | + zprávy ukládat. Jedná se o další krok v podpoře [asynchronních plateb][topic async payments] |
| 134 | + pomocí `held_htlc_available` ([BOLTs #989][]). Například Alice chce Carol |
| 135 | + poslat peníze přes Boba, ale Alice neví, zda je Carol online. Alice pošle Bobovi |
| 136 | + onion zprávu, Bob zprávu drží, dokud není Carol online. Nato Carol zprávu otevře |
| 137 | + a na základě ní pošle Alici (či jejímu poskytovateli služeb) žádost o platbu. |
| 138 | + Nakonec Alice Carol zaplatí běžným způsobem. |
| 139 | + |
| 140 | +- [LDK #2907][] rozšiřuje metodu zpracovávající `OnionMessage` o volitelný parametr |
| 141 | + `Responder` a mění její návratový typ na `ResponseInstructions`, který udává, jak |
| 142 | + má být s odpovědí na zprávu naloženo. Tato změna umožní asynchronní odpovědi |
| 143 | + na onion zprávy a otevírá dveře komplexnějším mechanismům odpovědí, jakou jsou |
| 144 | + ty potřebné pro [asynchronní platby][topic async payments]. |
| 145 | + |
| 146 | +- [BDK #1403][] upravuje modul `bdk_electrum` tak, aby používal nové sync/full-scan |
| 147 | + struktury představené v [BDK #1413][], dotazovatelné spojové seznamy `CheckPoint`ů |
| 148 | + ([BDK #1369][]) a snadno klonovatelné transakce zapouzdřené v `Arc` ([BDK #1373][]). |
| 149 | + Tato změna zvyšuje efektivitu skenování transakcí během používání podobných serverů, jako |
| 150 | + je Electrum. Dále nově umožňuje načíst předchozí výstupy, což umožní výpočet poplatků |
| 151 | + transakcí přijatých z externí peněženky. |
| 152 | + |
| 153 | + - [BIPs #1458][] přidává [BIP352][], který navrhuje [tiché platby][topic silent |
| 154 | + payments], protokol pro znovupoužitelné adresy generující při každém použití onchain |
| 155 | + unikátní adresu. Návrh BIPu byl poprvé diskutován ve [zpravodaji č. 255][news255 bip352]. |
| 156 | + |
| 157 | +{% assign day_after_posting = page.date | date: "%s" | plus: 86400 | date: "%Y-%m-%d 14:30" %} |
| 158 | +{% include snippets/recap-ad.md when="2024-05-21 14:30" %} |
| 159 | +{% include references.md %} |
| 160 | +{% include linkers/issues.md v=2 issues="7190,2973,2907,1403,1458,989,1413,1369,1373" %} |
| 161 | +[lnd v0.18.0-beta.rc2]: https://github.com/lightningnetwork/lnd/releases/tag/v0.18.0-beta.rc2 |
| 162 | +[gibson autct]: https://delvingbitcoin.org/t/anonymous-usage-tokens-from-curve-trees-or-autct/862/ |
| 163 | +[news261 lngossip]: /cs/newsletters/2023/07/26/#aktualizovana-oznameni-o-kanalech |
| 164 | +[news205 riddle]: /cs/newsletters/2022/06/22/#riddle-novy-system-proti-sybil-utokum |
| 165 | +[news85 podle]: /en/newsletters/2020/02/19/#using-podle-in-ln |
| 166 | +[curve trees]: https://eprint.iacr.org/2022/756 |
| 167 | +[autct repo]: https://github.com/AdamISZ/aut-ct |
| 168 | +[hodlboard]: https://hodlboard.org/ |
| 169 | +[gan penlock]: https://mailing-list.bitcoindevs.xyz/bitcoindev/9bt6npqSdpuYOcaDySZDvBOwXVq_v70FBnIseMT6AXNZ4V9HylyubEaGU0S8K5TMckXTcUqQIv-FN-QLIZjj8hJbzfB9ja9S8gxKTaQ2FfM=@proton.me/ |
| 170 | +[penlock website]: https://beta.penlock.io/ |
| 171 | +[poelstra penlock1]: https://mailing-list.bitcoindevs.xyz/bitcoindev/ZkIYXs7PgbjazVFk@camus/ |
| 172 | +[sss]: https://cs.wikipedia.org/wiki/%C5%A0amirovo_sd%C3%ADlen%C3%AD_tajemstv%C3%AD |
| 173 | +[lerner bitvmx]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 174 | +[risc-v]: https://cs.wikipedia.org/wiki/RISC-V |
| 175 | +[bitvmx paper]: https://bitvmx.org/files/bitvmx-whitepaper.pdf |
| 176 | +[news273 bitvm]: /cs/newsletters/2023/10/18/#platby-podminene-libovolnym-vypoctem |
| 177 | +[bitvmx website]: https://bitvmx.org/ |
| 178 | +[erhardt bip2]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 179 | +[news297 bip2]: /cs/newsletters/2024/04/10/#aktualizace-bip2 |
| 180 | +[news255 bip352]: /cs/newsletters/2023/06/14/#navrh-bip-na-tiche-platby |
0 commit comments