kyber icon indicating copy to clipboard operation
kyber copied to clipboard

A rust implementation of the Kyber post-quantum KEM

Results 21 kyber issues
Sort by recently updated
recently updated
newest added

The current signature of both encapsulate and decapsulate (`fn encapsulate(...) -> Result`, `fn decapsulate(...) -> Result` stores the **secret** on the stack. This means it will potentially be copied around...

To what extent is Kyber still in flux or is the current standard solid? https://groups.google.com/a/list.nist.gov/g/pqc-forum/c/C0D3W1KoINY Of course maybe there's no way to know... just curious if you know or not.

Hello everyone, I suggest this diff against master to patch non-constant time division revealed by DJB through KyberSlash (https://kyberslash.cr.yp.to/). For the sake of correctness, the changes proposed here are as...

#36 exposed IND-CPA Kyber primitives, but #96 reduced the scope of publicly available parameters (see [here](https://github.com/Argyle-Software/kyber/pull/96/files#diff-b1a35a68f14e696205874893c07fd24fdb88882b47c23cc0e0c80a30c7d53759R157-R160)). This PR proposes to expose again `IND-CPA` parameters publicly, gated under `hazmat` feature.

The Kyber reference implementation has been updated to eliminate usages of division out of timing-variability concerns: https://github.com/pq-crystals/kyber/commit/dda29cc63af721981ee2c831cf00822e69be3220 It would probably be good to do something similar, e.g. https://github.com/Argyle-Software/kyber/blob/476e22c1a1ed579f3030e1ae46077036dc384d7f/src/reference/polyvec.rs#L63

After running: ```bash git clone https://github.com/Argyle-Software/kyber kyber-clippy-test && cd kyber-clippy-test && cargo clippy --features=90s-fixslice -- -W clippy::pedantic -W clippy::correctness -W clippy::perf -W clippy::style -W clippy::suspicious -W clippy::complexity -A clippy::missing_errors_doc -W...

Hello, I was wondering if we could add a function to import keys (from IO or somewhere else) and check them. A test is already performed for that but no...

* Removes unnecessary borrows * Adds parentheses for clarity * Use subtraction assignment * Remove unnecessary indexing

As with the 0.4 release, things are now broken. Not urgent but would be nice to update the benchmarking suite.