fix verify_sig_for_channel_update: use raw message
This commit is contained in:
@@ -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):
|
||||
|
||||
@@ -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']
|
||||
|
||||
Reference in New Issue
Block a user