\brief Decrypt one 16-byte block of cipher-text using Electronic CodeBook Mode mode. \n
\warning ECB is not a secure mode, and should be used only for testing, or building more complex primitives.
\brief Encrypt one 16-byte block of cipher-text using Electronic CodeBook Mode mode. \n
\warning ECB is not a secure mode, and should be used only for testing, or building more complex primitives.
\brief Set the associated data string used in authenticating the message.
The associated data may be packet header information, domain specific data, or a secret shared by a group.
The associated data must be set after initialization, and before each transformation call.
The data is erased after each call to the transform.
\brief Transform an array of bytes using an instance of AES-256.
In encryption mode, the input plain-text is encrypted and then an authentication MAC code is appended to the cipher-text.
In decryption mode, the input cipher-text is authenticated internally and compared to the mac code appended to the cipher-text,
if the codes to not match, the cipher-text is not decrypted and the call fails.
\brief Initialize the state with the input cipher-key and optional info tweak.
The qsc_aes_state round-key array must be initialized and size set before passing the state to this function.
\brief Key a cSHAKE-128 instance and generate pseudo-random output.
Short form api: processes the key, name, and custom inputs and generates the pseudo-random output with a single call.
Permutes and extracts the state to an output byte array..
\brief Key a cSHAKE-256 instance and generate pseudo-random output.
Short form api: processes the key, name, and custom inputs and generates the pseudo-random output with a single call.
Permutes and extracts the state to an output byte array.
\brief Key a cSHAKE-512 instance and generate pseudo-random output.
Short form api: processes the key, name, and custom inputs and generates the pseudo-random output with a single call.
Permutes and extracts the state to an output byte array.
\brief The cSHAKE initialize function.
Long form api: must be used in conjunction with the squeezeblocks function.
Initialize the name and customization strings into the state.
\brief The cSHAKE squeeze function.
Long form api: must be used in conjunction with the initialize function.
Permutes and extracts blocks of state to an output byte array.
\brief Initialize an instance of HKDF(HMAC(SHA2-256)), and output an array of pseudo-random.
Short form api: initializes with the key and user info, and generates the output pseudo-random with a single call.
\brief Initialize an instance of HKDF(HMAC(SHA2-512)), and output an array of pseudo-random.
Short form api: initializes with the key and user info, and generates the output pseudo-random with a single call.
\brief Process a message with HMAC(SHA2-256) and returns the hash code in the output byte array.
Short form api: processes the key and complete message, and generates the MAC code with a single call.
\brief Process a message with SHA2-512 and returns the hash code in the output byte array.
Short form api: processes the key and complete message, and generates the MAC code with a single call.
\brief Key a KMAC-128 instance and generate a MAC code.
Short form api: processes the key and custom inputs and generates the MAC code with a single call.
Key the MAC generator process a message and output the MAC code.
\brief Key a KMAC-256 instance and generate a MAC code.
Short form api: processes the key and custom inputs and generates the MAC code with a single call.
Key the MAC generator process a message and output the MAC code.
\brief Key a KMAC-512 instance and generate a MAC code.
Short form api: processes the key and custom inputs and generates the MAC code with a single call.
Key the MAC generator process a message and output the MAC code.
\brief The KMAC finalize function.
Long form api: must be used in conjunction with the initialize and blockupdate functions.
Final processing and calculation of the MAC code.
\brief Initialize a KMAC instance.
Long form api: must be used in conjunction with the blockupdate and finalize functions.
Key the MAC generator and initialize the internal state.
\brief Process a message with SHA3-256 and return the hash code in the output byte array.
Short form api: processes the entire message and computes the hash code with a single call.
\brief Process a message with SHA3-512 and return the hash code in the output byte array.
Short form api: processes the entire message and computes the hash code with a single call.
\brief Finalize the message state and returns the hash value in output.
Long form api: must be used in conjunction with the initialize and block-update functions.
Absorb the last block of message and create the hash value.
Produces a 32 byte output code using QSC_KECCAK_256_RATE, 64 bytes with QSC_KECCAK_512_RATE.
\brief Update SHA3 with message input.
Long form api: must be used in conjunction with the initialize and finalize functions.
Absorbs the input message into the state.
\brief Finalize the message state and returns the hash value in output.
Long form api: must be used in conjunction with the initialize and update functions.
Produces a 32-byte output code.
\brief Initializes a SHA2-256 state structure, must be called before message processing.
Long form api: must be used in conjunction with the update and finalize functions.
\brief Finalize the message state and returns the SHA2-512 hash value in output.
Long form api: must be used in conjunction with the initialize and update functions.
Produces a 64 byte output code.
\brief Initializes a SHA2-512 state structure, must be called before message processing.
Long form api: must be used in conjunction with the update and finalize functions.
\brief Key a SHAKE-128 instance, and generate an array of pseudo-random bytes.
Short form api: processes the key and generates the pseudo-random output with a single call.
\brief Key a SHAKE-256 instance, and generate an array of pseudo-random bytes.
Short form api: processes the key and generates the pseudo-random output with a single call.
\brief Key a SHAKE-512 instance, and generate an array of pseudo-random bytes.
Short form api: processes the key and generates the pseudo-random output with a single call.
\brief The SHAKE initialize function.
Long form api: must be used in conjunction with the squeezeblocks function.
Absorb and finalize an input key byte array.
\brief The SHAKE squeeze function.
Long form api: must be used in conjunction with the initialize function.
Permutes and extracts the state to an output byte array.