0

私は J2ME プログラマーです。現在、私のプロジェクトは、HTTP によるサーバーへのデータ送信に関連しています。ここでは、Bouncy Castle ライブラリ (Triple DES) を使用して J2ME 側でデータを暗号化します。サーバー側のコーディングも担当しています。

次に、サーバー側で受信したデータを復号化してデータベースに保存します。ここでは、コードでキーが静的に固定されていると想定しています。サーバー側と J2ME 側で同じキー値を使用します。

しかし、キーがランダムに生成され、ユーザーには知られていないという要件があります。

J2ME 部分でキーを使用してデータを暗号化すると、サーバーはキーを知らずにデータを復号化できますか? または、これを解決するために使用できる他のメカニズムはありますか? ここで非対称暗号が役に立ちますか?

4

1 に答える 1

2

非対称暗号化のしくみは次のとおりです。

  1. サーバーは公開鍵と秘密鍵のペアを生成します
  2. 公開鍵をクライアントに送信します
  3. クライアントは公開鍵を使用して秘密のメッセージを暗号化します
  4. サーバーは秘密鍵を使用してメッセージを復号化します。

非対称アルゴリズムは対称暗号化よりも遅いため、多くの場合、サーバーとクライアントの間で秘密のパスワードを交換するためにのみ使用されます。このパスワードは、対称アルゴリズムを使用してメッセージを暗号化するために使用されます。

于 2011-05-22T13:27:40.963 に答える