pub trait ZeroizeOnDrop { }Expand description
Marker trait signifying that this type will Zeroize::zeroize itself on Drop.
Implementations on Foreign Types§
impl ZeroizeOnDrop for ()
() is zero sized so provide a ZeroizeOnDrop implementation.
impl ZeroizeOnDrop for PhantomPinned
PhantomPinned is zero sized so provide a ZeroizeOnDrop implementation.
impl ZeroizeOnDrop for ChaCha20LegacyCore
Available on crate feature
zeroize only.impl ZeroizeOnDrop for SecretDocument
Available on crate feature
zeroize only.impl ZeroizeOnDrop for SigningKey
Available on crate feature
zeroize only.impl ZeroizeOnDrop for SigningKey
impl ZeroizeOnDrop for SecretKey
impl ZeroizeOnDrop for SecretKey
impl ZeroizeOnDrop for EphemeralSecretKey
impl ZeroizeOnDrop for EphemeralSecretKey
impl<A> ZeroizeOnDrop for (A,)where
A: ZeroizeOnDrop,
impl<A, B> ZeroizeOnDrop for (A, B)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
impl<A, B, C> ZeroizeOnDrop for (A, B, C)
impl<A, B, C, D> ZeroizeOnDrop for (A, B, C, D)
impl<A, B, C, D, E> ZeroizeOnDrop for (A, B, C, D, E)
impl<A, B, C, D, E, F> ZeroizeOnDrop for (A, B, C, D, E, F)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
C: ZeroizeOnDrop,
D: ZeroizeOnDrop,
E: ZeroizeOnDrop,
F: ZeroizeOnDrop,
impl<A, B, C, D, E, F, G> ZeroizeOnDrop for (A, B, C, D, E, F, G)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
C: ZeroizeOnDrop,
D: ZeroizeOnDrop,
E: ZeroizeOnDrop,
F: ZeroizeOnDrop,
G: ZeroizeOnDrop,
impl<A, B, C, D, E, F, G, H> ZeroizeOnDrop for (A, B, C, D, E, F, G, H)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
C: ZeroizeOnDrop,
D: ZeroizeOnDrop,
E: ZeroizeOnDrop,
F: ZeroizeOnDrop,
G: ZeroizeOnDrop,
H: ZeroizeOnDrop,
impl<A, B, C, D, E, F, G, H, I> ZeroizeOnDrop for (A, B, C, D, E, F, G, H, I)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
C: ZeroizeOnDrop,
D: ZeroizeOnDrop,
E: ZeroizeOnDrop,
F: ZeroizeOnDrop,
G: ZeroizeOnDrop,
H: ZeroizeOnDrop,
I: ZeroizeOnDrop,
impl<A, B, C, D, E, F, G, H, I, J> ZeroizeOnDrop for (A, B, C, D, E, F, G, H, I, J)where
A: ZeroizeOnDrop,
B: ZeroizeOnDrop,
C: ZeroizeOnDrop,
D: ZeroizeOnDrop,
E: ZeroizeOnDrop,
F: ZeroizeOnDrop,
G: ZeroizeOnDrop,
H: ZeroizeOnDrop,
I: ZeroizeOnDrop,
J: ZeroizeOnDrop,
impl<C> ZeroizeOnDrop for SigningKey<C>where
C: PrimeCurve + CurveArithmetic,
<C as CurveArithmetic>::Scalar: Invert<Output = CtOption<<C as CurveArithmetic>::Scalar>> + SignPrimitive<C>,
<<C as Curve>::FieldBytesSize as Add>::Output: ArrayLength<u8>,
impl<C> ZeroizeOnDrop for EphemeralSecret<C>where
C: CurveArithmetic,
impl<C> ZeroizeOnDrop for SecretKey<C>where
C: Curve,
impl<C, N> ZeroizeOnDrop for ChaChaPoly1305<C, N>where
N: ArrayLength<u8>,
impl<R> ZeroizeOnDrop for ChaChaCore<R>where
R: Unsigned,
Available on crate feature
zeroize only.impl<R> ZeroizeOnDrop for XChaChaCore<R>where
R: Unsigned,
Available on crate feature
zeroize only.impl<T> ZeroizeOnDrop for StreamCipherCoreWrapper<T>where
T: BlockSizeUser + ZeroizeOnDrop,
<T as BlockSizeUser>::BlockSize: IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>,
<<T as BlockSizeUser>::BlockSize as IsLess<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>, B0>, B0>, B0>>>::Output: NonZero,
Available on crate feature
zeroize only.impl<Z> ZeroizeOnDrop for Option<Z>where
Z: ZeroizeOnDrop,
impl<Z> ZeroizeOnDrop for Box<[Z]>where
Z: ZeroizeOnDrop,
Available on crate feature
alloc only.impl<Z> ZeroizeOnDrop for Vec<Z>where
Z: ZeroizeOnDrop,
Available on crate feature
alloc only.impl<Z> ZeroizeOnDrop for PhantomData<Z>
[PhantomData is always zero sized so provide a ZeroizeOnDrop implementation.
impl<Z, const N: usize> ZeroizeOnDrop for [Z; N]where
Z: ZeroizeOnDrop,
Impl ZeroizeOnDrop on arrays of types that impl ZeroizeOnDrop.