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