Skip to content

Commit c8fd161

Browse files
committed
Remove KeysInterface trait.
1 parent cbbf84b commit c8fd161

29 files changed

+90
-112
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, ChannelManager, PaymentSendFailure, ChannelManagerReadArgs, PaymentId};
4242
use lightning::ln::channel::FEE_SPIKE_BUFFER_FEE_INCREASE_MULTIPLE;
@@ -252,8 +252,6 @@ impl SignerProvider for KeyProvider {
252252
}
253253
}
254254

255-
impl KeysInterface for KeyProvider {}
256-
257255
impl KeyProvider {
258256
fn make_enforcement_state_cell(&self, commitment_seed: [u8; 32]) -> Arc<Mutex<EnforcementState>> {
259257
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, ChannelManager, PaymentId};
3939
use lightning::ln::peer_handler::{MessageHandler,PeerManager,SocketDescriptor,IgnoringMessageHandler};
@@ -369,8 +369,6 @@ impl SignerProvider for KeyProvider {
369369
}
370370
}
371371

372-
impl KeysInterface for KeyProvider {}
373-
374372
#[inline]
375373
pub fn do_test(data: &[u8], logger: &Arc<dyn Logger>) {
376374
let input = Arc::new(InputData {
@@ -425,7 +423,7 @@ pub fn do_test(data: &[u8], logger: &Arc<dyn Logger>) {
425423
best_block: BestBlock::from_genesis(network),
426424
};
427425
let channelmanager = Arc::new(ChannelManager::new(fee_est.clone(), monitor.clone(), broadcast.clone(), Arc::clone(&logger), keys_manager.clone(), config, params));
428-
// Adding new calls to `KeysInterface::get_secure_random_bytes` during startup can change all the
426+
// Adding new calls to `EntropySource::get_secure_random_bytes` during startup can change all the
429427
// keys subsequently generated in this test. Rather than regenerating all the messages manually,
430428
// it's easier to just increment the counter here so the keys don't change.
431429
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};
@@ -372,7 +372,7 @@ where
372372
CF::Target: 'static + chain::Filter,
373373
CW::Target: 'static + chain::Watch<<K::Target as SignerProvider>::Signer>,
374374
T::Target: 'static + BroadcasterInterface,
375-
K::Target: 'static + KeysInterface,
375+
K::Target: 'static + EntropySource + NodeSigner + SignerProvider,
376376
F::Target: 'static + FeeEstimator,
377377
L::Target: 'static + Logger,
378378
P::Target: 'static + Persist<<K::Target as SignerProvider>::Signer>,
@@ -486,7 +486,7 @@ impl BackgroundProcessor {
486486
CF::Target: 'static + chain::Filter,
487487
CW::Target: 'static + chain::Watch<<K::Target as SignerProvider>::Signer>,
488488
T::Target: 'static + BroadcasterInterface,
489-
K::Target: 'static + KeysInterface,
489+
K::Target: 'static + EntropySource + NodeSigner + SignerProvider,
490490
F::Target: 'static + FeeEstimator,
491491
L::Target: 'static + Logger,
492492
P::Target: 'static + Persist<<K::Target as SignerProvider>::Signer>,
@@ -570,7 +570,7 @@ mod tests {
570570
use bitcoin::network::constants::Network;
571571
use lightning::chain::{BestBlock, Confirm, chainmonitor};
572572
use lightning::chain::channelmonitor::ANTI_REORG_DELAY;
573-
use lightning::chain::keysinterface::{InMemorySigner, Recipient, EntropySource, KeysInterface, KeysManager, NodeSigner};
573+
use lightning::chain::keysinterface::{InMemorySigner, Recipient, EntropySource, KeysManager, NodeSigner};
574574
use lightning::chain::transaction::OutPoint;
575575
use lightning::get_event_msg;
576576
use lightning::ln::channelmanager::{self, BREAKDOWN_TIMEOUT, ChainParameters, ChannelManager, SimpleArcChannelManager};

lightning-block-sync/src/init.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,7 @@ BlockSourceResult<ValidatedBlockHeader> where B::Target: BlockSource {
4747
/// use lightning::chain::channelmonitor::ChannelMonitor;
4848
/// use lightning::chain::chaininterface::BroadcasterInterface;
4949
/// use lightning::chain::chaininterface::FeeEstimator;
50-
/// use lightning::chain::keysinterface;
51-
/// use lightning::chain::keysinterface::KeysInterface;
50+
/// use lightning::chain::keysinterface::{EntropySource, NodeSigner, SignerProvider};
5251
/// use lightning::ln::channelmanager::ChannelManager;
5352
/// use lightning::ln::channelmanager::ChannelManagerReadArgs;
5453
/// use lightning::util::config::UserConfig;
@@ -61,7 +60,7 @@ BlockSourceResult<ValidatedBlockHeader> where B::Target: BlockSource {
6160
///
6261
/// async fn init_sync<
6362
/// B: BlockSource,
64-
/// K: KeysInterface,
63+
/// K: EntropySource + NodeSigner + SignerProvider,
6564
/// T: BroadcasterInterface,
6665
/// F: FeeEstimator,
6766
/// L: Logger,

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
L::Target: Logger,
245245
{
@@ -270,7 +270,7 @@ pub fn create_invoice_from_channelmanager_with_description_hash<M: Deref, T: Der
270270
where
271271
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
272272
T::Target: BroadcasterInterface,
273-
K::Target: KeysInterface,
273+
K::Target: EntropySource + NodeSigner + SignerProvider,
274274
F::Target: FeeEstimator,
275275
L::Target: Logger,
276276
{
@@ -297,7 +297,7 @@ pub fn create_invoice_from_channelmanager_with_description_hash_and_duration_sin
297297
where
298298
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
299299
T::Target: BroadcasterInterface,
300-
K::Target: KeysInterface,
300+
K::Target: EntropySource + NodeSigner + SignerProvider,
301301
F::Target: FeeEstimator,
302302
L::Target: Logger,
303303
{
@@ -319,7 +319,7 @@ pub fn create_invoice_from_channelmanager_and_duration_since_epoch<M: Deref, T:
319319
where
320320
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
321321
T::Target: BroadcasterInterface,
322-
K::Target: KeysInterface,
322+
K::Target: EntropySource + NodeSigner + SignerProvider,
323323
F::Target: FeeEstimator,
324324
L::Target: Logger,
325325
{
@@ -340,7 +340,7 @@ fn _create_invoice_from_channelmanager_and_duration_since_epoch<M: Deref, T: Der
340340
where
341341
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
342342
T::Target: BroadcasterInterface,
343-
K::Target: KeysInterface,
343+
K::Target: EntropySource + NodeSigner + SignerProvider,
344344
F::Target: FeeEstimator,
345345
L::Target: Logger,
346346
{
@@ -365,7 +365,7 @@ pub fn create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_
365365
where
366366
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
367367
T::Target: BroadcasterInterface,
368-
K::Target: KeysInterface,
368+
K::Target: EntropySource + NodeSigner + SignerProvider,
369369
F::Target: FeeEstimator,
370370
L::Target: Logger,
371371
{
@@ -389,7 +389,7 @@ fn _create_invoice_from_channelmanager_and_duration_since_epoch_with_payment_has
389389
where
390390
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
391391
T::Target: BroadcasterInterface,
392-
K::Target: KeysInterface,
392+
K::Target: EntropySource + NodeSigner + SignerProvider,
393393
F::Target: FeeEstimator,
394394
L::Target: Logger,
395395
{
@@ -569,7 +569,7 @@ impl<M: Deref, T: Deref, K: Deref, F: Deref, L: Deref> Payer for ChannelManager<
569569
where
570570
M::Target: chain::Watch<<K::Target as SignerProvider>::Signer>,
571571
T::Target: BroadcasterInterface,
572-
K::Target: KeysInterface,
572+
K::Target: EntropySource + NodeSigner + SignerProvider,
573573
F::Target: FeeEstimator,
574574
L::Target: Logger,
575575
{
@@ -622,7 +622,6 @@ mod test {
622622
use lightning::util::events::{MessageSendEvent, MessageSendEventsProvider, Event};
623623
use lightning::util::test_utils;
624624
use lightning::util::config::UserConfig;
625-
use lightning::chain::keysinterface::KeysInterface;
626625
use crate::utils::create_invoice_from_channelmanager_and_duration_since_epoch;
627626
use std::collections::HashSet;
628627

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
) -> Result<Vec<(BlockHash, ChannelMonitor<<K::Target as SignerProvider>::Signer>)>, std::io::Error>
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
@@ -515,7 +515,7 @@ pub trait SignerProvider {
515515
/// [`BaseSign::channel_keys_id`].
516516
fn derive_channel_signer(&self, channel_value_satoshis: u64, channel_keys_id: [u8; 32]) -> Self::Signer;
517517

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

546-
/// A trait to describe an object which can get user secrets and key material.
547-
pub trait KeysInterface: EntropySource + NodeSigner + SignerProvider {}
548-
549546
#[derive(Clone)]
550547
/// A simple implementation of [`Sign`] that just keeps the private keys in memory.
551548
///
@@ -952,8 +949,8 @@ impl ReadableArgs<SecretKey> for InMemorySigner {
952949
}
953950
}
954951

955-
/// Simple [`KeysInterface`] implementation that takes a 32-byte seed for use as a BIP 32 extended
956-
/// key and derives keys from that.
952+
/// Simple implementation of [`EntropySource`], [`NodeSigner`], and [`SignerProvider`] that takes a
953+
/// 32-byte seed for use as a BIP 32 extended key and derives keys from that.
957954
///
958955
/// Your `node_id` is seed/0'.
959956
/// Unilateral closes may use seed/1'.
@@ -1322,8 +1319,6 @@ impl SignerProvider for KeysManager {
13221319
}
13231320
}
13241321

1325-
impl KeysInterface for KeysManager {}
1326-
13271322
/// Similar to [`KeysManager`], but allows the node using this struct to receive phantom node
13281323
/// payments.
13291324
///
@@ -1416,8 +1411,6 @@ impl SignerProvider for PhantomKeysManager {
14161411
}
14171412
}
14181413

1419-
impl KeysInterface for PhantomKeysManager {}
1420-
14211414
impl PhantomKeysManager {
14221415
/// Constructs a [`PhantomKeysManager`] given a 32-byte seed and an additional `cross_node_seed`
14231416
/// 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)