698 / 736BIP54

Consensus Cleanup

BIP 54 — opravy konsenzuálních hran

Consensus Cleanup je dokončená specifikace soft forku BIP 54, která v jednom balíku opravuje timewarp, patologicky pomalé bloky, nejednoznačnost 64bajtových transakcí a možnost budoucích duplicitních coinbase transakcí.

BIP 54 zpřísňuje čtyři historické okraje konsenzu bez nového uživatelského opcodu; stav Complete znamená hotovou specifikaci, nikoli aktivaci na Bitcoin mainnetu.

Antoine Poinsot a Matt Corallo spojili do BIP 54 čtyři úzce vymezené opravy: timewarp, bloky s extrémně drahou validací, slabinu Merkle stromu u 64bajtových transakcí a budoucí riziko duplicitních coinbase transakcí. Balík nepřidává nový uživatelský opcode. [1]

Na hranici každého období 2016 bloků BIP omezuje timestamp prvního bloku nejméně na čas předchozího bloku minus 7 200 sekund a timestamp posledního bloku nejméně na čas prvního bloku období. Tím uzavírá klasický timewarp i záporné období Murch–Zawy. [1]

Pro každou ne-coinbase transakci zavádí strop 2 500 legacy signature operations počítaných ve scriptSig, scriptPubKey a P2SH redeemScriptu. BIP uvádí, že tím klesne nejhorší validační čas přibližně čtyřicetinásobně, aniž by byly zasaženy běžné standardní transakce. [1]

Transakce s přesně 64 bajty serializace bez witness dat by po aktivaci byly neplatné. Stejných 64 bajtů lze jinak interpretovat jako dvojici hashů vnitřního uzlu Merkle stromu, což komplikuje bezpečné zjednodušené důkazy. [1]

Coinbase by musela mít nLockTime rovný výšce bloku minus 1 a nSequence odlišné od 0xffffffff. Každá budoucí coinbase se tak liší od historických výjimek a po aktivaci lze trvale vynechat kontrolu BIP 30 před nejbližší rizikovou výškou 1 983 702. [1]

Specifikace dosáhla verze 1.0.0 a stavu Complete v květnu 2026. Changelog uvádí 22. května; Bitcoin Core má referenční implementaci bez mainnetové aktivace a už předem vytváří kompatibilnější blokové šablony, ale nic z toho samo nová pravidla na mainnetu nezapíná. [3]

Návrh BIP 95 pro Testnet 5 počítá s BIP 54 od bloku 1, ale sám má stav Draft. Testovací síť, signet nebo neaktivní kód pomáhají ověřit implementaci, nejsou důkazem mainnetového konsenzu. [4]

Při ověřování tvrzení je nutné zkontrolovat aktuální verzi BIP, stav aktivačního mechanismu a konkrétní vydání uzlu. Status Complete popisuje dokončený dokument; plná validace nových pravidel začne až případnou samostatnou aktivací soft forku. [2]

Pro nejúplnější obraz čtěte toto heslo společně s Konsensuální pravidla, Soft Fork, Timewarp Attack, Proof of Work, Bitcoin Core, Transakce. Opačným směrem na něj odkazují také Timewarp Attack.

01Je BIP 54 aktivní na Bitcoin mainnetu?

Ne. Specifikace je Complete a existuje implementace bez mainnetové aktivace, ale konsenzuální zpřísnění vyžaduje samostatný aktivační proces.

02Co přesně Consensus Cleanup mění?

Zpřísňuje timestampy na hranici difficulty období, omezuje legacy sigops na transakci, zakazuje přesně 64bajtové transakce bez witness dat a vynucuje jedinečnost budoucích coinbase transakcí.

DOC · 001BIP 54 — Consensus CleanupSpecifikace DOC · 002Bitcoin Optech — Consensus cleanup soft forkDokumentace DOC · 003Bitcoin Core PR 31555 — Implement BIP 54 without mainnet activationPrimární zdroj DOC · 004BIP 95 — Testnet 5Specifikace
Revidováno: Primární zdroje · Nejde o investiční doporučení