問題タブ [public-key-exchange]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
3028 参照

python - 出力SecKeyCopyExternalRepresentation

iPhone から他の関係者に公開鍵を渡そうとしていますが、iOS からの出力を使用できません。

出力例:

BJSCZtBatd2BYEHtyLB0qTZNlphKf3ZTGI6Nke3dSxIDpyP9FWMZbG0zcdIXWENyndskfxV0No/yz369ngL2EHZYw6ggNysOnZ5IQSPOLFFl44m1aAk0o0NdaRXTVAz4jQ==

Python(私のセカンドパーティがある場所)には、次のものがあります。

私が得るエラーはValueError: Could not deserialize key data.

したがってSecKeyCopyExternalRepresentation、ドキュメントで説明されているように、の出力は正確には何ですか:

このメソッドは、RSA キーの PCKS #1 形式でデータを返します。楕円曲線公開鍵の場合、形式は ANSI X9.63 標準に従い、04 || のバイト文字列を使用します。X || Y. 楕円曲線秘密鍵の場合、出力は、秘密スカラーのビッグ エンディアン エンコーディング、つまり 04 || と連結された公開鍵としてフォーマットされます。X || え || K. これらの表現はすべて、必要に応じて先行ゼロを含め、一定サイズの整数を使用します。

フォーマットをどのように説明しX6.93ますか?そして、それをPythonコードで使用できるものに変換するにはどうすればよいですか?

-----BEGIN PUBLIC KEY-----PS xcode出力などにヘッダーを追加しようとしました。

0 投票する
1 に答える
789 参照

java - RSA を使用した Java AES キー交換中に java.security.InvalidKeyException がスローされる

サーバーがAESを使用して暗号化されたメッセージをクライアントに送信できるようにするクライアント/サーバープログラムをJavaで作成しようとしています。現在、鍵交換プロトコルの作成中に問題が発生しています。この鍵交換の現在の仕組みは次のとおりです。

  1. クライアントが RSA 公開鍵と秘密鍵のペアを生成
  2. クライアントは自分の RSA 公開鍵をサーバーに送信します
  3. サーバーは、クライアントの RSA 公開鍵を使用して AES キーを生成および暗号化します。
  4. サーバーは暗号化された AES キーをクライアントに送信します
  5. 双方が正しい AES キーを持ち、AES を使用してすべてのメッセージを暗号化できるようになりました

ただし、ステップ 3 に進むたびに、次のエラーが発生するため、生成された AES キーをクライアントの RSA 公開キーで暗号化できません。

その結果、行おうとしている AES 鍵交換を完了できません。

Server.java はサーバー側での処理に使用され、Client.java はクライアント側でのすべての処理に使用されます。私の Server.java ファイルは次のようになります。

私の Client.java ファイルは次のようになります。

Start.java は、サーバーとクライアントの両方を初期化するために使用されます。