/** * Author......: See docs/credits.txt * License.....: MIT */ #ifndef _INC_CIPHER_TWOFISH_H #define _INC_CIPHER_TWOFISH_H DECLSPEC u32 mds_rem (u32 p0, u32 p1); DECLSPEC u32 h_fun128 (PRIVATE_AS const u32 x, PRIVATE_AS const u32 *key); DECLSPEC void twofish128_set_key (PRIVATE_AS u32 *sk, PRIVATE_AS u32 *lk, PRIVATE_AS const u32 *ukey); DECLSPEC void twofish128_encrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); DECLSPEC void twofish128_decrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); DECLSPEC u32 h_fun192 (const u32 x, PRIVATE_AS const u32 *key); DECLSPEC void twofish192_set_key (PRIVATE_AS u32 *sk, PRIVATE_AS u32 *lk, PRIVATE_AS const u32 *ukey); DECLSPEC void twofish192_encrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); DECLSPEC void twofish192_decrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); DECLSPEC u32 h_fun256 (const u32 x, PRIVATE_AS const u32 *key); DECLSPEC void twofish256_set_key (PRIVATE_AS u32 *sk, PRIVATE_AS u32 *lk, PRIVATE_AS const u32 *ukey); DECLSPEC void twofish256_encrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); DECLSPEC void twofish256_decrypt (PRIVATE_AS const u32 *sk, PRIVATE_AS const u32 *lk, PRIVATE_AS const u32 *in, PRIVATE_AS u32 *out); #endif // _INC_CIPHER_TWOFISH_H