3

html5とJSのローカルストレージに保存する前に、いくつかのコンテンツを暗号化する必要があります。現時点では、Stanford JavascriptCryptoLibraryを使用しています。

現時点では、このようなコードを使用しています。

usernameEnc = sjcl.encrypt("password", username);
passwordEnc = sjcl.encrypt("password", password);
localStorage.username = usernameEnc;
localStorage.password = passwordEnc;  

正しく暗号化できます。JSを使用してHTML5アプリケーションを構築していて、JSコードがクライアントにダウンロードされているので、スクリプトを簡単に復号化しないようにパスワードを保護するにはどうすればよいですか?

多分私は少し戸惑うポイントを逃します。

4

1 に答える 1

4

残念ながら、キーを保護する方法はありません。これは JavaScript であり、何らかの方法でダウンロードしてブラウザーで実行する必要があります。キーを難読化して少し難しくすることもできますが、平均的な知識を持つ人なら解読できます。

私がお勧めするのは、ユーザーのパスワードを使用してコンテンツを暗号化できることです。したがって、ユーザーは毎回パスワードを入力してコンテンツを復号化する必要があります。

ユーザーのパスワードをそのまま使用しないでください。PBKDF2などのキー派生関数を使用します。crypto-js ライブラリには、PBKDF2 の JavaScript 実装があります。

とにかく知っておくべきことは、アプリケーションがクライアント側でそれを読み取ることができる場合、あなたがそれを保護しようとしても、誰かがそれを読み取ることができるということです.

于 2013-03-05T09:23:56.800 に答える