File: //home/arjun/projects/aigenerator/venv/lib64/python3.12/site-packages/ellipticcurve/utils/binary.py
from base64 import b64encode, b64decode
from .compatibility import safeHexFromBinary, safeBinaryFromHex, toString
def hexFromInt(number):
hexadecimal = "{0:x}".format(number)
if len(hexadecimal) % 2 == 1:
hexadecimal = "0" + hexadecimal
return hexadecimal
def intFromHex(hexadecimal):
return int(hexadecimal, 16)
def hexFromByteString(byteString):
return safeHexFromBinary(byteString)
def byteStringFromHex(hexadecimal):
return safeBinaryFromHex(hexadecimal)
def numberFromByteString(byteString):
return intFromHex(hexFromByteString(byteString))
def base64FromByteString(byteString):
return toString(b64encode(byteString))
def byteStringFromBase64(base64String):
return b64decode(base64String)
def bitsFromHex(hexadecimal):
return format(intFromHex(hexadecimal), 'b').zfill(4 * len(hexadecimal))