Page 241 - 《软件学报》2021年第9期
P. 241
陆思奇 等:强安全模型下 TLS1.3 协议的形式化分析与优化 2865
3.4 优化协议的效率分析
为了分析优化协议的效率,表 4 对比了 1-RTT semi-static 模式和优化协议所需要的主要密码工具.
Table 4 Main password tools comparison
表 4 主要密码工具对比
模式 DH MAC SIG
1-RTT semi-static 1 1 1
优化模型 1 1 2
从表中可以看出:优化协议与 1-RTT semi-static 模式相比,多使用了一个签名(在传输服务器的长期公钥证
书的时候还需要另一个签名,这个签名是二者都必需的),并且为 Early Data 增加一个签名没有增加发送的消息
数,仍然在 0-RTT 发出,因此不会增加协议的运行时间.此外,增加的签名也不会影响到其他消息,特别是 Finished
消息,因为签名的数据不包括在 MAC 的内容中,因此不会影响到 MAC 的计算效率.需要注意的是:优化协议使
用的签名算法建议采用固定的算法,这样就不需要再增加 chello 消息中协议参数的内容,从而防止增加 MAC 计
算的内容.
综上所述,优化协议只增加了一个签名的代价,对于现代计算机的处理速度以及网络的传输速度来说,这个
代价是非常小的,然而换来的却是能够抵抗 KCI 攻击的安全性提升.
4 结束语
针对 TLS1.3 协议中 3 种支持 0-RTT 数据的模式,本文使用形式化分析工具 Scyther 对其进行了分析,找到
了 0-RTT 数据的泄露和 KCI 攻击两种攻击,进一步提出了一种优化协议,该优化协议相比原来的 3 种模式能够
抵抗 KCI 攻击和重放攻击,通过增加一个签名的微小代价,有效提高了 0-RTT 数据的安全性,特别在使用 POST
作为第 1 个请求的连接时,这样的安全性提升是必要的.
References:
[1] Freier A, Karlton P, Kocher P. The secure sockets layer (SSL) protocol version 3.0. IETF RFC-6101, 2011.
[2] Dierks T, Allen C. The TLS protocol version 1.0. IETF RFC-2246, 1999.
[3] Dierks T, Rescorla E. The transport layer security (TLS) protocol version 1.2. IETF RFC-5246, 2008.
[4] Alfardan N, Bernstein D, Paterson K, et al. On the security of RC4 in TLS. In: Proc. of the Usenix Conf. on Security. USENIX
Association, 2013. 305−320.
[5] Fardan N, Paterson K. Lucky thirteen: Breaking the TLS and DTLS record protocols. In: Proc. of the IEEE Symp. on Security &
Privacy. IEEE Computer Society, 2013. 526−540.
[6] Möller B, Duong T, Kotowicz K. This POODLE bites: Exploiting the SSL 3.0 fallback. Security Advisory, 2014.
[7] Adrian D, Bhargavan K, Durumeric Z, et al. Imperfect forward secrecy: How diffie-hellman fails in practice. In: Proc. of the ACM
Sigsac Conf. on Computer and Communications Security. ACM, 2015. 5−17.
[8] Bhargavan K, Lavaud A, Fournet C, et al. Triple handshakes and cookie cutters: Breaking and fixing authentication over TLS. In:
Proc. of the IEEE Symp. on Security & Privacy. IEEE Computer Society, 2014. 98−113.
[9] Gujrathi S. Heartbleed bug: An OpenSSL heartbeat vulnerability. Int’l Journal of Computer Sciences and Engineering, 2014,2(5):
61−64.
[10] Beurdouche B, Bhargavan K, Delignat-Lavaud A, et al. A messy state of the union: taming the composite state machines of TLS. In:
Proc. of the IEEE Symp. on Security & Privacy, 2015. 535−552.
[11] Rescorla E. The transport layer security (TLS) protocol version 1.3. IETF draft-ietf-tls-tls13-20, 2017.
[12] Bhargavan K, Leurent G. Transcript collision attacks: breaking authentication in TLS, IKE and SSH. British Journal of Psychiatry
the Journal of Mental Science, 2016,41(7):8−13.
[13] Jager T, Schwenk J, Somorovsky J. On the security of TLS 1.3 and QUIC against weaknesses in PKCS#1 v1.5 encryption. In: Proc.
of the ACM Sigsac Conf. on Computer and Communications Security. ACM, 2015. 1185−1196.
[14] Paar C, Adrian D, Kasper E, et al. DROWN: Breaking TLS using SSLv2. In: Proc. of the Usenix Security Symp. USENIX
Association, 2016. 689−706.
[15] Cremers C, Horvat M, Hoyland J, et al. A comprehensive symbolic analysis of TLS 1.3. In: Proc. of the 2017 ACM SIGSAC Conf.
on Computer and Communications Security. ACM, 2017. 1773−1788.