【发布时间】:2010-09-30 09:36:09
【问题描述】:
我尝试使用 RSA 算法加密简单文本。我的代码有问题。
RSA *_RSA ;
unsigned char text[2560] = "A";
unsigned char sectext[2560];
unsigned char decrypttext[2560];
int i = 0;
_RSA = RSA_generate_key ( 1024, 65537, NULL, NULL );
i = RSA_public_encrypt ( 1, text, sectext, _RSA, RSA_PKCS1_OAEP_PADDING );
i = RSA_private_decrypt( 1, sectext, decrypttext, _RSA, RSA_PKCS1_OAEP_PADDING);
RSA_free ( _RSA );
RSA_public_encrypt的返回值为128,即密文的大小。 RSA_private_decrypt 返回 -1,这是一个错误。如果我尝试显示恢复的文本,那么我什么也得不到。
为什么RSA_private_decrypt 返回 -1?
【问题讨论】:
-
_RSA 不是一个好主意:请参阅stackoverflow.com/questions/228783/…
标签: c security encryption openssl