Ascon [ASCON21] is a family of authenticated encryption and hashing algorithms designed to be lightweight and easy to implement. Ascon has been selected as the new standard for lightweight cryptography in the NIST Lightweight Cryptography competition (2019–2023). We include here implementations of Ascon on a provisional basis - they may be changed in the final NIST specification.
The cipher suite Ascon provides authenticated encryption with associated data (AEAD) and hashing functionality. The suite consists of the authenticated ciphers Ascon-128 and Ascon-128a. Additionally, the suite consists of the hash functions Ascon-Hash and Ascon-Hasha, and the extendable output functions Ascon-Xof and Ascon-Xofa. The recommendation for NIST includes Ascon-128 combined with Ascon-Hash, or Ascon-128A combined with Ascon-Hasha. All schemes provide 128-bit security.
For implementations in this toolkit, see AEAD_EncryptWithTag, AEAD_DecryptWithTag, HASH_Bytes, HASH_HexFromHex, and XOF_Bytes.