ikeys
Module with interfaces for public/private keys classes.
- class IPublicKey
Bases:
ABC
Interface for a generic elliptic curve public key. Verify method is missing because not needed.
- abstract classmethod FromBytes(key_bytes: bytes) IPublicKey
Construct class from key bytes.
- Parameters:
key_bytes (bytes) – Key bytes
- Returns:
IPublicKey object
- Return type:
- Raises:
ValueError – If key bytes are not valid
- abstract classmethod FromPoint(key_point: IPoint) IPublicKey
Construct class from key point.
- Parameters:
key_point (IPoint object) – Key point
- Returns:
IPublicKey object
- Return type:
- Raises:
ValueError – If key point is not valid
- abstract static CurveType() EllipticCurveTypes
Get the elliptic curve type.
- Returns:
Elliptic curve type
- Return type:
- classmethod IsValidBytes(key_bytes: bytes) bool
Return if the specified bytes represents a valid public key.
- Parameters:
key_bytes (bytes) – Key bytes
- Returns:
True if valid, false otherwise
- Return type:
bool
- classmethod IsValidPoint(key_point: IPoint) bool
Return if the specified point represents a valid public key.
- Parameters:
key_point (IPoint object) – Key point
- Returns:
True if valid, false otherwise
- Return type:
bool
- abstract static CompressedLength() int
Get the compressed key length.
- Returns:
Compressed key length
- Return type:
int
- abstract static UncompressedLength() int
Get the uncompressed key length.
- Returns:
Uncompressed key length
- Return type:
int
- abstract UnderlyingObject() Any
Get the underlying object.
- Returns:
Underlying object
- Return type:
Any
- abstract RawCompressed() DataBytes
Return raw compressed public key.
- Returns:
DataBytes object
- Return type:
DataBytes object
- class IPrivateKey
Bases:
ABC
Interface for a generic elliptic curve private key. Sign method is missing because not needed.
- abstract classmethod FromBytes(key_bytes: bytes) IPrivateKey
Construct class from key bytes.
- Parameters:
key_bytes (bytes) – Key bytes
- Returns:
IPrivateKey object
- Return type:
- Raises:
ValueError – If key bytes are not valid
- abstract static CurveType() EllipticCurveTypes
Get the elliptic curve type.
- Returns:
Elliptic curve type
- Return type:
- classmethod IsValidBytes(key_bytes: bytes) bool
Return if the specified bytes represent a valid private key.
- Parameters:
key_bytes (bytes) – key bytes
- Returns:
True if valid, false otherwise
- Return type:
bool
- abstract static Length() int
Get the key length.
- Returns:
Key length
- Return type:
int
- abstract UnderlyingObject() Any
Get the underlying object.
- Returns:
Underlying object
- Return type:
Any
- abstract Raw() DataBytes
Return raw private key.
- Returns:
DataBytes object
- Return type:
DataBytes object
- abstract PublicKey() IPublicKey
Get the public key correspondent to the private one.
- Returns:
IPublicKey object
- Return type:
IPublicKey object