1/* 2 * Common values for the ChaCha20 algorithm 3 */ 4 5#ifndef _CRYPTO_CHACHA20_H 6#define _CRYPTO_CHACHA20_H 7 8#include <linux/types.h> 9#include <linux/crypto.h> 10 11#define CHACHA20_IV_SIZE 16 12#define CHACHA20_KEY_SIZE 32 13#define CHACHA20_BLOCK_SIZE 64 14 15struct chacha20_ctx { 16 u32 key[8]; 17}; 18 19void crypto_chacha20_init(u32 *state, struct chacha20_ctx *ctx, u8 *iv); 20int crypto_chacha20_setkey(struct crypto_tfm *tfm, const u8 *key, 21 unsigned int keysize); 22int crypto_chacha20_crypt(struct blkcipher_desc *desc, struct scatterlist *dst, 23 struct scatterlist *src, unsigned int nbytes); 24 25#endif 26