1
Iライブラリを使用してきたと私は本当にそれが好き、私はPBKDF2を読んだものから、もう少しブルートフォース攻撃に対して脆弱bcryptのかscryptを超えています。私はadding scrypt supportについてこの問題を遭遇しましたが、明確な答えはないようです。SJCLのPBKDF2の代わりにbcryptまたはscryptを使用できますか?
理想的には、私は単純にPBKDF2機能の代替にドロップしたいと思いますが、私はこれが可能であるかどうかを知るには十分SJCLの内部の仕組みに精通していませんよ。
ことが可能であったならば、あなたはかなり簡単に私が想像このpure JS bcrypt実装のようなものを使用することができます。
ありがとう:
は、その後、あなたが鍵ペアを生成するためにscryptを使用する必要があります。私は後で試してみるつもりです。 scryptのラウンド数や作業係数を設定する方法はありますか? –
これを見つけた他の人のためだけです。どうやら、2番目の '0'引数を' sjcl.random.randomWords'に渡すのはテスト目的のみであり、結果的にセキュリティが損なわれます(https://github.com/bitwiseshiftleft/sjcl/issues/77)。キー。それは塩のために使用されていることを考えると、この文脈でどのくらい重要であるか分かりませんが、私は私より知識のある人々にそれを残します。 –
IVと同じ塩は、鍵と同じくらいランダムではなく、繰り返しでなければならないので、2番目の引数0を持つ 'sjcl.random.randomWords'は問題ありません。また、sjclがpbkdf2のために内部的に使用するものです。 – Nils