စကားတင္းေတြ ဘယ္ေလာက္ဆိုဆို ရည္ရြယ္ခ်က္မွန္တဲ႔ ငါ႔လမ္းေၾကာင္းကို နည္းနည္းေလးမွ မေစာင္းေစရဘူး

Sunday, March 9, 2008

DES (08) - S-Box permutation နွင့္ Inverse Initial Permutation ၿပဳလုပ္ၿခင္း

S-Box ေတြမွာ အစားသြင္းလို႔ ရလာတဲ့ 48 bits ကိုေတာ့ permutation ထပ္လုပ္ ရမွာ ၿဖစ္ပါတယ္။
(ပံု ၈) မွာ ၾကည့္ပါ ။ 48 bits ကို permutation ၿပဳလုပ္ရင္ output ဟာ 32 bits ရမွာ ၿဖစ္ပါတယ္။


(ပံု ၈)
အခု function ကေန permuted လုပ္ၿပီးတဲ့ 32 bits ရလာၿပီဆိုရင္ algorithm အရ L0 ဟာ R1 ၿဖစ္ဖို႔အတြက္ function ကေန ရထားတဲ့ 32 bits နဲ႔ နဂို L0 (32 bits) ကို Exclusive-OR ၿပဳလုပ္ေပး ရမွာ ၿဖစ္ပါတယ္။အဲဒီ equation ကေတာ့ “R1=L0⊕f(R0.K1)” ၿဖစ္ပါတယ္။အဲလိုပဲ R0 ဟာလဲ L1 အၿဖစ္ ေၿပာင္းၿပီး assign လုပ္မွာ ၿဖစ္ပါတယ္။တခု သတိထား ရမွာက L1 အၿဖစ္ေၿပာင္းသြားတဲ့ R0 ဟာ ပံု-၃ မွာ IP လုပ္ၿပီး ရထားတဲ့ R0 (32bits) ၿဖစ္ပါတယ္။
အဲလို L နဲ႔ R ကို တလွည့္စီ ေၿပာင္းၿပီး 16 round ၿပဳလုပ္ရမွာ ၿဖစ္ပါတယ္။ေနာက္ဆံုး R16 နဲ႔ L16 ရၿပီဆိုရင္ေတာ့ အဲဒီ R16(32bits) နဲ႔ L16(32bits) ကိုေပါင္းရင္ 64 bits ရမွာပါ။အဲဒီ 64 bits ကို inverse initial permutation (ပံု ၉) ၿပဳလုပ္ၿပီးတဲ့ အခါ final output (cipher text) 64 bits ကို ရရွိမွာၿဖစ္ပါတယ္။

(ပံု ၉)

0 ေယာက္က ဒီလိုေျပာတယ္:

 
Clicky Web Analytics