~ubuntu-branches/ubuntu/dapper/gnutls12/dapper-updates

« back to all changes in this revision

Viewing changes to nettle/desinfo.h

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Urlichs
  • Date: 2005-11-15 19:26:02 UTC
  • Revision ID: james.westby@ubuntu.com-20051115192602-milf548iripaq3jh
Tags: 1.2.9-2
* Install /usr/lib/pkgconfig/*.pc files.
* Depend on texinfo (>= 4.8, for the @euro{} sign).

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* desinfo.h
 
2
 *
 
3
 * Tables describing DES rather than just this implementation.
 
4
 * These are used in desdata but NOT in runtime code.
 
5
 *
 
6
 * $Id: desinfo.h,v 1.1 2001/06/11 22:50:24 nisse Exp $ */
 
7
 
 
8
/*      des - fast & portable DES encryption & decryption.
 
9
 *      Copyright (C) 1992  Dana L. How
 
10
 *      Please see the file `descore.README' for the complete copyright notice.
 
11
 */
 
12
 
 
13
/* the initial permutation, E selection, and final permutation are hardwired */
 
14
 
 
15
/* Key Load: how to load the shift register from the user key */
 
16
 
 
17
unsigned char KL[] = {
 
18
 
 
19
        57, 49, 41, 33, 25, 17,  9,  1, 58, 50, 42, 34, 26, 18,
 
20
        10,  2, 59, 51, 43, 35, 27, 19, 11,  3, 60, 52, 44, 36,
 
21
 
 
22
        63, 55, 47, 39, 31, 23, 15,  7, 62, 54, 46, 38, 30, 22,
 
23
        14,  6, 61, 53, 45, 37, 29, 21, 13,  5, 28, 20, 12,  4,
 
24
};
 
25
 
 
26
/* Key Shift: how many times to shift the key shift register */
 
27
 
 
28
unsigned char KS[] = {
 
29
 
 
30
        1, 1, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 2, 1,
 
31
};
 
32
 
 
33
/* Key Choose: which key bits from shift reg are used in the key schedule */
 
34
 
 
35
unsigned char KC[] = {
 
36
 
 
37
        14, 17, 11, 24,  1,  5,  3, 28, 15,  6, 21, 10,
 
38
        23, 19, 12,  4, 26,  8, 16,  7, 27, 20, 13,  2,
 
39
 
 
40
        41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48,
 
41
        44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32,
 
42
};
 
43
 
 
44
/* S Boxes */
 
45
 
 
46
unsigned char SB[8][64] = {
 
47
  {
 
48
        14,  4, 13,  1,  2, 15, 11,  8,  3, 10,  6, 12,  5,  9,  0,  7,
 
49
         0, 15,  7,  4, 14,  2, 13,  1, 10,  6, 12, 11,  9,  5,  3,  8,
 
50
         4,  1, 14,  8, 13,  6,  2, 11, 15, 12,  9,  7,  3, 10,  5,  0,
 
51
        15, 12,  8,  2,  4,  9,  1,  7,  5, 11,  3, 14, 10,  0,  6, 13,
 
52
  },{
 
53
        15,  1,  8, 14,  6, 11,  3,  4,  9,  7,  2, 13, 12,  0,  5, 10,
 
54
         3, 13,  4,  7, 15,  2,  8, 14, 12,  0,  1, 10,  6,  9, 11,  5,
 
55
         0, 14,  7, 11, 10,  4, 13,  1,  5,  8, 12,  6,  9,  3,  2, 15,
 
56
        13,  8, 10,  1,  3, 15,  4,  2, 11,  6,  7, 12,  0,  5, 14,  9,
 
57
  },{
 
58
        10,  0,  9, 14,  6,  3, 15,  5,  1, 13, 12,  7, 11,  4,  2,  8,
 
59
        13,  7,  0,  9,  3,  4,  6, 10,  2,  8,  5, 14, 12, 11, 15,  1,
 
60
        13,  6,  4,  9,  8, 15,  3,  0, 11,  1,  2, 12,  5, 10, 14,  7,
 
61
         1, 10, 13,  0,  6,  9,  8,  7,  4, 15, 14,  3, 11,  5,  2, 12,
 
62
  },{
 
63
         7, 13, 14,  3,  0,  6,  9, 10,  1,  2,  8,  5, 11, 12,  4, 15,
 
64
        13,  8, 11,  5,  6, 15,  0,  3,  4,  7,  2, 12,  1, 10, 14,  9,
 
65
        10,  6,  9,  0, 12, 11,  7, 13, 15,  1,  3, 14,  5,  2,  8,  4,
 
66
         3, 15,  0,  6, 10,  1, 13,  8,  9,  4,  5, 11, 12,  7,  2, 14,
 
67
  },{
 
68
         2, 12,  4,  1,  7, 10, 11,  6,  8,  5,  3, 15, 13,  0, 14,  9,
 
69
        14, 11,  2, 12,  4,  7, 13,  1,  5,  0, 15, 10,  3,  9,  8,  6,
 
70
         4,  2,  1, 11, 10, 13,  7,  8, 15,  9, 12,  5,  6,  3,  0, 14,
 
71
        11,  8, 12,  7,  1, 14,  2, 13,  6, 15,  0,  9, 10,  4,  5,  3,
 
72
  },{
 
73
        12,  1, 10, 15,  9,  2,  6,  8,  0, 13,  3,  4, 14,  7,  5, 11,
 
74
        10, 15,  4,  2,  7, 12,  9,  5,  6,  1, 13, 14,  0, 11,  3,  8,
 
75
         9, 14, 15,  5,  2,  8, 12,  3,  7,  0,  4, 10,  1, 13, 11,  6,
 
76
         4,  3,  2, 12,  9,  5, 15, 10, 11, 14,  1,  7,  6,  0,  8, 13,
 
77
  },{
 
78
         4, 11,  2, 14, 15,  0,  8, 13,  3, 12,  9,  7,  5, 10,  6,  1,
 
79
        13,  0, 11,  7,  4,  9,  1, 10, 14,  3,  5, 12,  2, 15,  8,  6,
 
80
         1,  4, 11, 13, 12,  3,  7, 14, 10, 15,  6,  8,  0,  5,  9,  2,
 
81
         6, 11, 13,  8,  1,  4, 10,  7,  9,  5,  0, 15, 14,  2,  3, 12,
 
82
  },{
 
83
        13,  2,  8,  4,  6, 15, 11,  1, 10,  9,  3, 14,  5,  0, 12,  7,
 
84
         1, 15, 13,  8, 10,  3,  7,  4, 12,  5,  6, 11,  0, 14,  9,  2,
 
85
         7, 11,  4,  1,  9, 12, 14,  2,  0,  6, 10, 13, 15,  3,  5,  8,
 
86
         2,  1, 14,  7,  4, 10,  8, 13, 15, 12,  9,  0,  3,  5,  6, 11
 
87
  }
 
88
};
 
89
 
 
90
/* Sbox Permutation */
 
91
 
 
92
char SP[] = {   
 
93
 
 
94
        16,  7, 20, 21, 29, 12, 28, 17,  1, 15, 23, 26,  5, 18, 31, 10,
 
95
         2,  8, 24, 14, 32, 27,  3,  9, 19, 13, 30,  6, 22, 11,  4, 25,
 
96
};