Conf42: Golang 2021


Quantum-Resistant Native Go Programs: Taking the (Quantum) Leap

Mathilde Raynal
Lead Developer @ Kudelski Security

Mathilde Raynal's LinkedIn account

The arrival of Quantum computers threatens the security of cryptography as we know it. To take a step ahead, NIST launched a competition in 2016 to find the best quantum-resistant algorithms. Out of the 105 initial candidate schemes, only 15 were selected as finalists in 2020. The research community has done extensive work on assessing their security and weaknesses, and we are now at a point where we can start using them in practice. Unlike the competition that designated AES as the standard for symmetric encryption, it is expected for multiple schemes to be standardized at the end of this one. Indeed, the wide range of approaches taken by the finalists all come with different advantages and disadvantages that might not be suited for all use-cases.

This presentation motivates the need for post-quantum cryptography, offers an introduction to the various techniques used to build quantum resistant protocols and gives an insight on what to expect in the coming years.

Among the remaining candidates, we selected Kyber and Dilithium - two schemes offering respectively a Key Encapsulation Mechanism and a Signature algorithm- and ported the reference implementations to Go. We deviate from a straightforward code translation in order to preserve the security of the implementation, especially against Side-Channel attacks, and to benefit from Go’s special features to obtain a fast and reliable library. We are open-sourcing the library we developed, and it will be available on Github at the time of the talk. We will go through its API and the way one might use it in their own codebase to obtain quantum resistant protocols.

Awesome conferences for

Priority access to all content

Community Discord

Exclusive promotions and giveaways