Cryptography Reference
In-Depth Information
Ciphertext
y =
DES ( )
k x
Key k
PC−1
Initial Permutation
IP(x)
56
d
d
L
R
0
0
48
32
32
Transform 16
32
k
f
16
Round 1
32
56
d
d
L
R
1
1
d
d
L
R
15
15
32
32
48
Transform 1
32
k
f
1
Round 16
32
d
d
L
R
16
16
Final Permutation
−1
IP ( )
Message
− k y
DES ( )
x =
Fig. 3.15 DES decryption
Decryption in Feistel Networks
We have not addressed the core question: Why is the decryption function essentially
the same as the encryption function? The basic idea is that the decryption function
reverses the DES encryption in a round-by-round manner. That means that decryp-
tion round 1 reverses encryption round 16, decryption round 2 reverses encryption
round 15, and so on. Let's first look at the initial stage of decryption by looking at
Fig. 3.15. Note that the right and left halves are swapped in the last round of DES:
( L 0 , R 0 )= IP ( Y )= IP ( IP − 1 ( R 16 , L 16 )) = ( R 16 , L 16 )
And thus:
L 0 = R 16
R 0 = L 16 = R 15
Search WWH ::




Custom Search