web-dev-qa-db-ja.com

2016年に推奨される暗号化コスト要素は何ですか?

私は答えを探そうとしてきましたが、私が見つけた最新のものは3年前に古くなりました。では、2016年に推奨される暗号化コストの要因は何ですか?

8
Awn

一般に、パフォーマンスの観点から耐えられる最大のコスト係数を使用します。私は、アプリケーションの機能に可能な限り近いベンチマークアプリケーションを作成し、コスト係数実稼働ハードウェア上を確認して、最大の遅延を許容します。

ほとんどのシステムでは、10〜20ミリ秒の遅延を目指しています。あなたの攻撃者があなたのハードウェアよりも1000倍強力なハードウェアを持っていると仮定します(scryptはGPUで高速化できないため、不合理ではありません)、彼は10を試すことができます5 1秒あたりの推測。 10文字の英数字パスワードの場合、26です。10 パスワード、または約1014 潜在的な推測。それは10年かかります9 秒、または31年。私には許容できる音。

さらに大きな遅延を使用したい場合は、scryptがメモリを大量に消費することに注意してください。つまり、検証ごとにメガバイト単位の(相対的な)大量のメモリを使用するため、それらを並行して実行すると、必要な絶対処理能力よりもパフォーマンスが低下する可能性があります。

PBKDF2で同じ対象を適切に分析するには、 Security.stackexchange.com "PKBDF2-SHA256を使用する場合の推奨される反復回数?" を参照してください。