487 / 736CS

BIP39 checksum

Kontrolní součet slovní zálohy

Při obnově peněženky opíšete zálohovací slova a aplikace oznámí chybu. Pomoci ji odhalit může BIP39 checksum, krátká kontrola zabudovaná do slovní zálohy. Zachytí část omylů, ale ani úspěšná kontrola nepotvrzuje, že jste našli svou peněženku nebo že jsou slova bezpečná.

Kontrolní součet je několik bitů, tedy základních jednotek informace, vypočítaných z původních náhodných dat peněženky. BIP39 označuje délku těchto dat jako ENT; připojí k nim prvních ENT/32 bitů jejich otisku SHA-256 a celek rozdělí do 11bitových skupin pro výběr slov. Je to kontrola zápisu, nikoli další tajemství: kdokoli se stejnými daty může vypočítat stejný součet.

Slova nepředstavují jen původní náhodná data, označovaná jako entropie, ale i jejich krátkou kontrolu. BIP39 dovoluje ENT = 128, 160, 192, 224 nebo 256 bitů. K těmto délkám postupně přidává 4, 5, 6, 7 nebo 8 kontrolních bitů a vznikne 12, 15, 18, 21 nebo 24 slov. Každá 11bitová skupina pak vybere slovo podle čísla 0‑2047 ze slovníku o 2048 slovech. Při obnově lze tento zápis rozebrat a zkontrolovat, zda do sebe části zapadají. [1]

Poslední slovo obsahuje i část původních tajných dat. U 128bitového vstupu platí 128 + 4 = 132 = 12 × 11: do posledního slova se vejde 7 bitů entropie a 4 kontrolní bity. U 24 slov jsou v něm 3 bity entropie a 8 kontrolních bitů. Když tedy poslední slovo ztratíte, neztrácíte pouze kontrolu. Předchozí slova sama neurčují jedinou správnou koncovku; nejde o univerzální kontrolní slovo, které by stačilo dosadit. [1]

Kontrola je krátká, a proto nedokáže odmítnout všechny chybné kombinace. Z rovnoměrně náhodných posloupností slov ze správného slovníku projde podíl 1/16 u 12 slov a 1/256 u 24 slov. Tato čísla popisují všechny možné posloupnosti dané délky. Neříkají, s jakou jistotou se odhalí právě váš překlep nebo prohozené slovo. Zelené potvrzení v peněžence proto není důkazem, že jste zálohu opsali přesně. [1]

Představte si zálohu zveřejněnou v návodu. Může mít dokonale správný součet, přesto její použití pro vlastní peníze není bezpečné. Ověřovač totiž pouze převede slova podle správného slovníku na bity, oddělí původní data a porovná kontrolní bity s jejich SHA-256. Stejný výpočet zvládne i útočník. Kontrola nepozná, kdo slova vytvořil nebo kdo je zná. Není ověřením původu ani nástrojem, který by obecně dokázal opravit chybnou zálohu. [1]

Pokud používáte BIP39 passphrase, tedy dodatečné heslo, kontrolní součet ji vůbec nekontroluje. Zálohovací fráze a passphrase se teprve dalším výpočtem PBKDF2-HMAC-SHA512 převedou na 512bitový seed, tajný základ pro odvození klíčů. Překlep v passphrase proto může vést k jiné peněžence, i když slova prošla kontrolou. Uchovejte jejich přesné znění, pořadí i potřebnou passphrase. Slova také nepřekládejte do jiného slovníku: změnil by se seed. [1]

Neznámá stránka může slíbit rychlé ověření zálohy, ale k získání vašich slov jí stačí, že je zadáte. Správný výsledek kontroly neprokazuje, že si je aplikace neuložila nebo neukradla. Při obnově proto používejte důvěryhodný postup své peněženky. Pro testování programu slouží veřejné testovací vektory, tedy známé vstupy s očekávanými výsledky, nikoli vaše tajná záloha. Tyto veřejné příklady ovšem nikdy nepoužívejte jako peněženku pro skutečné prostředky. [1]

Pro nejúplnější obraz čtěte toto heslo společně s BIP 39, Seed Generation, BIP39 passphrase, Cryptographic Entropy. Opačným směrem na něj odkazují také BIP 39, BIP39 passphrase, COLDCARD RNG Incident (2026), SeedQR.

DOC · 001BIP39 — Mnemonic generation and seed conversionSpecifikace
Revidováno: Primární zdroje · Nejde o investiční doporučení