#[non_exhaustive]pub enum CryptoError {
NoDefaultProvider,
UnsupportedAlgorithm(CryptoAlgorithm),
InvalidKeyLength {
expected: usize,
actual: usize,
},
InvalidNonceLength {
expected: usize,
actual: usize,
},
InvalidTagLength {
expected: usize,
actual: usize,
},
InvalidPublicKey,
InvalidPrivateKey,
AuthenticationFailed,
InvalidSignature,
RandomnessFailed,
OutputTooSmall {
required: usize,
actual: usize,
},
Provider(String),
}Expand description
A provider-neutral cryptographic failure.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NoDefaultProvider
No built-in default provider was compiled.
UnsupportedAlgorithm(CryptoAlgorithm)
The provider does not implement an algorithm.
InvalidKeyLength
A key has the wrong length.
InvalidNonceLength
A nonce or IV has the wrong length.
InvalidTagLength
An authentication tag has the wrong length.
InvalidPublicKey
Public-key bytes are malformed or use the wrong encoding.
InvalidPrivateKey
Private-key bytes are malformed or incompatible with the scheme.
AuthenticationFailed
Decryption, padding, or tag authentication failed.
InvalidSignature
Signature verification failed.
RandomnessFailed
The cryptographically secure random source failed.
OutputTooSmall
A caller-owned output buffer is too small.
Provider(String)
Sanitized provider diagnostic context.
Trait Implementations§
Source§impl Debug for CryptoError
impl Debug for CryptoError
Source§impl Display for CryptoError
impl Display for CryptoError
impl Eq for CryptoError
Source§impl Error for CryptoError
impl Error for CryptoError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PartialEq for CryptoError
impl PartialEq for CryptoError
impl StructuralPartialEq for CryptoError
Auto Trait Implementations§
impl Freeze for CryptoError
impl RefUnwindSafe for CryptoError
impl Send for CryptoError
impl Sync for CryptoError
impl Unpin for CryptoError
impl UnsafeUnpin for CryptoError
impl UnwindSafe for CryptoError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more