Gunpg基础
感觉gpg挺有趣的 于是学习了一下 总结了基础使用
GNUPG
介绍
GNU Privacy Guard(GnuPG或GPG)是一种加密软件,它是PGP加密软件的满足GPL的替代物。GnuPG依照由IETF订定的OpenPGP技术标准设计。GnuPG用于加密、数字签名及产生非对称钥匙对的软件。
密钥管理
生成密钥
gpg --gen-key
想要更丰富的选项如过期时间 加密方式 密钥长度
gpg --full-generate-key
生成撤销证书,可以请求外部的公钥服务器撤销公钥。
gpg --gen-revoke [用户ID]
显示密钥
显示全部密钥
gpg --list-keys
输入密钥
除了生成自己的密钥,还需要将他人的公钥或者你的其他密钥输入系统。这时可以使用import参数。
gpg --import [密钥文件]
输出密钥
公钥文件(.gnupg/pubring.gpg)以二进制形式储存,armor参数可以将其转换为ASCII码显示。
gpg --armor --output public-key.txt --export [用户ID]
公钥服务器相关
gpg --send-keys [用户ID] --keyserver keys.gnupg.net
公钥服务器没有检查机制,任何人都可以用你的名义上传公钥,所以没有办法保证服务器上的公钥的可靠性。通常,你可以在网站上公布一个公钥指纹,让其他人核对下载到的公钥是否为真。fingerprint参数生成公钥指纹。
gpg --fingerprint [用户ID]
为了获得他人的公钥,可以让对方直接发给你,或者到公钥服务器上寻找。
gpg --keyserver hkp://subkeys.pgp.net --search-keys [用户ID]
加密与签名
–local-user
发件人
--recipient
收件人
--encrypt
指定源文件
--armor
采用ASCII码形式显示
--detach-sign
独立签名文件
--sign
签名
--decrypt
解密
--verify
验证
--output
输出文件名
TIPS:GPG允许省略decrypt参数。