文章摘要: 用于管理加密和签名的软件包,命令总结。
密钥管理
生成密钥对
gpg --genkey
查询
# 查询所有公钥
gpg --list-keys
# 查询所有私钥
gpg --list-keys
导入
# 导入一个公钥或私钥
gpg --import <文件名>
导出
# 导出公钥
gpg --export <公钥ID>
# 导出私钥(请谨慎操作)
gpg --export-secret-keys <私钥ID>
修改
# 编辑一个密钥,例如添加或删除UID
gpg --edit-key [keyid]
更新
# 更新信任数据库
gpg --update-trustdb
加密和解密
# 加密文件
gpg --encrypt --recipient [keyid] -o [output file] [input file]
# 解密文件
gpg --decrypt <文件名>
签名和验证
# 创建一个文件的签名
gpg --sign [file]
# 创建一个明文签名文件
gpg --clearsign [file]
# 创建一个分离的签名文件
gpg --detach-sign [file]
# 验证一个文件的签名
gpg --verify [signature file] [file]
密钥格式转换
# 将 ASCII格式的密钥(.asc) 转换为 二进制格式(.gpg) 格式的密钥
gpg --dearmor --output <ASCII格式的密钥(.asc)> <二进制格式(.gpg)>
# 将 二进制格式(.gpg) 转换为 ASCII格式的密钥(.asc) 格式的密钥
gpg --armor --output <二进制格式(.gpg)> <ASCII格式的密钥(.asc)>
其他
# 显示一个密钥的指纹
gpg --fingerprint [keyid]
# 从文件描述符n读取密码短语
gpg --passphrase-fd [n]