[−][src]Enum schnorrkel::errors::SignatureError
Errors which may occur while processing signatures and keypairs.
All these errors represent a failed signature when they occur in the context of verifying a sitgnature, including in deserializaing for verification. We expose the distinction among them primarily for debugging purposes.
This error may arise due to:
-
Being given bytes with a length different to what was expected.
-
A problem decompressing
r
, a curve point, in theSignature
, or the curve point for aPublicKey
. -
A problem with the format of
s
, a scalar, in theSignature
. This is only raised if the high-bit of the scalar was set. (Scalars must only be constructed from 255-bit integers.) -
Multi-signature protocol errors
Variants
EquationFalse
A signature verification equation failed.
We emphasise that all variants represent a failed signature, not only this one.
PointDecompressionError
Invalid point provided, usually to verify
methods.
ScalarFormatError
Invalid scalar provided, usually to Signature::from_bytes
.
BytesLengthError
An error in the length of bytes handed to a constructor.
To use this, pass a string specifying the name
of the type
which is returning the error, and the length
in bytes which
its constructor expects.
Fields of BytesLengthError
NotMarkedSchnorrkel
Signature not marked as schnorrkel, maybe try ed25519 instead.
MuSigAbsent
There is no record of the preceeding multi-signautre protocol stage for the specified public key.
Fields of MuSigAbsent
musig_stage: MultiSignatureStage
Identifies the multi-signature protocol stage during which the error occured.
MuSigInconsistent
For this public key, there are either conflicting records for the preceeding multi-signautre protocol stage or else duplicate duplicate records for the current stage.
Fields of MuSigInconsistent
musig_stage: MultiSignatureStage
Identifies the multi-signature protocol stage during which the error occured.
duplicate: bool
Set true if the stage was reached correctly once but this duplicate disagrees.
Trait Implementations
impl PartialEq<SignatureError> for SignatureError
[src]
fn eq(&self, other: &SignatureError) -> bool
[src]
fn ne(&self, other: &SignatureError) -> bool
[src]
impl Eq for SignatureError
[src]
impl Hash for SignatureError
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl Copy for SignatureError
[src]
impl Debug for SignatureError
[src]
impl Display for SignatureError
[src]
impl Clone for SignatureError
[src]
fn clone(&self) -> SignatureError
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl Fail for SignatureError
[src]
fn name(&self) -> Option<&str>
[src]
Returns the "name" of the error. Read more
fn cause(&self) -> Option<&(dyn Fail + 'static)>
[src]
Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more
fn backtrace(&self) -> Option<&Backtrace>
[src]
Returns a reference to the Backtrace
carried by this failure, if it carries one. Read more
fn context<D>(self, context: D) -> Context<D> where
D: Display + Send + Sync + 'static,
[src]
D: Display + Send + Sync + 'static,
Provides context for this failure. Read more
fn compat(self) -> Compat<Self>
[src]
Wraps this failure in a compatibility wrapper that implements std::error::Error
. Read more
Auto Trait Implementations
impl Send for SignatureError
impl Sync for SignatureError
impl Unpin for SignatureError
impl UnwindSafe for SignatureError
impl RefUnwindSafe for SignatureError
Blanket Implementations
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> AsFail for T where
T: Fail,
[src]
T: Fail,