-1

次の形式の RSA 秘密鍵が提供されます

<RSAKeyValue>
   <Modulus>XXXXXXXX</Modulus>
   <Exponent>XXXXXXXX</Exponent>
   <P>XXXXXXXX</P>
   <Q>XXXXXXXX</Q>
   <DP>XXXXXXXX</DP>
   <DQ>XXXXXXXX</DQ>
   <InverseQ>XXXXXXXXXX/InverseQ>
   <D>XXXXXXXX</D>
</RSAKeyValue>

XXXX は Base64 形式です。

すべての XXXXXX ビットを単一の Base64 文字列に結合する方法を知りたいです。
この単一の Base64 文字列を使用して、次のことを行います。
1. TMemorStream にフィードします
2. Indy の TIdDecoderMIME クラスを使用して、MemoryStream から Base64 をデコードし
ます 3. デコードされた MemoryStream は、wcrypt2.pas (Microsoft の Delphi ラッパー) から CryptDecrypt 関数にフィードされますジェダイの暗号化 API)

同じ形式の公開鍵の解決策を知っています

<RSAKeyValue>
<Modulus>xqiYKv0umaLdmrKPyBfYmAfzZYVsvsOJyS4c1lBPjqpn7zh+XyxPXK7MxJkAlenQJM33M+ZYfmlPLya7JWXXTPviylEEtlmul9GshpX2caxWu2YO9vNIHRZYYau4ccbkm95iMyJi8KN2ANtqDwiJv55vcXZDqjPSDE4ap49xmog==</Modulus>
<Exponent>AAQC</Exponent>
</RSAKeyValue>

解決策は、「BgIAAACkAABSU0ExAAQAAAE」+指数+モジュラスを追加することです

The result is: BgIAAACkAABSU0ExAAQAAAEAAQCxqiYKv0umaLdmrKPyBfYmAfzZYVsvsOJyS4c1lBPjqpn7zh+XyxPXK7MxJkAlenQJM33M+ZYfmlPLya7JWXXTPviylEEtlmul9GshpX2caxWu2YO9vNIHRZYYau4ccbkm95iMyJi8KN2ANtqDwiJv55vcXZDqjPSDE4ap49xmog==

秘密鍵とどのように組み合わせるのですか? 私はそれが次のように始まることを知っています:

"BwIAAACkAABSU0ExAAQAAAE" + 指数 + モジュラス + ???????

4

1 に答える 1

1

RSAKeyValue XML の XXXX は base64 にあり、そこに詳細を公開したくないだけです。すべての XXXX base64 コードを単一の base64 秘密鍵に結合する方法を知りたいです。

これは、行ごとに base64 エンコードを実行していることを意味していると思われます。ファイル全体でエンコードを実行する方がはるかに簡単です。

たとえば、次のようにします。

  1. ファイルをTStringList.
  2. Text文字列リストのプロパティを使用して、ファイルを表す単一の文字列を抽出します。
  3. その文字列を Base64 でエンコードします。
  4. 有線で送ってください。
  5. 受信側で、文字列をデコードします。
  6. Text文字列リストのプロパティに文字列を割り当てます。
于 2013-09-06T10:26:14.570 に答える