feat: implement RustCrypto traits for signatures and KEMs#310
feat: implement RustCrypto traits for signatures and KEMs#3100rlych1kk4 wants to merge 3 commits into
Conversation
|
@dstebila , this continues #295 with @SebastianFaller permission. I preserved the original authorship, rebased the work onto the current main branch, and verified it on stable and beta Rust. Whenever convenient, I would appreciate your review. |
…-quantum-safe#137) Signed-off-by: 0rlych1kk4 <orlychikka@gmail.com>
Signed-off-by: 0rlych1kk4 <orlychikka@gmail.com>
Signed-off-by: 0rlych1kk4 <orlychikka@gmail.com>
6632cc8 to
a1d6cb4
Compare
|
@dstebila ,I reproduced the macOS-latest, nightly, true failure on the current upstream/main branch using a clean worktree. |
Hi @0rlych1kk4 thanks for working on an update. There have been algorithm identifier changes since the Rust wrapper was last updated (removal of SPHINCS+, changes involving HQC, plus some others). So those will need to be updated as well, which I think would probably be best done as a separate PR. |
Summary
This PR continues the work started by @SebastianFaller in #295 and updates it for the current
mainbranch.It adds RustCrypto trait support for:
The original implementation commit was preserved, so the authorship remains attributed to @SebastianFaller.
Changes
EncapsulatorandDecapsulatorimplementations for the RustCrypto KEM traits;SignerandVerifierimplementations for the RustCrypto signature traits;Validation
Tested with both stable and beta Rust:
cargo fmt --all -- --checkcargo check --workspace --all-featurescargo test -p oqs --all-featurescargo test -p oqs --doc --all-featurescargo clippy -p oqs --all-targets --all-features --no-deps -- -D warningscargo +beta check --workspace --all-featurescargo +beta test -p oqs --all-featurescargo +beta test -p oqs --doc --all-featuresResults:
The full workspace Clippy run is still blocked by the existing
clippy::unnecessary_map_orwarning inoqs-sys/build.rs, which is unrelatedto this change.
Continues #295.
Closes #137.