Danger

This is a “Hazardous Materials” module. You should ONLY use it if you’re 100% absolutely sure that you know what you’re doing because this module is full of land mines, dragons, and dinosaurs with laser guns.

Ed448 signing

Ed448 is an elliptic curve signing algorithm using EdDSA.

Signing & Verification

>>> from cryptography.hazmat.primitives.asymmetric.ed448 import Ed448PrivateKey
>>> private_key = Ed448PrivateKey.generate()
>>> signature = private_key.sign(b"my authenticated message")
>>> public_key = private_key.public_key()
>>> # Raises InvalidSignature if verification fails
>>> public_key.verify(signature, b"my authenticated message")

Key interfaces

class cryptography.hazmat.primitives.asymmetric.ed448.Ed448PrivateKey[source]

New in version 2.6.

classmethod generate()[source]

Generate an Ed448 private key.

Returns:

Ed448PrivateKey

classmethod from_private_bytes(data)[source]
Parameters:

data (bytes-like) – 57 byte private key.

Returns:

Ed448PrivateKey

public_key()[source]
Returns:

Ed448PublicKey

sign(data)[source]
Parameters:

data (bytes-like) – The data to sign.

Returns bytes:

The 114 byte signature.

private_bytes(encoding, format, encryption_algorithm)[source]

Allows serialization of the key to bytes. Encoding ( PEM, DER, or Raw) and format ( PKCS8 or Raw ) are chosen to define the exact serialization.

Parameters:
Return bytes:

Serialized key.

private_bytes_raw()[source]

New in version 40.

Allows serialization of the key to raw bytes. This method is a convenience shortcut for calling private_bytes() with Raw encoding, Raw format, and NoEncryption.

Return bytes:

Raw key.

class cryptography.hazmat.primitives.asymmetric.ed448.Ed448PublicKey[source]

New in version 2.6.

classmethod from_public_bytes(data)[source]
Parameters:

data (bytes) – 57 byte public key.

Returns:

Ed448PublicKey

public_bytes(encoding, format)[source]

Allows serialization of the key to bytes. Encoding ( PEM, DER, or Raw) and format ( SubjectPublicKeyInfo or Raw ) are chosen to define the exact serialization.

Parameters:
Returns bytes:

The public key bytes.

public_bytes_raw()[source]

New in version 40.

Allows serialization of the key to raw bytes. This method is a convenience shortcut for calling public_bytes() with Raw encoding and Raw format.

Return bytes:

Raw key.

verify(signature, data)[source]
Parameters:
Returns:

None

Raises:

cryptography.exceptions.InvalidSignature – Raised when the signature cannot be verified.