5.1. General (一般)
5.1. General (一般)
このアルゴリズムのセキュリティと強度は, 基礎となる構成要素である HOTP のプロパティに依存します。HOTP は, SHA-1 をハッシュ関数として使用する HMAC [RFC2104] に基づく構造です。
[RFC4226] で詳述されているセキュリティ分析の結論は, すべての実用的な目的において, 異なる入力に対する動的切り捨ての出力は均一かつ独立して分布した文字列であるということです。
分析は, HOTP 関数に対する最良の可能な攻撃はブルートフォース攻撃であることを示しています。
アルゴリズム要件セクションに示されているように, 鍵はランダムに選択されるか, ランダム値で適切にシードされた暗号学的に強力な疑似乱数生成器を使用して選択されるべきです (SHOULD)。
鍵は相互運用性を促進するために HMAC 出力の長さであるべきです (SHOULD)。
すべての疑似乱数および乱数生成については, [RFC4086] の推奨事項に従うことを推奨します (RECOMMEND)。鍵の生成に使用される疑似乱数は, [CN] で指定されているランダム性テスト, または同様の広く認識されたテストに合格すべきです (SHOULD)。
すべての通信は, 安全なチャネル, 例えば, Secure Socket Layer/Transport Layer Security (SSL/TLS) [RFC5246] または IPsec 接続 [RFC4301] 上で行われるべきです (SHOULD)。
また, 検証システムに鍵を安全に保存し, より具体的には, 耐タンパー性ハードウェア暗号化を使用して鍵を暗号化し, 必要な場合にのみ公開することを推奨します (RECOMMEND): たとえば, OTP 値の検証に必要なときに鍵を復号化し, RAM での露出を短期間に制限するためにすぐに再暗号化します。
鍵ストアは, 検証システムと秘密データベースへの直接攻撃を可能な限り回避するために, 安全なエリアになければなりません (MUST)。特に, 鍵素材へのアクセスは, 検証システムに必要なプログラムとプロセスのみに制限されるべきです。