0

私はジャーナルWebアプリを開発しており、最大の問題として私が予測していることに取り組んでいます。他の人のエントリを読まないように信頼しています。私がこれまでに持っている解決策は次のとおりです。

  • ユーザーは、ログインするたびに秘密鍵を提供します。ユーザーデータと一緒に保存されることはなく、セッションの存続期間中のみ保持されます。
  • ユーザーが書き込む各エントリは、このキーを使用して暗号化されます。同様に、エントリを開こうとすると、このキーを使用してエントリが復号化されます。
  • 間違ったキーが入力された場合、指定されたエントリはジバーリッシュとして返されますが、これにより、ユーザーは必要に応じて異なるキーでエントリを保存できます。

キーを記録しないという信頼が私にありますが(後で同じコードを特徴とするシングルユーザーバージョンを配布したいと思っています)、これを行うためのより一般的な方法があるか、どこかでこの考え方に欠陥があります(私はセキュリティや暗号化についてあまり知識がありません。md5/ sha1 / blowfishの理解が不安定な場合もあります)。これはこれを行うための最良の方法ですか?

4

1 に答える 1

3

これは、クライアント側で (JavaScript を介して) 暗号化と復号化を実行することが理にかなっているまれなケースの 1 つです。

ユーザー キーによる暗号化は、ジャーナル データを「保管中」に保護します。しかし、私が本当に偏執的であるなら、暗号化されてサーバーに保存される前に、「飛行中」のジャーナルエントリを詮索しないとは信じられません. クライアント側の暗号化により、その心配がなくなります。

利用可能な JavaScript 暗号化ライブラリがいくつかあります。JavaScryptを見ることをお勧めします。

于 2010-08-26T17:35:25.567 に答える