/ home / newsletters /
Zpravodaj „Bitcoin Optech” č. 407
Zpravodaj tento týden oznamuje zodpovědné nahlášení zranitelnosti, která vzdálenému spojení umožňovala shodit Core Lightning uzly, a odkazuje na přepisy nedávného setkání vývojářů Bitcoin Core. Též nechybí naše pravidelné rubriky s oznámeními nových vydání a s popisem významných změn v populárním bitcoinovém páteřním software.
Novinky
-
● Odhalení DoS zranitelnosti v Core Lightning: Chandra Pratap zaslal do fóra Delving Bitcoin příspěvek s odhalením zranitelnosti způsobující odepření služby objevené během Summer of Bitcoin 2025. Zranitelnost postihuje uzly Core Lightning, které přijímají příchozí kanály.
Během úvodní výměny informací pro otevření kanálů posílá protistrana zprávu s txid navrhované otevírací transakce. Core Lightning provádí assert kontrolu, zda je toto txid nenulové. Pokud uzel obdržel nulové txid, tato kontrola ho shodila. Jelikož proces otevírání kanálu může začít kterékoliv peer spojení, umožňovalo to vzdálenému útočníkovi spolehlivě shodit kterýkoliv zranitelný uzel, který příchozí kanály akceptoval.
Zranitelnost byla zodpovědně nahlášena a byla objevena pomocí fuzz testování. V době nahlášení pracoval Rusty Russell nezávisle na jiném problému pádu uzlu a jeho oprava též shodou okolností opravila tuto zranitelnost. Opravena byla v Core Lightning 26.04.
-
● Přepisy setkání vývojářů Bitcoin Core: v květnu se osobně setkalo množství vývojářů Bitcoin Core. Přepisy ze setkání byly zveřejněny. Diskutovanými tématy byly mimo jiné SwiftSync, doba po mempoolu clusterů, nový design Erlay, přeposílání balíčků, tiché platby, TCP hole punching (viz též zpravodaj č. 406), soukromé odesílání transakcí, moderní kryptografická knihovna a mutační testování.
Vydání nových verzí
Vydání nových verzí oblíbených páteřních bitcoinových projektů. Prosíme, zvažte upgrade či pomoc s testováním.
-
● Eclair v0.14.0 je nejnovějším vydáním této populární implementace LN uzlu. Obsahuje finální verze splicingu, jednoduchých taprootových kanálů a commitmentů s nulovými poplatky, odstraňuje podporu kanálů s neanchor výstupy a přidává experimentální hodnocení peer spojení pro optimalizaci likvidity a trasování.
-
● Core Lightning 26.06rc2 je kandidátem na vydání příští hlavní verze tohoto populárního LN uzlu. Obsahuje nová RPC volání
graceful,sendamountaxkeysend, započíná cyklus zastarání příkazupayve prospěchxpaya přidává podporu pro BOLT12 dokladů o platbě.
Významné změny kódu a dokumentace
Významné změny z tohoto týdne v Bitcoin Core, Core Lightning, Eclair, LDK, LND, libsecp256k1, Hardware Wallet Interface (HWI), Rust Bitcoin, BTCPay Server, BDK, Bitcoin Improvement Proposals (BIPs), Lightning BOLTs, Lightning BLIPs, Bitcoin Inquisition a repozitáři BINANA.
-
● Bitcoin Core #33966 mění způsob nakládání s volbami šablon bloků pro těžbu v IPC rozhraní Mining (viz též zpravodaje č. 310 a č. 323). Dříve byly volby spuštění jako
blockmaxweight,blockreservedweightablockmintxfeezpracovávány odděleně od běhových voleb, které byly předány těžebními klienty přes IPC. Nově jsou tyto volby přidány do sdíleného objektuBlockCreateOptionsběhem vytváření nebo změn šablon. Nevalidní kombinace (např. rezervovaná váha bloku převyšující maximální váhu) jsou nyní odmítány, místo aby byly v tichosti upraveny do validního rozsahu. -
● Bitcoin Core #34917 přestává v odpovědích na RPC
listtransactions,listsinceblockagettransactionvracet zastaralé polebip125-replaceable. Uživatelé si však toto pole mohou nadále vyžádat pomocí volby-deprecatedrpc=bip125. PR dále zastarává volbu spuštění-walletrbf, která nově vypíše varování. Volba bude odstraněna v příštím vydání. Zpravodaj č. 403 (angl.) popisuje jiná, dříve odstraněná pole související s RBF. -
● Bitcoin Core #35017 mění proces odesílání balíčků tak, aby pozdější transakce nezůstaly po neočekávané chybě validace v mempoolu. Během odesílání balíčku jsou transakce zpracovávány postupně, což pozdějším transakcím umožňuje utrácet dřívější transakce, které již byly přidány do mempoolu. Pokud dříve některá z transakcí neprošla pozdější validací (např. kontrolou skriptu dle konsenzu), Bitcoin Core z mempoolu odstranil pouze tu jednu transakci. Nově též odstraní všechny transakce umístěné v balíčku za ní. Tím zabrání, aby v mempoolu zůstávali potomci transakcí, jejichž předkové již byli odstraněni.
-
● BIPs #1944 přidává BIP449, pracovní verzi návrhu na soft fork pro přidání
OP_TWEAKADD. Jedná se o tapscriptový opkód pro počítání tweaknutého veřejného klíče pouze s x-ovou (x-only) souřadnicí (viz též zpravodaj č. 370, angl.). Mějme 32bajtový veřejný x-only klíčPa 32bajtový skalárt(tweak), potom opkód přidá do zásobníku x-only klíčP + tG. To by skriptům umožnilo napřímo vytvářet konstrukce jako skripty odhalující tweak, doklady o pořadí podepisování nebo protokoly delegace podepisování. -
● BIPs #2108 přidává BIP450 (Formosa), pracovní verzi specifikace kódování entropie peněženek v podobě krátkých vět. Namísto používání náhodných BIP39 slov používá Formosa seznamy slov definované tématem. Pro kódování entropie převede slova na krátké strukturované věty. Tyto krátké povídky mohou být dekódovány zpět do původní entropie a převedeny na standardní BIP39 frázi. Tím zaručuje soulad s BIP39.
-
● Eclair #3192 přidává experimentální podporu pro kanály s commitmenty s nulovými poplatky (zero-fee commitment, 0FC) dle specifikace popsané ve zpravodaji č. 404. Funkce je ve výchozím nastavení neaktivní, zapnuta může být volbou
eclair.features.zero_fee_commitments = optional. -
● LDK #4584 přidává
payment_metadatado BOLT12 zaslepených zpráv a do kontextu platebních cest. Jedná se o základ pro přenášení příjemcových metadat skrz zaslepené cesty a jejich získání při přijetí platby. Koncept je podobnýpayment_metadatav BOLT11. Vytváření faktur s metadaty zatím není podporováno. Metadata jsou uložena jako mapa číselných klíčů a bajtových polí jako hodnot, čímž může být k jedné platbě připojeno více druhů dat. -
● LDK #4628 začíná šifrovat
payment_metadatav BOLT11 během vytváření příchozích plateb. Tato změna staví na zavazování metadat, které popisuje zpravodaj č. 405. Po ověření platby LDK metadata dešifruje, čímž plátci dává možnost data napřímo přečíst. -
● LND #10552 přidává rychlou úvodní synchronizaci pro LND uzly používající Neutrino tím, že umožňuje ze souborů nebo HTTP zdrojů importovat předem připravené hlavičky bitcoinových bloků a kompaktní filtry. Nové volby
neutrino.blockheaderssourceaneutrino.filterheaderssourcemusí být nastavené dohromady. Importované hlavičky jsou lokálně zvalidovány a poté Neutrino od peer spojení stáhne všechny hlavičky, které v importu chybí. -
● LND #10820 znemožňuje LND během otevírání veřejných kanálů automaticky volit jednoduché taprootové kanály, protože taprootová oznámení o kanálu ještě nejsou podporována. Dříve je mohlo LND zvolit, pokud obě strany jejich podporu inzerovaly, avšak samotné otevření potom selhalo. Nyní musí být jednoduché taprootové kanály výslovně vyžádány (jinak bude zvolen kanál staršího druhu se statickým vzdáleným klíčem nebo anchor kanál). PR dále upravuje
lncli openchannel --channel_type=taproot, aby zvolil produkční druh jednoduchých taprootových kanálů.
Chcete víc?
Další diskuze o tématech zmíněných v tomto zpravodaji proběhnou v týdenním Bitcoin Optech Recap na Riverside.fm dne 2. 6. v 16:30 UTC. Diskuze jsou nahrávány a zpřístupněny na stránce našeho podcastu.