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

New in version 2.6.

classmethod generate()

Generate an Ed448 private key.

Returns:Ed448PrivateKey
classmethod from_private_bytes(data)
Parameters:data (bytes-like) – 57 byte private key.
Returns:Ed448PrivateKey
public_key()
Returns:Ed448PublicKey
sign(data)
Parameters:data (bytes) – The data to sign.
Returns bytes:The 114 byte signature.
private_bytes(encoding, format, encryption_algorithm)

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.

class cryptography.hazmat.primitives.asymmetric.ed448.Ed448PublicKey

New in version 2.6.

classmethod from_public_bytes(data)
Parameters:data (bytes) – 57 byte public key.
Returns:Ed448PublicKey
public_bytes(encoding, format)

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.

verify(signature, data)
Parameters:
  • signature (bytes) – The signature to verify.
  • data (bytes) – The data to verify.
Raises:

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