1*3ff40c12SJohn Marino /* 2*3ff40c12SJohn Marino * DES and 3DES-EDE ciphers 3*3ff40c12SJohn Marino * Copyright (c) 2006-2009, Jouni Malinen <j@w1.fi> 4*3ff40c12SJohn Marino * 5*3ff40c12SJohn Marino * This software may be distributed under the terms of the BSD license. 6*3ff40c12SJohn Marino * See README for more details. 7*3ff40c12SJohn Marino */ 8*3ff40c12SJohn Marino 9*3ff40c12SJohn Marino #ifndef DES_I_H 10*3ff40c12SJohn Marino #define DES_I_H 11*3ff40c12SJohn Marino 12*3ff40c12SJohn Marino struct des3_key_s { 13*3ff40c12SJohn Marino u32 ek[3][32]; 14*3ff40c12SJohn Marino u32 dk[3][32]; 15*3ff40c12SJohn Marino }; 16*3ff40c12SJohn Marino 17*3ff40c12SJohn Marino void des_key_setup(const u8 *key, u32 *ek, u32 *dk); 18*3ff40c12SJohn Marino void des_block_encrypt(const u8 *plain, const u32 *ek, u8 *crypt); 19*3ff40c12SJohn Marino void des_block_decrypt(const u8 *crypt, const u32 *dk, u8 *plain); 20*3ff40c12SJohn Marino 21*3ff40c12SJohn Marino void des3_key_setup(const u8 *key, struct des3_key_s *dkey); 22*3ff40c12SJohn Marino void des3_encrypt(const u8 *plain, const struct des3_key_s *key, u8 *crypt); 23*3ff40c12SJohn Marino void des3_decrypt(const u8 *crypt, const struct des3_key_s *key, u8 *plain); 24*3ff40c12SJohn Marino 25*3ff40c12SJohn Marino #endif /* DES_I_H */ 26