mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-04-29 23:09:44 -04:00
contrib: refactor: replace hex_switchEndian
in linearize scripts
Switching the endianness of a hex string `str` can simply be achieved by `bytes.fromhex(str)[::-1].hex()`, i.e. we can use that and remove those helper methods.
This commit is contained in:
parent
3f863cfff1
commit
254a63e097
2 changed files with 2 additions and 12 deletions
|
@ -20,11 +20,6 @@ from collections import namedtuple
|
||||||
|
|
||||||
settings = {}
|
settings = {}
|
||||||
|
|
||||||
def hex_switchEndian(s):
|
|
||||||
""" Switches the endianness of a hex string (in pairs of hex chars) """
|
|
||||||
pairList = [s[i:i+2].encode() for i in range(0, len(s), 2)]
|
|
||||||
return b''.join(pairList[::-1]).decode()
|
|
||||||
|
|
||||||
def calc_hash_str(blk_hdr):
|
def calc_hash_str(blk_hdr):
|
||||||
blk_hdr_hash = hashlib.sha256(hashlib.sha256(blk_hdr).digest()).digest()
|
blk_hdr_hash = hashlib.sha256(hashlib.sha256(blk_hdr).digest()).digest()
|
||||||
return blk_hdr_hash[::-1].hex()
|
return blk_hdr_hash[::-1].hex()
|
||||||
|
@ -43,7 +38,7 @@ def get_block_hashes(settings):
|
||||||
for line in f:
|
for line in f:
|
||||||
line = line.rstrip()
|
line = line.rstrip()
|
||||||
if settings['rev_hash_bytes'] == 'true':
|
if settings['rev_hash_bytes'] == 'true':
|
||||||
line = hex_switchEndian(line)
|
line = bytes.fromhex(line)[::-1].hex()
|
||||||
blkindex.append(line)
|
blkindex.append(line)
|
||||||
|
|
||||||
print("Read " + str(len(blkindex)) + " hashes")
|
print("Read " + str(len(blkindex)) + " hashes")
|
||||||
|
|
|
@ -17,11 +17,6 @@ import os.path
|
||||||
|
|
||||||
settings = {}
|
settings = {}
|
||||||
|
|
||||||
def hex_switchEndian(s):
|
|
||||||
""" Switches the endianness of a hex string (in pairs of hex chars) """
|
|
||||||
pairList = [s[i:i+2].encode() for i in range(0, len(s), 2)]
|
|
||||||
return b''.join(pairList[::-1]).decode()
|
|
||||||
|
|
||||||
class BitcoinRPC:
|
class BitcoinRPC:
|
||||||
def __init__(self, host, port, username, password):
|
def __init__(self, host, port, username, password):
|
||||||
authpair = "%s:%s" % (username, password)
|
authpair = "%s:%s" % (username, password)
|
||||||
|
@ -85,7 +80,7 @@ def get_block_hashes(settings, max_blocks_per_call=10000):
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
assert(resp_obj['id'] == x) # assume replies are in-sequence
|
assert(resp_obj['id'] == x) # assume replies are in-sequence
|
||||||
if settings['rev_hash_bytes'] == 'true':
|
if settings['rev_hash_bytes'] == 'true':
|
||||||
resp_obj['result'] = hex_switchEndian(resp_obj['result'])
|
resp_obj['result'] = bytes.fromhex(resp_obj['result'])[::-1].hex()
|
||||||
print(resp_obj['result'])
|
print(resp_obj['result'])
|
||||||
|
|
||||||
height += num_blocks
|
height += num_blocks
|
||||||
|
|
Loading…
Add table
Reference in a new issue