Answers:
另一种选择是openssl
:
# generate a 2048-bit RSA key and store it in key.txt
openssl genrsa -out key.txt 2048
# encrypt "hello world" using the RSA key in key.txt
echo "hello world" | openssl rsautl -inkey key.txt -encrypt >output.bin
# decrypt the message and output to stdout
openssl rsautl -inkey key.txt -decrypt <output.bin
如果已gpg
安装,这是一种工业强度的加密方法。
gpg --encrypt -r receive@example.com> tempfile
在控制台上输入数据,然后按Ctrl+D结束文本。这将为您提供中的加密数据tempfile
。解密:
gpg --decrypt <临时文件
您将需要密码recipient@example.com
来解密消息。
gpg --encrypt -r recipient@example.com >tempfile gpg: error retrieving 'recipient@example.com' via WKD: No data gpg: recipient@example.com: skipped: No data gpg: [stdin]: encryption failed: No data
(我使用Mac电脑)
生成私钥/公钥对
$ openssl genrsa -out rsa_key.pri 2048; openssl rsa -in rsa_key.pri -out rsa_key.pub -outform PEM -pubout
使用公钥加密字符串,并将其存储在文件中
$ echo "stockexchange.com" | openssl rsautl -encrypt -inkey rsa_key.pub -pubin -out secret.dat
使用私钥解密
$ string=`openssl rsautl -decrypt -inkey rsa_key.pri -in secret.dat `; echo $string
stockexchange.com