nostr:note14vx4py3xcp7s2ydj00tcf0umtfg228u3wpswp5czpscm0qndvdpqfe4dgu

接着写。现在Signal即是协议的名字,又是app的名字。

现在全球大约有30亿人在不知不觉中使用Signal协议,Signal 应用本身(大几千万用户?)、WhatsAPP(20亿用户?)、Facebook Messenger(15亿用户?)、Skype、Google to B的聊天软件都是用了signal协议实现的端对端加密。XMPP和Matrix这两个聊天协议也可以说是使用了signal协议实现端对端加密,只是做了自己的代码实现。

可以说Signal协议做出了巨大贡献。

(Telegram没有使用signal协议,用的是他们自己发明的协议,总体来讲不如signal协议透明,学术层面的安全证明审计也少。而且Telegram默认「不使用」端对端加密。)

早期的OTR协议是PC时代的聊天加密协议,对聊天双方同时在线的要求高。Signal可以说是移动手机时代的聊天协议,不需要聊天双方同时在线。

Signal协议可以看作是对OTR的继承和发展。第一版本Signal应用(当时叫做TextSecure)就是用的OTR协议,到了第二个版本才部署他们发展后的Signal协议。

Signal协议主要包括两部分,X3DH协议负责初始的密钥协商,双棘轮算法(Double Ratchet Algorithm)负责后续加密key的派生。Signal协议做到了为每一条消息派生新的加密key。

我把双棘轮算法理解为是对OTR协议原始的通过不断更换公钥来实现更新加密key这一过程的细致化和工程化。实现了更好的前向保密和后向保密(约等于可以从key状态泄漏灾难中恢复过来的能力)。

另外,四年前就有了OTR v4草案,但是好像一直没有被用起来?v4也增加了双棘轮算法。

Reply to this note

Please Login to reply.

Discussion

好怀念那个xmpp还需要otr加密的年代,这个世界变化太快