Blame


1 db6608bd 2003-11-23 devnull #include "os.h"
2 db6608bd 2003-11-23 devnull #include <libsec.h>
3 db6608bd 2003-11-23 devnull
4 db6608bd 2003-11-23 devnull /*
5 db6608bd 2003-11-23 devnull * these routines use the 64bit format for
6 db6608bd 2003-11-23 devnull * DES keys.
7 db6608bd 2003-11-23 devnull */
8 db6608bd 2003-11-23 devnull
9 db6608bd 2003-11-23 devnull void
10 db6608bd 2003-11-23 devnull setupDESstate(DESstate *s, uchar key[8], uchar *ivec)
11 db6608bd 2003-11-23 devnull {
12 db6608bd 2003-11-23 devnull memset(s, 0, sizeof(*s));
13 db6608bd 2003-11-23 devnull memmove(s->key, key, sizeof(s->key));
14 db6608bd 2003-11-23 devnull des_key_setup(key, s->expanded);
15 db6608bd 2003-11-23 devnull if(ivec)
16 db6608bd 2003-11-23 devnull memmove(s->ivec, ivec, 8);
17 db6608bd 2003-11-23 devnull s->setup = 0xdeadbeef;
18 db6608bd 2003-11-23 devnull }
19 db6608bd 2003-11-23 devnull
20 db6608bd 2003-11-23 devnull void
21 db6608bd 2003-11-23 devnull setupDES3state(DES3state *s, uchar key[3][8], uchar *ivec)
22 db6608bd 2003-11-23 devnull {
23 db6608bd 2003-11-23 devnull memset(s, 0, sizeof(*s));
24 db6608bd 2003-11-23 devnull memmove(s->key, key, sizeof(s->key));
25 db6608bd 2003-11-23 devnull des_key_setup(key[0], s->expanded[0]);
26 db6608bd 2003-11-23 devnull des_key_setup(key[1], s->expanded[1]);
27 db6608bd 2003-11-23 devnull des_key_setup(key[2], s->expanded[2]);
28 db6608bd 2003-11-23 devnull if(ivec)
29 db6608bd 2003-11-23 devnull memmove(s->ivec, ivec, 8);
30 db6608bd 2003-11-23 devnull s->setup = 0xdeadbeef;
31 db6608bd 2003-11-23 devnull }