pub struct LoopbackSignerKeysInterface {
pub node_id: PublicKey,
pub signer: Arc<MultiSigner>,
}Expand description
Adapt MySigner to NodeSigner
Fields§
§node_id: PublicKey§signer: Arc<MultiSigner>Implementations§
Source§impl LoopbackSignerKeysInterface
impl LoopbackSignerKeysInterface
pub fn get_node(&self) -> Arc<Node>
pub fn add_invoice(&self, invoice: Invoice)
pub fn spend_spendable_outputs( &self, descriptors: &[&SpendableOutputDescriptor], outputs: Vec<TxOut>, change_destination_script: ScriptBuf, feerate_sat_per_1000_weight: u32, ) -> Result<Transaction, ()>
Trait Implementations§
Source§impl EntropySource for LoopbackSignerKeysInterface
impl EntropySource for LoopbackSignerKeysInterface
Source§fn get_secure_random_bytes(&self) -> [u8; 32]
fn get_secure_random_bytes(&self) -> [u8; 32]
Gets a unique, cryptographically-secure, random 32-byte value. This method must return a
different value each time it is called.
Source§impl NodeSigner for LoopbackSignerKeysInterface
impl NodeSigner for LoopbackSignerKeysInterface
Source§fn sign_gossip_message(
&self,
msg: UnsignedGossipMessage<'_>,
) -> Result<Signature, ()>
fn sign_gossip_message( &self, msg: UnsignedGossipMessage<'_>, ) -> Result<Signature, ()>
Sign a gossip message. Read more
Source§fn ecdh(
&self,
recipient: Recipient,
other_key: &PublicKey,
tweak: Option<&Scalar>,
) -> Result<SharedSecret, ()>
fn ecdh( &self, recipient: Recipient, other_key: &PublicKey, tweak: Option<&Scalar>, ) -> Result<SharedSecret, ()>
Gets the ECDH shared secret of our node secret and
other_key, multiplying by tweak if
one is provided. Note that this tweak can be applied to other_key instead of our node
secret, though this is less efficient. Read moreSource§fn sign_invoice(
&self,
invoice: &RawBolt11Invoice,
recipient: Recipient,
) -> Result<RecoverableSignature, ()>
fn sign_invoice( &self, invoice: &RawBolt11Invoice, recipient: Recipient, ) -> Result<RecoverableSignature, ()>
Sign an invoice. Read more
Source§fn sign_bolt12_invoice(
&self,
_: &UnsignedBolt12Invoice,
) -> Result<Signature, ()>
fn sign_bolt12_invoice( &self, _: &UnsignedBolt12Invoice, ) -> Result<Signature, ()>
Signs the
TaggedHash of a BOLT 12 invoice. Read moreSource§fn get_inbound_payment_key(&self) -> ExpandedKey
fn get_inbound_payment_key(&self) -> ExpandedKey
Get the
ExpandedKey for use in encrypting and decrypting inbound payment data. Read moreSource§impl SignerProvider for LoopbackSignerKeysInterface
impl SignerProvider for LoopbackSignerKeysInterface
Source§type EcdsaSigner = LoopbackChannelSigner
type EcdsaSigner = LoopbackChannelSigner
A type which implements
EcdsaChannelSigner which will be returned by Self::derive_channel_signer.Source§fn get_destination_script(
&self,
_channel_keys_id: [u8; 32],
) -> Result<ScriptBuf, ()>
fn get_destination_script( &self, _channel_keys_id: [u8; 32], ) -> Result<ScriptBuf, ()>
Get a script pubkey which we send funds to when claiming on-chain contestable outputs. Read more
Source§fn get_shutdown_scriptpubkey(&self) -> Result<ShutdownScript, ()>
fn get_shutdown_scriptpubkey(&self) -> Result<ShutdownScript, ()>
Get a script pubkey which we will send funds to when closing a channel. Read more
Source§fn generate_channel_keys_id(
&self,
_inbound: bool,
_channel_value_satoshis: u64,
_user_channel_id: u128,
) -> [u8; 32]
fn generate_channel_keys_id( &self, _inbound: bool, _channel_value_satoshis: u64, _user_channel_id: u128, ) -> [u8; 32]
Generates a unique
channel_keys_id that can be used to obtain a Self::EcdsaSigner through
SignerProvider::derive_channel_signer. The user_channel_id is provided to allow
implementations of SignerProvider to maintain a mapping between itself and the generated
channel_keys_id. Read moreSource§fn derive_channel_signer(
&self,
channel_value_satoshis: u64,
channel_keys_id: [u8; 32],
) -> Self::EcdsaSigner
fn derive_channel_signer( &self, channel_value_satoshis: u64, channel_keys_id: [u8; 32], ) -> Self::EcdsaSigner
Derives the private key material backing a
Signer. Read moreSource§fn read_chan_signer(
&self,
reader: &[u8],
) -> Result<Self::EcdsaSigner, DecodeError>
fn read_chan_signer( &self, reader: &[u8], ) -> Result<Self::EcdsaSigner, DecodeError>
Reads a
Signer for this SignerProvider from the given input stream.
This is only called during deserialization of other objects which contain
EcdsaChannelSigner-implementing objects (i.e., ChannelMonitors and ChannelManagers).
The bytes are exactly those which <Self::Signer as Writeable>::write() writes, and
contain no versioning scheme. You may wish to include your own version prefix and ensure
you’ve read all of the provided bytes to ensure no corruption occurred. Read moreAuto Trait Implementations§
impl Freeze for LoopbackSignerKeysInterface
impl !RefUnwindSafe for LoopbackSignerKeysInterface
impl Send for LoopbackSignerKeysInterface
impl Sync for LoopbackSignerKeysInterface
impl Unpin for LoopbackSignerKeysInterface
impl !UnwindSafe for LoopbackSignerKeysInterface
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> 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