【发布时间】:2017-07-11 04:34:50
【问题描述】:
我正在尝试解决与 How to encrypt data using RSA, with SHA-256 as hash function and MGF1 as mask generating function? 完全相同的用例,但我需要更清楚地说明这一点。
上述查询是在 2013 年提出的。当时 OpenSSL 仅支持 SHA1 哈希(硬编码)用于 OAEP 填充。在最新的 OpenSSL (1.0.2k) 中,我可以看到这是通过使用以下 API 解决的:
int RSA_padding_add_PKCS1_OAEP_mgf1(unsigned char *to, int tlen,
const unsigned char *from, int flen,
const unsigned char *param, int plen,
const EVP_MD *md, const EVP_MD mgf1md)
RSA_public_encrypt() 不采用EVP_MD 结构作为参数我不知道如何指定它。
如何使用掩码生成功能在RSA_public_encrypt() 中调用 SHA-256 模式?
【问题讨论】:
-
这个有什么答案吗?请分享。
标签: c openssl rsa public-key-encryption