pub struct Signer { /* private fields */ }Expand description
A Software signer, wrapper over lwk_signer::SwSigner
Implementations§
Source§impl Signer
impl Signer
Sourcepub fn amp0_signer_data(&self) -> Result<Amp0SignerData, LwkError>
pub fn amp0_signer_data(&self) -> Result<Amp0SignerData, LwkError>
AMP0 signer data for login
Source§impl Signer
impl Signer
Sourcepub fn new(
mnemonic: &Mnemonic,
network: &Network,
) -> Result<Arc<Self>, LwkError>
pub fn new( mnemonic: &Mnemonic, network: &Network, ) -> Result<Arc<Self>, LwkError>
Construct a software signer
Sourcepub fn random(network: &Network) -> Result<Arc<Self>, LwkError>
pub fn random(network: &Network) -> Result<Arc<Self>, LwkError>
Generate a new random software signer
Sourcepub fn sign(&self, pset: &Pset) -> Result<Arc<Pset>, LwkError>
pub fn sign(&self, pset: &Pset) -> Result<Arc<Pset>, LwkError>
Sign the given pset
Note from an API perspective it would be better to consume the pset parameter so it would
be clear the signed PSET is the returned one, but it’s not possible with uniffi bindings
Sourcepub fn wpkh_slip77_descriptor(&self) -> Result<Arc<WolletDescriptor>, LwkError>
pub fn wpkh_slip77_descriptor(&self) -> Result<Arc<WolletDescriptor>, LwkError>
Return the witness public key hash, slip77 descriptor of this signer
Sourcepub fn singlesig_desc(
&self,
script_variant: Singlesig,
blinding_variant: DescriptorBlindingKey,
) -> Result<Arc<WolletDescriptor>, LwkError>
pub fn singlesig_desc( &self, script_variant: Singlesig, blinding_variant: DescriptorBlindingKey, ) -> Result<Arc<WolletDescriptor>, LwkError>
Generate a singlesig descriptor with the given parameters
Sourcepub fn keyorigin_xpub(&self, bip: &Bip) -> Result<String, LwkError>
pub fn keyorigin_xpub(&self, bip: &Bip) -> Result<String, LwkError>
Return keyorigin and xpub, like “[73c5da0a/84h/1h/0h]tpub…”
Sourcepub fn fingerprint(&self) -> Result<String, LwkError>
pub fn fingerprint(&self) -> Result<String, LwkError>
Return the signer fingerprint
Sourcepub fn derive_bip85_mnemonic(
&self,
index: u32,
word_count: u32,
) -> Result<Arc<Mnemonic>, LwkError>
pub fn derive_bip85_mnemonic( &self, index: u32, word_count: u32, ) -> Result<Arc<Mnemonic>, LwkError>
Derive a BIP85 mnemonic from this signer
§Arguments
index- The index for the derived mnemonic (0-based)word_count- The number of words in the derived mnemonic (12 or 24)
§Returns
Ok(Mnemonic)- The derived BIP85 mnemonicErr(LwkError)- If BIP85 derivation fails
§Example
signer = Signer.new(mnemonic, network)
derived_mnemonic = signer.derive_bip85_mnemonic(0, 12)Trait Implementations§
Source§impl<UT> LowerError<UT> for Signer
impl<UT> LowerError<UT> for Signer
Source§fn lower_error(obj: Self) -> RustBuffer
fn lower_error(obj: Self) -> RustBuffer
Lower this value for scaffolding function return Read more
Source§impl<UT> LowerReturn<UT> for Signer
impl<UT> LowerReturn<UT> for Signer
Source§type ReturnType = <Arc<Signer> as LowerReturn<UniFfiTag>>::ReturnType
type ReturnType = <Arc<Signer> as LowerReturn<UniFfiTag>>::ReturnType
The type that should be returned by scaffolding functions for this type. Read more
Source§fn lower_return(obj: Self) -> Result<Self::ReturnType, RustCallError>
fn lower_return(obj: Self) -> Result<Self::ReturnType, RustCallError>
Lower the return value from an scaffolding call Read more
Source§fn handle_failed_lift(
error: LiftArgsError,
) -> Result<Self::ReturnType, RustCallError>
fn handle_failed_lift( error: LiftArgsError, ) -> Result<Self::ReturnType, RustCallError>
Lower the return value for failed argument lifts Read more
Auto Trait Implementations§
impl Freeze for Signer
impl RefUnwindSafe for Signer
impl Send for Signer
impl Sync for Signer
impl Unpin for Signer
impl UnwindSafe for Signer
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, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
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 more