PBKDF2 キー導出
PBKDF2を使用してパスワードから暗号鍵を導出します。
PBKDF2鍵導出について
PBKDF2鍵導出は、パスワードベース鍵導出関数2 (RFC 2898, PKCS#5 v2.0) を実装しており、HMAC擬似乱数関数を数十万回反復することで、パスワードと暗号学的ソルトを導出鍵に変換します。この鍵ストレッチングプロセスにより、攻撃者はパスワードの推測ごとに全反復回数を繰り返す必要があるため、ブルートフォース攻撃や辞書攻撃の計算コストが高くなります。HMAC-SHA-256を使用したPBKDF2は、WPA2 Wi-Fi認証、iOSデータ保護、および多くのデータベースパスワードハッシュ実装で使用されているNIST推奨アルゴリズムです。このブラウザツールは、Web Crypto APIを使用してPBKDF2導出鍵を計算し、パスワードをどこにも送信することなく、ブラウザ内で信頼性の高い計算を行います。
使い方
パスワードフィールドにパスワードを入力し、暗号学的ソルトを提供するか、ランダムソルトボタンをクリックして安全な16バイトのランダムソルトを生成します。HMACハッシュアルゴリズムを選択し、一般的な使用にはSHA-256を、より高いセキュリティマージンにはSHA-512を選択します。NISTのガイダンスに従い、HMAC-SHA-256の場合は少なくとも600,000回の反復回数を設定し、AES-128の場合は16バイト、AES-256の場合は32バイトなど、出力鍵の長さをバイト単位で指定します。「導出」をクリックして結果を16進数またはBase64で計算および表示し、クロス実装テストやコンプライアンス文書のために出力をコピーします。
一般的な使用例
- 保存されているファイルや機密性の高いアプリケーションデータを暗号化するために、ユーザーが提供するパスワードからAES-256暗号化キーを導出する
- 新しい認証システムのセキュリティ設計フェーズ中に、PBKDF2の反復回数とソルト長をテストおよび調整する
- 特定のパスワードとソルトが、レガシーデータベースまたは設定アーカイブに保存されている期待される導出キーを再現することを確認する
- コンプライアンス要件に適したアルゴリズムを選択するために、HMAC-SHA-256、HMAC-SHA-384、およびHMAC-SHA-512間で導出キーの出力を比較する
- 応用暗号学コースや開発者セキュリティワークショップで、鍵ストレッチングとソルトの概念をインタラクティブにデモンストレーションする