介绍
对称加密
你曾通过加密压缩文件来规避聊天软件或网盘等平台的审查(如违规检查)吗?这种方式属于对称加密,加密和解密都需要使用同一个密钥(密码)。
不过这里存在一个问题:如何安全地告知朋友这个密钥呢?直接把密钥通过平台发给对方,平台背后的运营方也能通过查看你们之间的聊天记录知道这个密钥,这使得加密失去了意义。
非对称加密
非对称加密解决了这个问题。它使用一对密钥:一个公钥(公开密钥)和一个私钥(私有密钥)。公钥可以对外分享,用来加密消息;私钥只能自己持有,用来解密消息。你的朋友使用你的公钥加密消息(明文)得到密文,这段密文只有你的私钥才能解密并还原为原始消息(明文)。其他人即使拿到密文,也会因为没有你的私钥而无法解密。此外,其他人也不能通过你的公钥反推出你的私钥。
在实际使用中,通过非对称加密发送一条消息通常需要经过以下步骤:
安装好的加密软件、创建好的密钥对和导入的公钥可以重复使用,无需每次加密前重复相关操作。
选择加密软件
OpenPGP 是一种开放的非对称加密标准,它制定了密文、密钥与签名的统一格式。
由于历史原因,有时也用 PGP 或 GPG(GnuPG) 指代 OpenPGP,三者一般可以互换使用。
本教程主要介绍实现了 OpenPGP 标准的加密软件。不同的加密软件,只要都实现了 OpenPGP 标准,就能相互收发加密消息。
软件选择建议:
- Windows / Linux 用户推荐使用 Kleopatra。
- Android 平台可选择 OpenKeychain,但该软件已停止维护,原则上不再推荐。
- 其他平台的用户可在 OpenPGP Software 中寻找合适的软件,或自行搜索。