規制により、私の会社はFIPSに準拠する必要があります。
私は FIPS承認の暗号方式 の現在のリストを見ていましたが、このリストにはbcryptもPBKDF2もないことに気づきました。
これは、パスワードの保存にsaltedSHA-512を使用する必要があることを意味しますか?
それは良い考えですか?
FIPS 140-2は パスワードハッシュ のトピックをカバーしません。したがって、その意味で「FIPS承認」されるパスワードハッシュ関数はありません。 SHA-512を「そのまま」使用し、ソルトを使用するかどうかに関係なく、エンジンにそのソルトをどのように注入するかに関係なく、NISTの承認は付与されません。 NISTは単にパスワードのハッシュを承認(または不承認)しません。
NISTの世界で最も近いものは SP 800-132 であり、パスワードベースのキー導出のための承認されたメソッドをリストします 、パスワードハッシュに非常に近い(ただし同一ではない)もの。 PBKDF2で使用されている基本プリミティブ自体が「承認」されている(つまり、SHA-2機能の1つで使用されているHMACである)限り、NISTはPBKDF2を承認します。
FIPS 140-2は、パスワードハッシュアルゴリズムをリストしません。実際にFIPS 140-2検証済みアルゴリズムを使用する必要がある場合は、必要なコンプライアンスレベルについてNISTによって検証済みのソリューションを見つける必要があります。
FIPS監査人でこれを確認する必要がありますが、PBKDF2には、たとえばPBKDF2-HMAC-SHA256または512などの実装があります。実装はSHA256または512を使用しているため、準拠していると見なすことができます。