使用OpenSSL解密Windows Crypto API RSA密文

时间:2014-04-21 15:22:26

标签: winapi cryptography openssl endianness

我创建了一个C ++程序,用RSA 2048密钥加密一些字节。

程序的输出是256字节,一切似乎都正常。

但是我完全无法弄清楚如何用openssl解密它。

我被告知我可能需要反转字节顺序,以便它变成大端,但它似乎没有帮助。 (我假设颠倒字节顺序意味着将1F 02 C8转换为F1 20 8C等。)

我主要是从openssl获得以下错误。

openssl rsautl -in output.bin -inkey privatekey -decrypt rsa例程:RSA_padding_check_PKCS1_type_2:块类型不是02:rsa_pk1.c:190:

以下是我感兴趣的任何人的加密代码片段(我已尝试过,最终也是如此)

BYTE crapBuffer[1200] = {0x33,0x1F,0x22,0x34,0x33,0x1F,0x22,0x34,0x33,0x1F,0x22,0x34,0x33,0x1F,0x22,0x34,0x33,0x1F,0x22,0x34};
DWORD dataLen = 20;
CryptEncrypt(publicKey,0,false,0,(BYTE *)crapBuffer,&dataLen,1200);

非常感谢任何帮助,

0 个答案:

没有答案