[解決済み] SHA-256 javascriptの実装で、一般に信頼できるとされるものはありますか?
質問
フォーラムへのログインを作成しており、サーバーに送信する前にクライアント側でjavascriptでパスワードをハッシュ化する必要があります。私は実際に信頼できるSHA-256の実装を見つけるのに苦労しています。私は、誰もが使うような権威あるスクリプトがあると期待していたのですが、さまざまなプロジェクトが独自の実装を持っていることがわかりました。
しかし、これは一般的で重要なことのように思えるので、何を使うべきかについて何らかのコンセンサスがあるはずです。私が世間知らずなだけでしょうか?
コメントでよく出てくるので編集します。はい、サーバー側でより厳密なハッシュを再度行っています。クライアント側のハッシュは、データベースに保存される最終結果ではありません。クライアント側のハッシュは、人間のクライアントが要求したものだからです。特に理由はないのですが、おそらく、やりすぎが好きなのでしょう。
解決方法は?
時代遅れです。 最近のブラウザの多くは、暗号化操作をファーストクラスでサポートするようになりました。参照 Vitaly Zdanevichの回答 の下にあります。
は Stanford JS Crypto Library には、SHA-256の実装が含まれています。JSにおける暗号は、他の実装プラットフォームに比べ、十分に検証された取り組みではありませんが、この暗号は少なくとも部分的に開発されており、ある程度はスポンサーもついています。 ダン・ボネ 彼は暗号の分野では有名で信頼も厚いので、このプロジェクトは、実際に何をやっているのかを知っている人による監督下にあるということです。また、このプロジェクトは NSF .
しかし、指摘すべきは......。
... もし、パスワードを送信する前にクライアント側でハッシュ化した場合、そのパスワードは
ハッシュがパスワード
そのため、元のパスワードは無関係になります。攻撃者は、ユーザーになりすますためにハッシュを傍受する必要があるだけで、そのハッシュがサーバーに変更されずに保存されていればよいのです。
を保存していることになります。
真
パスワード(ハッシュ)の平文
.
つまり、あなたのセキュリティは今 悪い を決めたからです。 改善点を追加する 以前は信頼できるスキームであったのに。
関連
-
[解決済み】弱い抵抗と強い抵抗の違いとは?
-
[解決済み] MurmurHash - それは何ですか?
-
[解決済み] SHA-256 javascriptの実装で、一般に信頼できるとされるものはありますか?
-
[解決済み] JavaScriptに定数はありますか?
-
[解決済み] node.jsのハッシュ文字列?
-
[解決済み】MD5ハッシュを復号化することは可能ですか?
-
[解決済み】レインボーテーブル攻撃に対してパスワードソルトはどのように役立つのでしょうか?
-
[解決済み] ReSharperのGetHashCodeのオーバーライドに'397'が使用されているのはなぜですか?
-
[解決済み] MD5/SHA1よりもCRCの方が適切な場合とは?
-
[解決済み] MD5ハッシュの計算は、SHAファミリー関数よりもCPU負荷が低いですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】弱い抵抗と強い抵抗の違いとは?
-
[解決済み] MurmurHash - それは何ですか?
-
[解決済み] トレントファイルの info_Hash とは一体何でしょうか?
-
[解決済み] node.jsのハッシュ文字列?
-
[解決済み】MD5ハッシュを復号化することは可能ですか?
-
[解決済み】ハッシュとレンジの主キーとは?
-
[解決済み】SHAが衝突する可能性は、実際には無視しても大丈夫なのでしょうか?
-
[解決済み] ReSharperのGetHashCodeのオーバーライドに'397'が使用されているのはなぜですか?
-
[解決済み] MD5はファイルを一意に識別するのに十分な性能を持っていますか?
-
[解決済み] MD5/SHA1よりもCRCの方が適切な場合とは?