5 Author: Pekka Riikonen <priikone@poseidon.pspt.fi>
7 Copyright (C) 1997 - 2000 Pekka Riikonen
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
21 #ifndef RC5_INTERNAL_H
22 #define RC5_INTERNAL_H
24 #include "ciphers_def.h"
27 #define w 32 /* word size, in bits */
28 #define r 16 /* rounds */
29 #define b 16 /* minimum key size in bytes */
30 #define c 8 /* same for 128, 192 and 256 bits key */
31 #define t 34 /* size of table S, t = 2 * (r + 1) */
33 /* Cipher's context */
39 int rc5_set_key(RC5Context *ctx, char *key, int key_len);
40 int rc5_encrypt(RC5Context *ctx, u32 *in, u32 *out);
41 int rc5_decrypt(RC5Context *ctx, u32 *in, u32 *out);