gpg是一款非对称加密的软件,是免费,还有一款叫pgp,是一款商业软件,收费的。
非对称加密涉及:公钥,私钥概念
私钥自己所有,公钥公布给大家,也就是谁要给你信息,就是用你的公钥加密,公钥加密后的信息,只能被私钥。
阮一峰的这篇文章很不错,图文结合的介绍了公钥、私钥、数字签名、摘要、数字证书:http://www.ruanyifeng.com/blog/2011/08/what_is_a_digital_signature.html(文章质量真的很高)
公钥,密钥的操作:
1.生成公钥,私钥。
gpg --gen-key
2.导出自己的公钥
gpg --export --armor mykeyID > gpgkey.pub.asc #mykeyID就是刚才生成公钥和私钥之后给的密钥ID
3.导入别人的公钥
gpg --import gpgkey.pub.asc
4.导出私钥
gpg -oa seckey.asc --export-secret-keys mykeyID
5.导入私钥
gpg --import seckey.asc
6.列出所用公钥
gpg -k
7.列出所有密钥
gpg -K
加密,解密:
1.用朋友AA的公钥加密文件test.txt
gpg -e -r AA test.txt #(-r 表示指定用户) 此命令会生成test.txt.gpg的加密文件
2.解密test.txt.gpg文件
gpg -d test.txt.gpg #提示输入生成密钥时密码
签名
1.签名
gpg -o doc.sig -s doc #默认使用的是第一个密钥进行签名加密的
gpg软件可以对邮件进行加密,当然是文本类,操作比较麻烦,可以使用邮件客户端的插件来完成这些工作,支持的邮件客户端有thunderbird,这样就保证了信息在传输过程中不被人看到的。