|
| 1 | +--- |
| 2 | +title: 'Zpravodaj „Bitcoin Optech” č. 347' |
| 3 | +permalink: /cs/newsletters/2025/03/28/ |
| 4 | +name: 2025-03-28-newsletter-cs |
| 5 | +slug: 2025-03-28-newsletter-cs |
| 6 | +type: newsletter |
| 7 | +layout: newsletter |
| 8 | +lang: cs |
| 9 | +--- |
| 10 | +Zpravodaj tento týden popisuje návrh na rozšíření LN o podporu |
| 11 | +poplatků předem a za držení založených na spalitelných výstupech, |
| 12 | +shrnuje diskuzi o testnetech 3 a 4 (včetně návrhu na hard fork) |
| 13 | +a oznamuje záměr začít přeposílat určité transakce s taprootovými |
| 14 | +přílohami. Též nechybí naše pravidelné rubriky se souhrnem vybraných |
| 15 | +otázek a odpovědí z Bitcoin Stack Exchange, oznámeními nových vydání |
| 16 | +a popisem významných změn v populárních bitcoinových páteřních projektech. |
| 17 | + |
| 18 | +## Novinky |
| 19 | + |
| 20 | +- **Poplatky předem a za držení v LN použitím spalitelných výstupů:** John Law |
| 21 | + zaslal do fóra Delving Bitcoin [příspěvek][law fees] se souhrnem svého |
| 22 | + [článku][law fee paper] o protokolu, který mohou uzly použít pro |
| 23 | + vyžadování dvou nových druhů poplatků za přeposílání plateb. |
| 24 | + Konečný odesílatel by platil _poplatek předem_ (upfront fee) jako odměnu |
| 25 | + přeposílajícím uzlům za dočasné využívání _HTLC slotu_ (tedy jednoho z omezeného |
| 26 | + počtu souběžných alokací dostupných v kanálu pro vynucování [HTLC][topic |
| 27 | + htlc]). Uzel, který pozdrží urovnání HTLC, by platil _poplatek za držení_ |
| 28 | + (hold fee), jehož výše by byla úměrná délce držení až do dosažení |
| 29 | + maximální částky v okamžiku expirace HTLC. Jeho příspěvek i článek citují |
| 30 | + několik předchozích diskuzí o těchto poplatcích, včetně těch shrnutých |
| 31 | + ve zpravodajích [č. 86][news86 reverse upfront], [č. 119][news119 trusted |
| 32 | + upfront], [č. 120][news120 upfront], [č. 122][news122 bi-directional], |
| 33 | + [č. 136][news136 more fee] (vše _angl._) a [č. 263][news263 dos philosophy]. |
| 34 | + |
| 35 | + Navržený protokol staví na myšlenkách Lawova protokolu _offchain vyrovnávání |
| 36 | + plateb_ (offchain payment resolution, OPR, viz [zpravodaj č. 329][news329 opr]), |
| 37 | + dle kterého každý ze spoluvlastníků kanálu alokuje 100 % dotyčných prostředků |
| 38 | + (tedy 200 % dohromady) na _spalitelný výstup_, který může být kterýmkoliv |
| 39 | + z nich jednostranně zničen. Dotyčnými prostředky jsou v tomto případě |
| 40 | + poplatky předem plus maximální poplatky za držení. Pokud jsou později |
| 41 | + obě strany spokojené s postupem protokolu, např. pokud jsou všechny |
| 42 | + poplatky řádně zaplacené, odstraní spalitelný výstup z budoucích verzí |
| 43 | + svých offchain transakcí. Je-li některá ze stran nespokojená, zavře |
| 44 | + kanál a zničí spalitelné prostředky. I když v tomto případě nespokojená |
| 45 | + strana též tratí, stejně tak je tomu u druhé strany, žádná strana tedy |
| 46 | + na porušení protokolu nevydělá. |
| 47 | + |
| 48 | + Law popisuje tento protokol jako řešení [útoků zahlcením kanálu][topic |
| 49 | + channel jamming attacks], zranitelnosti poprvé [popsané][russell loop] před |
| 50 | + téměř deseti lety, která útočníkovi umožňuje téměř bez nákladů bránit |
| 51 | + druhé straně ve využívání jeho prostředků. Jedna [odpověď][harding fee] |
| 52 | + poznamenala, že díky přidání poplatků za držení jsou [pozdržené faktury][topic |
| 53 | + hold invoices] pro síť udržitelnější. |
| 54 | + |
| 55 | +- **Diskuze o testnetech 3 a 4:** Sjors Provoost zaslal do emailové skupiny |
| 56 | + Bitcoin-Dev [příspěvek][provoost testnet3] s dotazem, zda šest měsíců po |
| 57 | + aktivaci testnet4 (viz [zpravodaj č. 315][news315 testnet4]) stále někdo |
| 58 | + používá testnet3. Andres Schildbach ve své [odpovědi][schildbach testnet3] popisuje |
| 59 | + záměr pokračovat nejméně další rok v používání testnet3 v testovací verzi jeho |
| 60 | + populární peněženky. Olaoluwa Osuntokun [poznamenal][osuntokun testnet3], |
| 61 | + že testnet3 je poslední dobou mnohem stabilnější než testnet4, což ilustroval |
| 62 | + na přiloženém screenshotu webové stránky [Fork.Observer][] obsahující strom bloků |
| 63 | + z obou testnetů. Níže přikládáme náš vlastní screenshot ukazující stav |
| 64 | + testnet4 v době psaní: |
| 65 | + |
| 66 | +  |
| 67 | + |
| 68 | + Po Osuntokunově příspěvku začal Antoine Poinsot [nové vlákno][poinsot testnet4] |
| 69 | + soustřeďující se na problémy s testnet4. Dle jeho názoru jsou problémy |
| 70 | + s testnet4 důsledkem pravidla resetování složitosti. Toto pravidlo (týkající |
| 71 | + se pouze testnetů) umožňuje, aby byl blok validní i s minimální složitostí, |
| 72 | + pokud je časové razítko v jeho hlavičce 20 minut po předchozím bloku. |
| 73 | + Provoost v popisu problémů zachází ještě [hlouběji][provoost testnet4]. |
| 74 | + Poinsot navrhuje, aby hard fork testnet4 toto pravidlo odstranil. Mark Erhardt |
| 75 | + [navrhuje][erhardt testnet4] jako jeho datum 8. ledna 2026. |
| 76 | + |
| 77 | +- **Plán na přeposílání některých taprootových příloh:** Peter Todd v emailové skupině |
| 78 | + Bitcoin-Dev [oznámil][todd annex], že plánuje v Libre Relay, svém uzlu založeném |
| 79 | + na Bitcoin Core, přeposílat transakce obsahující taprootové [přílohy][topic annex] |
| 80 | + (annex), pokud jsou splněna tato dvě pravidla: |
| 81 | + |
| 82 | + - _Prefix 0x00:_ „Všechny neprázdné přílohy začínají bajtem 0x00, aby byly odlišeny |
| 83 | + od budoucích příloh týkajících se konsenzu.” |
| 84 | + |
| 85 | + - _Žádné nebo všechny:_ „Všechny vstupy obsahují přílohu. To zajistí, aby byly přílohy |
| 86 | + volitelné, což v protokolech s více stranami zabrání [pinningu transakcí][topic |
| 87 | + transaction pinning].” |
| 88 | + |
| 89 | + Plán je založen na [pull requestu][bitcoin core #27926] z roku 2023 od Joosta |
| 90 | + Jagera, který je dále založen na předchozí diskuzi započaté Jagerem |
| 91 | + (viz [zpravodaj č. 255][news255 annex]). V Jagerových slovech měl předchozí |
| 92 | + pull request také „omezení maximální velikosti nestrukturovaných dat v příloze |
| 93 | + na 256 bajtů, […] což má účastníky chránit v transakci s více stranami, |
| 94 | + která používá tuto přílohu proti nafukování příloh.” Toddova verze toto |
| 95 | + pravidlo neobsahuje, protože věří, že „požadavek na volitelnost příloh by |
| 96 | + měl být dostatečný.” Pokud by nebyl, učinil by v přeposílání další změny. |
| 97 | + |
| 98 | + V době psaní zpravodaje ve vlákně nikdo nepopsal, jak by příloh využil. |
| 99 | + |
| 100 | +## Vybrané otázky a odpovědi z Bitcoin Stack Exchange |
| 101 | + |
| 102 | +*[Bitcoin Stack Exchange][bitcoin.se] je jedním z prvních míst, kde hledají |
| 103 | +přispěvatelé Optechu odpovědi na své otázky a kde – najdou-li volnou chvíli – |
| 104 | +pomáhají zvědavým či zmateným uživatelům. V této měsíční rubrice nabízíme |
| 105 | +některé z otázek a odpovědí, které obdržely vysoký počet hlasů.* |
| 106 | + |
| 107 | +{% comment %}<!-- https://bitcoin.stackexchange.com/search?tab=votes&q=created%3a1m..%20is%3aanswer -->{% endcomment %} |
| 108 | +{% assign bse = "https://bitcoin.stackexchange.com/a/" %} |
| 109 | + |
| 110 | +- [Proč je commitment witnessu volitelný?]({{bse}}125948) |
| 111 | + Pieter Wuille a Antoine Poinsot vysvětlují [BIP30][] „duplikované transakce”, |
| 112 | + [BIP34][] „blok v2 a výšku v coinbase” a souvislost [pročištění konsenzu][topic consensus |
| 113 | + cleanup] s [problémem bloku 1 983 702][topic duplicate transactions] a jak by |
| 114 | + povinný commitment witnessu tento problém řešil. |
| 115 | + |
| 116 | +- [Mohou být všechny platné 64bajtové transakce pozměněny třetí stranou ke zvýšení velikosti?]({{bse}}125971) |
| 117 | + Sjors Provoost zkoumá myšlenku poddajnosti libovolné [64bajtové transakce][news27 64tx], |
| 118 | + která by byla konsenzuálně nevalidní, pokud by byl aktivován soft fork |
| 119 | + [pročištění konsenzu][topic consensus cleanup]. Antoine Poinsot dodává, že takovým |
| 120 | + transakcím je možné přidat více vstupů nebo výstupů a zvýšit jejich velikost. |
| 121 | + |
| 122 | +- [Jak dlouho trvá transakci propagace celou sítí?]({{bse}}125776) |
| 123 | + Sr_gi poznamenává, že jediný uzel není schopen čas propagace celou sítí měřit |
| 124 | + a že by pro měření a odhad bylo potřeba mít přístup k více uzlům. Dodává, že |
| 125 | + [webová stránka][dsn kit], kterou provozuje Decentralized Systems and Network Services |
| 126 | + Research Group při KIT, měří mimo jiné čas propagace transakcí: „transakci trvá |
| 127 | + kolem sedmi sekund dosáhnout 50 % sítě a potřebuje kolem 17 sekund na 90 %.” |
| 128 | + |
| 129 | +- [Použitelnost dlouhodobých odhadů poplatků]({{bse}}124227) |
| 130 | + Abubakar Sadiq Ismail hledá pro svou práci na [odhadování poplatků][topic |
| 131 | + fee estimation] zpětnou vazbu od projektů, protokolů nebo uživatelů, |
| 132 | + kteří na dlouhodobé odhady spoléhají. |
| 133 | + |
| 134 | +- [Proč jsou v LN používány dva anchor výstupy?]({{bse}}125883) |
| 135 | + Instagibbs nabízí historický kontext [anchor výstupů][topic anchor outputs] |
| 136 | + používaných v současnosti v LN a dodává, že se změnami [pravidel Bitcoin Core |
| 137 | + v 28.0][28.0 wallet guide] se plánuje update na [v3 commitmenty][topic v3 commitments]. |
| 138 | + |
| 139 | +- [Proč nejsou v 2xx rozsahu žádné BIPy?]({{bse}}125914) |
| 140 | + Michael Folkson poznamenává, že BIP čísla 200–299 byla v jednu chvíli |
| 141 | + rezervována pro Lightning Network. |
| 142 | + |
| 143 | +- [Proč není v Bech32 používáno písmeno „b”?]({{bse}}125902) |
| 144 | + Bordalix v odpovědi poznamenává, že kvůli podobnosti s „8” není „B” ve formátech |
| 145 | + [bech32 a bech32m][topic bech32] povoleno. Dále poskytuje další informace o bech32. |
| 146 | + |
| 147 | +- [Referenční implementace detekce a korekce chyb z Bech32]({{bse}}125961) |
| 148 | + Pieter Wuille poznamenává, že bech32 umí v adrese detekovat až čtyři chyby a opravit |
| 149 | + dvě. |
| 150 | + |
| 151 | +- [Jak bezpečně utratit/propálit prach?]({{bse}}125702) |
| 152 | + Murch vyjmenovává, co je třeba uvážit během pokusu o odeslání [prachu][topic |
| 153 | + uneconomical outputs] z existující peněženky. |
| 154 | + |
| 155 | +- [Jak je konstruována refundovací transakce v asymetrických revokovatelných commitmentech?]({{bse}}125905) |
| 156 | + Biel Castellarnau prochází příklady commitment transakcí z knihy Mastering Bitcoin. |
| 157 | + |
| 158 | +- [Které aplikace používají ZMQ s Bitcoin Core?]({{bse}}125920) |
| 159 | + Sjors Provoost hledá uživatele ZMQ služeb poskytovaných Bitcoin Core v rámci |
| 160 | + zjišťování, zda by [IPC][news320 ipc] mohlo jeho používání nahradit. |
| 161 | + |
| 162 | +## Vydání nových verzí |
| 163 | + |
| 164 | +*Vydání nových verzí oblíbených páteřních bitcoinových projektů. Prosíme, |
| 165 | +zvažte upgrade či pomoc s testováním.* |
| 166 | + |
| 167 | +- [Bitcoin Core 29.0rc2][] je kandidátem na vydání příští hlavní verze převládající |
| 168 | + implementaci plného uzlu. Viz též [průvodce testováním verze 29][bcc29 testing guide]. |
| 169 | + |
| 170 | +- [LND 0.19.0-beta.rc1][] je kandidátem na vydání tohoto oblíbeného LN uzlu. |
| 171 | + Jedním významným vylepšením, které by si zasloužilo důkladné testování, je |
| 172 | + nové schéma RBF navyšování poplatků během kooperativního zavření kanálu |
| 173 | + popsané níže ve významných změnách. |
| 174 | + |
| 175 | +## Významné změny kódu a dokumentace |
| 176 | + |
| 177 | +_Významné změny z tohoto týdne v [Bitcoin Core][bitcoin core repo], [Core |
| 178 | +Lightning][core lightning repo], [Eclair][eclair repo], [LDK][ldk repo], |
| 179 | +[LND][lnd repo], [libsecp256k1][libsecp256k1 repo], [Hardware Wallet |
| 180 | +Interface (HWI)][hwi repo], [Rust Bitcoin][rust bitcoin repo], [BTCPay |
| 181 | +Server][btcpay server repo], [BDK][bdk repo], [Bitcoin Improvement |
| 182 | +Proposals (BIPs)][bips repo], [Lightning BOLTs][bolts repo], |
| 183 | +[Lightning BLIPs][blips repo], [Bitcoin Inquisition][bitcoin inquisition |
| 184 | +repo] a [repozitáři BINANA][binana repo]._ |
| 185 | + |
| 186 | +- [Bitcoin Core #31603][] bude odmítat veřejné klíče začínající nebo končící |
| 187 | + mezerou během parsování v `ParsePubkeyInner`. Tím bude mít stejné chování jako |
| 188 | + [rust-miniscript][rust miniscript]. Přidávat nahodile mezery by nemělo být |
| 189 | + díky ochraně kontrolním součtem možné. RPC příkazy `getdescriptorinfo` a |
| 190 | + `importdescriptors` budou nově hlásiti chybu, pokud veřejný klíč v |
| 191 | + [deskriptoru][topic descriptors] bude obsahovat mezeru. |
| 192 | + |
| 193 | +- [Eclair #3044][] navyšuje minimální počet konfirmací pro založení kanálu z šesti |
| 194 | + na osm z důvodu zabezpečení. Dále odstraňuje změny této hodnoty v přímé |
| 195 | + úměře k částce, protože kapacita kanálu se může během [splicingu][topic splicing] |
| 196 | + výrazně měnit a uzel by tak mohl přijmout nízký počet konfirmací i pro |
| 197 | + vysoké částky. |
| 198 | + |
| 199 | +- [Eclair #3026][] přidává podporu pro peněženky Bitcoin Core používající |
| 200 | + [Pay-to-Taproot (P2TR)][topic taproot] adresy včetně peněženek pouze pro sledování |
| 201 | + spravované Eclairem. Jedná se o základ pro implementaci [jednoduchých taprootových |
| 202 | + kanálů][topic simple taproot channels]. Pro některá kooperativní zavření kanálu |
| 203 | + jsou stále vyžadované P2WPKH skripty i s P2TR peněženkami. |
| 204 | + |
| 205 | +- [LDK #3649][] přidává podporu pro placení poskytovatelům lightningových služeb (LSP) |
| 206 | + [BOLT12 nabídkami][topic offers]. Dříve to bylo možné pouze pomocí [BOLT11][] a |
| 207 | + onchain plateb. Viz též návrh v [BLIPs #59][]. |
| 208 | + |
| 209 | +- [LDK #3665][] navyšuje maximální přípustnou velikost [BOLT11][] faktury z 1 023 bajtů |
| 210 | + na 7 089 bajtů, což odpovídá limitu v LND. Tato hodnota je založena na maximálním |
| 211 | + množství bajtů, které se mohou vměstnat do QR kódu. Autor PR se domnívá, že QR |
| 212 | + kódy kompatibilní s kódováním v BOLT11 fakturách jsou ve skutečnosti omezené na |
| 213 | + 4 296 znaků, ale hodnota 7 089 byla zvolena, protože „široký soulad je asi |
| 214 | + důležitější.” |
| 215 | + |
| 216 | +- [LND #8453][], [#9559][lnd #9559], [#9575][lnd #9575], [#9568][lnd |
| 217 | + #9568] a [LND #9610][] přináší kooperativní zavření s [RBF][topic rbf] dle |
| 218 | + [BOLTs #1205][] (viz [zpravodaj č. 342][news342 closev2]), které umožní |
| 219 | + kterékoliv straně navýšit poplatek použitím svých vlastních prostředků v kanálu. |
| 220 | + Dříve musela někdy jedna ze stran přesvědčit druhou, aby zaplatila za navýšení |
| 221 | + poplatku, což často vyústilo v selhání. Pro použití musí být aktivní konfigurační |
| 222 | + příznak `protocol.rbf-coop-close`. |
| 223 | + |
| 224 | +- [BIPs #1792][] přináší změny do [BIP119][], který specifikuje |
| 225 | + [OP_CHECKTEMPLATEVERIFY][topic op_checktemplateverify]. Objasňuje text, odstraňuje |
| 226 | + logiku aktivace, mění zmínky o Eltoo na [LN-Symmetry][topic eltoo] a nově zmiňuje |
| 227 | + nové návrhy [kovenantů][topic covenants] a projektů jako [Ark][topic ark], které `OP_CTV` |
| 228 | + používají. |
| 229 | + |
| 230 | +- [BIPs #1782][] zvyšuje čitelnost a zřetelnost specifikace [BIP94][], který vypisuje pravidla |
| 231 | + konsenzu v [testnet4][topic testnet]. |
| 232 | + |
| 233 | +{% include snippets/recap-ad.md when="2025-04-01 15:30" %} |
| 234 | +{% include references.md %} |
| 235 | +{% include linkers/issues.md v=2 issues="31603,3044,3026,3649,3665,9610,1792,1782,27926,59,8453,9559,9575,9568,1205" %} |
| 236 | +[bitcoin core 29.0rc2]: https://bitcoincore.org/bin/bitcoin-core-29.0/ |
| 237 | +[bcc29 testing guide]: https://github.com/bitcoin-core/bitcoin-devwiki/wiki/29.0-Release-Candidate-Testing-Guide |
| 238 | +[lnd 0.19.0-beta.rc1]: https://github.com/lightningnetwork/lnd/releases/tag/v0.19.0-beta.rc1 |
| 239 | +[news255 annex]: /cs/newsletters/2023/06/14/#diskuze-o-taprootovych-prilohach |
| 240 | +[news315 testnet4]: /cs/newsletters/2024/08/09/#bitcoin-core-29775 |
| 241 | +[fork.observer]: https://fork.observer/ |
| 242 | +[law fees]: https://delvingbitcoin.org/t/fee-based-spam-prevention-for-lightning/1524/ |
| 243 | +[law fee paper]: https://github.com/JohnLaw2/ln-spam-prevention |
| 244 | +[news329 opr]: /cs/newsletters/2024/11/15/#protokol-pro-offchain-vyrovnavani-plateb-zalozeny-na-mad |
| 245 | +[harding fee]: https://delvingbitcoin.org/t/fee-based-spam-prevention-for-lightning/1524/4 |
| 246 | +[provoost testnet3]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 247 | +[schildbach testnet3]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 248 | +[osuntokun testnet3]: https://groups.google.com/g/bitcoindev/c/jYBlh24OB-Y/m/vbensqcZAwAJ |
| 249 | +[poinsot testnet4]: https://mailing-list.bitcoindevs.xyz/bitcoindev/hU75DurC5XToqizyA-vOKmVtmzd3uZGDKOyXuE_ogE6eQ8tPCrvX__S08fG_nrW5CjH6IUx7EPrq8KwM5KFy9ltbFBJZQCHR2ThoimRbMqU=@protonmail.com/ |
| 250 | +[provoost testnet4]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 251 | +[erhardt testnet4]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 252 | +[todd annex]: https://mailing-list.bitcoindevs.xyz/bitcoindev/[email protected]/ |
| 253 | +[russell loop]: https://diyhpl.us/~bryan/irc/bitcoin/bitcoin-dev/linuxfoundation-pipermail/lightning-dev/2015-August/000135.txt |
| 254 | +[news263 dos philosophy]: /cs/newsletters/2023/08/09/#navrh-na-ochranu-pred-odeprenim-sluzby-dos |
| 255 | +[news136 more fee]: /en/newsletters/2021/02/17/#renewed-discussion-about-bidirectional-upfront-ln-fees |
| 256 | +[news122 bi-directional]: /en/newsletters/2020/11/04/#bi-directional-upfront-fees-for-ln |
| 257 | +[news86 reverse upfront]: /en/newsletters/2020/02/26/#reverse-up-front-payments |
| 258 | +[news119 trusted upfront]: /en/newsletters/2020/10/14/#trusted-upfront-payment |
| 259 | +[news120 upfront]: /en/newsletters/2020/10/21/#more-ln-upfront-fees-discussion |
| 260 | +[rust miniscript]: https://github.com/rust-bitcoin/rust-miniscript |
| 261 | +[news342 closev2]: /cs/newsletters/2025/02/21/#bolts-1205 |
| 262 | +[rust miniscript]: https://github.com/rust-bitcoin/rust-miniscript |
| 263 | +[dsn kit]: https://www.dsn.kastel.kit.edu/bitcoin/#propdelaytx |
| 264 | +[28.0 wallet guide]: /cs/bitcoin-core-28-wallet-integration-guide/ |
| 265 | +[news320 ipc]: /cs/newsletters/2024/09/13/#bitcoin-core-30509 |
| 266 | +[news27 64tx]: /en/newsletters/2018/12/28/#cve-2017-12842 |
0 commit comments