Fix FakeDevice close() and pubkey()

This commit is contained in:
Roman Zeyde
2021-10-16 19:15:10 +03:00
parent b6de68e95c
commit 37510a2d75

View File

@@ -39,13 +39,17 @@ class FakeDevice(interface.Device):
self.vk = self.sk.get_verifying_key()
return self
def close(self):
"""Close the device."""
def pubkey(self, identity, ecdh=False):
"""Return public key."""
_verify_support(identity)
data = self.vk.to_string()
x, y = data[:32], data[32:]
prefix = bytearray([2 + (bytearray(y)[0] & 1)])
return bytes(prefix) + x
pubkey = bytes(prefix) + x
return formats.decompress_pubkey(pubkey=pubkey, curve_name=identity.curve_name)
def sign(self, identity, blob):
"""Sign given blob and return the signature (as bytes)."""