Module Mirage_crypto_ec

Elliptic curve cryptography

type error = [
| `Invalid_range
| `Invalid_format
| `Invalid_length
| `Not_on_curve
| `At_infinity
| `Low_order
]

The type for errors.

val pp_error : Stdlib.Format.formatter -> error -> unit

Pretty printer for errors

exception Message_too_long

Raised if the provided message is too long for the curve.

module type Dh = sig ... end

Diffie-Hellman key exchange.

module type Dsa = sig ... end

Digital signature algorithm.

module type Dh_dsa = sig ... end

Elliptic curve with Diffie-Hellman and DSA.

module P224 : Dh_dsa

The NIST P-224 curve, also known as SECP224R1.

module P256 : Dh_dsa

The NIST P-256 curve, also known as SECP256R1.

module P384 : Dh_dsa

The NIST P-384 curve, also known as SECP384R1.

module P521 : Dh_dsa

The NIST P-521 curve, also known as SECP521R1.

module X25519 : Dh

Curve 25519 Diffie-Hellman, also known as X25519.

module Ed25519 : sig ... end

Curve 25519 DSA, also known as Ed25519.