0

クライアントに保持する必要がある一部のデータを暗号化しています。Salt、Key、および IV も同様です。クライアントでこのデータを処理して、人々がデータを発見して暗号化するのを防ぐ標準的な方法はありますか?

それらを覆い隠す方法はたくさん考えられますが、この問題を処理する業界標準の方法が必要です。

4

1 に答える 1

1

IV とソルトがわかっている場合、追加のセキュリティ リスクはありません。IVは平文で保存しても安全であり、ソルトは事前計算とレインボー テーブルの防止に役立ちます。

つまり、あなたは本当に鍵について話しているだけです。いくつかの解決策があり、それぞれに独自のトレードオフがあります。あなたの質問では、クライアント上のデータを暗号化する必要があるとだけ言及しています。クライアントは復号化する必要はありませんか?

  • これが Windows クライアントの場合は、データ保護 APIを使用して、ユーザーの資格情報でキーを保護できます。

  • キーをパスフレーズで保護します。クライアントがキーを必要とするたびにパスフレーズを入力することを気にしない場合、これは合理的な保護を提供でき、OpenPGP などのほとんどの暗号システムでサポートされています。

  • クライアントが暗号化のみを必要とする場合は、公開鍵を使用したハイブリッド アプローチ (OpenPGP など) を使用できます。この場合、公開鍵のみをクライアントに保存し、秘密鍵は安全な場所に保存します。データを暗号化するときは、ランダムな対称キーを生成し、それをクライアントの公開キーで暗号化します。これで、誰かがマシンを侵害した場合、セッション キーを解読できなくなります。

  • ハードウェア セキュリティ モジュールやスマート カードなどの特殊なハードウェアを使用します。これは最もコストのかかるルートですが、脅威モデルによっては実行可能な場合があります。

于 2012-11-28T23:46:34.583 に答える