2012-01-24 10 views
6

この質問は、パスワードのハッシュについて再び考え始めました。私は現在、bcrypt(特にpy-bcrypt)を使用しています。私はPBKDF2とscryptについて多くのことを聞いたことがあります。どのパスワードハッシュ方法を使用しますか?

私が知っているかもしれない「より現代的な」パスワードハッシング方法がある(それは新しいものなので、人々はあまり話しません)、あるいは他の方法私は知らない。

それから私はどちらを使うべきですか?ほとんどの人はbcryptを推奨しているようですが、それは単にそれが古い(読んでいる:よく知られている)ためだと思います。 scryptはより良いように見える(メモリ使用量の可変量)。私はPBKDF2についてよく知らない。

私はユーザー管理スキームを作成しましたが、どちらを使うべきですか?それとも全く違うものを使うべきですか?

答えて

6

WPA/WPA2とドメインキャッシュされた資格情報2(AKA DCC2)でPBKDF2が使用されています。 HMAC-SHA1の反復を変更してセキュリティを強化することができます。クラッキングプロセスを遅くするこの方法は、壊れていません。ただし、SHA1をベースにしているため、GPUに対応して攻撃することができます。

bcryptとscryptの両方は、ルックアップテーブルを使用します。このメモリ依存性により、GPUには不相応になります。しかし、最新のGPUアーキテクチャ28  は、メモリへの非常に高速なアクセスを再び可能にする。

今のところあなたはbcryptやscryptを好むべきです。メモリ依存のハッシュを使うのは良い選択ですが、将来的にはこれが変わるかもしれません。クラッカーのGPUパフォーマンスがどのように向上するか注目してください。イベントの地平線に達する可能性はありますが、GPUに優しいハッシュを行うだけに戻って反復回数を増やす方が良いでしょう。

関連する問題