Skip to content

Commit 6318cde

Browse files
committed
f - use TaggedBytes in NodeSigner
1 parent 82dfdae commit 6318cde

File tree

5 files changed

+19
-14
lines changed

5 files changed

+19
-14
lines changed

fuzz/src/chanmon_consistency.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ use lightning::ln::channel::FEE_SPIKE_BUFFER_FEE_INCREASE_MULTIPLE;
4444
use lightning::ln::msgs::{self, CommitmentUpdate, ChannelMessageHandler, DecodeError, UpdateAddHTLC, Init};
4545
use lightning::ln::script::ShutdownScript;
4646
use lightning::ln::functional_test_utils::*;
47+
use lightning::offers::merkle::TaggedBytes;
4748
use lightning::util::enforcing_trait_impls::{EnforcingSigner, EnforcementState};
4849
use lightning::util::errors::APIError;
4950
use lightning::util::logger::Logger;
@@ -213,7 +214,7 @@ impl NodeSigner for KeyProvider {
213214
}
214215

215216
fn sign_bolt12_message(
216-
&self, _digest: &Message, _tag: &str, _bytes: &[u8], _metadata: &[u8]
217+
&self, _message: &TaggedBytes, _metadata: &[u8]
217218
) -> Result<schnorr::Signature, ()> {
218219
unreachable!()
219220
}

fuzz/src/full_stack.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ use lightning::ln::peer_handler::{MessageHandler,PeerManager,SocketDescriptor,Ig
4040
use lightning::ln::msgs::{self, DecodeError};
4141
use lightning::ln::script::ShutdownScript;
4242
use lightning::ln::functional_test_utils::*;
43+
use lightning::offers::merkle::TaggedBytes;
4344
use lightning::routing::gossip::{P2PGossipSync, NetworkGraph};
4445
use lightning::routing::utxo::UtxoLookup;
4546
use lightning::routing::router::{InFlightHtlcs, PaymentParameters, Route, RouteParameters, Router};
@@ -318,7 +319,7 @@ impl NodeSigner for KeyProvider {
318319
}
319320

320321
fn sign_bolt12_message(
321-
&self, _digest: &Message, _tag: &str, _bytes: &[u8], _metadata: &[u8]
322+
&self, _message: &TaggedBytes, _metadata: &[u8]
322323
) -> Result<schnorr::Signature, ()> {
323324
unreachable!()
324325
}

fuzz/src/onion_message.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
// Imports that need to be added manually
22
use bitcoin::bech32::u5;
33
use bitcoin::blockdata::script::Script;
4-
use bitcoin::secp256k1::{Message, PublicKey, Scalar, Secp256k1, SecretKey};
4+
use bitcoin::secp256k1::{PublicKey, Scalar, Secp256k1, SecretKey};
55
use bitcoin::secp256k1::ecdh::SharedSecret;
66
use bitcoin::secp256k1::ecdsa::RecoverableSignature;
77
use bitcoin::secp256k1::schnorr;
88

99
use lightning::sign::{Recipient, KeyMaterial, EntropySource, NodeSigner, SignerProvider};
1010
use lightning::ln::msgs::{self, DecodeError, OnionMessageHandler};
1111
use lightning::ln::script::ShutdownScript;
12+
use lightning::offers::merkle::TaggedBytes;
1213
use lightning::util::enforcing_trait_impls::EnforcingSigner;
1314
use lightning::util::logger::Logger;
1415
use lightning::util::ser::{Readable, Writeable, Writer};
@@ -155,7 +156,7 @@ impl NodeSigner for KeyProvider {
155156
}
156157

157158
fn sign_bolt12_message(
158-
&self, _digest: &Message, _tag: &str, _bytes: &[u8], _metadata: &[u8]
159+
&self, _message: &TaggedBytes, _metadata: &[u8]
159160
) -> Result<schnorr::Signature, ()> {
160161
unreachable!()
161162
}

lightning/src/sign/mod.rs

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ use bitcoin::hashes::sha256::Hash as Sha256;
2626
use bitcoin::hashes::sha256d::Hash as Sha256dHash;
2727
use bitcoin::hash_types::WPubkeyHash;
2828

29-
use bitcoin::secp256k1::{KeyPair, Message, PublicKey, Scalar, Secp256k1, SecretKey, Signing};
29+
use bitcoin::secp256k1::{KeyPair, PublicKey, Scalar, Secp256k1, SecretKey, Signing};
3030
use bitcoin::secp256k1::ecdh::SharedSecret;
3131
use bitcoin::secp256k1::ecdsa::{RecoverableSignature, Signature};
3232
use bitcoin::secp256k1::schnorr;
@@ -43,6 +43,7 @@ use crate::ln::{chan_utils, PaymentPreimage};
4343
use crate::ln::chan_utils::{HTLCOutputInCommitment, make_funding_redeemscript, ChannelPublicKeys, HolderCommitmentTransaction, ChannelTransactionParameters, CommitmentTransaction, ClosingTransaction};
4444
use crate::ln::msgs::{UnsignedChannelAnnouncement, UnsignedGossipMessage};
4545
use crate::ln::script::ShutdownScript;
46+
use crate::offers::merkle::TaggedBytes;
4647

4748
use crate::prelude::*;
4849
use core::convert::TryInto;
@@ -631,7 +632,7 @@ pub trait NodeSigner {
631632
/// `metadata` is either the payer or offer metadata, depending on the message type and origin,
632633
/// and may be useful in order to derive the signing keys.
633634
fn sign_bolt12_message(
634-
&self, digest: &Message, tag: &str, bytes: &[u8], metadata: &[u8]
635+
&self, message: &TaggedBytes, metadata: &[u8]
635636
) -> Result<schnorr::Signature, ()>;
636637

637638
/// Sign a gossip message.
@@ -1468,11 +1469,11 @@ impl NodeSigner for KeysManager {
14681469
}
14691470

14701471
fn sign_bolt12_message(
1471-
&self, digest: &Message, _tag: &str, _bytes: &[u8], _metadata: &[u8]
1472+
&self, message: &TaggedBytes, _metadata: &[u8]
14721473
) -> Result<schnorr::Signature, ()> {
14731474
let keys = KeyPair::from_secret_key(&self.secp_ctx, &self.node_secret);
14741475
let aux_rand = self.get_secure_random_bytes();
1475-
Ok(self.secp_ctx.sign_schnorr_with_aux_rand(digest, &keys, &aux_rand))
1476+
Ok(self.secp_ctx.sign_schnorr_with_aux_rand(&message.digest(), &keys, &aux_rand))
14761477
}
14771478

14781479
fn sign_gossip_message(&self, msg: UnsignedGossipMessage) -> Result<Signature, ()> {
@@ -1584,9 +1585,9 @@ impl NodeSigner for PhantomKeysManager {
15841585
}
15851586

15861587
fn sign_bolt12_message(
1587-
&self, digest: &Message, tag: &str, bytes: &[u8], metadata: &[u8]
1588+
&self, message: &TaggedBytes, metadata: &[u8]
15881589
) -> Result<schnorr::Signature, ()> {
1589-
self.inner.sign_bolt12_message(digest, tag, bytes, metadata)
1590+
self.inner.sign_bolt12_message(message, metadata)
15901591
}
15911592

15921593
fn sign_gossip_message(&self, msg: UnsignedGossipMessage) -> Result<Signature, ()> {

lightning/src/util/test_utils.rs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ use crate::ln::features::{ChannelFeatures, InitFeatures, NodeFeatures};
2323
use crate::ln::{msgs, wire};
2424
use crate::ln::msgs::LightningError;
2525
use crate::ln::script::ShutdownScript;
26+
use crate::offers::merkle::TaggedBytes;
2627
use crate::routing::gossip::{EffectiveCapacity, NetworkGraph, NodeId};
2728
use crate::routing::utxo::{UtxoLookup, UtxoLookupError, UtxoResult};
2829
use crate::routing::router::{find_route, InFlightHtlcs, Path, Route, RouteParameters, Router, ScorerAccountingForInFlightHtlcs};
@@ -41,7 +42,7 @@ use bitcoin::blockdata::block::Block;
4142
use bitcoin::network::constants::Network;
4243
use bitcoin::hash_types::{BlockHash, Txid};
4344

44-
use bitcoin::secp256k1::{Message, PublicKey, Scalar, Secp256k1, SecretKey};
45+
use bitcoin::secp256k1::{PublicKey, Scalar, Secp256k1, SecretKey};
4546
use bitcoin::secp256k1::ecdh::SharedSecret;
4647
use bitcoin::secp256k1::ecdsa::{RecoverableSignature, Signature};
4748
use bitcoin::secp256k1::schnorr;
@@ -797,7 +798,7 @@ impl NodeSigner for TestNodeSigner {
797798
}
798799

799800
fn sign_bolt12_message(
800-
&self, _digest: &Message, _tag: &str, _bytes: &[u8], _metadata: &[u8]
801+
&self, _message: &TaggedBytes, _metadata: &[u8]
801802
) -> Result<schnorr::Signature, ()> {
802803
unreachable!()
803804
}
@@ -843,9 +844,9 @@ impl NodeSigner for TestKeysInterface {
843844
}
844845

845846
fn sign_bolt12_message(
846-
&self, digest: &Message, tag: &str, bytes: &[u8], metadata: &[u8]
847+
&self, message: &TaggedBytes, metadata: &[u8]
847848
) -> Result<schnorr::Signature, ()> {
848-
self.backing.sign_bolt12_message(digest, tag, bytes, metadata)
849+
self.backing.sign_bolt12_message(message, metadata)
849850
}
850851

851852
fn sign_gossip_message(&self, msg: msgs::UnsignedGossipMessage) -> Result<Signature, ()> {

0 commit comments

Comments
 (0)