您的位置:首页 > 其它

Post-quantum key exchange for the TLS protocol from the ring learning with errors problem

2016-02-26 00:33 513 查看
原文地址:https://www.douglas.stebila.ca/research/papers/SP-BCNS15/


Abstract

Lattice-based cryptographic primitives are believed to offer resilience against attacks by quantum computers. We demonstrate the practicality of post-quantum key exchange by constructing ciphersuites for the Transport Layer Security (TLS) protocol that provide
key exchange based on the ring learning with errors (R-LWE) problem; we accompany these ciphersuites with a rigorous proof of security. Our approach ties lattice-based key exchange together with traditional authentication using RSA or elliptic curve digital
signatures: the post-quantum key exchange provides forward secrecy against future quantum attackers, while authentication can be provided using RSA keys that are issued by today's commercial certificate authorities, smoothing the path to adoption.

Our cryptographically secure implementation, aimed at the 128-bit security level, reveals that the performance price when switching from non-quantum-safe key exchange is not too high. With our R-LWE ciphersuites integrated into the OpenSSL library and using
the Apache web server on a 2-core desktop computer, we could serve 506 RLWE-ECDSA-AES128-GCM-SHA256 HTTPS connections per second for a 10 KiB payload. Compared to elliptic curve Diffie--Hellman, this means an 8 KiB increased handshake size and a reduction
in throughput of only 21%. This demonstrates that post-quantum key-exchange can already be considered practical.

Keywords: cryptographic protocols, post-quantum, learning with errors, Transport Layer Security (TLS), key exchange


Reference

Joppe W. Bos, Craig Costello, Michael Naerhig, Douglas Stebila. Post-quantum key exchange for the TLS protocol from the ring learning with errors problem. In Proc. IEEE Symposium on Security and Privacy (S&P)
2015, pp. 553-570. IEEE, May 2015. © IEEE.


Code

C implementation of the core ring learning with errors key exchange protocol: https://github.com/dstebila/rlwekex
Integration into OpenSSL 1.0.1: GitHub (be sure to
use OpenSSL_1_0_1_stable branch)https://github.com/dstebila/openssl-rlwekex/tree/OpenSSL_1_0_1-stable
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: