Derive address correctly
Some checks failed
Run Python tests (through Pytest) / Test (push) Failing after 23s
Verify Python project can be installed, loaded and have version checked / Test (push) Has been cancelled

This commit is contained in:
Jon Michael Aanes 2025-04-13 01:19:18 +02:00
parent 665f070028
commit 5afd7e596f

View File

@ -67,18 +67,16 @@ class SenderAuthentication:
secret_key: str secret_key: str
def sender_address(self) -> Address: def sender_address(self) -> Address:
derp = self._signing_key().verifying_key.to_string() verifying_key_repr = self._signing_key().get_verifying_key().to_string("uncompressed")
hashed = HashSha256.of_bytes(derp) hashed = HashSha256.of_bytes(verifying_key_repr)
print(derp.hex())
print(derp)
print(hashed)
return Address(b'\0' + hashed._bytes[-20:]) return Address(b'\0' + hashed._bytes[-20:])
def sign_hash(self, _hash: HashSha256) -> Signature: def sign_hash(self, _hash: HashSha256) -> Signature:
return Signature(self._signing_key().sign(_hash._bytes)) return Signature(self._signing_key().sign(_hash._bytes))
def _signing_key(self): def _signing_key(self):
return ecdsa.SigningKey.from_string(bytearray.fromhex(self.secret_key), curve=ecdsa.SECP256k1) secret_exponent = int(self.secret_key, 16)
return ecdsa.SigningKey.from_secret_exponent(secret_exponent , curve=ecdsa.SECP256k1)
TRANSACTION_VALIDITY_DURATION = 60 TRANSACTION_VALIDITY_DURATION = 60