subtle
subtle copied to clipboard
Pure-Rust traits and utilities for constant-time cryptographic implementations.
Only when the const-generics feature is enabled. I had to modify a few tests: they were relying on [u8; N] being automatically dereferenced into &[u8] to get the blanket ConstantTimeEq...
Or at least, attempt to.
Add procedural derive macro to generate implementation for `ConstantTimeEq` trait in subtle. This derive macro is added as a feature in subtle.
https://github.com/dalek-cryptography/subtle/blob/6b6a81ad9a6a00c0b42c327eaf4b2f785774377e/src/lib.rs#L332-L338 Doesn't really rule out a simple `if x == 0 goto end` optimization. I assume the assembly was inspected but that should probably be annotated because it would have...
Travis is broken and hasn't been running in about a year. They claim they support open source projects, but they've told me for the past year that I need to...
### Problem #79 proposed a `ConstantTimePartialOrd` trait, but that attempt was abandoned due to questions about how to create an `Ordering` without the use of `match`. This PR picks up...
### Problem In signalapp/libsignal#469, we discussed having to hand-roll a constant-time comparison function for a public key with a slice of bytes and an enum tag. After seeing #78 where...
### TODO - [ ] #98 - [ ] #99 ### Problem As described in #98, the Signal client crypto implementation wants to use `subtle` to filter and sort `PrivateKey`...