This documentation describes the cryptography API and the syscalls that can be invoked to the operating system to use basic arithmetic and cryptographic functions. It is basically divided into:
- cryptography API which consists of signature algorithms, hash functions, message authentication codes and encryption algorithms
- syscalls which enable computations for GF(p) and GF(2n) arithmetic and efficient implementation of elliptic curves.
Here is a non-exhaustive list of supported algorithms:
- AES and DES in different modes
- ECDSA with a random or deterministic nonce
- EDDSA
- ECDH
- Schnorr signature with different implementations, especially the one used for Zilliqa and BIP-0340
- Multiple hash functions from SHA-2 and SHA-3 families as well as extendable output functions (SHAKE-128 and SHAKE-256)
- GROESTL and RIPEMD-160
- Keyed-hash Message Authentication Code