macOS 下使用 GPG

GPG 是 GNU Privacy Guard 的简称,又名 GnuPG 是一种加密软件,它是 PGP 即 Pretty Good Privacy 的替代物,因为 PGP 不开源不免费,所以 GPG 使用还是比较广泛。在 macOS 下使用也比较方便。

安装 GPG

在 macOS 下通过 Homebrew 来安装

brew install gpg

在一段时间的等待后,安装即完成了,我当前使用的版本是 gnupg 2.2.17

使用 GPG,生成公钥和私钥

在终端下执行命令

gpg --full-generate-key

会让你选择

gpg01

一般选择默认 1,可以根据自己的需求来选择其他的选项

然后会让选择长度,也是默认 2048,可以根据自己的需求来选择其他的选项

然后选择有效去,也是默认 0,可以根据自己的需求来选择其他的选项,会有一个确认的过程,整个过程如下图

gpg02

然后会要求输入名字,Email 地址以及 COMMENT,最后确认

gpg03

此时会要求输入密码和再次确认密码,如下图

gpg04

完成后,即可得到结果

gpg05

显示和导出公钥和私钥

gpg --list-keys //查看所有keys
gpg --list-public-keys //查看所有公钥
gpg --list-secret-keys //查看所有私钥

gpg06

通过第一条命令查询后得到的结果,其中虚线上面一条是公钥文件及其保存地址,该文件是一个二进制形式存储的文件,虚线下面的内容是

pub 后是公钥的特征,包含 2048 位,指纹字符串以及生成的时间,该字符串最后十六位即长密钥 ID。其中括号中 S 表示 Signing 即签名,E 表示 Encrypting 即加密,C 表示 Certificating 即认证。

uid 后是用户的个人信息

sub 后是子密钥特征,格式和公钥部分大致相同,包含 2048 位和生成时间。

上面看到的都是精简的内容,如果要看到完整的内容,通过如下命令

gpg --armor --export <邮箱或者指纹字符串或者长密钥 ID> //查看完整的公钥
gpg --armor --export-secret-keys <邮箱或者指纹字符串或者长密钥 ID> //查看完整的私钥

其中在查看私钥的时候,会提示输入之前要求输入的密码,输入正确的密码即可。

为了方便,可以将导出成文件,则执行命令

gpg --armor --output publickeyfile.txt --export <邮箱或者指纹字符串或者长密钥 ID> //导出公钥
gpg --armor --output privatekeyfile.txt --export-secret-keys <邮箱或者指纹字符串或者长密钥 ID> //导出私钥

更多使用帮助,可以通过命令 gpg --help 查看。

应用

公钥在很多场景中可以得到应用,比如收发加密邮件,GitHub 的 Commit 加密等。

© 2008 - 2021 · TOURCODER.COM ·