0% found this document useful (0 votes)
42 views11 pages

Shannon's Idea of Confusion and Diffusion

The document introduces Shannon's ideas of confusion and diffusion, which are design principles for block ciphers like DES and AES. Confusion refers to making each ciphertext bit depend on many plaintext and key bits in a complex, nonlinear way. Diffusion refers to having each plaintext and key bit affect many ciphertext bits. The document provides examples of linear and nonlinear functions, and illustrates how linear functions enable diffusion but not confusion, while nonlinear functions are needed for confusion.

Uploaded by

deepak_abc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
42 views11 pages

Shannon's Idea of Confusion and Diffusion

The document introduces Shannon's ideas of confusion and diffusion, which are design principles for block ciphers like DES and AES. Confusion refers to making each ciphertext bit depend on many plaintext and key bits in a complex, nonlinear way. Diffusion refers to having each plaintext and key bit affect many ciphertext bits. The document provides examples of linear and nonlinear functions, and illustrates how linear functions enable diffusion but not confusion, while nonlinear functions are needed for confusion.

Uploaded by

deepak_abc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 11

Shannons Idea of

Confusion and Diffusion


The DES, AES and many block ciphers are designed
using Shannons idea of confusion and diffusion. The
objectives of this document is to introduce
linear and nonlinear functions; and
Shannons confusion and diffusion.
1
Linear Functions
Notation: Let F
2
denote the set {0, 1} and let
F
n
2
= {(x
1
, x
2
, , x
n
)|x
i
F
2
}.
Here F
n
2
is associated with the bitwise exclusive-or
operation, denoted +.
Linear functions: Let f be a function fromF
n
2
to F
m
2
,
where n and m are integers. f is called linear if
f(x +y) = f(x) +f(y)
for all x, y F
n
2
.
Example: Let f(x) = x
1
+x
2
+ +x
n
, where
x = (x
1
, , x
n
) F
n
2
.
Then f is a linear function from F
n
2
to F
2
. Note that
+ denotes the modulo-2 addition.
2
Examples of Linear Functions
Linear permutations: Let P be a permutation of the
set {1, , n}. Dene a function L
P
from F
n
2
to itself
by
L
P
((x
1
, x
2
, , x
n
)) = (x
P(1)
, x
P(2)
, , x
P(n)
)
for any x = (x
1
, x
2
, , x
n
) F
n
.
Lemma: L
P
is linear with respect to the bitwise exclusive-
or.
Conclusion: Such a linear function is used in both
DES and AES.
3
Examples of Linear Functions
Linear function by circular shift: Let i be any posi-
tive integer. Dene a function LS
i
from F
n
2
to F
n
2
by
LS
i
((x
0
, x
1
, , x
n1
))
= (x
(0i) mod n
, x
(1i) mod n
, , x
(n1i) mod n
)
for any x = (x
0
, x
1
, , x
n1
) F
n
.
Conclusion: LS
i
is linear with respect to the bitwise
exclusive-or.
4
Nonlinear Functions
Denition Let f be a function from F
n
2
to F
m
2
, where
n and m are positive integers. f is called nonlinear if
f(x +y) = f(x) +f(y)
for at least one pair of x, y F
n
2
.
Example: Let f(x) = x
1
x
2
+x
2
+ +x
n
, where
x = (x
1
, , x
n
) F
n
2
.
Note that + denotes the modulo-2 addition.
5
Nonlinearity of S-Boxes
The S-box in AES: A function from GF(2
8
) to GF(2
8
)
dened by
S(x) = x
2
8
2
The nonlinearity is measured by
P
S
= max
0=aGF(2
8
),
bGF(2
8
)
|{x GF(2
8
) : S(x+a)S(x) = b}|
Comment: The smaller the P
S
, the higher the nonlin-
earity of S.
Remark: S is highly nonlinear.
6
Diffusion Requirement
Diffusion: Each plaintext block bit or key bit affects
many bits of the ciphertext block.
x plaintext
k
key
y
ciphertext
E (x)
k
Remark: Linear functions are responsible for confu-
sion.
7
Diffusion Requirement
Diffusion: Each plaintext block bit or key bit affects
many bits of the ciphertext block.
Example: Suppose that x, y and k all have 8 bits. If
y
1
= x
1
+x
2
+x
3
+x
4
+k
1
+k
2
+k
3
+k
4
y
2
= x
2
+x
3
+x
4
+x
5
+k
2
+k
3
+k
4
+k
5
y
3
= x
3
+x
4
+x
5
+x
6
+k
3
+k
4
+k
5
+k
6
y
4
= x
4
+x
5
+x
6
+x
7
+k
4
+k
5
+k
6
+k
7
y
5
= x
5
+x
6
+x
7
+x
8
+k
5
+k
6
+k
7
+k
8
y
6
= x
6
+x
7
+x
8
+x
1
+k
6
+k
7
+k
8
+k
1
y
7
= x
7
+x
8
+x
1
+x
2
+k
7
+k
8
+k
1
+k
2
y
8
= x
8
+x
1
+x
2
+x
3
+k
8
+k
1
+k
2
+k
3
then it has very good diffusion, because each plain-
text bit or key bit affects half of the bits in the output
block y.
8
Confusion Requirement
Confusion: Each bit of the ciphertext block has highly
nonlinear relations with the plaintext block bits and the
key bits.
x plaintext
k
key
y
ciphertext
E (x)
k
Remark: Nonlinear functions are responsible for con-
fusion.
9
Confusion Requirement
Confusion: Each bit of the ciphertext block has highly
nonlinear relations with the plaintext block bits and the
key bits.
Example: Suppose that x, y and k all have 8 bits. If
y
1
= x
1
+x
2
+x
3
+x
4
+k
1
+k
2
+k
3
+k
4
y
2
= x
2
+x
3
+x
4
+x
5
+k
2
+k
3
+k
4
+k
5
y
3
= x
3
+x
4
+x
5
+x
6
+k
3
+k
4
+k
5
+k
6
y
4
= x
4
+x
5
+x
6
+x
7
+k
4
+k
5
+k
6
+k
7
y
5
= x
5
+x
6
+x
7
+x
8
+k
5
+k
6
+k
7
+k
8
y
6
= x
6
+x
7
+x
8
+x
1
+k
6
+k
7
+k
8
+k
1
y
7
= x
7
+x
8
+x
1
+x
2
+k
7
+k
8
+k
1
+k
2
y
8
= x
8
+x
1
+x
2
+x
3
+k
8
+k
1
+k
2
+k
3
then it has bad confusion, as they are linear relations.
10
Shannons Suggestion
The encryption and decryption functions of a cipher
should have both good confusion and diffusion of the
message block bits and secret key bits.
11

You might also like