Crates.io | krystals |
lib.rs | krystals |
version | 0.0.1 |
source | src |
created_at | 2022-08-01 20:52:15.877059 |
updated_at | 2022-08-01 20:52:15.877059 |
description | Rust implementation of CRYSTALS-Kyber and CRYSTALS-Dilithium |
homepage | https://github.com/kammoh/crystals-rs |
repository | https://github.com/kammoh/crystals-rs.git |
max_upload_size | |
id | 637056 |
size | 192,786 |
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.