electrum

Electrum Bitcoin wallet
git clone https://git.parazyd.org/electrum
Log | Files | Refs | Submodules

commit f32149e609b9bd939f4a737278fe583ef2ffe688
parent e98f23c4ed06ad3ed2b507862340c78e8c398c7d
Author: Janus <ysangkok@gmail.com>
Date:   Wed, 25 Apr 2018 18:01:52 +0200

lnbase: add TODO explaining how to verify htlc_signature given to us

Diffstat:
Mlib/lnbase.py | 7+++++++
1 file changed, 7 insertions(+), 0 deletions(-)

diff --git a/lib/lnbase.py b/lib/lnbase.py @@ -912,6 +912,13 @@ class Peer(PrintError): if not bitcoin.verify_signature(remote_funding_pubkey, commitment_signed_msg["signature"], pre_hash): raise Exception('failed verifying signature of updated commitment transaction') + htlc_sigs_len = len(commitment_signed_msg["htlc_signature"]) + if htlc_sigs_len != 64: + raise Exception("unexpected number of htlc signatures: " + str(htlc_sigs_len)) + + # TODO: construct their commitment transaction (A), check that htlc_signature signs + # the HTLC transaction (B) that spends from the offered HTLC output in (A) + self.send_message(gen_msg("revoke_and_ack", channel_id=channel_id, per_commitment_secret=local_last_per_commitment_secret, next_per_commitment_point=local_next_per_commitment_point)) async def fulfill_htlc(self, channel_id, htlc_id, payment_preimage):