利用现有的QQ账号打造一个用户到用户加密的聊天环境

需要用到的资源:
QQ号码一个,并开通QQ信箱的 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务 (QQ会建议大家使用QQ邮箱手机版app。它建议它的,我们不能听它的)。
一个支持GPG/PGP功能的邮件客户端,这在linux系统上并不困难,几乎每一个都是支持的。如果你使用windows系统的操作系统的话(不管是win7 win10 win11)推荐使用 thunderbird 或者 Claws Mail ,其中 thunderbird 使用比较方便,Claws Mail的配置稍微繁琐一些。

步骤:

1. 安装好支持GPG/PGP的邮件客户端。linux用户都是高手,不需要我再多嘴,所以本文中将以win10下安装thunderbird为例:
1.1. 把 https://download.mozilla.org/?product=thunderbird-latest&os=win&lang=zh-CN 复制进浏览器的地址栏后回车,即可从thunderbird的娘家下载最新版本客户端。注意:一定不要从百度搜,因为它搜出来的大部份是带有木马或者病毒的。作为偷懒的方法,你也可以点击这里来进行下载
1.2. 双击刚才下载好的安装包,一路 下一步/Next 直到安装完成。




1.3. 默认安装完成后会自动打开主程序。如果你在安装过程中发现并没有自动打开的话,就去找到桌面上的快捷方式 或者 开始菜单里面的快捷方式 就是蓝色的雷鸟抱成一个球的那个图标,双击运行 thunderbird 的主程序。
1.4. 你可以看到 thunderbird 已经自动为你打开了 账户设置 这个选项卡,默认有三项需要填:
1.4.1. 第一项是 您的全名 这里填的是当你发出邮件后,对方首先看到的来源地,如果你想把这个账号用于跟熟悉的人聊天的话那么写上你的名字是一个不错的选择。当然你也看到了,thunderbird 在填写框那里提示可以输入 李四 ,所以这是一个随意的名称,仅仅是会显示给接收消息的人看而已。
1.4.2. 第二项是 电子邮件地址 这里要填的是你的QQ号+@qq.com。举个例子吧,如果我的qq号码是 12345,很显然这并不是我的QQ号,仅是用来举例,因为他太顺了,那么这里要填写的就是12345@qq.com。需要注意的是输入法,一定要改成是半角字符输入,如果不知道怎么改的话就切换成英文的输入模式。因为全角字符会导致与腾讯服务器上记录的你的用户信息不匹配,从而造成后面一直登录不上。
1.4.3. 第三项是 密码 这里要填的是你在qq信箱里开通POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务时生成的那个第三方授权码,而不是你的QQ密码。所以你真的不需要担心你的QQ密码是不是会被泄漏的问题,因为根本用不到你的QQ密码。
1.4.4. 这时按下那个蓝蓝的 继续 按钮吧,只需等待大概一秒钟左右的样子,这取决于你的网速,但一般都是很快你就能看到thunderbird已经找到了配置方式。我们可以来一项项的核对一下:
1.4.4.1. 收件 IMAP SSL/TLS imap.qq.com
1.4.4.2. 发件 SMTP SSL/TLS smtp.qq.com
1.4.4.3 用户名 你的QQ号码@qq.com

1.4.5. 如果上面都没有问题的话那就按下那个蓝蓝的 完成 铵钮吧。

等待一秒钟左右的样子,你就能看到 成功创建账户! 这几个字,而且前面还有一个绿色的对号。
到此,你已经把QQ信箱成功的接入到你的电脑上了。恭喜你。
1.5. 下一步,就是启用 用户到用户加密 了,
1.5.1. 刚才的选项卡上的完成不要着急点,你可以看到在你的账号下面有一个 端到端加密 ,点击它,就可以开始配置了。

如果你刚才已经点击了那个完成按钮,也不要着急,可以在雷鸟的主窗口的最左侧靠下边的位置找到一个小齿轮的图标,点击它之后就打开了 设置 选项卡,这在以后也是会经常用到的一个选项卡。接着在刚才的小齿轮附近你就能看到 账户设置 点击它,即而就打开了 账户设置 选顶卡 ,在左侧上部你就能看到你添加的QQ信箱了,可以看到它里面有一个可配置项是 端到端加密 。



1.5.2. 在 端到端加密 里面有两种加密方式 一种是 OpenPGP , 另一种是 S/MIME 。这里我们只配置 OpenPGP,而不配置 S/MIME 。你可以看到一个显目的钥匙标志,在它右面现在是 "Thunderbird 没有 12345@qq.com 的个人 OpenPGP 密钥" 再往右边就有一个 添加密钥...(A) 按钮。点击它吧。

1.5.3. 弹出的对话框中 选择 新建 OpenPGP 密钥(C),然后点击 继续

1.5.4. 又弹出一个对话框是吗?留意一下 身份标识 那里是不是我们要添加密钥对的这个QQ账号。密钥到期日 和 高级设置 那里可以根据自己的需求填,如果不知道该怎么填,那么默认的配置thunderbird就做的很好了,可以直接点击那个蓝蓝的按钮 生成密钥 。

接着的对话框是问你是不是真的要为这个账户生成密钥对,点击 确定 就行。

这里点完之后也许会没有刚才几步反应那么迅速,是因为生成密钥的过程需要不少的计算过程,所在时间很稍久一点,但也不会太久,一般也就几秒钟的时间。之后就会跳回 1.5.2. 的那个界面。但是稍有不同,现在在钥匙图标后已经显示出来刚才创建的密钥。
1.5.5. 注意到那个绿色的条了吗? 已经成功创建 OpenPGP 密钥 ,还有蓝色框里面那个 发布 按钮?点击发布吧,这样别人就能在不需要向你索要公钥的情况下就能找到你的公钥,并加密与你的消息。这里仅会发布公钥,也就密钥对里可以对外公开的那一半,私钥是安全的,不会被任何人盗用。

如果你看到了一个弹出对话框上显示 公钥已发送到"vks://keys.openpgp.org"。的话,就点关闭吧。

1.5.6. 这时你的切换到第一个选项卡,在你的QQ信箱的收件箱里应该已经收到了一封邮件,是 keyserver@keys.openpgp.org 发来的。点开它。邮件正文里面有一个网址 形似: https://keys.openpgp.org/verify/vgeBVW161M6Y7g5b7my5u41QtHyv4Tizi6c8Cs2iTja

点击它或者复制到浏览器中打开它,就能看到类似: Your key 47FAFECD9056CA89058E4AE948D3D1A79CA8D650 is now published for the identity 12345@qq.com. 的一句话,这时你的 端到端加密 就已经配置完成了。


2. 配置完成了,那么怎么使用它呢?
2.1. 在雷鸟的主界面左上角附近有一个蓝蓝的 "+ 写消息" 按钮,点它一下,就打开了消息编写界面。
留意一下,发件人那里是不是我们配置完成了端到端加密的那个QQ账号, 收件人那里填一个朋友的QQ账号+@qq.com,比如我们有一个朋友,他/她的qq号码是12346,那么收件那里就填 12346@qq.com 。主题那里就填你想和他/她的话题就行,比如"今晚八点一起玩游戏吧"。而下面的大片空白,那里是写内容的地方,比如"我想了下,今天咱们换个战术,你进攻左边,我进攻右边,咱俩从两边包抄他们,今天肯定赢。"

2.2. 消息写完了,这时就可以直接点击这个对话框左上角的发送了,这样消息能准确的到达对方那里。但这样是明文传送的,狗讯能看到你和你朋友的消息内容。这可不是我们所希望的。于是,我们把视线稍往右移一点点,就在发送按钮的右面就有一个 加密 按钮,我们点它。如果你是第一次与你的这个朋友发送加密消息,那么大概率你会看到两个黄色的条儿,一个是朋友的QQ邮箱地址,另一个是这个对话框的最下面。其中下面那个黄条有两个按钮,一个是不加密,就是直接用狗讯能看见你俩消息内容的方式传送; 而另一个按钮是 解决 ,我们点击它。

就出来一个对话框,是 OpenPGP 密钥助手。

点击 在网上寻找公钥 ,如果你的朋友有多个公钥的话,那么你可以点击右边的 解决 来从中选择一个,并点击 接受 ,接着点关闭。



这时你就已经为朋友加密好了消息了,这时再点击 发送 狗讯就看不到你俩到底在聊什么了,它仅知道你给朋友发了一个消息,至于消息的内容它是看不到的。


3. 朋友收到信时会是什么状态呢?
3.1. 如果是在网页版的qq信箱中打开,则只会看到两个附件

3.1.1. 一个附件是一个后缀是 .bin 的文件,这个文件你可以不理会。另一个是后缀是 .asc 的文件,如果你把它下载到你的电脑上打开它的话,会发现它是加密过的pgp消息。

3.2. 如果是在没有配置密钥对的客户端上打开,会提示解密失败

3.3. 只有在正确配置了正确的密钥对的客户端上打开,才会正确显示邮件的标题和正文,这就是端到端的加密。



本文由 https://www.timeline.menu/article/co/利用现有的QQ账号打造一个用户到用户加密的聊天环境.html 原创,转载时请标明出处。

如果你想发表对本文的一些讨论,或者指出本文中的错误,请前往讨论区,地址是 https://www.expl.cc/discuss/viewtopic.php?t=203 ,欢迎发表你对本文的看法。如文中有错误,也欢迎指出。