DES
1st docc_ DES Running notes
Block cipher algorithms:
DES Stands for Data Encryption Standards
Block Cipher Algorithms :
In block Cipher we have 5 mods of operations we have
ECB electronic code Book
CBC_Cipher block chaining
CFB_Cipher feed back mode
OFB_Output feedback mode
CTR_Conter mode
These are the 5 mods of operations in block cipher
Block cipher Algorithms
1)DES: Data encryption Standard
2)AES: Advanced Encryption Standard
3)Blowfish : Blowfish Algorithm
1st one DES _ Data Encryption Standards
in substitution technique and transposition technique we will use it for encrypt teh messages , that
means converting plain text to cipher text ,
in this presentation we are going to focus on the introduction to DES the data encryption standard
the data encryption standard this is actually a symmetric block Cipher
what do we mean by this symmetric Cipher means the same key is used for both encryption and
decryption
then what is a block Cipher it is not going to take a bit by bit or byte input, rather it is going to take
a group of bits as an input,
input means the plain text
so DES is actually a symmetric block Cipher
this DES is also known as data encryption algorithm , so it can be reffered as DES or DEA
this was adopted by National Institute of Standards and technology in the year 1977. It is history of
DES
what is the size of the plain text
what is the size of the cipher text
and what's the size of the key
9)the input size is of 64 bits
10)so DES can encrypt 64 bits at a time input ;means the plain text
11) so the the plain text size is 64 bits and obviously the output size is also 64 bits
so the 64-bit input is fed into the encryption algorithm
12)and this Des encryption algorithm is going to convert that 64-bit plain text into 64-bit ciphertext
13)actually the main key which is given as the input to the algorithm is of 64 bits
64-bit key is converted into 56 bits and this is the length of the key we normally rerffered for DES
actually in this There are 16 rounds in DES
so for 16 rounds we need 16 round keys
and how these round keys are generated these round keys are generated using this 56 bit key
length
actually this 56 bit key is helping the Des algorithm to generate 48-bit round Keys
how many round Keys 16* 48 bit round key
because it is taking a group of bits what is happening inside this encryption algorithm
this so here is the Des encryption algorithm
It is DES Encryption algorithm
DES having main largest no of users in Banking sector {{Just assume 56 bit is sub key, 64 bit is main
key , 48 bit key is round key }}
a)if you see here the 64-bit plain text is actually going to be converted into 64-bit ciphertext
b)and this 64-bit plaintext is actually given to this initial permutation function
, so 64 bits are sent to this function and after doing a permutation it gives 64 bits as the output,
so it's clear that the 64-bit plain text is given to the initial permutation function and it gives 64 bits
now how many rounds are there as I mentioned earlier
e)There are 16 rounds in DES so here is round 1, round 2 up to round 16.
f)now if you see here; for every round 64 bits are given as the input ;and the output of every round
is going to be another 64 bits
h) so for now just understand 64 bits input is given to each round and the output of each round is
going to be 64 bits so likewise we are processing 16 round s at the end of 16 round whatever
we get is this DES cipher text no just correlate this in the feistel structure its not cipher text ,
i) what we have seen after completing the N rounds whatever we get is the pre-output, it needs to
be swapped
i1) so after 16 rounds of operation we get 64 bits and these 64 bits are given to a 32-bit swap
function
i1) so if you take this 64 bits we can partition this into left hand side 32 bits and the right hand side
32 bits just perform a swap
once the 32 bits are swapped again we'll be getting 64 bits only because
the left hand side 32 bits are going to be placed in the right hand side and the right hand side 32
bits are going to be placed in the left hand side
so it's clear that the output of the 32-bit swap function is going to be 64 bits now this is also not
the cipher text
{{{ we have to remember that 48 bit input we got from XOR operation , thse 48 bit we sent it to the
S box , here we have 8 boxes means 48/8=6
Then this 6 input is going to each s box then 8 * 6input of s box == 48 bit }}}it will provide 4 bit of
out put
For ex : 011011
Here 1st bit and last bit we wil consider as index of s box
2 nd running notes with explanation S bo x and pbox topics for this follow the below docc
DES ALL DIA STEP BY STEP _Docc
3rd running notes
Now we have to know what is Intial Permuatation ,
What is Permuted chouce
What wil happen in each round
What is left circular shift
*****
Other model steps
In Intial permuatation we have 2 steps key transformation and 2nd one expansion permuation
Explation for Arrow part
LPT---Left Plain text and Right Plain text
in
From rounds we are gettting data in bits formation 1000 lik ethat , in this way it will be very easy to
understand
In IP we are performing 2 operations
1) Key transformation
2) Expansion perutataion
3) In key transforamation 1st row will come as last columns explain below dia how it is arranged
1) In above dia we performed key transformations , what we did here just we chnaged palces of
keys , we took 64 bit and we get 64 bit here ; Once we finish key tranformation we are
moving expansion permuation
Now we haveto do expansion permuation ---- we are redusing the bits here
If u notice from key transformation to expansion permuation table u can see below
In expansion permuation we are redusing bits , explain below dia how we arranged and reduced
Here we ar egetting 32 + 2 bits of data we ar egetting
6 values * 8 columns == 48 bit key represenation we ar egetting here
So if we take 64 bit in key tenasformation we ar redusing it to 48 bit on Expansion Permuattaion
Next step - InEvery Round we are using/ taking 48 bits key
Actually, we ar esending 64 bit, what ever we use thechniques depend on the data,
Then 64 bits will convert as 56 bits key
Expalin below dia IP & K ey Rep done
Final Permuatation :
We are getting the dat afrom 16th round , if you notice above dia we ar egetting data from left and
right
Again we are getting data from left 32 and right 32
If u notice data in final permuation all the dta what we get here is clumbzy clumzy
If u notice below dia 2nd place we ar egetting 1st row
Leve one column
4th line u can check like that we can check
This is the final permuation
Totally we if we take 64 bit input we will get 64 bit out put
Next in each round we applying same procedure we are verifing now , it is same procedure
So we are performing like this 16 rounds same diagram procedure
Initial permuation, final permuattion , and key now we got some clarity
Now lets see about what we took the 64 bit PT we devided into left 32 and right 32
Then we are doing Key transformation(64 bit) then expansion permuatation
When we are sending we are sending here left 32 and right 32 {{ but in above explainion we used 64
bit , there we just noticed what is EP , now we are sending right 32 here }}
We know the technique how we arrange in expansion permuattion
Here we are working on 32 bit key and 48 key we are doing XOR operation , here we are gettting
totally 48 bit
Then we are getting 8 S Boxes and tehn 32 bit P boxes tehn again XOR operation we are getting 32
aggain
These all are 32 bits
At finally we at right side we got 32 and left side as it is without performing anything that 32 bits
We are performing again 32 bits but aggain finally 32 and 32 we ar egetting 64 bits here
In same way if u notice right side if u notice
Left half and right half
Then left shift and right shift
How the kwy will form here means u can see
Then we are sending to PC 2
Totally we represnting 16 keys , now this is relate dto it
How to produce key 1 means 28 + 28= 56 , then 48 bit then it is the key for round 1
Same like this we ar eperforming 16 rounds
Sbox