我以
格式提供了以下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随后从Jedi的wcrypt2.pas(Microsoft的Cryptographic API的delphi包装器)提供给CryptDecrypt函数
我知道相同格式的公钥解决方案
<RSAKeyValue>
<Modulus>xqiYKv0umaLdmrKPyBfYmAfzZYVsvsOJyS4c1lBPjqpn7zh+XyxPXK7MxJkAlenQJM33M+ZYfmlPLya7JWXXTPviylEEtlmul9GshpX2caxWu2YO9vNIHRZYYau4ccbkm95iMyJi8KN2ANtqDwiJv55vcXZDqjPSDE4ap49xmog==</Modulus>
<Exponent>AAQC</Exponent>
</RSAKeyValue>
解决方案是添加“BgIAAACkAABSU0ExAAQAAAE”+指数+模数
结果是: BgIAAACkAABSU0ExAAQAAAEAAQCxqiYKv0umaLdmrKPyBfYmAfzZYVsvsOJyS4c1lBPjqpn7zh + XyxPXK7MxJkAlenQJM33M + ZYfmlPLya7JWXXTPviylEEtlmul9GshpX2caxWu2YO9vNIHRZYYau4ccbkm95iMyJi8KN2ANtqDwiJv55vcXZDqjPSDE4ap49xmog ==
使用私钥我们如何组合它?我知道它是这样开始的:
“BwIAAACkAABSU0ExAAQAAAE”+指数+模数+ ???????
答案 0 :(得分:0)
RSAKeyValue XML中的XXXX在base64中,只是我不想在那里公开细节。我想知道如何将所有XXXX base64代码组合到一个base64私钥中。
我怀疑这意味着你要逐行执行base64编码。在整个文件上执行编码要简单得多。
例如,您可以按如下方式执行此操作:
TStringList
。Text
属性提取表示文件的单个字符串。Text
属性。