In applications such as end-to-end encrypted instant messaging, secure email, and device pairing, users need to compare key fingerprints to detect impersonation and adversary-in-the-middle attacks. Key fingerprints are usually computed as truncated hashes of each party's view of the channel keys, encoded as an alphanumeric or numeric string, and compared out-of-band, e.g. manually, to detect any inconsistencies. Previous work has extensively studied the usability of various verification strategies and encoding formats, however, the exact effect of key fingerprint length on the security and usability of key fingerprint verification has not been rigorously investigated. We present a 162-participant study on the effect of numeric key fingerprint length on comparison time and error rate. While the results confirm some widely-held intuitions such as general comparison times and errors increasing significantly with length, a closer look reveals interesting nuances. The significant rise in comparison time only occurs when highly similar fingerprints are compared, and comparison time remains relatively constant otherwise. On errors, our results clearly distinguish between security non-critical errors that remain low irrespective of length and security critical errors that significantly rise, especially at higher fingerprint lengths. A noteworthy implication of this latter result is that Signal/WhatsApp key fingerprints provide a considerably lower level of security than usually assumed.
翻译:在端到端加密即时通讯、安全电子邮件和设备配对等应用中,用户需要比较密钥指纹以检测冒充和中间人攻击。密钥指纹通常计算为双方通道密钥视图的截断哈希值,编码为字母数字或数字字符串,并通过带外方式(例如手动)进行比较以检测任何不一致性。以往研究广泛探讨了各种验证策略和编码格式的可用性,但并未严格研究密钥指纹长度对安全性和可用性的具体影响。我们开展了一项包含162名参与者的研究,探讨数字密钥指纹长度对比较时间和错误率的影响。虽然结果证实了一些普遍直觉,例如比较时间和错误率随长度增加而显著上升,但进一步分析揭示了有趣的细微差别。比较时间的显著增加仅发生在高度相似的指纹对比时,否则比较时间保持相对稳定。在错误方面,我们的研究明确区分了安全非关键错误(其发生率随长度变化保持较低水平)和安全关键错误(其发生率显著上升,尤其在较长指纹长度下)。后一结果的一个重要启示是,Signal/WhatsApp的密钥指纹提供的安全水平远低于通常假设。