test: throw `ValueError` for invalid base58 checksum

pull/24576/head
Sebastian Falbesoner 3 years ago
parent 219d2c7ee1
commit 65c49ac750

@ -111,7 +111,7 @@ def is_valid(v):
try:
payload, version = base58_to_byte(v)
result = bytes([version]) + payload
except AssertionError: # thrown if checksum doesn't match
except ValueError: # thrown if checksum doesn't match
return is_valid_bech32(v)
for template in templates:
prefix = bytearray(template[0])

@ -91,8 +91,8 @@ def base58_to_byte(s):
break
res = b'\x00' * pad + res
# Assert if the checksum is invalid
assert_equal(hash256(res[:-4])[:4], res[-4:])
if hash256(res[:-4])[:4] != res[-4:]:
raise ValueError('Invalid Base58Check checksum')
return res[1:-4], int(res[0])

Loading…
Cancel
Save