]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - include/crypto/chacha20.h
Merge tag 'xfs-4.11-fixes-2' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux
[karo-tx-linux.git] / include / crypto / chacha20.h
1 /*
2  * Common values for the ChaCha20 algorithm
3  */
4
5 #ifndef _CRYPTO_CHACHA20_H
6 #define _CRYPTO_CHACHA20_H
7
8 #include <crypto/skcipher.h>
9 #include <linux/types.h>
10 #include <linux/crypto.h>
11
12 #define CHACHA20_IV_SIZE        16
13 #define CHACHA20_KEY_SIZE       32
14 #define CHACHA20_BLOCK_SIZE     64
15
16 struct chacha20_ctx {
17         u32 key[8];
18 };
19
20 void chacha20_block(u32 *state, void *stream);
21 void crypto_chacha20_init(u32 *state, struct chacha20_ctx *ctx, u8 *iv);
22 int crypto_chacha20_setkey(struct crypto_skcipher *tfm, const u8 *key,
23                            unsigned int keysize);
24 int crypto_chacha20_crypt(struct skcipher_request *req);
25
26 #endif