这是我尝试过的:
使用我的公钥加密邮件
openssl enc -aes-256-cbc -salt -kfile key.pub -in message.txt -out message.enc
使用我的私钥解密邮件
openssl enc -d -aes-256-cbc -salt -in message.enc -pass file:mykey.pem
解密时出错
bad decrypt
452:error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:330:
答案 0 :(得分:4)
此代码有效:
openssl rsautl -pubin -inkey key.pub -encrypt -in message.txt -out message.enc
openssl rsautl -inkey privkey.pem -decrypt -in message.enc -out message.dec
答案 1 :(得分:1)
使用
openssl rsautl -pubin -inkey key.pub -encrypt -in message.txt -out message.enc
您需要定义选项-raw以忽略填充:)
openssl rsautl -pubin -inkey key.pub -encrypt -in message.txt -out message.enc -raw
答案 2 :(得分:1)
enc - symmetric cipher routines
所以你应该使用rsautl
正确的解决方案:
发件人方
enc
加密邮件
rsautl
加密密码短语在接收方
rsautl
解密密码短语enc
使用密码短语解密邮件答案 3 :(得分:0)
加密:
openssl enc -aes-256-cbc -salt -pass file:password.txt -in message.txt -out message.enc
解密:
openssl enc -aes-256-cbc -d -salt -pass file:password.txt -in message.enc -out message.dec
文件password.txt
的第一行包含您的密码。