Crates.io | crystals-rs |
lib.rs | crystals-rs |
version | 0.0.1 |
source | src |
created_at | 2022-08-01 21:36:59.753672 |
updated_at | 2022-08-01 21:36:59.753672 |
description | Rust implementation of CRYSTALS-Kyber and CRYSTALS-Dilithium |
homepage | |
repository | |
max_upload_size | |
id | 637077 |
size | 192,058 |
Pure rust, portable, secure, and efficient implementations of CRYSTALS-Kyber and CRYSTALS-Dilithium.
no_std
Kyber is an IND-CCA2-secure key encapsulation mechanism (KEM), whose security is based on the hardness of solving the learning-with-errors (LWE) problem over module lattices. Kyber has been identified as a winner of the NIST post-quantum cryptography project to be used in the upcoming NIST quantum-safe publickey cryptography standard.
Dilithium is a digital signature scheme that is strongly secure under chosen message attacks based on the hardness of lattice problems over module lattices.
The design of Dilithium is based on the "Fiat-Shamir with Aborts" technique of Lyubashevsky which uses rejection sampling to make lattice-based Fiat-Shamir schemes compact and secure.
Dilithium3
is the recommended parameter set.