Pages

Tuesday, 5 November 2024

openssl对文件进行非对称密钥加密和解密

 

#生成私钥

openssl genrsa > rsaprivatekey.pem

#生成公钥

openssl rsa -pubout < rsaprivatekey.pem > rsapubckey.pem

#生成测试文件

echo test > if.txt

#使用公钥加密

openssl rsautl -encrypt -pubin -inkey rsapubckey.pem < if.txt > test-encrypted.txt
#使用私钥解密
openssl rsautl -decrypt -inkey rsaprivatekey.pem < test-encrypted.txt > /dev/stdout

注意:这种方式不能加密大一点儿的文件,否则会出现以下的错误:

RSA operation error 3074250376:error:0406D06E:rsa routines:RSA_padding_add_PKCS1_type_2:data too large for key size:rsa_pk1.c:151

No comments:

Post a Comment