1 /* 2 * Common values for serpent algorithms 3 */ 4 5 #ifndef _CRYPTO_SERPENT_H 6 #define _CRYPTO_SERPENT_H 7 8 #include <linux/types.h> 9 #include <linux/crypto.h> 10 11 #define SERPENT_MIN_KEY_SIZE 0 12 #define SERPENT_MAX_KEY_SIZE 32 13 #define SERPENT_EXPKEY_WORDS 132 14 #define SERPENT_BLOCK_SIZE 16 15 16 struct serpent_ctx { 17 u32 expkey[SERPENT_EXPKEY_WORDS]; 18 }; 19 20 int __serpent_setkey(struct serpent_ctx *ctx, const u8 *key, 21 unsigned int keylen); 22 int serpent_setkey(struct crypto_tfm *tfm, const u8 *key, unsigned int keylen); 23 24 void __serpent_encrypt(struct serpent_ctx *ctx, u8 *dst, const u8 *src); 25 void __serpent_decrypt(struct serpent_ctx *ctx, u8 *dst, const u8 *src); 26 27 #endif 28