Skip to content

Commit 88ce7d6

Browse files
committed
Move ECDSA-specific signers into ecdsa.rs
To separate out the logic in the `sign` module, which will start to be convoluted with multiple signer types, we're splitting out each signer type into its own submodule, following the taproot.rs example from a previous commit.
1 parent de4dd95 commit 88ce7d6

15 files changed

+199
-176
lines changed

lightning/src/chain/chainmonitor.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ use crate::chain::{ChannelMonitorUpdateStatus, Filter, WatchedOutput};
3131
use crate::chain::chaininterface::{BroadcasterInterface, FeeEstimator};
3232
use crate::chain::channelmonitor::{ChannelMonitor, ChannelMonitorUpdate, Balance, MonitorEvent, TransactionOutputs, LATENCY_GRACE_PERIOD_BLOCKS};
3333
use crate::chain::transaction::{OutPoint, TransactionData};
34-
use crate::sign::WriteableEcdsaChannelSigner;
34+
use crate::sign::ecdsa::WriteableEcdsaChannelSigner;
3535
use crate::events;
3636
use crate::events::{Event, EventHandler};
3737
use crate::util::atomic_counter::AtomicCounter;

lightning/src/chain/channelmonitor.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ use crate::chain;
4343
use crate::chain::{BestBlock, WatchedOutput};
4444
use crate::chain::chaininterface::{BroadcasterInterface, FeeEstimator, LowerBoundedFeeEstimator};
4545
use crate::chain::transaction::{OutPoint, TransactionData};
46-
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, SpendableOutputDescriptor, StaticPaymentOutputDescriptor, DelayedPaymentOutputDescriptor, WriteableEcdsaChannelSigner, SignerProvider, EntropySource};
46+
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, SpendableOutputDescriptor, StaticPaymentOutputDescriptor, DelayedPaymentOutputDescriptor, ecdsa::WriteableEcdsaChannelSigner, SignerProvider, EntropySource};
4747
use crate::chain::onchaintx::{ClaimEvent, OnchainTxHandler};
4848
use crate::chain::package::{CounterpartyOfferedHTLCOutput, CounterpartyReceivedHTLCOutput, HolderFundingOutput, HolderHTLCOutput, PackageSolvingData, PackageTemplate, RevokedOutput, RevokedHTLCOutput};
4949
use crate::chain::Filter;
@@ -1459,7 +1459,7 @@ impl<Signer: WriteableEcdsaChannelSigner> ChannelMonitor<Signer> {
14591459
/// to the commitment transaction being revoked, this will return a signed transaction, but
14601460
/// the signature will not be valid.
14611461
///
1462-
/// [`EcdsaChannelSigner::sign_justice_revoked_output`]: crate::sign::EcdsaChannelSigner::sign_justice_revoked_output
1462+
/// [`EcdsaChannelSigner::sign_justice_revoked_output`]: crate::sign::ecdsa::EcdsaChannelSigner::sign_justice_revoked_output
14631463
/// [`Persist`]: crate::chain::chainmonitor::Persist
14641464
pub fn sign_to_local_justice_tx(&self, justice_tx: Transaction, input_idx: usize, value: u64, commitment_number: u64) -> Result<Transaction, ()> {
14651465
self.inner.lock().unwrap().sign_to_local_justice_tx(justice_tx, input_idx, value, commitment_number)

lightning/src/chain/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use bitcoin::network::constants::Network;
1717
use bitcoin::secp256k1::PublicKey;
1818

1919
use crate::chain::channelmonitor::{ChannelMonitor, ChannelMonitorUpdate, MonitorEvent};
20-
use crate::sign::WriteableEcdsaChannelSigner;
20+
use crate::sign::ecdsa::WriteableEcdsaChannelSigner;
2121
use crate::chain::transaction::{OutPoint, TransactionData};
2222

2323
use crate::prelude::*;

lightning/src/chain/onchaintx.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ use bitcoin::secp256k1::{Secp256k1, ecdsa::Signature};
2323
use bitcoin::secp256k1;
2424

2525
use crate::chain::chaininterface::compute_feerate_sat_per_1000_weight;
26-
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, ChannelSigner, EntropySource, SignerProvider, WriteableEcdsaChannelSigner};
26+
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, ChannelSigner, EntropySource, SignerProvider, ecdsa::WriteableEcdsaChannelSigner};
2727
use crate::ln::msgs::DecodeError;
2828
use crate::ln::PaymentPreimage;
2929
use crate::ln::chan_utils::{self, ChannelTransactionParameters, HTLCOutputInCommitment, HolderCommitmentTransaction};

lightning/src/chain/package.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ use crate::ln::features::ChannelTypeFeatures;
2828
use crate::ln::channel_keys::{DelayedPaymentBasepoint, HtlcBasepoint};
2929
use crate::ln::msgs::DecodeError;
3030
use crate::chain::chaininterface::{FeeEstimator, ConfirmationTarget, MIN_RELAY_FEE_SAT_PER_1000_WEIGHT, compute_feerate_sat_per_1000_weight, FEERATE_FLOOR_SATS_PER_KW};
31-
use crate::sign::WriteableEcdsaChannelSigner;
31+
use crate::sign::ecdsa::WriteableEcdsaChannelSigner;
3232
use crate::chain::onchaintx::{ExternalHTLCClaim, OnchainTxHandler};
3333
use crate::util::logger::Logger;
3434
use crate::util::ser::{Readable, Writer, Writeable, RequiredWrapper};

lightning/src/events/bump_transaction.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,9 +25,9 @@ use crate::ln::chan_utils::{
2525
};
2626
use crate::prelude::*;
2727
use crate::sign::{
28-
ChannelDerivationParameters, HTLCDescriptor, EcdsaChannelSigner, SignerProvider,
29-
WriteableEcdsaChannelSigner, P2WPKH_WITNESS_WEIGHT
28+
ChannelDerivationParameters, HTLCDescriptor, SignerProvider, P2WPKH_WITNESS_WEIGHT
3029
};
30+
use crate::sign::ecdsa::{EcdsaChannelSigner, WriteableEcdsaChannelSigner};
3131
use crate::sync::Mutex;
3232
use crate::util::logger::Logger;
3333

@@ -142,8 +142,8 @@ pub enum BumpTransactionEvent {
142142
/// an empty `pending_htlcs`), confirmation of the commitment transaction can be considered to
143143
/// be not urgent.
144144
///
145-
/// [`EcdsaChannelSigner`]: crate::sign::EcdsaChannelSigner
146-
/// [`EcdsaChannelSigner::sign_holder_anchor_input`]: crate::sign::EcdsaChannelSigner::sign_holder_anchor_input
145+
/// [`EcdsaChannelSigner`]: crate::sign::ecdsa::EcdsaChannelSigner
146+
/// [`EcdsaChannelSigner::sign_holder_anchor_input`]: crate::sign::ecdsa::EcdsaChannelSigner::sign_holder_anchor_input
147147
/// [`build_anchor_input_witness`]: crate::ln::chan_utils::build_anchor_input_witness
148148
ChannelClose {
149149
/// The unique identifier for the claim of the anchor output in the commitment transaction.
@@ -196,8 +196,8 @@ pub enum BumpTransactionEvent {
196196
/// longer able to commit external confirmed funds to the HTLC transaction or the fee committed
197197
/// to the HTLC transaction is greater in value than the HTLCs being claimed.
198198
///
199-
/// [`EcdsaChannelSigner`]: crate::sign::EcdsaChannelSigner
200-
/// [`EcdsaChannelSigner::sign_holder_htlc_transaction`]: crate::sign::EcdsaChannelSigner::sign_holder_htlc_transaction
199+
/// [`EcdsaChannelSigner`]: crate::sign::ecdsa::EcdsaChannelSigner
200+
/// [`EcdsaChannelSigner::sign_holder_htlc_transaction`]: crate::sign::ecdsa::EcdsaChannelSigner::sign_holder_htlc_transaction
201201
HTLCResolution {
202202
/// The unique identifier for the claim of the HTLCs in the confirmed commitment
203203
/// transaction.

lightning/src/ln/channel.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,8 @@ use crate::chain::BestBlock;
3737
use crate::chain::chaininterface::{FeeEstimator, ConfirmationTarget, LowerBoundedFeeEstimator};
3838
use crate::chain::channelmonitor::{ChannelMonitor, ChannelMonitorUpdate, ChannelMonitorUpdateStep, LATENCY_GRACE_PERIOD_BLOCKS, CLOSED_CHANNEL_UPDATE_ID};
3939
use crate::chain::transaction::{OutPoint, TransactionData};
40-
use crate::sign::{EcdsaChannelSigner, WriteableEcdsaChannelSigner, EntropySource, ChannelSigner, SignerProvider, NodeSigner, Recipient};
40+
use crate::sign::ecdsa::{EcdsaChannelSigner, WriteableEcdsaChannelSigner};
41+
use crate::sign::{EntropySource, ChannelSigner, SignerProvider, NodeSigner, Recipient};
4142
use crate::events::ClosureReason;
4243
use crate::routing::gossip::NodeId;
4344
use crate::util::ser::{Readable, ReadableArgs, Writeable, Writer};
@@ -8361,7 +8362,7 @@ use crate::ln::channelmanager::{self, HTLCSource, PaymentId};
83618362
use bitcoin::hashes::hex::FromHex;
83628363
use bitcoin::hash_types::Txid;
83638364
use bitcoin::secp256k1::Message;
8364-
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, EcdsaChannelSigner};
8365+
use crate::sign::{ChannelDerivationParameters, HTLCDescriptor, ecdsa::EcdsaChannelSigner};
83658366
use crate::ln::PaymentPreimage;
83668367
use crate::ln::channel::{HTLCOutputInCommitment ,TxCreationKeys};
83678368
use crate::ln::channel_keys::{DelayedPaymentBasepoint, HtlcBasepoint};

lightning/src/ln/channelmanager.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,8 @@ use crate::offers::offer::{DerivedMetadata, Offer, OfferBuilder};
6565
use crate::offers::parse::Bolt12SemanticError;
6666
use crate::offers::refund::{Refund, RefundBuilder};
6767
use crate::onion_message::{Destination, OffersMessage, OffersMessageHandler, PendingOnionMessage, new_pending_onion_message};
68-
use crate::sign::{EntropySource, KeysManager, NodeSigner, Recipient, SignerProvider, WriteableEcdsaChannelSigner};
68+
use crate::sign::{EntropySource, KeysManager, NodeSigner, Recipient, SignerProvider};
69+
use crate::sign::ecdsa::WriteableEcdsaChannelSigner;
6970
use crate::util::config::{UserConfig, ChannelConfig, ChannelConfigUpdate};
7071
use crate::util::wakers::{Future, Notifier};
7172
use crate::util::scid_utils::fake_scid;

lightning/src/ln/functional_tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ use crate::chain::chaininterface::LowerBoundedFeeEstimator;
1717
use crate::chain::channelmonitor;
1818
use crate::chain::channelmonitor::{CLOSED_CHANNEL_UPDATE_ID, CLTV_CLAIM_BUFFER, LATENCY_GRACE_PERIOD_BLOCKS, ANTI_REORG_DELAY};
1919
use crate::chain::transaction::OutPoint;
20-
use crate::sign::{EcdsaChannelSigner, EntropySource, SignerProvider};
20+
use crate::sign::{ecdsa::EcdsaChannelSigner, EntropySource, SignerProvider};
2121
use crate::events::{Event, MessageSendEvent, MessageSendEventsProvider, PathFailure, PaymentPurpose, ClosureReason, HTLCDestination, PaymentFailureReason};
2222
use crate::ln::{ChannelId, PaymentPreimage, PaymentSecret, PaymentHash};
2323
use crate::ln::channel::{commitment_tx_base_weight, COMMITMENT_TX_WEIGHT_PER_HTLC, CONCURRENT_INBOUND_HTLC_FEE_BUFFER, FEE_SPIKE_BUFFER_FEE_INCREASE_MULTIPLE, MIN_AFFORDABLE_HTLC_COUNT, get_holder_selected_channel_reserve_satoshis, OutboundV1Channel, InboundV1Channel, COINBASE_MATURITY, ChannelPhase};

lightning/src/ln/monitor_tests.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
//! Further functional tests which test blockchain reorganizations.
1111
12-
use crate::sign::{EcdsaChannelSigner, SpendableOutputDescriptor};
12+
use crate::sign::{ecdsa::EcdsaChannelSigner, SpendableOutputDescriptor};
1313
use crate::chain::channelmonitor::{ANTI_REORG_DELAY, LATENCY_GRACE_PERIOD_BLOCKS, Balance};
1414
use crate::chain::transaction::OutPoint;
1515
use crate::chain::chaininterface::{LowerBoundedFeeEstimator, compute_feerate_sat_per_1000_weight};

0 commit comments

Comments
 (0)