Skip to content

Commit d91fbd7

Browse files
committed
fix: to bytes dispatch
Signed-off-by: exploreriii <[email protected]>
1 parent a2f7c11 commit d91fbd7

File tree

1 file changed

+17
-19
lines changed

1 file changed

+17
-19
lines changed

src/hiero_sdk_python/crypto/private_key.py

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -279,34 +279,32 @@ def to_bytes_raw(self) -> bytes:
279279
Return the raw 32-byte seed (Ed25519) or 32-byte scalar (ECDSA).
280280
"""
281281
if self.is_ed25519():
282-
return self._private_key.private_bytes(
283-
encoding=serialization.Encoding.Raw,
284-
format=serialization.PrivateFormat.Raw,
285-
encryption_algorithm=serialization.NoEncryption()
286-
)
282+
return self.to_bytes_ed25519_raw()
283+
elif self.is_ecdsa():
284+
return self.to_bytes_ecdsa_raw()
287285
else:
288-
# ECDSA => integer scalar in big-endian
289-
return self._private_key.private_numbers().private_value.to_bytes(32, "big")
286+
raise ValueError("Unknown key type; cannot extract raw bytes.")
290287

291288
def to_bytes_ed25519_raw(self) -> bytes:
292289
"""
293-
Return the raw 32-byte seed (Ed25519).
290+
Return the raw 32-byte Ed25519 seed.
294291
"""
295-
if self.is_ed25519():
296-
return self._private_key.private_bytes(
297-
encoding=serialization.Encoding.Raw,
298-
format=serialization.PrivateFormat.Raw,
299-
encryption_algorithm=serialization.NoEncryption()
300-
)
301-
raise ValueError("Not Ed25519).")
292+
if not self.is_ed25519():
293+
raise ValueError("Not an Ed25519 key.")
294+
return self._private_key.private_bytes(
295+
encoding=serialization.Encoding.Raw,
296+
format=serialization.PrivateFormat.Raw,
297+
encryption_algorithm=serialization.NoEncryption(),
298+
)
302299

303300
def to_bytes_ecdsa_raw(self) -> bytes:
304301
"""
305-
Return the raw 32-byte seed (ecdsa).
302+
Return the raw 32-byte ECDSA (secp256k1) scalar.
306303
"""
307-
if self.is_ecdsa():
308-
return self._private_key.private_numbers().private_value.to_bytes(32, "big")
309-
raise ValueError("Not ecdsa).")
304+
if not self.is_ecdsa():
305+
raise ValueError("Not an ECDSA key.")
306+
return self._private_key.private_numbers()\
307+
.private_value.to_bytes(32, "big")
310308

311309
def to_bytes_der(self) -> bytes:
312310
"""

0 commit comments

Comments
 (0)