PGP 加密与解密 — 免费、私密、纯浏览器本地运行
基于 OpenPGP.js 的完整 PGP 工作台:生成现代 ECC 密钥对、使用任意公钥加密消息、使用私钥解密,以及明文签名或验证文本。所有操作均在浏览器本地完成,密钥或消息绝不会被上传传输。
隐私安全设计。所有密码学运算均通过 OpenPGP.js 在你的浏览器中运行 — 密钥、密码短语和消息绝不离开你的设备,仅当明确点击保存时才会存储密钥。
常见问题
- 我的密钥或消息会被上传到任何地方吗?
- 不会。所有加密运算均通过 OpenPGP.js 在你的浏览器本地完成。密钥、密码短语和消息绝不会离开你的设备;除非你明确点击“在当前浏览器保存密钥”,否则不会存储任何内容。
- 它会生成什么样的密钥?
- 基于 curve25519 的现代 ECC 密钥 — 这是当前 OpenPGP 的默认配置。在同等安全性下,它们比传统 4096 位 RSA 更小巧、更快速,并兼容 GnuPG 2.1+ 及所有现代 PGP 客户端。
- 我可以使用在其他地方(如 GnuPG、Keybase)生成的密钥吗?
- 可以。粘贴任何 ASCII 封装的密钥块(-----BEGIN PGP … KEY BLOCK-----)即可。RSA、ECC 和 Ed25519 密钥均支持加密、解密、签名和验签。
- 如果我忘记了密码短语怎么办?
- 密码短语用于加密你的私钥,且无法找回 — 这正是其设计机制所在。没有它,私钥就完全无法使用,因此请务必将密码短语保存在密码管理器中。
- 加密和签名有什么区别?
- 加密会隐藏内容,使其仅能由接收者读取。签名则证明消息确实出自你本人且未经篡改 — 文本本身仍然可读。你可以单独执行其中一项,也可以两者同时进行。
- 点击“在当前浏览器保存密钥”安全吗?
- 为了使用方便,它会将封装好的密钥存储在当前浏览器的 localStorage 中。任何能访问你浏览器配置文件的人都可能读取它们,因此请仅在个人设备上使用 — 下载 .asc 文件并妥善离线保存会更安全。
如何使用 PGP 加密消息
- 生成或导入密钥对. 在“生成”选项卡中输入姓名/邮箱和密码短语,即可创建 ECC (curve25519) 密钥对。下载生成的两个 .asc 文件 — 或者在其他选项卡中粘贴你现有的密钥。
- 使用公钥加密. 在“加密”选项卡中,粘贴接收者的 PUBLIC 公钥块和你的消息,然后点击“加密”。只有对方的私钥才能解密读取生成的 ASCII 封装输出内容。
- 使用私钥解密. 在“解密”选项卡中,粘贴你的 PRIVATE 私钥、对应的密码短语以及封装加密消息。明文将立即显示 — 全程完全离线。
- 签名与验证. 使用“签名”功能生成他人可用你的公钥验证的明文签名消息;使用“验签”功能检查已签名的消息是否被篡改。
免费无需注册在浏览器中运行
使用场景
- 无需安装 GnuPG 即可生成用于加密邮件的 PGP 密钥对
- 在聊天软件中发送 API 密钥或密码前,使用同事的公钥进行加密
- 在无法安装软件的电脑上解密 PGP 消息
- 对版本发布公告或安全通知进行明文签名,便于读者验证发布者身份
- 对照维护者的公钥验证下载文件的已签名校验和声明