本文内容选自以下文章:
- http://irtfweb.ifa.hawaii.edu/~lockhart/gpg/
- https://www.leadroyal.cn/p/502/
- https://zhuanlan.zhihu.com/p/137574731
- https://learnku.com/articles/71598
- https://blog.csdn.net/willingtolove/article/details/122362705
GPG基本概念
1. 关于[S],[A],[C],[E]功能
标识 | 含义 | 作用 |
---|---|---|
S | sign | 签名功能 |
E | encrypt | 加密功能 |
A | authenticate | 身份验证功能,在其他协议中用于身份验证,例如SSH TLS。只能通过 --expert 选项制作具有该功能的子公钥。 |
C | certify | 认证,主密钥必备能力,且只有主密钥具有 |
[C]、[S]、[A] 均属于签名方案,只有 [E] 是加密方案。
2. 关于GPG的五个信任级别
GPG 的信任级别分为以下几个等级:
Ultimate
:绝对信任,只会出现在你自己的密钥上。
Full
:完全信任,你相信这个密钥,并信任它可以很好地管理签发密钥。使用这个密钥签名的其他密钥也会受到信任。比如,你完全信任了小明的密钥
,那么由小明签名过的小美的密钥
也会受到信任。
Marginal
:相对信任,你相信这个密钥本身,但不确定它签名的密钥是否一定正确。如果一个密钥被至少三个 Marginal 级别的密钥签名,那么该密钥也是可信的。
Never
:绝不信任,这个密钥是完全不可信的。这也许以为着密钥的所有者并不能确保它签名的密钥有效,或是该密钥已被泄露因此不再可信。
Unknown
:未知,这是密钥的默认信任级别,该级别的密钥不会被信任。
3. GPG常见缩写及概念
简写 | 含义 | |
---|---|---|
key pair | 密钥对(包含两部分) | |
primary key [master key] | 主密钥(包括主公钥,主私钥) | |
public key | pub | 主公钥 |
secret key | sec | 主私钥 |
sub-key | sub | 子公钥 |
secret sub-key | ssb | 子私钥 |
key fingerprint | 密钥指纹 |
4.用户身份(UID)简介
uid 即 user id
一个 uid 由三个部分组成:
- 全名(一般是实名)
- 注释(用 ( ) 包括)
- 邮箱地址(用 < > 包括)
这三个部分都是可选的,只要有一项即可。
例如:
Han Meimei email@example.com
Han Meimei (Work) hanmm@company.com
Han Meimei (Product) hanmm@company.com
- 一个密钥可以有多个 uid,方便不同场合使用。
- uid 与哪个子密钥无关,uid 是作用于整个密钥的。
- uid 可以随时添加,但已有的 uid 不能修改,只能单独吊销。
- uid 单独吊销后,只需要重新发布公钥即可。
如果你希望只用一个密钥,但某些身份不公开,你需要小心配置你的公钥,不过最好还是另外用一个密钥。
主密匙相关
创建/删除/查看密钥信息
创建新的密钥对
- gpg --gen-key
Generate a new key pair using the current default parameters. This is the standard command to create a new key. In addition to the key a revocation certificate is created and stored i