Skip to main content

Crate bouncycastle_utils

Crate bouncycastle_utils 

Source
Expand description

Basic utilities for the crypto crates.

The functions contained here are not really intended to be used by end users, but you are welcome to do so if you wish.

That said, beware that this crate is not necessarily documented to the same standard as other crates. Since many of the contained helpers are security-critical (such as the constant time module), we will prioritize fixing security bugs over maintaining a stable API for this crate.

This crate intentionally does not have #![forbid(unsafe_code)] because some of the constant-time and zeroization techniques require unsafe code in order to force the compiler into specific assembly-level behaviours. The idea is to contain the unsafe code in a central location rather so that the higher-level primitives can stick to safe rust.

Modules§

ct
A set of constant-time helper functions for the following:
secret
A transparent wrapper type, Secret, which is a wrapper that holds a secret value and guarantees it is securely zeroized on drop, and protected from accidintal logging by implementing redacting fmt::Debug and fmt::Display.

Functions§

max
Basic max function. If they are equal, it returns the first one.
min
Basic min function. If they are equal, it returns the first one.