In order to encrypt our data, we start with a 64-bit key (KEY). This key is, actually, only 56 bits, with every 8th bit for parity.
From this 64-bit KEY we need to define two 24-bit blocks (C and D)
C(0)
57 49 41 33 25 17 9
1 58 50 42 34 26 18
10 2 59 51 43 35 27
19 11 3 60 52 44 36
D(0)
63 55 47 39 31 23 15
7 62 54 46 38 30 22
14 6 61 53 45 37 29
21 13 5 28 20 12 4
From here, each C/D 1..16 are generated by Left Rotating the previous C/D according to the following table:
1 1
2 1
3 2
4 2
5 2
6 2
7 2
8 2
9 1
10 2
11 2
12 2
13 2
14 2
15 2
16 1
Thus C(1) is LR(1) C(0), D(15) is LR(2) D(14), etc
We then catenate C and D (making it one longer block), and can now define our K with the following 56-to-48 bit conversion table
K(1)
14 17 11 24 1 5
3 28 15 6 21 10
23 19 12 4 26 8
16 7 27 20 13 2
41 52 31 37 47 55
30 40 51 45 33 48
44 49 39 56 34 53
46 42 50 36 29 32