Matrix是一个强加密、去中心化的即时通信协议,Matrix也有多种开源客户端和服务器实现。Matrix协议,对标的是同为即时通信软件的Telegram,Discord。比起这两者,Matrix无需邮箱和手机号就可以注册,免除个人信息泄露之忧。本文介绍Matrix协议和它的一个客户端Element(原名Riot.im)。下文为了方便起见,统称为Matrix。
Element桌面和移动客户端截图
Element桌面和移动客户端截图
Matrix有很多优点,包括:
隐私:注册Matrix不需要邮箱和手机号,只需要用户名和密码。使用Matrix无需担心手机号和邮箱泄露的危险。
安全加密:Matrix私聊和群聊是端到端加密的,即使是服务器的所有者,也无法看到用户的聊天内容。
开源:Matrix客户端和服务器软件全部开源,任何人都可以审查代码,检查代码中的漏洞。有兴趣的人也可以用开源代码搭建自己的Matrix服务器。
去中心化:Matrix是联邦式协议,Matrix网络由分布在世界各地,由不同个人和组织运营的服务器组成,因此Matrix协议不容易被单个组织垄断。
Matrix网络组成结构
Matrix网络是联邦式结构,由多个地位平等的服务器连接而成
“联邦式协议”听上去十分晦涩,事实上,电子邮件就是一种联邦式协议,每个电子邮件服务器之间的地位平等。在收发电子邮件时,只要指定一个电子邮件服务器和服务器上的用户,就可以通信。例如example@gmail.com这个电子邮件地址,example是用户名,gmail.com是服务器名。
在Telegram,微信等聊天软件中,添加好友需要指定手机号或者用户名。而Matrix非常像电子邮件,一个matrix账号ID如下:
这里example是用户名,matrix.org是服务器名。Matrix添加好友和收发电邮一样,需要填写完整的MatrixID@服务器名。在这里就是example@matrix.org。
安全使用Matrix
不过,本文推荐使用Matrix官方的服务器matrix.org,matrix官方服务器安全性和稳定性有保证,配置也是最容易的。
Tor+网页版的优势:
隐匿IP:Element客户端配置代理比较麻烦。而在Tor浏览器中,不必费力配置客户端的代理,可以做到全程隐匿IP。
易用性:很多聊天软件网页版会比客户端少些功能。而Element和这些软件不同,Element网页版和桌面客户端的界面完全相同,功能也完全等价。
隐蔽性:网页版比App的隐蔽性更好,只要使用无痕模式登录,别人就无法发觉Matrix客户端的存在。
Tor+网页版全程匿名,注册不需要邮箱和手机,打开浏览器就能使用。全部通信高度加密,方便程度又可比论坛私信,可作为私信的加密替代。推荐用这种方式使用Matrix。
注册和使用
Element的下载页面提供网页版,也可以点以下链接直接进入注册页面。注意全过程应当用Tor浏览器完成。
首次注册如下图:
图1:首次注册
图1:首次注册
选择上面的“Free”可以选择直接在matrix.org服务器上注册(推荐)。选择“Premium”,可以使用Matrix官网提供的主机自己搭建服务器。选择“Advanced”,可以使用第三方服务器。
注册时只要提供用户名和密码即可,Email是可选的,可以不输入。
图2:邮箱
图2:邮箱
接下来会弹出提醒,如果不绑定电子邮箱,若忘记密码则无法回复。由于这里追求匿名,点continue继续。
如果用Tor注册,接下来会有Google reCaptcha验证码,点完验证码之后即完成注册,如图:
图3:注册完成
图3:注册完成的界面
以后要进入Matrix网页版,访问app.element.io就可以直接登录。
创建恢复密钥
Matrix使用端到端加密,加密后的聊天记录又(可能)保存在多个服务器上,为了能查看历史聊天记录,需要创建恢复密钥。
恢复密钥并不复杂,本质上就是给你的账户设置两道密码。登录密码用来登录Matrix账户,恢复密钥用来查看历史消息。当你在新的设备上登录时,Matrix服务器会要求验证第二道密码,没有第二密码(恢复密钥)仍然可以登录,但是无法查看历史消息。
恢复密钥的设置方法如下:
点击左上头像,选择【settings】,在右侧选择【Security & Privacy】,如图。
图4:设置
图4:设置
在左侧选择绿色的【Set up】按钮,弹出如下页面。
图5:恢复密钥选项
图5:恢复密钥选项
这里选择第二项【Enter a Security Phrase】。
接下来需要输入第二道密码,这里设置的密码就用来恢复聊天记录。设置完成后,会显示一个12组每组4个的密钥,如下图,建议把这个密钥备份并保管好。如果上面的第二道密码忘记,可以用这个密钥串解锁聊天记录:
图6:恢复密钥串
图6:恢复密钥串
如果你需要管理这些用户名、密码、密钥串,可以使用KeepassXC等密码管理器。
开始聊天
在Matrix中,知道对方的ID(类似example@matrix.org这格式),点击左边栏上边的“+”号(Start Chat)就可以私聊了。
群聊的方法类似。点击左边栏下方的“+”号(Add Room)就可以创建或加入群聊。选择explore public rooms,可以使用加群连接加入他人群聊。群ID类似于以下格式:
也可以选择Create new room自行建群。
Matrix的其它用法和主流聊天软件类似,在此不再赘述。
更多Matrix资料可见:
[1] https://matrixim.cc/sfd2017-matrix.pdf,北大Matrix兴趣社团的slides。
[2] https://matrix.org/docs/develop Matrix开发文档,可用于bot,bridge的开发参考。也描述了很多Matrix的内部细节。