14

HTML5 を使用したオフライン Web アプリ ソリューションを検討しています。機能は私が必要とするすべてのものですが、保存されたデータはブラウザで直接クエリできるため、完全に安全ではありません!

データが安全になるように暗号化/非表示にする方法はありますか?

ありがとう。

4

3 に答える 3

20

HTML5 のローカル ストレージには 2 つの懸念事項があります。

  1. 別の Web サイトがユーザーのブラウザーに保存したオフライン データを読み取る 1 つの Web サイト
  2. Web サイトのオフライン データを直接クエリするエンド ユーザー

1 の場合、ブラウザーは localStorage (または safari が持つ sqllite データベース サポート) に対して同一ドメインの制限を適用するため、他の Web サイトは保存したデータにアクセスできません。ただし、サイトに XSS の脆弱性がある場合、データを盗むことができることに注意してください。

2の場合、それを防ぐことはできません。Cookie と同じように、ユーザーはそれを表示/削除/変更することを選択できます。

データの暗号化は可能ですが ( http://farfarfar.com/scripts/encrypt/を参照)、無意味です。単一のグローバル キー/パスワードを持つことはできません。攻撃者は JavaScript コードからキーを簡単に割り出すことができるからです。ユーザーが入力したパスワードを使用して暗号化/復号化することは可能ですが、クライアント側の暗号化ライブラリは十分に成熟しておらず、十分にテストされていません。それを破る方法はたくさんありそうです。

したがって、少なくとも現時点では、機密データを localStorage に保存しないでください。

于 2010-04-15T05:03:22.927 に答える
5

HTML5 SecureStore Poposal の作成者によるこの懸念に関する記事もご覧ください。

于 2010-04-15T09:50:29.470 に答える
2

ユーザーのコンピューターにデータを保存している場合、暗号化の量に関係なく、ユーザーはいつでもデータを読み取ることができます[ハッシュを使用していないと仮定します...]

機密データは常にサーバー側に送られます。

于 2010-04-15T05:09:27.557 に答える