Skip to content

Commit 5824e22

Browse files
committed
Remove KeysInterface trait.
1 parent 5221e4a commit 5824e22

30 files changed

+98
-119
lines changed

fuzz/src/chanmon_consistency.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ use lightning::chain::{BestBlock, ChannelMonitorUpdateStatus, chainmonitor, chan
3636
use lightning::chain::channelmonitor::{ChannelMonitor, MonitorEvent};
3737
use lightning::chain::transaction::OutPoint;
3838
use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
39-
use lightning::chain::keysinterface::{KeyMaterial, KeysInterface, InMemorySigner, Recipient, EntropySource, NodeSigner, SignerProvider};
39+
use lightning::chain::keysinterface::{KeyMaterial, InMemorySigner, Recipient, EntropySource, NodeSigner, SignerProvider};
4040
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
4141
use lightning::ln::channelmanager::{self, ChainParameters, ChannelDetails, ChannelManager, PaymentSendFailure, ChannelManagerReadArgs, PaymentId};
4242
use lightning::ln::channel::FEE_SPIKE_BUFFER_FEE_INCREASE_MULTIPLE;
@@ -270,8 +270,6 @@ impl SignerProvider for KeyProvider {
270270
}
271271
}
272272

273-
impl KeysInterface for KeyProvider {}
274-
275273
impl KeyProvider {
276274
fn make_enforcement_state_cell(&self, commitment_seed: [u8; 32]) -> Arc<Mutex<EnforcementState>> {
277275
let mut revoked_commitments = self.enforcement_states.lock().unwrap();

fuzz/src/full_stack.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ use lightning::chain::{BestBlock, ChannelMonitorUpdateStatus, Confirm, Listen};
3333
use lightning::chain::chaininterface::{BroadcasterInterface, ConfirmationTarget, FeeEstimator};
3434
use lightning::chain::chainmonitor;
3535
use lightning::chain::transaction::OutPoint;
36-
use lightning::chain::keysinterface::{InMemorySigner, Recipient, KeyMaterial, KeysInterface, EntropySource, NodeSigner, SignerProvider};
36+
use lightning::chain::keysinterface::{InMemorySigner, Recipient, KeyMaterial, EntropySource, NodeSigner, SignerProvider};
3737
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
3838
use lightning::ln::channelmanager::{ChainParameters, ChannelDetails, ChannelManager, PaymentId};
3939
use lightning::ln::peer_handler::{MessageHandler,PeerManager,SocketDescriptor,IgnoringMessageHandler};
@@ -387,8 +387,6 @@ impl SignerProvider for KeyProvider {
387387
}
388388
}
389389

390-
impl KeysInterface for KeyProvider {}
391-
392390
#[inline]
393391
pub fn do_test(data: &[u8], logger: &Arc<dyn Logger>) {
394392
let input = Arc::new(InputData {
@@ -444,7 +442,7 @@ pub fn do_test(data: &[u8], logger: &Arc<dyn Logger>) {
444442
best_block: BestBlock::from_genesis(network),
445443
};
446444
let channelmanager = Arc::new(ChannelManager::new(fee_est.clone(), monitor.clone(), broadcast.clone(), &router, Arc::clone(&logger), keys_manager.clone(), config, params));
447-
// Adding new calls to `KeysInterface::get_secure_random_bytes` during startup can change all the
445+
// Adding new calls to `EntropySource::get_secure_random_bytes` during startup can change all the
448446
// keys subsequently generated in this test. Rather than regenerating all the messages manually,
449447
// it's easier to just increment the counter here so the keys don't change.
450448
keys_manager.counter.fetch_sub(3, Ordering::AcqRel);

fuzz/src/onion_message.rs

+1-3
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use bitcoin::secp256k1::{PublicKey, Scalar, Secp256k1, SecretKey};
55
use bitcoin::secp256k1::ecdh::SharedSecret;
66
use bitcoin::secp256k1::ecdsa::RecoverableSignature;
77

8-
use lightning::chain::keysinterface::{Recipient, KeyMaterial, KeysInterface, EntropySource, NodeSigner, SignerProvider};
8+
use lightning::chain::keysinterface::{Recipient, KeyMaterial, EntropySource, NodeSigner, SignerProvider};
99
use lightning::ln::msgs::{self, DecodeError, OnionMessageHandler};
1010
use lightning::ln::script::ShutdownScript;
1111
use lightning::util::enforcing_trait_impls::EnforcingSigner;
@@ -140,8 +140,6 @@ impl SignerProvider for KeyProvider {
140140
fn get_shutdown_scriptpubkey(&self) -> ShutdownScript { unreachable!() }
141141
}
142142

143-
impl KeysInterface for KeyProvider {}
144-
145143
#[cfg(test)]
146144
mod tests {
147145
use lightning::util::logger::{Logger, Record};

lightning-background-processor/src/lib.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ extern crate lightning_rapid_gossip_sync;
1717
use lightning::chain;
1818
use lightning::chain::chaininterface::{BroadcasterInterface, FeeEstimator};
1919
use lightning::chain::chainmonitor::{ChainMonitor, Persist};
20-
use lightning::chain::keysinterface::{KeysInterface, SignerProvider};
20+
use lightning::chain::keysinterface::{EntropySource, NodeSigner, SignerProvider};
2121
use lightning::ln::channelmanager::ChannelManager;
2222
use lightning::ln::msgs::{ChannelMessageHandler, OnionMessageHandler, RoutingMessageHandler};
2323
use lightning::ln::peer_handler::{CustomMessageHandler, PeerManager, SocketDescriptor};
@@ -374,7 +374,7 @@ where
374374
CF::Target: 'static + chain::Filter,
375375
CW::Target: 'static + chain::Watch<<K::Target as SignerProvider>::Signer>,
376376
T::Target: 'static + BroadcasterInterface,
377-
K::Target: 'static + KeysInterface,
377+
K::Target: 'static + EntropySource + NodeSigner + SignerProvider,
378378
F::Target: 'static + FeeEstimator,
379379
R::Target: 'static + Router,
380380
L::Target: 'static + Logger,
@@ -490,7 +490,7 @@ impl BackgroundProcessor {
490490
CF::Target: 'static + chain::Filter,
491491
CW::Target: 'static + chain::Watch<<K::Target as SignerProvider>::Signer>,
492492
T::Target: 'static + BroadcasterInterface,
493-
K::Target: 'static + KeysInterface,
493+
K::Target: 'static + EntropySource + NodeSigner + SignerProvider,
494494
F::Target: 'static + FeeEstimator,
495495
R::Target: 'static + Router,
496496
L::Target: 'static + Logger,
@@ -575,7 +575,7 @@ mod tests {
575575
use bitcoin::network::constants::Network;
576576
use lightning::chain::{BestBlock, Confirm, chainmonitor};
577577
use lightning::chain::channelmonitor::ANTI_REORG_DELAY;
578-
use lightning::chain::keysinterface::{InMemorySigner, Recipient, EntropySource, KeysInterface, KeysManager, NodeSigner};
578+
use lightning::chain::keysinterface::{InMemorySigner, Recipient, EntropySource, KeysManager, NodeSigner};
579579
use lightning::chain::transaction::OutPoint;
580580
use lightning::get_event_msg;
581581
use lightning::ln::channelmanager::{self, BREAKDOWN_TIMEOUT, ChainParameters, ChannelManager, SimpleArcChannelManager};

lightning-block-sync/src/init.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ BlockSourceResult<ValidatedBlockHeader> where B::Target: BlockSource {
4848
/// use lightning::chain::chaininterface::BroadcasterInterface;
4949
/// use lightning::chain::chaininterface::FeeEstimator;
5050
/// use lightning::chain::keysinterface;
51-
/// use lightning::chain::keysinterface::KeysInterface;
51+
/// use lightning::chain::keysinterface::{EntropySource, NodeSigner, SignerProvider};
5252
/// use lightning::ln::channelmanager::{ChannelManager, ChannelManagerReadArgs};
5353
/// use lightning::routing::router::Router;
5454
/// use lightning::util::config::UserConfig;
@@ -61,7 +61,7 @@ BlockSourceResult<ValidatedBlockHeader> where B::Target: BlockSource {
6161
///
6262
/// async fn init_sync<
6363
/// B: BlockSource,
64-
/// K: KeysInterface,
64+
/// K: EntropySource + NodeSigner + SignerProvider,
6565
/// T: BroadcasterInterface,
6666
/// F: FeeEstimator,
6767
/// R: Router,

lightning-invoice/src/utils.rs

+14-15
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ use bech32::ToBase32;
88
use bitcoin_hashes::Hash;
99
use lightning::chain;
1010
use lightning::chain::chaininterface::{BroadcasterInterface, FeeEstimator};
11-
use lightning::chain::keysinterface::{Recipient, KeysInterface, NodeSigner, SignerProvider};
11+
use lightning::chain::keysinterface::{Recipient, NodeSigner, SignerProvider, EntropySource};
1212
use lightning::ln::{PaymentHash, PaymentPreimage, PaymentSecret};
1313
use lightning::ln::channelmanager::{ChannelDetails, ChannelManager, PaymentId, PaymentSendFailure, MIN_FINAL_CLTV_EXPIRY};
1414
#[cfg(feature = "std")]
@@ -42,7 +42,7 @@ use core::time::Duration;
4242
/// `invoice_expiry_delta_secs` describes the number of seconds that the invoice is valid for
4343
/// in excess of the current time.
4444
///
45-
/// Note that the provided `keys_manager`'s `KeysInterface` implementation must support phantom
45+
/// Note that the provided `keys_manager`'s `NodeSigner` implementation must support phantom
4646
/// invoices in its `sign_invoice` implementation ([`PhantomKeysManager`] satisfies this
4747
/// requirement).
4848
///
@@ -57,7 +57,7 @@ pub fn create_phantom_invoice<K: Deref, L: Deref>(
5757
logger: L, network: Currency,
5858
) -> Result<Invoice, SignOrCreationError<()>>
5959
where
60-
K::Target: KeysInterface,
60+
K::Target: EntropySource + NodeSigner,
6161
L::Target: Logger,
6262
{
6363
let description = Description::new(description).map_err(SignOrCreationError::CreationError)?;
@@ -91,7 +91,7 @@ where
9191
/// `invoice_expiry_delta_secs` describes the number of seconds that the invoice is valid for
9292
/// in excess of the current time.
9393
///
94-
/// Note that the provided `keys_manager`'s `KeysInterface` implementation must support phantom
94+
/// Note that the provided `keys_manager`'s `NodeSigner` implementation must support phantom
9595
/// invoices in its `sign_invoice` implementation ([`PhantomKeysManager`] satisfies this
9696
/// requirement).
9797
///
@@ -106,7 +106,7 @@ pub fn create_phantom_invoice_with_description_hash<K: Deref, L: Deref>(
106106
logger: L, network: Currency
107107
) -> Result<Invoice, SignOrCreationError<()>>
108108
where
109-
K::Target: KeysInterface,
109+
K::Target: EntropySource + NodeSigner,
110110
L::Target: Logger,
111111
{
112112
_create_phantom_invoice::<K, L>(
@@ -122,7 +122,7 @@ fn _create_phantom_invoice<K: Deref, L: Deref>(
122122
logger: L, network: Currency,
123123
) -> Result<Invoice, SignOrCreationError<()>>
124124
where
125-
K::Target: KeysInterface,
125+
K::Target: EntropySource + NodeSigner,
126126
L::Target: Logger,
127127
{
128128
use std::time::{SystemTime, UNIX_EPOCH};
@@ -239,7 +239,7 @@ pub fn create_invoice_from_channelmanager<M: Deref, T: Deref, K: Deref, F: Deref
239239
where
240240
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
241241
T::Target: BroadcasterInterface,
242-
K::Target: KeysInterface,
242+
K::Target: EntropySource + NodeSigner + SignerProvider,
243243
F::Target: FeeEstimator,
244244
R::Target: Router,
245245
L::Target: Logger,
@@ -271,7 +271,7 @@ pub fn create_invoice_from_channelmanager_with_description_hash<M: Deref, T: Der
271271
where
272272
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
273273
T::Target: BroadcasterInterface,
274-
K::Target: KeysInterface,
274+
K::Target: EntropySource + NodeSigner + SignerProvider,
275275
F::Target: FeeEstimator,
276276
R::Target: Router,
277277
L::Target: Logger,
@@ -299,7 +299,7 @@ pub fn create_invoice_from_channelmanager_with_description_hash_and_duration_sin
299299
where
300300
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
301301
T::Target: BroadcasterInterface,
302-
K::Target: KeysInterface,
302+
K::Target: EntropySource + NodeSigner + SignerProvider,
303303
F::Target: FeeEstimator,
304304
R::Target: Router,
305305
L::Target: Logger,
@@ -322,7 +322,7 @@ pub fn create_invoice_from_channelmanager_and_duration_since_epoch<M: Deref, T:
322322
where
323323
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
324324
T::Target: BroadcasterInterface,
325-
K::Target: KeysInterface,
325+
K::Target: EntropySource + NodeSigner + SignerProvider,
326326
F::Target: FeeEstimator,
327327
R::Target: Router,
328328
L::Target: Logger,
@@ -344,7 +344,7 @@ fn _create_invoice_from_channelmanager_and_duration_since_epoch<M: Deref, T: Der
344344
where
345345
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
346346
T::Target: BroadcasterInterface,
347-
K::Target: KeysInterface,
347+
K::Target: EntropySource + NodeSigner + SignerProvider,
348348
F::Target: FeeEstimator,
349349
R::Target: Router,
350350
L::Target: Logger,
@@ -370,7 +370,7 @@ pub fn create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_
370370
where
371371
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
372372
T::Target: BroadcasterInterface,
373-
K::Target: KeysInterface,
373+
K::Target: EntropySource + NodeSigner + SignerProvider,
374374
F::Target: FeeEstimator,
375375
R::Target: Router,
376376
L::Target: Logger,
@@ -395,7 +395,7 @@ fn _create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_has
395395
where
396396
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
397397
T::Target: BroadcasterInterface,
398-
K::Target: KeysInterface,
398+
K::Target: EntropySource + NodeSigner + SignerProvider,
399399
F::Target: FeeEstimator,
400400
R::Target: Router,
401401
L::Target: Logger,
@@ -576,7 +576,7 @@ impl<M: Deref, T: Deref, K: Deref, F: Deref, R: Deref, L: Deref> Payer for Chann
576576
where
577577
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
578578
T::Target: BroadcasterInterface,
579-
K::Target: KeysInterface,
579+
K::Target: EntropySource + NodeSigner + SignerProvider,
580580
F::Target: FeeEstimator,
581581
R::Target: Router,
582582
L::Target: Logger,
@@ -630,7 +630,6 @@ mod test {
630630
use lightning::util::events::{MessageSendEvent, MessageSendEventsProvider, Event};
631631
use lightning::util::test_utils;
632632
use lightning::util::config::UserConfig;
633-
use lightning::chain::keysinterface::KeysInterface;
634633
use crate::utils::create_invoice_from_channelmanager_and_duration_since_epoch;
635634
use std::collections::HashSet;
636635

lightning-persister/src/lib.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ extern crate libc;
2020
use bitcoin::hash_types::{BlockHash, Txid};
2121
use bitcoin::hashes::hex::FromHex;
2222
use lightning::chain::channelmonitor::ChannelMonitor;
23-
use lightning::chain::keysinterface::{KeysInterface, SignerProvider};
23+
use lightning::chain::keysinterface::{EntropySource, SignerProvider};
2424
use lightning::util::ser::{ReadableArgs, Writeable};
2525
use lightning::util::persist::KVStorePersister;
2626
use std::fs;
@@ -62,7 +62,7 @@ impl FilesystemPersister {
6262
pub fn read_channelmonitors<K: Deref> (
6363
&self, keys_manager: K
6464
) -> std::io::Result<Vec<(BlockHash, ChannelMonitor<<K::Target as SignerProvider>::Signer>)>>
65-
where K::Target: KeysInterface + Sized,
65+
where K::Target: EntropySource + SignerProvider + Sized,
6666
{
6767
let mut path = PathBuf::from(&self.path_to_channel_data);
6868
path.push("monitors");

lightning/src/chain/channelmonitor.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ use crate::chain;
4242
use crate::chain::{BestBlock, WatchedOutput};
4343
use crate::chain::chaininterface::{BroadcasterInterface, FeeEstimator, LowerBoundedFeeEstimator};
4444
use crate::chain::transaction::{OutPoint, TransactionData};
45-
use crate::chain::keysinterface::{SpendableOutputDescriptor, StaticPaymentOutputDescriptor, DelayedPaymentOutputDescriptor, Sign, KeysInterface};
45+
use crate::chain::keysinterface::{SpendableOutputDescriptor, StaticPaymentOutputDescriptor, DelayedPaymentOutputDescriptor, Sign, SignerProvider, EntropySource};
4646
#[cfg(anchors)]
4747
use crate::chain::onchaintx::ClaimEvent;
4848
use crate::chain::onchaintx::OnchainTxHandler;
@@ -3704,7 +3704,7 @@ where
37043704

37053705
const MAX_ALLOC_SIZE: usize = 64*1024;
37063706

3707-
impl<'a, K: KeysInterface> ReadableArgs<&'a K>
3707+
impl<'a, K: EntropySource + SignerProvider> ReadableArgs<&'a K>
37083708
for (BlockHash, ChannelMonitor<K::Signer>) {
37093709
fn read<R: io::Read>(reader: &mut R, keys_manager: &'a K) -> Result<Self, DecodeError> {
37103710
macro_rules! unwrap_obj {

lightning/src/chain/keysinterface.rs

+4-11
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ impl_writeable_tlv_based!(StaticPaymentOutputDescriptor, {
137137
/// [`SpendableOutputs`]: crate::util::events::Event::SpendableOutputs
138138
#[derive(Clone, Debug, PartialEq, Eq)]
139139
pub enum SpendableOutputDescriptor {
140-
/// An output to a script which was provided via [`KeysInterface`] directly, either from
140+
/// An output to a script which was provided via [`SignerProvider`] directly, either from
141141
/// [`get_destination_script`] or [`get_shutdown_scriptpubkey`], thus you should already
142142
/// know how to spend it. No secret keys are provided as LDK was never given any key.
143143
/// These may include outputs from a transaction punishing our counterparty or claiming an HTLC
@@ -517,7 +517,7 @@ pub trait SignerProvider {
517517
/// [`BaseSign::channel_keys_id`].
518518
fn derive_channel_signer(&self, channel_value_satoshis: u64, channel_keys_id: [u8; 32]) -> Self::Signer;
519519

520-
/// Reads a [`Signer`] for this [`KeysInterface`] from the given input stream.
520+
/// Reads a [`Signer`] for this [`SignerProvider`] from the given input stream.
521521
/// This is only called during deserialization of other objects which contain
522522
/// [`Sign`]-implementing objects (i.e., [`ChannelMonitor`]s and [`ChannelManager`]s).
523523
/// The bytes are exactly those which `<Self::Signer as Writeable>::write()` writes, and
@@ -545,9 +545,6 @@ pub trait SignerProvider {
545545
fn get_shutdown_scriptpubkey(&self) -> ShutdownScript;
546546
}
547547

548-
/// A trait to describe an object which can get user secrets and key material.
549-
pub trait KeysInterface: EntropySource + NodeSigner + SignerProvider {}
550-
551548
#[derive(Clone)]
552549
/// A simple implementation of [`Sign`] that just keeps the private keys in memory.
553550
///
@@ -954,8 +951,8 @@ impl ReadableArgs<SecretKey> for InMemorySigner {
954951
}
955952
}
956953

957-
/// Simple [`KeysInterface`] implementation that takes a 32-byte seed for use as a BIP 32 extended
958-
/// key and derives keys from that.
954+
/// Simple implementation of [`EntropySource`], [`NodeSigner`], and [`SignerProvider`] that takes a
955+
/// 32-byte seed for use as a BIP 32 extended key and derives keys from that.
959956
///
960957
/// Your `node_id` is seed/0'.
961958
/// Unilateral closes may use seed/1'.
@@ -1331,8 +1328,6 @@ impl SignerProvider for KeysManager {
13311328
}
13321329
}
13331330

1334-
impl KeysInterface for KeysManager {}
1335-
13361331
/// Similar to [`KeysManager`], but allows the node using this struct to receive phantom node
13371332
/// payments.
13381333
///
@@ -1425,8 +1420,6 @@ impl SignerProvider for PhantomKeysManager {
14251420
}
14261421
}
14271422

1428-
impl KeysInterface for PhantomKeysManager {}
1429-
14301423
impl PhantomKeysManager {
14311424
/// Constructs a [`PhantomKeysManager`] given a 32-byte seed and an additional `cross_node_seed`
14321425
/// that is shared across all nodes that intend to participate in [phantom node payments]

lightning/src/chain/onchaintx.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ use bitcoin::hash_types::{Txid, BlockHash};
2121
use bitcoin::secp256k1::{Secp256k1, ecdsa::Signature};
2222
use bitcoin::secp256k1;
2323

24-
use crate::chain::keysinterface::BaseSign;
24+
use crate::chain::keysinterface::{BaseSign, EntropySource, SignerProvider};
2525
use crate::ln::msgs::DecodeError;
2626
use crate::ln::PaymentPreimage;
2727
#[cfg(anchors)]
@@ -31,7 +31,7 @@ use crate::ln::chan_utils::{ChannelTransactionParameters, HolderCommitmentTransa
3131
use crate::chain::chaininterface::ConfirmationTarget;
3232
use crate::chain::chaininterface::{FeeEstimator, BroadcasterInterface, LowerBoundedFeeEstimator};
3333
use crate::chain::channelmonitor::{ANTI_REORG_DELAY, CLTV_SHARED_CLAIM_BUFFER};
34-
use crate::chain::keysinterface::{Sign, KeysInterface};
34+
use crate::chain::keysinterface::Sign;
3535
#[cfg(anchors)]
3636
use crate::chain::package::PackageSolvingData;
3737
use crate::chain::package::PackageTemplate;
@@ -322,7 +322,7 @@ impl<ChannelSigner: Sign> OnchainTxHandler<ChannelSigner> {
322322
}
323323
}
324324

325-
impl<'a, K: KeysInterface> ReadableArgs<(&'a K, u64, [u8; 32])> for OnchainTxHandler<K::Signer> {
325+
impl<'a, K: EntropySource + SignerProvider> ReadableArgs<(&'a K, u64, [u8; 32])> for OnchainTxHandler<K::Signer> {
326326
fn read<R: io::Read>(reader: &mut R, args: (&'a K, u64, [u8; 32])) -> Result<Self, DecodeError> {
327327
let keys_manager = args.0;
328328
let channel_value_satoshis = args.1;

lightning/src/ln/chan_utils.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1635,7 +1635,7 @@ mod tests {
16351635
use crate::ln::chan_utils::{get_htlc_redeemscript, get_to_countersignatory_with_anchors_redeemscript, CommitmentTransaction, TxCreationKeys, ChannelTransactionParameters, CounterpartyChannelTransactionParameters, HTLCOutputInCommitment};
16361636
use bitcoin::secp256k1::{PublicKey, SecretKey, Secp256k1};
16371637
use crate::util::test_utils;
1638-
use crate::chain::keysinterface::{KeysInterface, BaseSign, SignerProvider};
1638+
use crate::chain::keysinterface::{BaseSign, SignerProvider};
16391639
use bitcoin::{Network, Txid};
16401640
use bitcoin::hashes::Hash;
16411641
use crate::ln::PaymentHash;

0 commit comments

Comments
 (0)