487 / 691CS

BIP39 checksum

ニーモニックバックアップのチェックサム

BIP39 checksum は単語によるバックアップの一部の誤りを検出します。元のエントロピーから算出され、ランダム性、秘密性、探しているウォレットとの対応を証明しません。

BIP39 は ENT ビットのエントロピーに、その SHA-256 の先頭 ENT/32 ビットを追加し、結果を単語リストの 11 ビット索引に分割します。検査ビットは公開された方法で計算でき、秘密のエントロピーを追加しません。

BIP39 は ENT = 128、160、192、224、256 ビットを認めます。対応するチェックサムは 4、5、6、7、8 ビットで、12、15、18、21、24 語になります。各 11 ビット群は、対応する 2048 語のリストから索引 0‑2047 を選びます。 [BIP39 — Mnemonic generation and seed conversion]

128 ビットでは 128 + 4 = 132 = 12 × 11 です。最後の単語は 7 ビットのエントロピーと 4 検査ビットを含みます。24 語では 3 ビットのエントロピーと 8 検査ビットを含みます。したがって最後の単語を一つの万能な検査単語に置き換えることはできません。 [BIP39 — Mnemonic generation and seed conversion]

有効な単語を一様ランダムに並べた列のうち、12 語では 1/16、24 語では 1/256 が検査を通ります。これはその長さの全候補列に対する割合であり、特定の誤記や単語の移動を検出する保証ではありません。誤ったバックアップでも有効な場合があります。 [BIP39 — Mnemonic generation and seed conversion]

検証器は正しい単語リストで単語をビットに変換し、エントロピーを分離して、付加されたビットをその SHA-256 と比較します。攻撃者も有効なチェックサムを計算できます。弱い入力や公開された入力も合格し得ます。チェックサムは認証でも汎用の誤り訂正アルゴリズムでもありません。 [BIP39 — Mnemonic generation and seed conversion]

単語のチェックサムは BIP39 passphrase を検証しません。PBKDF2-HMAC-SHA512 によるフレーズと passphrase の変換は、単語の検査とは別に 512 ビットの seed を生成します。有効なフレーズでも元のウォレットを見つけたとは確認できません。正確な単語、順序、必要な passphrase を保持してください。別の単語リストへの翻訳は seed を変えます。 [BIP39 — Mnemonic generation and seed conversion]

実装の検証には、自分の秘密のバックアップではなく公開テストベクトルを使います。公開ベクトルは資金を安全に受け取るためのウォレットではありません。復元時はウォレットの信頼できる手順に従い、本物の単語を未知のウェブ検査器に送らないでください。チェックサムの合格は、アプリが単語を盗まなかった証拠にはなりません。 [BIP39 — Mnemonic generation and seed conversion]

理解を深めるには、この項目とあわせて次もお読みください BIP 39, Seed Generation, BIP39 passphrase, Cryptographic Entropy. 次の項目からも参照されています BIP 39, BIP39 passphrase, COLDCARD RNG Incident (2026).

DOC · 001BIP39 — Mnemonic generation and seed conversion仕様 ↗
一次資料を優先 · 投資助言ではありません