Skip to content

Commit 6aac7c8

Browse files
Merge pull request #7 from sebastienrousseau/feat/kyberlib
fix(kyberlib): 🚑 fixes
2 parents eea09be + 259b628 commit 6aac7c8

File tree

3 files changed

+23
-8
lines changed

3 files changed

+23
-8
lines changed

.github/workflows/release.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -337,4 +337,4 @@ jobs:
337337
with:
338338
command: publish
339339
args: "--no-verify --allow-dirty"
340-
use-cross: false
340+
use-cross: false

Cargo.toml

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build = "build.rs"
44
categories = ["algorithms", "cryptography", "wasm", "no-std"]
55
description = "A Robust Rust Library for CRYSTALS-Kyber Post-Quantum Cryptography."
66
documentation = "https://docs.rs/kyberlib"
7-
edition = "2021"
7+
edition = "2018"
88
exclude = [
99
"/.git/*",
1010
"/.github/*",
@@ -27,7 +27,6 @@ license = "MIT OR Apache-2.0"
2727
name = "kyberlib"
2828
readme = "README.md"
2929
repository = "https://github.com/sebastienrousseau/kyberlib"
30-
rust-version = "1.71.1"
3130
version = "0.0.3"
3231

3332
[dependencies]

TEMPLATE.md

+21-5
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,27 @@ A Robust Rust Library for CRYSTALS-Kyber Post-Quantum Cryptography
4242

4343
## Features ✨
4444

45-
- Feature 1
46-
- Feature 2
47-
- Feature 3
45+
### Core Features
4846

49-
## Changelog 📚
47+
- **`no_std` compatible**: No dependence on the Rust standard library
48+
- **Avoid allocations**: Uses stack-based data structures only
49+
- **Configurable**: Features to enable different parameter sets
50+
- **Optimised x86_64**: Uses assembly for performance-critical code, including an optimised AVX2 version by default.
51+
- **Safe code**: Reference implementations have no `unsafe` blocks
52+
- **WebAssembly Support**: Can be compiled to WASM using wasm-bindgen.
53+
54+
### Advanced Features
55+
56+
- **Allocation-free Guarantee**: KyberLib guarantees all its core cryptography operations are free of heap allocations.
57+
- **Assembly Optimizations**: The x86_64 assembly implementations use AVX2 instructions for high performance.
58+
- **Security**: KyberLib contains no unsafe code in its public API surface.
5059

51-
-
60+
## Functionality 📚
61+
62+
- **Key Generation**: Create public/private key pairs
63+
- **Encapsulation**: Encapsulate a shared secret with a public key
64+
- **Decapsulation**: Decapsulate a shared secret with a private key
65+
- **Key Exchange**: Perform authenticated key exchanges
5266

5367
[0]: https://kyberlib.com/
5468
[2]: http://opensource.org/licenses/MIT
@@ -66,3 +80,5 @@ A Robust Rust Library for CRYSTALS-Kyber Post-Quantum Cryptography
6680
[libs-badge]: https://img.shields.io/badge/lib.rs-v0.0.1-orange.svg?style=for-the-badge 'Lib.rs badge'
6781
[license-badge]: https://img.shields.io/crates/l/kyberlib.svg?style=for-the-badge 'License badge'
6882
[made-with-rust-badge]: https://img.shields.io/badge/rust-f04041?style=for-the-badge&labelColor=c0282d&logo=rust 'Made With Rust badge'
83+
84+
## Changelog 📚

0 commit comments

Comments
 (0)