6 releases (stable)
1.1.2 | Aug 30, 2024 |
---|---|
1.1.1 | Mar 20, 2021 |
1.0.0 | Feb 19, 2021 |
0.1.1 | May 20, 2020 |
0.1.0 | Mar 23, 2020 |
#143 in Cryptography
426,130 downloads per month
Used in 136 crates
(13 directly)
21KB
488 lines
CT-Codecs
A reimplementation of the base64 and hexadecimal codecs from libsodium and libhydrogen in Rust.
- Constant-time for a given length, suitable for cryptographic purposes
- Strict (base64 strings are not malleable)
- Supports padded and unpadded, original and URL-safe base64 variants
- Supports characters to be ignored by the decoder
- Zero dependencies,
no_std
friendly.
Links:
Example usage
use ct_codecs::{Base64UrlSafe, Decoder, Encoder};
let encoded = Base64UrlSafe::encode_to_string(x)?;
let decoded = Base64UrlSafe::decode_to_vec(encoded, None)?;
lib.rs
:
Constant-time codecs.