220 likes | 733 Views
Avalanche Effect in DES. key desirable property of encryption algo where a change of one input or key bit results in changing approx half output bits making attempts to “home-in” by guessing keys impossible DES exhibits strong avalanche. Avalanche Effect in DES.
E N D
Avalanche Effect in DES • key desirable property of encryption algo • where a change of one input or key bit results in changing approx half output bits • making attempts to “home-in” by guessing keys impossible • DES exhibits strong avalanche
Avalanche Effect in DES DES exhibits a strong avalanche effect. Table shows some results. In Table (a), two plaintexts that differ by one bit were used: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 10000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 with the key 0000001 1001011 0100100 1100010 0011100 0011000 0011100 0110010
The Table (a) shows that after just three rounds, 21 bits differ between the two blocks. On completion, the two ciphertexts differ in 34 bit positions. • Table (b) shows a similar test in which a single plaintext is input: • 01101000 10000101 00101111 01111010 00010011 01110110 11101011 10100100 with two keys that differ in only one bit position: • 1110010 1111011 1101111 0011000 0011101 0000100 0110001 11011100 • 0110010 1111011 1101111 0011000 0011101 0000100 0110001 11011100 • Again, the results show that about half of the bits in the ciphertext differ and that the avalanche effect is pronounced after just a few rounds.
Strength of DES – Key Size • 56-bit keys have 256 = 7.2 x 1016 values • brute force search looks hard • recent advances have shown is possible • in 1997 on Internet in a few months • in 1998 on dedicated h/w (EFF) in a few days • in 1999 above combined in 22hrs! • still must be able to recognize plaintext • must now consider alternatives to DES
Modular Arithmetic • define modulo operator “a mod n” to be remainder when a is divided by n • use the term congruence for: a = b mod n • when divided by n, a & b have same remainder • eg. 100 = 34 mod 11 • b is called a residue of a mod n • since with integers can always write: a = qn + b • usually chose smallest positive remainder as residue • ie. 0 <= b <= n-1 • process is known as modulo reduction • eg. -12 mod 7 = -5 mod 7 = 2 mod 7 = 9 mod 7
Divisors • say a non-zero number bdividesa if for some m have a=mb (a,b,m all integers) • that is b divides into a with no remainder • denote this b|a • and say that b is a divisor of a • eg. all of 1,2,3,4,6,8,12,24 divide 24
Modular Arithmetic Operations • is 'clock arithmetic' • uses a finite number of values, and loops back from either end • modular arithmetic is when do addition & multiplication and modulo reduce answer • can do reduction at any point, ie • a+b mod n = [a mod n + b mod n] mod n
Modular Arithmetic • can do modular arithmetic with any group of integers: Zn = {0, 1, … , n-1} • form a commutative ring for addition • with a multiplicative identity • note some peculiarities • if (a+b)=(a+c) mod n then b=c mod n • but if (a.b)=(a.c) mod n then b=c mod n only if a is relatively prime to n
Modular arithmetic Properties Modular arithmetic exhibits the following properties: • [(a mod n) + (b mod n)] mod n = (a + b) mod n • [(a mod n) (b mod n)] mod n = (a b) mod n • [(a mod n) x (b mod n)] mod n = (a x b) mod
Exponentiation is performed by repeated multiplication, as in ordinary arithmetic. (We have more to say about exponentiation in Chapter 8.) • To find 117 mod 13, we can proceed as follows: • 112 = 121 Ξ 4 (mod 13) • 114 = (112)2Ξ 42 Ξ 3 (mod 13) • 117Ξ 11 x 4 x 3 Ξ 132 Ξ 2 (mod 13)