pub struct PasskeyPublicKey(/* private fields */);
Expand description
Public key of a PasskeyAuthenticator
.
This is used to derive the onchain Address
for a PasskeyAuthenticator
.
§BCS
The BCS serialized form for this type is defined by the following ABNF:
passkey-public-key = secp256r1-public-key
Implementations§
Source§impl PasskeyPublicKey
impl PasskeyPublicKey
pub fn new(public_key: Secp256r1PublicKey) -> Self
Sourcepub fn inner(&self) -> &Secp256r1PublicKey
pub fn inner(&self) -> &Secp256r1PublicKey
The underlying Secp256r1PublicKey
for this passkey.
Source§impl PasskeyPublicKey
impl PasskeyPublicKey
Sourcepub fn scheme(&self) -> SignatureScheme
pub fn scheme(&self) -> SignatureScheme
Return the flag for this signature scheme
Source§impl PasskeyPublicKey
impl PasskeyPublicKey
Sourcepub fn derive_address(&self) -> Address
Available on crate feature hash
only.
pub fn derive_address(&self) -> Address
hash
only.Derive an Address
from this Passkey Public Key
An Address
can be derived from a PasskeyPublicKey
by hashing the bytes of the
Secp256r1PublicKey
that corresponds to this passkey prefixed with the Passkey
SignatureScheme
flag (0x06
).
hash( 0x06 || 33-byte secp256r1-public-key)
Trait Implementations§
Source§impl Arbitrary for PasskeyPublicKey
impl Arbitrary for PasskeyPublicKey
Source§type Parameters = ()
type Parameters = ()
The type of parameters that
arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.Source§type Strategy = BoxedStrategy<PasskeyPublicKey>
type Strategy = BoxedStrategy<PasskeyPublicKey>
The type of
Strategy
used to generate values of type Self
.Source§fn arbitrary_with(args: <Self as Arbitrary>::Parameters) -> Self::Strategy
fn arbitrary_with(args: <Self as Arbitrary>::Parameters) -> Self::Strategy
Source§impl Clone for PasskeyPublicKey
impl Clone for PasskeyPublicKey
Source§fn clone(&self) -> PasskeyPublicKey
fn clone(&self) -> PasskeyPublicKey
Returns a copy 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 PasskeyPublicKey
impl Debug for PasskeyPublicKey
Source§impl<'de> Deserialize<'de> for PasskeyPublicKey
impl<'de> Deserialize<'de> for PasskeyPublicKey
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 PartialEq for PasskeyPublicKey
impl PartialEq for PasskeyPublicKey
Source§impl Serialize for PasskeyPublicKey
impl Serialize for PasskeyPublicKey
impl Copy for PasskeyPublicKey
impl Eq for PasskeyPublicKey
impl StructuralPartialEq for PasskeyPublicKey
Auto Trait Implementations§
impl Freeze for PasskeyPublicKey
impl RefUnwindSafe for PasskeyPublicKey
impl Send for PasskeyPublicKey
impl Sync for PasskeyPublicKey
impl Unpin for PasskeyPublicKey
impl UnwindSafe for PasskeyPublicKey
Blanket Implementations§
§impl<U> As for U
impl<U> As for U
§fn as_<T>(self) -> Twhere
T: CastFrom<U>,
fn as_<T>(self) -> Twhere
T: CastFrom<U>,
Casts
self
to type T
. The semantics of numeric casting with the as
operator are followed, so <T as As>::as_::<U>
can be used in the same way as T as U
for numeric conversions. Read moreSource§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<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 more