研究人员发现推特源码中为用户私信(direct messages)功能加入端到端加密(E2EE)支持。
推特早在2018年就尝试了E2EE系统的原型——secret conversation,但是没有最终成为产品,并最终被放弃。
近日,研究人员Jane Manchun Wong在推特安卓版源码中新加入了一些内容,其中就包括加密密钥——"encryption keys"。从源码中的字符串来看,会话的加密密钥会生成一个数,如果这个数与接收者手机中的数一致,就可以保证端到端加密。
Elon Musk回复了Jane Manchun Wong的推文,暗示该功能仍然开发中。
为什么推特需要E2EE
E2EE可以确保离开发送者的消息是加密形式存在的,加密的消息可以被接收端解密读取。因此,发送者和接收者需要使用加密密钥对来加密和解密消息的内容。
在大多数的E2EE实现中,发送者使用接收者数字签名的公钥来加密消息,接收者使用自己的私钥来解密。
在推特的E2EE实现中,wong提到了"conversation key",所以推特可能采用了对称加密,即聊天中的双方使用相同的密钥来进行加密和解密。
发送者的消息会转为不可直接读取内容的密文状态,并在传输过程中保持密文状态,因此互联网服务提供商、网络监听者、甚至推特都不能直接读取消息的明文内容。
如果推特在私信中引入了E2EE,那么用户会觉得其通信的安全和隐私得到了保证,包括推特平台被黑等特殊情况。比如,2020年7月,推特承认有黑客入侵了其雇员账户,并访问了管理员面板,可以读取36个名人的私信收件箱,并下载了其中7个私信收件箱的内容。
如果那时推特使用了E2EE功能,那么黑客下载的只是无法直接读取内容的密文,对用户不会造成影响。
其他使用E2EE的消息平台还有Signal、Threema、 WhatsApp、iMessage、Viber、Element/Matrix、 Tox、Keybase、 XMPP、Skype和Wire。
本文翻译自:https://www.bleepingcomputer.com/news/security/twitter-source-code-indicates-end-to-end-encrypted-dms-are-coming/