7#define uchar unsigned char
8#define uint unsigned int
17 printf(
"%02x ",hash[i]);
21int des(
char* buf,
int* len)
23 unsigned char text[8];
24 unsigned char key1[8]={0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF},
25 key2[8]={0x13,0x34,0x57,0x79,0x9B,0xBC,0xDF,0xF1},
26 three_key1[24]={0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF,
27 0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF,
28 0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF},
29 three_key2[24]={0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF,
30 0xFE,0xDC,0xBA,0x98,0x76,0x54,0x32,0x10,
31 0x01,0x23,0x45,0x67,0x89,0xAB,0xCD,0xEF},
32 out[8],schedule[16][6];
36 for(n=0;n<*len;n+=8,buf+=8,l-=8)
38 memcpy(text,buf,
min(8,l));
41 memcpy(buf,out,
min(8,l));
void printtext(unsigned char hash[])
void key_schedule(uchar key[], uchar schedule[][6], uint mode)
void des_crypt(uchar in[], uchar out[], uchar key[][6])
int des(char *buf, int *len)