4. Security Considerations (セキュリティに関する考察)
4. Security Considerations (セキュリティに関する考察)
この文書で説明されている決定論的 (EC)DSA の変種の署名セキュリティは, 検討中の (EC)DSA の従来のセキュリティと同等です。特に:
-
署名の偽造者に対して, 決定論的 (EC)DSA によって生成された署名は, ランダムな k 値を使用して生成された署名と区別できません。これは, HMAC が疑似ランダム関数 (PRF) として動作するという仮定に基づいています。
-
秘密鍵 x へのアクセス権を持たない攻撃者に対して, 決定論的 (EC)DSA は, ランダムな k 生成を使用する従来の (EC)DSA と同じ保護を提供します。
-
決定論的 (EC)DSA は, いくつかのサイドチャネル攻撃に対してより脆弱である可能性があります。ランダムな k の使用は, タイミング攻撃に対するある程度の保護を提供する可能性があります (攻撃者が観察するタイミングは, k のランダム性により変化するため)。決定論的 k を使用すると, この変動性は失われます。ただし, 適切に実装された場合 (一定時間演算を使用), 決定論的 (EC)DSA はそのような攻撃に対して脆弱ではありません。
-
決定論的生成により, 実装のテストが容易になります。自動テストではランダム生成の品質を評価できないため, 決定論的変種を使用することで, 実装が正しく動作しているかどうかをより確実に検証できます。
-
k の決定論的生成は, 秘密鍵 x が侵害された場合の影響を軽減しません。k が決定論的に生成される場合でも, 秘密鍵が漏洩すると攻撃者は任意のメッセージに対する署名を生成できます。
-
HMAC が使用されるハッシュ関数 H の選択は, セキュリティにとって重要です。H は暗号学的に安全なハッシュ関数であるべきです。出力長が短いハッシュ関数 (例えば MD5 や SHA-1) は, 全体的なセキュリティが損なわれる可能性があるため避けるべきです。
秘密鍵 x の保護が最も重要であることに注意することが重要です。決定論的 (EC)DSA は, 不適切なランダム性生成の問題を解決しますが, 秘密鍵の適切な保護と管理に取って代わるものではありません。