Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Page
Library
Module
Module type
Parameter
Class
Class type
Source
UeccSourceKinds of ECC curves.
Type of an ECC curve, parametrized by its kind.
sk_size curve is the size in bytes of secret keys from curve. Typically the same as the curve size, (i.e. 32 bytes for secp256r1) except for secp160r1 which is 21 bytes.
pk_size curve is the size in bytes of public keys from curve. Equals to 2*curve_size.
compressed_size curve is the size in bytes of compressed public keys from curve. Equals to pk_size curve/2+1.
Type of a key, parametrized by its curve and kind.
equal k1 k2 is true if k1 is represented by the same bytes as k2, and false otherwise.
neuterize k is k if k is public, or is the associated public key of k if k is secret.
sk_of_bytes curve buf is Some (sk, pk) if buf contains a valid serialization of a curve secret key, or None otherwise.
pk_of_bytes curve buf is Some pk if buf contains a valid serialization of a curve public key, or None otherwise.
to_bytes ?compress k is a serialization of k. If compress is true (the default) and k is a public key, the public key will be in compressed format.
write_key buf k writes k at buf and returns the number of bytes actually written.
keypair curve is Some (sk, pk) where sk and pk is freshly generated keypair for curve if everything went well, or None otherwise.
sign sk msg is Some signature where signature is a valid signature of msg with secret key sk, or None if an error occurred.
write_sign sk ~msg buf writes a signature of msg with sk to buf, and returns the number of bytes written (0 in the case of an error).