暗号学的エントロピーは、秘密鍵や生成器の状態を作る値についての不確実性を表します。可能な入力の分布と敵対者が持つ情報を評価します。長い出力でも、小さく予測可能な空間から生じることがあります。そのため安全性には、源、処理、状態保護が関わります。
RFC 4086 は、推測の難しさと単なる統計的不規則性を区別します。攻撃者は起動時刻や製造番号を知っている場合があり、狭い範囲を探索できる場合もあります。長く符号化しても秘密の候補空間は同じように広がりません。表示された鍵一つから生成品質は分かりません。 [RFC 4086 — Unpredictability and source limitations]
DRBG は秘密の初期状態からアルゴリズムに従って次の出力を生成します。これは有用な暗号構成ですが、追加バイトが自動的に新たな物理的エントロピーになるわけではありません。完全な状態と入力が同じなら続きも同じです。強度は初期化と正しい使用にも依存します。 [NIST SP 800-90A Rev. 1 — Deterministic generation and reseeding]
NIST SP 800-90B は、雑音源、その依存関係、健全性試験の記述を求めます。試験は後続処理の前に、生の雑音を起動時と継続的に検査します。環境変化や源の停止は前提を崩す可能性があります。故障は良好なデータとして扱わず、アプリへ通知する必要があります。 [NIST SP 800-90B — Entropy source design and health tests]
conditioning と呼ぶ処理は偏りを減らし、既存の不確実性を短い出力へ集中させることができます。Hash は完全に既知の入力を秘密に変えません。依存する複数の源の推定値は単純には加算できません。複雑な混合自体は独立性も品質も証明しません。 [NIST SP 800-90B — Entropy source design and health tests] [RFC 4086 — Unpredictability and source limitations]
DRBG の状態を得た者は、構成次第で以降の出力を予測できます。その予測への耐性を回復するには、攻撃者に未知の十分な新しいエントロピーが必要です。アルゴリズムの継続や既知の時刻の追加だけでは保証できません。生成器の回復は、漏えい済みの鍵も無効にはしません。 [NIST SP 800-90A Rev. 1 — Deterministic generation and reseeding]
BIP39 は入力 128 ビットとチェックサム 4 ビットを 12 単語へ符号化します。入力 256 ビットには 8 ビットを加えて 24 単語にします。チェックサムは導出値であり、エントロピーを増やしません。この長さは入力品質を証明せず、長い単語列も予測可能な生成を修復しません。 [BIP39 — Entropy, checksum and mnemonic encoding]
NIST SP 800-22 は統計試験への合格と暗号学的安全性を明確に区別します。試験は特定の偏りを検出できますが、アルゴリズム分析の代わりにはならず、敵対者が入力を知らないことも証明しません。完成したファイルの試験はウォレットの安全性認証ではありません。 [NIST SP 800-22 Rev. 1a — Limits of statistical testing]
NIST SP 800-90C はエントロピー源と DRBG を組み合わせた生成器構成を規定します。ウォレットでは具体的な実装、エントロピーの取得と推定、エラー処理、状態保護を確認します。規格の引用やチップ名だけで特定の版が要件を満たすとは証明できません。 [NIST SP 800-90B — Entropy source design and health tests] [NIST SP 800-90C — Complete random bit generator constructions]
理解を深めるには、この項目とあわせて次もお読みください Entropy Bit, CSPRNG, Dice Roll Entropy, 秘密鍵. 次の項目からも参照されています Dice Roll Entropy, Entropy Bit, Brute Force Search Space, Random Number Generator.