]> git.saurik.com Git - apple/xnu.git/blob - EXTERNAL_HEADERS/corecrypto/ccdes.h
xnu-2782.1.97.tar.gz
[apple/xnu.git] / EXTERNAL_HEADERS / corecrypto / ccdes.h
1 /*
2 * ccdes.h
3 * corecrypto
4 *
5 * Created by Fabrice Gautier on 12/20/10.
6 * Copyright 2010 Apple, Inc. All rights reserved.
7 *
8 */
9
10
11 #ifndef _CORECRYPTO_CCDES_H_
12 #define _CORECRYPTO_CCDES_H_
13
14 #include <corecrypto/ccmode.h>
15
16 #define CCDES_BLOCK_SIZE 8
17 #define CCDES_KEY_SIZE 8
18
19 extern const struct ccmode_ecb ccdes_ltc_ecb_decrypt_mode;
20 extern const struct ccmode_ecb ccdes_ltc_ecb_encrypt_mode;
21
22 extern const struct ccmode_ecb ccdes3_ltc_ecb_decrypt_mode;
23 extern const struct ccmode_ecb ccdes3_ltc_ecb_encrypt_mode;
24 extern const struct ccmode_ecb ccdes168_ltc_ecb_encrypt_mode;
25
26 const struct ccmode_ecb *ccdes_ecb_decrypt_mode(void);
27 const struct ccmode_ecb *ccdes_ecb_encrypt_mode(void);
28
29 const struct ccmode_cbc *ccdes_cbc_decrypt_mode(void);
30 const struct ccmode_cbc *ccdes_cbc_encrypt_mode(void);
31
32 const struct ccmode_cfb *ccdes_cfb_decrypt_mode(void);
33 const struct ccmode_cfb *ccdes_cfb_encrypt_mode(void);
34
35 const struct ccmode_cfb8 *ccdes_cfb8_decrypt_mode(void);
36 const struct ccmode_cfb8 *ccdes_cfb8_encrypt_mode(void);
37
38 const struct ccmode_ctr *ccdes_ctr_crypt_mode(void);
39
40 const struct ccmode_ofb *ccdes_ofb_crypt_mode(void);
41
42
43 const struct ccmode_ecb *ccdes3_ecb_decrypt_mode(void);
44 const struct ccmode_ecb *ccdes3_ecb_encrypt_mode(void);
45
46 const struct ccmode_cbc *ccdes3_cbc_decrypt_mode(void);
47 const struct ccmode_cbc *ccdes3_cbc_encrypt_mode(void);
48
49 const struct ccmode_cfb *ccdes3_cfb_decrypt_mode(void);
50 const struct ccmode_cfb *ccdes3_cfb_encrypt_mode(void);
51
52 const struct ccmode_cfb8 *ccdes3_cfb8_decrypt_mode(void);
53 const struct ccmode_cfb8 *ccdes3_cfb8_encrypt_mode(void);
54
55 const struct ccmode_ctr *ccdes3_ctr_crypt_mode(void);
56
57 const struct ccmode_ofb *ccdes3_ofb_crypt_mode(void);
58
59 int ccdes_key_is_weak( void *key, unsigned long length);
60 void ccdes_key_set_odd_parity(void *key, unsigned long length);
61
62 uint32_t
63 ccdes_cbc_cksum(void *in, void *out, unsigned long length,
64 void *key, unsigned long keylen, void *ivec);
65
66
67 #endif /* _CORECRYPTO_CCDES_H_ */