Ejemplo n.º 1
0
def public_key_to_coords(public_key):

    length = len(public_key)

    if length == 33:
        flag, x = int.from_bytes(public_key[:1], 'big'), int.from_bytes(public_key[1:], 'big')
        y = x_to_y(x, flag & 1)
    elif length == 65:
        x, y = int.from_bytes(public_key[1:33], 'big'), int.from_bytes(public_key[33:], 'big')
    else:
        raise ValueError('{} is an invalid length for a public key.'.format(length))

    return x, y
Ejemplo n.º 2
0
 def test_x_to_y_correct_first_solution(self):
     assert x_to_y(X_CORRECT, Y_CORRECT & 1) == Y_CORRECT