PGP 加密邮件完整指南(以 Thunderbird 为例)
本指南从零开始讲清楚:
- 什么是 PGP
- 如何在 Thunderbird 中生成密钥
- 如何发布与获取公钥
- 如何发送与接收加密邮件
- 常见公钥保存与发布方式
- 安全建议与注意事项
不对比其他客户端,只以 Thunderbird 为例。
一、PGP 是什么?
PGP(Pretty Good Privacy)是一种端到端加密技术。
它的核心逻辑是:
用对方的"公钥"加密,只有对方的"私钥"能解密。
PGP 解决两个问题:
- 🔒 内容保密(即使邮件被截获也无法读取)
- ✍️ 身份验证(确认邮件确实由你发送)
二、三个核心概念
1️⃣ 公钥(Public Key)
- 可以公开
- 别人用它给你加密
- 可以上传到公钥服务器或网站
2️⃣ 私钥(Private Key)
- 必须自己保存
- 用来解密别人发给你的邮件
- 丢失后无法恢复历史加密邮件
3️⃣ 指纹(Fingerprint)
- 公钥的唯一标识
- 用于验证公钥没有被篡改
- 建议通过电话或线下确认
三、整体流程图
生成密钥 → 发布公钥 → 导入对方公钥 → 发送加密邮件 → 对方解密
四、在 Thunderbird 中生成 OpenPGP 密钥
步骤:
- 打开 Thunderbird
- 进入"账户设置"
- 选择"端到端加密"
- 点击"添加密钥"
- 选择"生成新的 OpenPGP 密钥"
- 设置密钥有效期
- 设置保护密码
完成后:
- 你拥有一对 公钥 + 私钥
- 私钥保存在本地电脑中
五、导出公钥
步骤:
- 打开"OpenPGP 密钥管理"
- 选中你的密钥
- 点击"导出"
- 选择导出"公钥"
- 保存为
.asc文件
这个文件可以发送给别人。
六、常见的公钥保存与发布方式
1️⃣ 直接发送公钥文件
- 通过邮件发送
.asc文件 - 通过聊天工具发送
- 通过 U 盘等方式线下传递
优点:简单
缺点:可能被中间人替换
2️⃣ 放在个人或公司网站
例如:
https://yourdomain.com/pgp.asc
建议:
- 在"Contact / 联系方式"页面公布
- 同时公布指纹
- 明确说明"官方公钥"
3️⃣ 发布在 GitHub
方式:
- 在 README 中粘贴公钥
- 单独一个 pgp.asc 文件
- 放在个人资料页面
4️⃣ 上传到公钥服务器(Key Server)
常见服务器:
- keys.openpgp.org(推荐)
- keyserver.ubuntu.com
优点:
- 全球可查询
- 可通过邮箱搜索
缺点:
- 一旦上传难以删除
5️⃣ 使用 WKD(Web Key Directory)
适用于拥有域名的用户。
如果你的邮箱是:
可在服务器部署:
https://yourdomain.com/.well-known/openpgpkey/
Thunderbird 可自动发现公钥。
七、导入对方公钥
步骤:
- 打开"OpenPGP 密钥管理"
- 点击"导入"
- 选择对方的公钥文件
- 查看指纹
- 确认并信任
八、发送加密邮件
- 点击"写邮件"
- 填写收件人
- 点击 🔒 加密图标
- 建议同时启用"签名"
- 发送
九、接收加密邮件
- 打开邮件
- 自动识别为 PGP 加密
- 输入私钥密码
- 解密成功
十、安全建议
- 使用强密码保护私钥
- 定期更新密钥(例如 1~2 年)
- 不随意信任未知公钥
- 发布公钥时公开指纹
- 离线备份私钥
十一、一句话总结
PGP 是真正"你掌握密钥"的邮件安全模式。
公钥可以公开,私钥必须永远安全。