Skip to content

Commit

Permalink
update README
Browse files Browse the repository at this point in the history
  • Loading branch information
supinie committed May 24, 2024
1 parent df0118f commit 4b491fb
Showing 1 changed file with 17 additions and 3 deletions.
20 changes: 17 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,30 @@
![kyber_rust_ferris](./kyber_rust_ferris.png)

# enc_rust _(WIP)_
# enc_rust

[![codecov](https://codecov.io/github/supinie/enc_rust/branch/main/graph/badge.svg?token=S7UTUFQ8M5)](https://codecov.io/github/supinie/enc_rust)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![dependency status](https://deps.rs/repo/github/supinie/enc_rust/status.svg)](https://deps.rs/repo/github/supinie/enc_rust)

### About

A rust implementation of the PQC scheme Crystals (https://pq-crystals.org/).
A pure rust implementation of the Module-Lattice-based standards [ML-KEM](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.203.ipd.pdf) and [ML-DSA](https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.204.ipd.pdf), also known as the PQC scheme [Crystals](https://pq-crystals.org/).

This package consists of a library (`enc_rust`), and (soon :TM:) a binary wrapper. The library contains implementations for both Kyber and Dilithium.
This package consists of a library (`enc_rust`), and (soon :TM:) a binary wrapper. The library currently contains implementations for ML-KEM (Kyber), and will in the future also support ML-DSA (Dilithium).

### Why enc_rust?

enc_rust aims to provide a secure, efficient, and ergonomic solution to any problem that requires quantum secure cryptography.

- No unsafe code
- `no_std` compatible
- ergonomic

enc_rust currently supports ML-KEM as a sole mechanism, but will provide:

- ML-KEM in hybrid with x25519
- ML-DSA
- ML-DSA in hybrid with Ed25519

### Disclaimer

Expand Down

0 comments on commit 4b491fb

Please sign in to comment.