35 |
35 |
|
36 |
36 |
static unsigned long KnL[32] = { 0L };
|
37 |
37 |
|
38 |
|
static unsigned short bytebit[8] = {
|
|
38 |
static const unsigned short bytebit[8] = {
|
39 |
39 |
01, 02, 04, 010, 020, 040, 0100, 0200 };
|
40 |
40 |
|
41 |
|
static unsigned long bigbyte[24] = {
|
|
41 |
static const unsigned long bigbyte[24] = {
|
42 |
42 |
0x800000L, 0x400000L, 0x200000L, 0x100000L,
|
43 |
43 |
0x80000L, 0x40000L, 0x20000L, 0x10000L,
|
44 |
44 |
0x8000L, 0x4000L, 0x2000L, 0x1000L,
|
... | ... | |
48 |
48 |
|
49 |
49 |
/* Use the key schedule specified in the Standard (ANSI X3.92-1981). */
|
50 |
50 |
|
51 |
|
static unsigned char pc1[56] = {
|
|
51 |
static const unsigned char pc1[56] = {
|
52 |
52 |
56, 48, 40, 32, 24, 16, 8, 0, 57, 49, 41, 33, 25, 17,
|
53 |
53 |
9, 1, 58, 50, 42, 34, 26, 18, 10, 2, 59, 51, 43, 35,
|
54 |
54 |
62, 54, 46, 38, 30, 22, 14, 6, 61, 53, 45, 37, 29, 21,
|
55 |
55 |
13, 5, 60, 52, 44, 36, 28, 20, 12, 4, 27, 19, 11, 3 };
|
56 |
56 |
|
57 |
|
static unsigned char totrot[16] = {
|
|
57 |
static const unsigned char totrot[16] = {
|
58 |
58 |
1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28 };
|
59 |
59 |
|
60 |
|
static unsigned char pc2[48] = {
|
|
60 |
static const unsigned char pc2[48] = {
|
61 |
61 |
13, 16, 10, 23, 0, 4, 2, 27, 14, 5, 20, 9,
|
62 |
62 |
22, 18, 11, 3, 25, 7, 15, 6, 26, 19, 12, 1,
|
63 |
63 |
40, 51, 30, 36, 46, 54, 29, 39, 50, 44, 32, 47,
|