tfix verify_sig_for_channel_update: use raw message - electrum - Electrum Bitcoin wallet HTML git clone https://git.parazyd.org/electrum DIR Log DIR Files DIR Refs DIR Submodules --- DIR commit a6469904ee422dd9e65e160b2abc0976a5ef1894 DIR parent 407114d3cc2ceac6f2e9f430f27d5e5f1c4b3eda HTML Author: ThomasV <thomasv@electrum.org> Date: Thu, 21 Mar 2019 13:35:10 +0100 fix verify_sig_for_channel_update: use raw message Diffstat: M electrum/lnpeer.py | 2 +- M electrum/lnverifier.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) --- DIR diff --git a/electrum/lnpeer.py b/electrum/lnpeer.py t@@ -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): DIR diff --git a/electrum/lnverifier.py b/electrum/lnverifier.py t@@ -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']