我可以在命令提示符下使用公钥加密消息(字符串)吗?此外,我之后如何解密结果?
答案1
另一个选择是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
答案2
如果您已经gpg
安装,这是一种工业强度的加密方法。
gpg——加密-r[电子邮件保护]>临时文件
在控制台中输入数据,然后按Ctrl+D结束文本。这将为您提供加密数据tempfile
。要解密:
gpg --decrypt <临时文件
您将需要密码来[email protected]
解密消息。
答案3
生成私钥/公钥对
$ 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
答案4
笔记:
crypt 采用了单转子机器,其设计与德国 Enigma 类似,但转子有 256 个。攻击此类机器的方法众所周知,因此 crypt 的安全性很低。
但对于演示目的来说这是可以的。