pub struct SdkSigner { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Signer for SdkSigner
impl Signer for SdkSigner
Source§fn xpub(&self) -> Result<Vec<u8>, SignerError>
fn xpub(&self) -> Result<Vec<u8>, SignerError>
The master xpub encoded as 78 bytes length as defined in bip32 specification.
For reference: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#user-content-Serialization_format
Source§fn derive_xpub(&self, derivation_path: String) -> Result<Vec<u8>, SignerError>
fn derive_xpub(&self, derivation_path: String) -> Result<Vec<u8>, SignerError>
The derived xpub encoded as 78 bytes length as defined in bip32 specification.
The derivation path is a string represents the shorter notation of the key tree to derive. For example:
m/49’/1’/0’/0/0
m/48’/1’/0’/0/0
For reference: https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki#user-content-The_key_tree
Source§fn sign_ecdsa(
&self,
msg: Vec<u8>,
derivation_path: String,
) -> Result<Vec<u8>, SignerError>
fn sign_ecdsa( &self, msg: Vec<u8>, derivation_path: String, ) -> Result<Vec<u8>, SignerError>
Sign an ECDSA message using the private key derived from the given derivation path
Source§fn slip77_master_blinding_key(&self) -> Result<Vec<u8>, SignerError>
fn slip77_master_blinding_key(&self) -> Result<Vec<u8>, SignerError>
Return the master blinding key for SLIP77: https://github.com/satoshilabs/slips/blob/master/slip-0077.md
Source§fn sign_ecdsa_recoverable(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
fn sign_ecdsa_recoverable(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
Sign an ECDSA message using the private key derived from the master key
Source§fn hmac_sha256(
&self,
msg: Vec<u8>,
derivation_path: String,
) -> Result<Vec<u8>, SignerError>
fn hmac_sha256( &self, msg: Vec<u8>, derivation_path: String, ) -> Result<Vec<u8>, SignerError>
HMAC-SHA256 using the private key derived from the given derivation path
This is used to calculate the linking key of lnurl-auth specification: https://github.com/lnurl/luds/blob/luds/05.md
Source§fn ecies_encrypt(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
fn ecies_encrypt(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
Encrypts a message using (ECIES)[ecies::encrypt]
Source§fn ecies_decrypt(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
fn ecies_decrypt(&self, msg: Vec<u8>) -> Result<Vec<u8>, SignerError>
Decrypts a message using (ECIES)[ecies::decrypt]
Auto Trait Implementations§
impl Freeze for SdkSigner
impl RefUnwindSafe for SdkSigner
impl Send for SdkSigner
impl Sync for SdkSigner
impl Unpin for SdkSigner
impl UnsafeUnpin for SdkSigner
impl UnwindSafe for SdkSigner
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request