|
1 /* |
|
2 * This is D3DES (V5.09) by Richard Outerbridge with the double and |
|
3 * triple-length support removed for use in VNC. |
|
4 * |
|
5 * These changes are: |
|
6 * Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved. |
|
7 * |
|
8 * This software is distributed in the hope that it will be useful, |
|
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
|
11 */ |
|
12 |
|
13 /* d3des.h - |
|
14 * |
|
15 * Headers and defines for d3des.c |
|
16 * Graven Imagery, 1992. |
|
17 * |
|
18 * Copyright (c) 1988,1989,1990,1991,1992 by Richard Outerbridge |
|
19 * (GEnie : OUTER; CIS : [71755,204]) |
|
20 */ |
|
21 |
|
22 #define EN0 0 /* MODE == encrypt */ |
|
23 #define DE1 1 /* MODE == decrypt */ |
|
24 |
|
25 extern void deskey(unsigned char *, int); |
|
26 /* hexkey[8] MODE |
|
27 * Sets the internal key register according to the hexadecimal |
|
28 * key contained in the 8 bytes of hexkey, according to the DES, |
|
29 * for encryption or decryption according to MODE. |
|
30 */ |
|
31 |
|
32 extern void usekey(unsigned long *); |
|
33 /* cookedkey[32] |
|
34 * Loads the internal key register with the data in cookedkey. |
|
35 */ |
|
36 |
|
37 extern void cpkey(unsigned long *); |
|
38 /* cookedkey[32] |
|
39 * Copies the contents of the internal key register into the storage |
|
40 * located at &cookedkey[0]. |
|
41 */ |
|
42 |
|
43 extern void des(unsigned char *, unsigned char *); |
|
44 /* from[8] to[8] |
|
45 * Encrypts/Decrypts (according to the key currently loaded in the |
|
46 * internal key register) one block of eight bytes at address 'from' |
|
47 * into the block at address 'to'. They can be the same. |
|
48 */ |
|
49 |
|
50 /* d3des.h V5.09 rwo 9208.04 15:06 Graven Imagery |
|
51 ********************************************************************/ |