mullvad / oqs-rs

Rust bindings and key exchange for liboqs (Open Quantum Safe), a library for quantum-resistant cryptographic algorithms
35 stars 4 forks source link

liboqs is ancient #34

Open survived opened 4 years ago

survived commented 4 years ago

oqs-rs provides binding for liboqs @ 581fbbb which is more than 500 commits behind the current version. I guess there could be critical security changes or other important modifications.

thomwiggers commented 4 years ago

This version of liboqs ships round-1 implementations. We're nearing round 3...

survived commented 4 years ago

I made a fork of oqs-rs and keeping it compatible with the freshest version of liboqs. However, there're a lot of work to do: like, update documentation, remove dead code and so on, so it's still not comfortable to use.

thomwiggers commented 4 years ago

liboqs now uses CMake, so I'm afraid that a lot of the work in that fork also needs to be redone...

thomwiggers commented 4 years ago

I've hacked together my own version at https://github.com/thomwiggers/oqs-rs, there's no friendly wrappers in there yet though. They might appear as I need more algorithms for my own research, but I don't think there's much value in exposing many of the non-PQ-primitive APIs that oqs.h contains (common, random, AES, etc).

survived commented 4 years ago

The only difference I noticed since moving on CMake is that .lib folder has been renamed to lib. Build system rarely matters if you just link with generated library.

survived commented 4 years ago

Do you plan to publish your crate? I did my fork for research purposes too. There's definitely a lack of PQ crates in Rust. Perhaps a large number of research works did not happen due to missing liboqs bindings.

thomwiggers commented 4 years ago

I'd rather have the crate self-build oqs.

I may, I already maintain http://crates.io/crates/pqcrypto et al, but that depends how 'neat' this crate will get. I have some conference deadlines to meet...