cast128.h revision 1.6 1 1.6 thorpej /* $NetBSD: cast128.h,v 1.6 2003/08/26 20:03:57 thorpej Exp $ */
2 1.5 thorpej /* $OpenBSD: cast.h,v 1.2 2002/03/14 01:26:51 millert Exp $ */
3 1.1 thorpej
4 1.1 thorpej /*
5 1.5 thorpej * CAST-128 in C
6 1.5 thorpej * Written by Steve Reid <sreid (at) sea-to-sky.net>
7 1.5 thorpej * 100% Public Domain - no warranty
8 1.5 thorpej * Released 1997.10.11
9 1.1 thorpej */
10 1.1 thorpej
11 1.5 thorpej #ifndef _CAST128_H_
12 1.5 thorpej #define _CAST128_H_
13 1.1 thorpej
14 1.5 thorpej typedef struct {
15 1.5 thorpej u_int32_t xkey[32]; /* Key, after expansion */
16 1.5 thorpej int rounds; /* Number of rounds to use, 12 or 16 */
17 1.5 thorpej } cast128_key;
18 1.5 thorpej
19 1.6 thorpej void cast128_setkey(cast128_key *key, const u_int8_t *rawkey, int keybytes);
20 1.6 thorpej void cast128_encrypt(const cast128_key *key, const u_int8_t *inblock,
21 1.6 thorpej u_int8_t *outblock);
22 1.6 thorpej void cast128_decrypt(const cast128_key *key, const u_int8_t *inblock,
23 1.6 thorpej u_int8_t *outblock);
24 1.1 thorpej
25 1.5 thorpej #endif /* _CAST128_H_ */
26