This section describes functions designed to specify the elliptic
curve cryptosystem and perform various operations on the elliptic
curve defined over a binary finite field. The examples of the operations
are illustrated below:
- Setting up operations
ECCBSet sets up elliptic curve domain parameters. ECCBSetKeyPair sets a pair of public and private keys for the given cryptosystem.
- Computation operations
ECCBAddPoint adds two points on the elliptic curve. ECCBMulPointScalar performs the scalar multiplication of a point on the elliptic curve.
ECCBSignDSA computes the digital signature of a message.
- Validation operations
ECCBValidate checks validity of the elliptic curve domain parameters.
ECCBValidateKeyPair validates correctness of the public and private keys.
- Generation operations
ECCBGenKeyPair generates a private key and computes a public key for the given
elliptic cryptosystem.
- Retrieval operations
ECCBGet retrieves elliptic curve domain parameters. ECCBGetOrderBitSize retrieves the size of a base point in bytes.
All functions described in this section employ a context IppsECCBState that
catches several auxiliary components specifying operations performed
on the elliptic curve or entire elliptic cryptosystem. ECCB stands
for Elliptic Curve Cryptography Binary and means that all functions
whose name include this abbreviation perform operations over a
binary finite field
GF(2m).