electrum

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

commit a6469904ee422dd9e65e160b2abc0976a5ef1894
parent 407114d3cc2ceac6f2e9f430f27d5e5f1c4b3eda
Author: ThomasV <thomasv@electrum.org>
Date:   Thu, 21 Mar 2019 13:35:10 +0100

fix verify_sig_for_channel_update: use raw message

Diffstat:
Melectrum/lnpeer.py | 2+-
Melectrum/lnverifier.py | 2+-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/electrum/lnpeer.py b/electrum/lnpeer.py @@ -118,7 +118,7 @@ class Peer(PrintError): #self.print_error("Received '%s'" % message_type.upper(), payload) return # raw message is needed to check signature - if message_type=='node_announcement': + if message_type in ['node_announcement', 'channel_update']: payload['raw'] = message execution_result = f(payload) if asyncio.iscoroutinefunction(f): diff --git a/electrum/lnverifier.py b/electrum/lnverifier.py @@ -194,7 +194,7 @@ def verify_sigs_for_channel_announcement(msg_bytes: bytes) -> bool: def verify_sig_for_channel_update(chan_upd: dict, node_id: bytes) -> bool: - msg_bytes = encode_msg('channel_update', **chan_upd) + msg_bytes = chan_upd['raw'] pre_hash = msg_bytes[2+64:] h = sha256d(pre_hash) sig = chan_upd['signature']