70 likes | 95 Views
DES. Data Encryption Standard (DES) was created in after a NIST issued RFP in 1973, which culminated in the winner “Lucifer”. Lucifer was modified by NSA to yield DES Plaintext -> Initial Permutation -> 16 rounds -> final permutation ->Ciphertext S-BOX: Confusion P-BOX: Permutation.
E N D
DES • Data Encryption Standard (DES) was created in after a NIST issued RFP in 1973, which culminated in the winner “Lucifer”. Lucifer was modified by NSA to yield DES • Plaintext -> Initial Permutation -> 16 rounds -> final permutation ->Ciphertext • S-BOX: Confusion • P-BOX: Permutation
DES “Round” • PBOX0: 16 1: 72: 203: 21 • 4: 29 • 5: 12 • 6: 28 • 7: 17 • 8: 1 • 9: 15 • 10: 23 • 11: 26 • 12: 5 • 13: 18 • 14: 31 • SBOX0: 14 1: 42: 133: 1 • 4: 2 • 5: 15 • 6: 11 • 7: 8 • 8: 3 • 9: 10 • 10: 6 • 11: 12 • 12: 5 • 13: 9 • 14: 0 L 32 R 32 Key 52 shift shift Expansion Compression 48 48 S-Box 32 P-Box L’ R’ Key’
S-Boxes (6 bit to 4 bit) S1 14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13 S2 15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10 3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5 0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15 13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9 6-bit input and 4-bit output (table translation) S3 10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8 13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1 13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7 1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12 S4 7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15 13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9 10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4 3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14
S-Box Design • No output bit of S-box should be too close to a linear function of the input bits • If L and R bits are fixed, and 4 middle bits varied, each possible 4 bit result is obtained once. • 2 inputs vary in 1 bit, output varies in 2 bits • 2 inputs vary in 2 middle bits, the output varies in at least 2 bits • 2 inputs are different on 1st 2 bits, and same on last 2 bits, the output is different • A few more esoteric ones….
Permuted Choice #2 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 (note, some numbers missing: 9, 22 ...) Left shift is 1 or 2 depending on round number
DES/TDEA • Initial Permutation (IP) • Transposes the input block using table: 58, 50, 42, 34, 26, 18, 10, 2, 60, 52, 44, 36 28, 20, 12, 4 62, 54, 46, 38, 30,… 57, 49, 41, 33,… 61, 53, 45 i.e. Bit 58 goes to position 1, 50 to 2, 42 to 3, … Maybe makes it easier to load text into a DES chip?