18dbcf02cSchristos /* 28dbcf02cSchristos * DES and 3DES-EDE ciphers 38dbcf02cSchristos * Copyright (c) 2006-2009, Jouni Malinen <j@w1.fi> 48dbcf02cSchristos * 5*e604d861Schristos * This software may be distributed under the terms of the BSD license. 6*e604d861Schristos * See README for more details. 78dbcf02cSchristos */ 88dbcf02cSchristos 98dbcf02cSchristos #ifndef DES_I_H 108dbcf02cSchristos #define DES_I_H 118dbcf02cSchristos 128dbcf02cSchristos struct des3_key_s { 138dbcf02cSchristos u32 ek[3][32]; 148dbcf02cSchristos u32 dk[3][32]; 158dbcf02cSchristos }; 168dbcf02cSchristos 178dbcf02cSchristos void des_key_setup(const u8 *key, u32 *ek, u32 *dk); 188dbcf02cSchristos void des_block_encrypt(const u8 *plain, const u32 *ek, u8 *crypt); 198dbcf02cSchristos void des_block_decrypt(const u8 *crypt, const u32 *dk, u8 *plain); 208dbcf02cSchristos 218dbcf02cSchristos void des3_key_setup(const u8 *key, struct des3_key_s *dkey); 228dbcf02cSchristos void des3_encrypt(const u8 *plain, const struct des3_key_s *key, u8 *crypt); 238dbcf02cSchristos void des3_decrypt(const u8 *crypt, const struct des3_key_s *key, u8 *plain); 248dbcf02cSchristos 258dbcf02cSchristos #endif /* DES_I_H */ 26