本文测试代码基于Openssl版本:1.1.1f
RSA接口
接口简介
- int RSA_generate_key_ex(RSA *rsa, int bits, BIGNUM *e, BN_GENCB *cb);
- 功能:创建⼀对rsa的公钥私钥
- 参数:RSA密钥指针,密钥bit位数,公钥指数的⼤数形式指针,回调函数
- 返回:成功返回1,失败返回0
- e主要有两个取值:第二个更常用
- # define RSA_3 0x3L
- # define RSA_F4 0x10001L
- 注意1:旧接口RSA_generate_key已经被废弃
- 注意2:回调函数可为null,在key的生成过程中会生成素数,cb会在生成素数之后对其进行处理
复制代码
[code]int RSA_public_encrypt(int flen, const unsigned char *from, unsigned char *to, RSA *rsa, int padding);功能:公钥加密,将⻓度为flen的from字符串加密,使用to指针返回密文,返回to的⻓度便是RSA_size(rsa)参数:明⽂⻓度(flen需要满⾜padding的限定规则),明⽂,密⽂,密钥,padding填充模式padding填充模式有: RSA_PKCS1_PADDING: flen |