生成主密钥
1
| gpg --expert --full-gen-key
|
选择 (11) ECC (set your own capabilities)
和 (S) Toggle the sign capability
,让主密钥仅有签名功能
生成三个子密钥
获取主密钥指纹
gpg --fingerprint --keyid-format long -K
使用quick-add-key
参数快速添加子密钥
1 2 3
| gpg --quick-add-key <fingerprint> cv25519 encr gpg --quick-add-key <fingerprint> ed25519 auth gpg --quick-add-key <fingerprint> ed25519 sign
|
如需设定密钥有效期,可在命令行最后加入时间,去1y
备份密钥
导出公钥
1
| gpg -ao public-key.pub --export <key id>
|
导出私钥
1 2 3 4
| gpg -ao sec-key.asc --export-secret-key <key id>! gpg -ao sign-key.asc --export-secret-key <key id>! gpg -ao auth-key.asc --export-secret-key <key id>! gpg -ao encr-key.asc --export-secret-key <key id>!
|
不同的表示不同的子密钥
!
表示仅导出一个私钥,否则将导出所有私钥
导入Canokey
- 查看智能卡设备状态
- 写入子密钥
- 选中第一个子密钥
- 写入到智能卡
- 取消选择
- 保存修改并退出
- 再次查看设备状态
此时子密钥前的标识改为ssb>
表示私钥已经不在本地
删除本地私钥
1
| gpg --delete-secret-keys <key id>
|