Struct vls_protocol_client::KeysManagerClient
source · pub struct KeysManagerClient { /* private fields */ }
Implementations§
source§impl KeysManagerClient
impl KeysManagerClient
sourcepub fn new(transport: Arc<dyn Transport>, network: String) -> Self
pub fn new(transport: Arc<dyn Transport>, network: String) -> Self
Create a new VLS client with the given transport
pub fn call<T: SerBolt, R: DeBolt>(&self, message: T) -> Result<R, Error>
pub fn sign_onchain_tx( &self, tx: &Transaction, descriptors: &[&SpendableOutputDescriptor] ) -> Vec<Vec<Vec<u8>>>
Trait Implementations§
source§impl EntropySource for KeysManagerClient
impl EntropySource for KeysManagerClient
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 KeysManagerClient
impl NodeSigner for KeysManagerClient
source§fn get_inbound_payment_key_material(&self) -> KeyMaterial
fn get_inbound_payment_key_material(&self) -> KeyMaterial
Get secret key material as bytes for use in encrypting and decrypting inbound payment data. Read more
source§fn get_node_id(&self, recipient: Recipient) -> Result<PublicKey, ()>
fn get_node_id(&self, recipient: Recipient) -> Result<PublicKey, ()>
Get node id based on the provided [
Recipient
]. Read moresource§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§impl SignerProvider for KeysManagerClient
impl SignerProvider for KeysManagerClient
§type Signer = SignerClient
type Signer = SignerClient
A type which implements [
WriteableEcdsaChannelSigner
] which will be returned by [Self::derive_channel_signer
].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::Signer
] 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::Signer
fn derive_channel_signer( &self, channel_value_satoshis: u64, channel_keys_id: [u8; 32] ) -> Self::Signer
Derives the private key material backing a
Signer
. Read moresource§fn read_chan_signer(&self, reader: &[u8]) -> Result<Self::Signer, DecodeError>
fn read_chan_signer(&self, reader: &[u8]) -> Result<Self::Signer, DecodeError>
Reads a
Signer
for this [SignerProvider
] from the given input stream.
This is only called during deserialization of other objects which contain
[WriteableEcdsaChannelSigner
]-implementing objects (i.e., ChannelMonitor
s and ChannelManager
s).
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 moresource§fn get_destination_script(&self) -> Script
fn get_destination_script(&self) -> Script
Get a script pubkey which we send funds to when claiming on-chain contestable outputs. Read more
source§fn get_shutdown_scriptpubkey(&self) -> ShutdownScript
fn get_shutdown_scriptpubkey(&self) -> ShutdownScript
Get a script pubkey which we will send funds to when closing a channel. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for KeysManagerClient
impl Send for KeysManagerClient
impl Sync for KeysManagerClient
impl Unpin for KeysManagerClient
impl !UnwindSafe for KeysManagerClient
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
§impl<T> Downcast for Twhere
T: AsAny + ?Sized,
impl<T> Downcast for Twhere T: AsAny + ?Sized,
§fn downcast_ref<T>(&self) -> Option<&T>where
T: AsAny,
fn downcast_ref<T>(&self) -> Option<&T>where T: AsAny,
Forward to the method defined on the type
Any
.§fn downcast_mut<T>(&mut self) -> Option<&mut T>where
T: AsAny,
fn downcast_mut<T>(&mut self) -> Option<&mut T>where T: AsAny,
Forward to the method defined on the type
Any
.