#post-quantum

kyber-kem

Kyber IND-CCA2 KEM in Rust

3 releases

0.1.3 Jan 9, 2024
0.1.1 Dec 6, 2023
0.1.0 Dec 6, 2023

#2033 in Cryptography

32 downloads per month

AGPL-3.0

3MB
1K SLoC

Kyber-KEM

CI Docs

Implementation of Kyber IND-CCA2 secure key encapsulation mechanism (KEM)

This is a direct Rust reimplementation/port of the Go implementation Symbolic Software under the MIT license.

This Rust implementation is licensed under GNU AGPL-3

Benchmarks

$ cargo bench

Intel i7-1370P results:

Function
kem_keypair_512 17.907 µs 18.019 µs 18.127 µs
kem_encrypt_512 22.458 µs 22.504 µs 22.562 µs
kem_decrypt_512 27.844 µs 28.058 µs 28.288 µs
kem_keypair_768 31.836 µs 31.950 µs 32.103 µs
kem_encrypt_768 37.207 µs 37.298 µs 37.435 µs
kem_decrypt_768 44.192 µs 44.402 µs 44.632 µs
kem_keypair_1024 53.455 µs 53.568 µs 53.721 µs
kem_encrypt_1024 56.700 µs 56.820 µs 56.962 µs
kem_decrypt_1024 64.039 µs 64.464 µs 64.992 µs

Dependencies

~1.5MB
~15K SLoC