【发布时间】:2012-12-17 04:48:58
【问题描述】:
RSA_size(rsa) 在我的应用程序中返回等于 256 的模数。
我正在使用RSA_PKCS1_OAEP_PADDING 选项加密数据,因此发送到RSA_public_encrypt() 的输入缓冲区的最大长度为 256 - 41 = 215
在某些情况下,我的输入缓冲区的长度可能会超出 215 的限制,我需要多次调用 RSA_public_encrypt()。
我的问题是关于RSA_public_encrypt()的返回值。
根据我的测试,返回值为 256(等于 RSA_size(rsa)),
doc 还说:
RSA_public_encrypt() 返回加密数据的大小(即, RSA_size(rsa))。
我只是想确保RSA_public_encrypt()的返回值只有两种可能。
-1 (error) 或 modulus(success),没有其他可能,是吗?
我很好奇,因为我需要划分加密缓冲区并为每个块调用RSA_private_decrypt()。如果每个RSA_public_encrypt的加密缓冲区相同,那么我不需要为每个人存储大小。
【问题讨论】:
标签: encryption cryptography openssl rsa