pub struct EvmSignature(pub Signature);Expand description
A secp256k1 signature.
Tuple Fields§
§0: SignatureImplementations§
Source§impl EvmSignature
impl EvmSignature
Sourcepub fn new(prehash: CryptoHash, secret: &EvmSecretKey) -> Self
pub fn new(prehash: CryptoHash, secret: &EvmSecretKey) -> Self
Computes a secp256k1 signature for prehash using the given secret.
Sourcepub fn sign_prehash(secret: &EvmSecretKey, prehash: CryptoHash) -> Self
pub fn sign_prehash(secret: &EvmSecretKey, prehash: CryptoHash) -> Self
Computes a signature from a prehash.
Sourcepub fn check<'de, T>(
&self,
value: &T,
author: EvmPublicKey,
) -> Result<(), CryptoError>where
T: BcsSignable<'de> + Debug,
pub fn check<'de, T>(
&self,
value: &T,
author: EvmPublicKey,
) -> Result<(), CryptoError>where
T: BcsSignable<'de> + Debug,
Checks a signature.
Sourcepub fn check_with_recover<'de, T>(
&self,
value: &T,
sender_address: [u8; 20],
) -> Result<EvmPublicKey, CryptoError>where
T: BcsSignable<'de> + Debug,
pub fn check_with_recover<'de, T>(
&self,
value: &T,
sender_address: [u8; 20],
) -> Result<EvmPublicKey, CryptoError>where
T: BcsSignable<'de> + Debug,
Checks a signature against a recovered public key.
Sourcepub fn verify_batch<'a, 'de, T, I>(
value: &'a T,
votes: I,
) -> Result<(), CryptoError>
pub fn verify_batch<'a, 'de, T, I>( value: &'a T, votes: I, ) -> Result<(), CryptoError>
Verifies a batch of signatures.
Returns an error on first failed signature.
Sourcepub fn from_slice<A: AsRef<[u8]>>(bytes: A) -> Result<Self, CryptoError>
pub fn from_slice<A: AsRef<[u8]>>(bytes: A) -> Result<Self, CryptoError>
Creates a signature from the bytes. Expects the signature to be serialized in raw-bytes form.
Trait Implementations§
Source§impl Clone for EvmSignature
impl Clone for EvmSignature
Source§fn clone(&self) -> EvmSignature
fn clone(&self) -> EvmSignature
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for EvmSignature
impl Debug for EvmSignature
Source§impl<'de> Deserialize<'de> for EvmSignature
impl<'de> Deserialize<'de> for EvmSignature
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for EvmSignature
impl Display for EvmSignature
Source§impl FromStr for EvmSignature
impl FromStr for EvmSignature
Source§impl InputType for EvmSignature
impl InputType for EvmSignature
Source§type RawValueType = EvmSignature
type RawValueType = EvmSignature
The raw type used for validator. Read more
Source§fn create_type_info(registry: &mut Registry) -> String
fn create_type_info(registry: &mut Registry) -> String
Create type information in the registry and return qualified typename.
Source§fn parse(value: Option<Value>) -> InputValueResult<Self>
fn parse(value: Option<Value>) -> InputValueResult<Self>
Parse from
Value. None represents undefined.Source§fn as_raw_value(&self) -> Option<&Self::RawValueType>
fn as_raw_value(&self) -> Option<&Self::RawValueType>
Returns a reference to the raw value.
Source§fn qualified_type_name() -> String
fn qualified_type_name() -> String
Qualified typename.
Source§impl OutputType for EvmSignature
impl OutputType for EvmSignature
Source§fn create_type_info(registry: &mut Registry) -> String
fn create_type_info(registry: &mut Registry) -> String
Create type information in the registry and return qualified typename.
Source§async fn resolve(
&self,
_: &ContextSelectionSet<'_>,
_field: &Positioned<Field>,
) -> ServerResult<Value>
async fn resolve( &self, _: &ContextSelectionSet<'_>, _field: &Positioned<Field>, ) -> ServerResult<Value>
Resolve an output value to
async_graphql::Value.Source§fn qualified_type_name() -> String
fn qualified_type_name() -> String
Qualified typename.
Source§impl PartialEq for EvmSignature
impl PartialEq for EvmSignature
Source§impl ScalarType for EvmSignature
impl ScalarType for EvmSignature
Source§impl Serialize for EvmSignature
impl Serialize for EvmSignature
impl Copy for EvmSignature
impl Eq for EvmSignature
impl StructuralPartialEq for EvmSignature
Auto Trait Implementations§
impl Freeze for EvmSignature
impl RefUnwindSafe for EvmSignature
impl Send for EvmSignature
impl Sync for EvmSignature
impl Unpin for EvmSignature
impl UnwindSafe for EvmSignature
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
impl<Choices> CoproductSubsetter<CNil, HNil> for Choices
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
impl<M, I> RuntimeMemory<&mut I> for Mwhere
M: RuntimeMemory<I>,
Source§fn read<'instance>(
&self,
instance: &'instance &mut I,
location: GuestPointer,
length: u32,
) -> Result<Cow<'instance, [u8]>, RuntimeError>
fn read<'instance>( &self, instance: &'instance &mut I, location: GuestPointer, length: u32, ) -> Result<Cow<'instance, [u8]>, RuntimeError>
Reads length bytes from memory from the provided location.
Source§fn write(
&mut self,
instance: &mut &mut I,
location: GuestPointer,
bytes: &[u8],
) -> Result<(), RuntimeError>
fn write( &mut self, instance: &mut &mut I, location: GuestPointer, bytes: &[u8], ) -> Result<(), RuntimeError>
Writes the bytes to memory at the provided location.