-rasm. Blowfish algoritmidagi i-raund sxemasi




Download 222,43 Kb.
bet2/3
Sana21.05.2024
Hajmi222,43 Kb.
#247991
1   2   3
Bog'liq
kriptografiya.temur.

1-rasm. Blowfish algoritmidagi i-raund sxemasi


1-rasm. Blowfish algoritmidagi F funksiya sxemasi
Step 1 :
Step 2 :
Step 3 :
Bu yerda asosiysi S-blok bo’lib u 8 bit ma’lumotni 32 qilib chiqaradi. U bu ishni S jadvaldan kirib kelgan ma’lumot qiymati orqali jadvalda shu o’ringa turgan 32 bitli element oladi.
Blowfish algoritmida kalitlarni generatsiya qilish
Blowfish algoritmida 16 raunddan iborat bo’lib bizga 32 bitli 16 ta kalit kerak bo’ladi. Unda kalit uzunligi 42 bitdan 448 bitgacha o’zgaruvchan kalit uzunligiga ega. Blowfish ko’pi bilan 448 bitli kalitni bir necha pastki kalit massivlarga yaratadi, jami 1042 ta 32 bitli yoki 4168 bayt. Bu 16 dumaloq Feystel tarmog’i bo’lib 16 ta takrorlashni ta’minlaydi. Kalit o’lchami 32 bitdan 448 bitgacha, bu degani 32 ta dan 14 ta bo’ladi.

Pastki kalitlarni yaratish uchun Blowfish birinchi navbatda P massivni hosil qiladi. P massivda 32 bitli 18 ta kalit mavjud bo’ladi. Undan 16 tasi 16 raunda ishjlatiladi, qolgan 17 chi va 18 chi kalitlar 16 raunddan keyin ga 18 chini, 17 chini XOR amali orqali qo’shadi.
Misol uchun
P[0]=”243f6a88” =299f31d0ec486c89 bunda va ni hosil qilamiz.
P[1]=”85a308d3” Kalit uzunligi 128 bit 32 dan 4 ta bo’ladi.
=299f ; =31d0; =ec4e; =6c89;
P[17]=”8979fb1b”
Kalitlarni hosil qilish uchun P massiv elementlarini lar bilan XOR amalini amalga oshiramiz.
=P[0] XOR
=P[1] XOR
.
.
=P[17] XOR
Shu tarzda amalga oshadi. 1 ta kalitni generatsiya qilib koramiz.
P[0]=00100100001111110110101010001000
=00110010001110010011100101100110
=00010110000001100101001111101110
Demak 1-raund uchun kalit
=00010110000001100101001111101110.
Blowfish algoritmiga doir misol
M=0111001101111011 =10111100 =01011111
=01110011 =01111011
= =11001111 =11001111




=00001011=
XOR =11111111=
=10110010=
XOR =11001001=
=11001001 =11001111
1 raundda bajariladigan ish, mana shu jarayon yana 15 marta takrorlanadi.

Gost 28147-89 standart simmetrik blokli shifrlash algoritmi


Gost 28147-89 kriptoalgoritmi hozirda Rossiya Federatsiyasining davlat standart shifrlash algoritmi hisoblanadi. Bu algoritmda kalit uzunligi 256 bitga shifrlashni 64 bit uzunlikdagi bloklarga amalga oshiradi va raundlar soni 32 ga teng. Biror malumotni Gost 28147-89 kriptoalgoritmi bilan shifrlash uchun dastlab 25 bitdan 32 ta 32 bitli raund kalitlari generatsiya qilinadi va ochiq malumot 64 bitli bloklarga bolinadi. Bu 64 bitli blok 32 bitli chap va o’ng qismlarga bolinadi.
Algoritmning F funksiyasi quyidagicha amalga oshadi:

  1. Blokni 32 bitli o’ng qismi va 32 bitli raund kalitini bo’yicha



  1. 32 bitli natija 8 ta maxfiy S bloklarda nomiga qo’yish akslantirish orqali akslanadi.

  2. S bloklarda chiquvchi 32 bitli blok chapga 11 birlik siklik suriladi. Ochiq ma’lumot 32 raund iterativ shifrlangan so’ng chap va o’ng qismlari birlashtirilib shifrmalumot hosil qilinadi.


Download 222,43 Kb.
1   2   3




Download 222,43 Kb.

Bosh sahifa
Aloqalar

    Bosh sahifa



-rasm. Blowfish algoritmidagi i-raund sxemasi

Download 222,43 Kb.