openssl实现RSA加密解密软件

易语言 2020-07-17 12:23:51

openssl实现RSA加密解密软件

目前没有做RSA签名和签名验证等 这些源码很多,大家找一找应该也能找到。

模数大数指针 = BN_new ()
.如果真 (取字节集长度 (到字节集 (待加密文本)) < 1 或 取字节集长度 (到字节集 (公匙)) < 1 或 取字节集长度 (到字节集 (模数)) < 1)
返回 (“”)
.如果真结束
.如果真 (模数大数指针 = 0)
返回 (“”)
.如果真结束
公匙大数指针 = BN_new ()
.如果真 (公匙大数指针 = 0)
BN_free (模数大数指针)
返回 (“”)
.如果真结束
BN_hex2bn (模数大数指针, 模数)
BN_hex2bn (公匙大数指针, 公匙)
RSA_地址 = RSA_new ()
.如果真 (RSA_地址 = 0)
BN_free (公匙大数指针)
BN_free (模数大数指针)
返回 (“”)
.如果真结束
地址到RSA (RSA, RSA_地址, 取RSA长度 (RSA))
RSA.n = 模数大数指针
RSA.e = 公匙大数指针
flen = RSA_size (RSA)
加密结果 = 取空白字节集 (flen)
加密字节集 = 到字节集 (待加密文本) + 取空白字节集 (flen - 取字节集长度 (加密字节集))
flen = RSA_public_encrypt (flen, 加密字节集, 加密结果, RSA, 3)
.如果真 (flen > 0)
结果文本 = 删全部空 (字节集_十六进制_优化 (加密结果))
.如果真结束
BN_free (模数大数指针)
BN_free (公匙大数指针)
RSA_free (RSA_地址)