Allow multiple base58 prefix bytes.

This commit is contained in:
tecnovert
2024-03-25 13:37:35 +02:00
parent 2a28f336e2
commit 1cbc2f44b0
6 changed files with 72 additions and 9 deletions

23
basicswap/util/integer.py Normal file
View File

@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
# Copyright (c) 2024 tecnovert
# Distributed under the MIT software license, see the accompanying
# file LICENSE or http://www.opensource.org/licenses/mit-license.php.
def decode_varint(b: bytes) -> int:
i = 0
shift = 0
for c in b:
i += (c & 0x7F) << shift
shift += 7
return i
def encode_varint(i: int) -> bytes:
b = bytearray()
while i > 0x7F:
b += bytes(((i & 0x7F) | 0x80,))
i = (i >> 7)
b += bytes((i,))
return b