A Formal Security Analysis of the Signal Messaging Protocol

被引:77
作者
Cohn-Gordon, Katriel
Cremers, Cas [1 ]
Dowling, Benjamin [2 ]
Garratt, Luke [3 ]
Stebila, Douglas [4 ]
机构
[1] CISPA Helmholtz Ctr Informat Secur, Saarbrucken, Germany
[2] Swiss Fed Inst Technol, Zurich, Switzerland
[3] Cisco Syst, San Jose, CA USA
[4] Univ Waterloo, Waterloo, ON, Canada
基金
加拿大自然科学与工程研究理事会; 英国工程与自然科学研究理事会; 澳大利亚研究理事会;
关键词
Cryptography - Security systems;
D O I
10.1007/s00145-020-09360-1
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
The Signal protocol is a cryptographic messaging protocol that provides end-to-end encryption for instant messaging in WhatsApp, Wire, and Facebook Messenger among many others, serving well over 1 billion active users. Signal includes several uncommon security properties (such as "future secrecy" or "post-compromise security"), enabled by a technique calledratchetingin which session keys are updated with every message sent. We conduct a formal security analysis of Signal's initial extended triple Diffie-Hellman (X3DH) key agreement and Double Ratchet protocols as a multi-stage authenticated key exchange protocol. We extract from the implementation a formal description of the abstract protocol and define a security model which can capture the "ratcheting" key update structure as a multi-stage model where there can be a "tree" of stages, rather than just a sequence. We then prove the security of Signal's key exchange core in our model, demonstrating several standard security properties. We have found no major flaws in the design and hope that our presentation and results can serve as a foundation for other analyses of this widely adopted protocol.
引用
收藏
页码:1914 / 1983
页数:70
相关论文
共 65 条
[51]  
Marlinspike Moxie., 2016, The x3dh key agreement protocol
[52]  
Menezes Alfred, 2010, International Journal of Applied Cryptography, V2, P154, DOI 10.1504/IJACT.2010.038308
[53]  
Moscaritolo V., 2012, TECHNICAL REPORT
[54]  
Okamoto T, 2001, LECT NOTES COMPUT SC, V1992, P104
[55]  
Paterson KG, 2011, LECT NOTES COMPUT SC, V7073, P161, DOI 10.1007/978-3-642-25385-0_9
[56]  
Perrin T., 2016, DOUBLE RATCHET ALGOR
[57]  
Perrin Trevor., 2016, The XEdDSA and VXEdDSA Signature Schemes
[58]   Towards Bidirectional Ratcheted Key Exchange [J].
Poettering, Bertram ;
Roesler, Paul .
ADVANCES IN CRYPTOLOGY - CRYPTO 2018, PT I, 2018, 10991 :3-32
[59]   SoK: Secure Data Deletion [J].
Reardon, Joel ;
Basin, David ;
Capkun, Srdjan .
2013 IEEE SYMPOSIUM ON SECURITY AND PRIVACY (SP), 2013, :301-315
[60]   More is Less: On the End-to-End Security of Group Chats in Signal, WhatsApp, and Threema [J].
Roesler, Paul ;
Mainka, Christian ;
Schwenk, Joerg .
2018 3RD IEEE EUROPEAN SYMPOSIUM ON SECURITY AND PRIVACY (EUROS&P 2018), 2018, :415-429