Differential Crypt-analysis Examples for the Data Encryption Standard (DES) Cipher for Three and Four Rounds by James Pate Williams, Jr. BA, BS, MSwE, PhD

Reference

Stinson, Douglas Robert,  Cryptography: Theory and Practice, CRC Press, Boca Raton, FL, 1995, Section 3.6 Differential Crypt-analysis, pp. 89-113.

Three Rounds

Plaintext-Ciphertext Pairs:
0       748502cd        38451097        03c70306        d8a09f10
0       38747564        38451097        78560a09        60e6d4cb
1       48691102        6acdff31        45fa285b        e5adc730
1       375bd31f        6acdff31        134f7915        ac253457
2       357418da        013fec86        d8a31b2f        28bbc5cf
2       12549847        013fec86        0f317ac2        b23cb944

Possible J Values:
J #     J Cnt   J-Values:
0       1       47
1       1        5
2       1       19
3       1        0
4       1       24
5       1        7
6       1        7
7       1       49

key = 00?1101P0110001P?1?01?0P1?00100P01?1001P??00??0P111?11?P?1?0011P

Unknown bit Count = 14

1073

key = 0001101001100010010011001000100101010010000011011110110001000110
tst = 0001101001100010010011001000100101010010000011011110110001000110
key = 1a624c89 520dec46
tst = 1a624c89 520dec46

J #     J-value True J-Value:
 0      47      47
 1       5       5
 2      19      19
 3       0       0
 4      24      24
 5       7       7
 6       7       7
 7      49      49

Tested Keys #               = 1073
Runtime (s) = 1

Runtime per test (s)      = 0.000348
Runtime max estimated (s) = 0.374258

Press any key to continue . . .

Four Rounds

Plaintext-Ciphertext Pairs:
0       18493ac4        85b8d9a0        e3321513        12a18b4f
0       38493ac4        85b8d9a0        87391c27        e5282161
1       482765dd        d7009123        b5ddd833        9d82d1d1
1       682765dd        d7009123        81f4b92b        d94b6fd8
2       abcd0987        33731ff1        93a4b42f        62ea59e4
2       8bcd0987        33731ff1        aba49407        2bf411e5
3       13578642        aaffedcb        fdeb5262        75fb9d94
3       33578642        aaffedcb        cc8f72aa        e685fdb1

Possible J Values:
J #     J Cnt   J-Values:
0       1        0
1       1       32
2       1       36
3       1       37
4       1       32
5       1       13
6       1       26
7       1       10

key = 10?10?0P???1101P0011000P0000??0P00??01?P??00100P?101000P11?0101P

Unknown bit Count = 14

7775

key = 1001010011111011001100010000000100100110110010001101000011001011
tst = 1001010011111011001100010000000100100110110010001101000011001011
key = 94fb3101 26c8d0cb
tst = 94fb3101 26c8d0cb

J #     J-value True J-Value:
 0      55      55
 1      32      32
 2      36      36
 3      37      37
 4      32      32
 5      13      13
 6      26      26
 7      10      10

Tested Keys #               = 7775
Runtime (s) = 3

Runtime per test (s)      = 0.000392
Runtime max estimated (s) = 3.043958

Could only determine 7 parameters
Press any key to continue . . .

Computer programs for the preceding examples were written by the author of this page back in 1997 in the C computer language.