Initialize an AEAD cipher algorithm state
#include <dev/crypto/devcrypto_plugin.h>
typedef int(* devcrypto_aead_cipher_op_init)(devcrypto_state_ctx_t *sctx, const uint8_t *key, uint32_t keysize, const uint8_t *iv, uint32_t ivsize, uint8_t *tag, uint32_t tagsize, uint32_t insize, int encrypt);
Because devcrypto works using ciphers with no padding, plugins need to make sure that cipher padding is turned off. The caller is responsible for providing the cipher with padded and aligned data.
The insize argument is only used for algorithms that require that the plaintext size be known before encryption or decryption can begin (e.g., AES-CCM). This requirement also means the algorithm must encrypt or decrypt all the data in a single operation.
The tag argument is only used for algorithms that require the tag to be input before decryption can begin (e.g., AES-CCM).
EOK if successful or errno if an error occurred.