From 3be81add350bc4b80bcbb975e9af51e8347d1686 Mon Sep 17 00:00:00 2001 From: Mihail Lavric Date: Mon, 4 Aug 2025 16:47:03 +0300 Subject: [PATCH] are-keys-equal --- lighter/signer_client.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lighter/signer_client.py b/lighter/signer_client.py index a24eecc..08dd529 100644 --- a/lighter/signer_client.py +++ b/lighter/signer_client.py @@ -198,7 +198,7 @@ def __init__( def validate_api_private_keys(self, initial_private_key: str, private_keys: Dict[int, str]): if len(private_keys) == self.end_api_key_index - self.api_key_index + 1: - if private_keys[self.api_key_index] != initial_private_key: + if not self.are_keys_equal(private_keys[self.api_key_index], initial_private_key): raise ValidationError("inconsistent private keys") return # this is all we need to check in this case if len(private_keys) != self.end_api_key_index - self.api_key_index: @@ -733,3 +733,12 @@ async def send_tx(self, tx_type: StrictInt, tx_info: str) -> RespSendTx: async def close(self): await self.api_client.close() + + @staticmethod + def are_keys_equal(key1, key2) -> bool: + start_index1, start_index2 = 0, 0 + if key1.startswith("0x"): + start_index1 = 2 + if key2.startswith("0x"): + start_index2 = 2 + return key1[start_index1:] == key2[start_index2:]