web-dev-qa-db-ja.com

UNIXのsha_cryptはパスワードストレージアルゴリズムとしてどの程度安全ですか?

そのため、私はパスワードの保存、特に使用する(および使用しない)アルゴリズムに取り組んできました。

ほとんどの人が貴重な理由でscryptまたはPBKDF2を推奨していますが、私はこれまでsha_cryptアルゴリズムについての話を見たことがありません。このアルゴリズムを使用することの長所と短所は何ですか、そしてなぜ人々はそれよりもbcrypt/PBKDF2/scryptを好むのですか?

1
Melt

SHA256cryptとSHA512cryptは、Ulrich Drepper here によって記述されました。彼はアルゴリズムと実装を提供しますが、残念ながら、セキュリティ分析、このアルゴリズムが安全であることの証明、または彼の設計上の決定に関する洞察は提供していません。これにより、アルゴリズムのセキュリティを分析することが困難になります。

アルゴリズムは、ハッシュの多くの反復を実行するという点で、PBKDF2とほとんど同じです。 PBKDF2と同様に、計算に多くのメモリを必要としません。これは、GPUなど、メモリの少ないコアが多数あるハードウェアで簡単に計算できることを意味します。

Scryptとbcryptは、それらを計算するときにある程度のメモリを必要とするように特別に設計されています。つまり、特定のハードウェアでの並列計算に対する耐性が高くなっています。

0
Sjoerd