のアルゴリズムの中では、md5、sha1、sha256と比べて塩の有無にかかわらず遅いとはどういうことでしょうか?Bcryptはどのように復号化を遅くするのですか?
0
A
答えて
2
bcryptのは、ハッシュの多くの反復が行われている方法を制御コスト要因を、持っています。このコスト要因は、将来的に高速化されたハードウェアに適応するために増加する可能性があります。
コスト係数は2の累乗になります。つまり、コスト係数を1増加させると、計算時間が2倍になります。現在推奨されている値は、お使いのサーバーによって異なります。
1
アルゴリズムのSHAファミリは、大きな入力用のハッシュを効率的に作成するように設計されています。一方、bcrypt
は、小さな入力に対して計算上高価な演算を実行するように設計されています(最初の72バイトの入力のみが使用されますが、ほとんどのパスワードで十分です)。
具体的には、bcrypt
は、キーの設定をより高価にするために修正されたBlowfishブロック暗号のバージョンのキー設定を実行するために入力saltとメッセージを使用します。アルゴリズムはその暗号を使用して既知の平文(OrpheanBeholderScryDoubt
)を暗号化します。このため、入力エントロピーには72バイトの制限があります。Blowfishアルゴリズムには、初期化が必要なサブキーの数が限られています。
関連する問題
- 1. Bcrypt復号化基本
- 2. HMACをどのように復号化できますか?
- 3. フォームのHTMLフィールドを暗号化し、サーバーで復号化するにはどうすればよいですか?
- 4. Odoo 9.0のパスワードフィールドを暗号化/復号化するにはどうすればよいですか?
- 5. シンプルなファイルの暗号化と復号化を行うにはどうすればよいですか?
- 6. ASP.Netでファイルを暗号化し、Silverlightで復号化するにはどうすればよいですか?
- 7. Javaでファイルを暗号化/復号化するにはどうすればよいですか?
- 8. 公開鍵暗号化では、サーバーがクライアントからのメッセージをどのように復号化しますか?
- 9. どのようにしてアンドロイドの文字列値を暗号化と復号化するのですか?
- 10. SHC暗号化を使用してシェルファイルを復号化するにはどうすればよいですか?
- 11. AESは異なるIVでどのように復号化されますか?
- 12. どのようにutf-8の暗号化/復号化のAndroidで
- 13. どのようにunknow暗号化アルゴリズム、heeeelpで文字列を復号化するには?
- 14. Golang:DES、CBC、およびPKCS7でどのように復号化しますか?
- 15. Twofishによる暗号化/復号化
- 16. Kerberos:アプリケーションサーバーはサービスチケットをどのように復号化しますか?
- 17. このクラッシュログはどのように復号化されますか?
- 18. Snapchat .nomediaファイルをどのように復号化できますか?
- 19. ファイルを暗号化/復号化する暗号化アルゴリズムを選択するにはどうすればよいですか?
- 20. なぜAES復号化ではAES暗号化よりもラウンドが少なくなるのですか?
- 21. StAXでxmlの暗号化/復号化を行う方法は?
- 22. PHPでAES CBC + CTS(暗号文の盗用)モードを使用してデータを暗号化/復号化するにはどうすればよいですか?
- 23. RSAアルゴリズム(暗号化と復号化)が実際にどのように機能しますか?
- 24. C#.NETでRSAデータを適切に復号化するにはどうすればよいですか?
- 25. 非対称鍵暗号化アルゴリズムは、一方向の復号化および暗号化機能をどのように維持しますか?
- 26. MeteorとJavaによるデータの暗号化と復号化
- 27. SIMカードによるSMSの暗号化と復号化(USIM)
- 28. MediaCodecを使用して暗号化されたデータをSurfaceTextureに復号化および復号化する
- 29. 塩でbcryptどのように?
- 30. テキストファイルからの暗号化/復号化
'bcrypt'は遅くなるように設計されています。これは、安全なパスワードハッシュ保存のために必要です。要点は、攻撃者がパスワードをブルートフォースするのを遅くすることです。 MD5、SHA1、SHA256などのシンプルなパスワードでは、たとえ塩を追加しても安全ではなく、攻撃者はこれらのハッシュを一般的なパスワードのリストに対して迅速にブルートフォースできます。 – zaph