HTML5 を使用したオフライン Web アプリ ソリューションを検討しています。機能は私が必要とするすべてのものですが、保存されたデータはブラウザで直接クエリできるため、完全に安全ではありません!
データが安全になるように暗号化/非表示にする方法はありますか?
ありがとう。
HTML5 を使用したオフライン Web アプリ ソリューションを検討しています。機能は私が必要とするすべてのものですが、保存されたデータはブラウザで直接クエリできるため、完全に安全ではありません!
データが安全になるように暗号化/非表示にする方法はありますか?
ありがとう。
HTML5 のローカル ストレージには 2 つの懸念事項があります。
1 の場合、ブラウザーは localStorage (または safari が持つ sqllite データベース サポート) に対して同一ドメインの制限を適用するため、他の Web サイトは保存したデータにアクセスできません。ただし、サイトに XSS の脆弱性がある場合、データを盗むことができることに注意してください。
2の場合、それを防ぐことはできません。Cookie と同じように、ユーザーはそれを表示/削除/変更することを選択できます。
データの暗号化は可能ですが ( http://farfarfar.com/scripts/encrypt/を参照)、無意味です。単一のグローバル キー/パスワードを持つことはできません。攻撃者は JavaScript コードからキーを簡単に割り出すことができるからです。ユーザーが入力したパスワードを使用して暗号化/復号化することは可能ですが、クライアント側の暗号化ライブラリは十分に成熟しておらず、十分にテストされていません。それを破る方法はたくさんありそうです。
したがって、少なくとも現時点では、機密データを localStorage に保存しないでください。
HTML5 SecureStore Poposal の作成者によるこの懸念に関する記事もご覧ください。
ユーザーのコンピューターにデータを保存している場合、暗号化の量に関係なく、ユーザーはいつでもデータを読み取ることができます[ハッシュを使用していないと仮定します...]
機密データは常にサーバー側に送られます。