GPG 与文件、邮件加密
密钥与公钥管理
这里以 MacOS 下的 gpg 工具为例。
Windows 系统可选择:
- 在 WSL 下使用 gpg
- 使用 Gpg4win
生成自己密钥并发布公钥
> # 生成密钥与公钥(交互式的)
> # 生成后不满意可用 gpg --delete-secret-keys [ID] 和 gpg --delete-keys [ID] 删除
> gpg --full-gen-key
> # 查看本地公钥
> # 下面 47EB7384 开头的那一长串就是我的 ID
> gpg --list-keys
/Users/Roy/.gnupg/pubring.kbx
-----------------------------
pub rsa4096 2020-02-28 [SC]
47EB7384425BD613BC77D227201B9A6321856771
uid [ultimate] Yi LUO <luoy@std.uestc.edu.cn>
sub rsa4096 2020-02-28 [E]
> # 上传公钥,之后告诉同事自己的 ID 或邮箱
> gpg --keyserver hkp://pgp.mit.edu:80 --send-keys [ID]
公钥与密钥导入导出
# 导入
gpg --import
# 导出公钥
gpg --armor -o gpg.pub --export
# 导出私钥
gpg --armor -o gpg.sec --export-secret-keys
导入他人公钥
> # 按对方的 [ID/mail] 查找公钥后导入(交互式的)
> gpg --keyserver hkp://pgp.mit.edu:80 --search-keys [ID/mail]
对文件加密
> # 如果要加密文件传输给对方
> # 用 [ID/name/mail] 指定对方公钥加密文件 data.csv 生成 data.csv.gpg
> gpg --encrypt --recipient [ID/name/mail] data.csv
> # 如果收到对方给自己的加密文件
> # 使用自己私钥解密
> gpg --output data.csv --decrypt data.csv.gpg
对邮件加密
在邮箱中配置 PGP 可以加密信息,适用于通信。
这里以 mutt 客户端的配置为例:
source /usr/local/Cellar/mutt/1.13.0/share/doc/mutt/samples/gpg.rc
set pgp_default_key = "201B9A6321856771"
其中 source 所引用的文件是 mutt 自带的 gpg 配置,引用过来后在下面配置默认 key 为自己的就可以。
其它邮箱客户端请按关键词自行搜索,如百度“thunderbird gpg4win”、“hotmail gpg4win”。
Page Not Found
Try to search through the entire repo.