O’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarni rivojlantirish vazirligi muhammad al-xorazimiy nomidagi toshkent axborot texnologiyalari universiteti mustaqil ish


Download 0.76 Mb.
bet4/10
Sana13.12.2022
Hajmi0.76 Mb.
#999456
1   2   3   4   5   6   7   8   9   10
Bog'liq
Feystel tarmog‘i va uning xususiyatlari

aij (i  1,..., n;
j  1,2,3,4; )
bir bayt bilan ifodalanib, ushbu




ij
0  a  255 tengsizlikni qanoatlantiradi;

  • yn1  y1 , y2 ,..., yn  xarakteristikasi 256 bo‘lgan chekli maydonda matritsali




An4 x41 akslantirish natijasini ifodalovchi vektor, ya’ni erda yi  baytlar, 0  yi  255, i=1,2,…,n ;
yn4 An4 x41 (mod 256) , bu

  • k k1k2 ...k8  sakizta

ki ,
i 1,...,8; 32-bitli qismkalitlardan iborat bo‘lgan

256-bitli kalit;
- S  blok (oldindan aniqlangan qoida bo‘yicha kalitdan generatsiya



qilinuvchi 256-baytli blok, maxfiy) akslantirish, 256 ta iborat bo‘lgan:
S0 , S1 ,..., S255
-baytlardan

S0

S1

S2



S255




jadval, bu erda
0  S1 , S2 ,..., S256  255
, Si
S j , ya’ni
0  Si  255
shartni

qanoatlantiruvchi Si  sonlarning tasodifiy joylashuvidan iborat;



  • bloklar vektorlarining mos bitlarini mod 2 bo‘yicha – XOR amali bilan

qo‘shish;

  • zn1  z1 , z2 ,..., zn  matritsali kengaytirish akslantirishi natijasi bo‘lgan

yn1  y1 , y2 ,..., yn
–vektorni
S  blok akslantirishlari natijasi, ya’ni
zn1 Syn1  ,

bu erda zi  baytlar, 0  zi  255, i=1,2,…,n;


- ki k1 ik2 i...k32 i  32-bitli i-qismkalit;

- k 1 k ik i...k
i,..., k 4k ik i...k
i –32-bitli i-qismkalitning to‘rtta

i 1 2 8
bayti;
i 25 26 32

- k pi
 k
pik2
pi...k32
pi 32-bitli i-raund kaliti, bu erda pi 1,...,8;


  • 1
    kн –64-bitli boshlang‘ich kalit;

  • –64-bitli oxirgi kalit;

  • f shifrlash funksiyasi;

  • SJ –siqish jadvali, o‘lchovi 16x16 (maxfiy, kalit bilan birgalikda uzatiladi

yoki oldindan aniqlangan qoida bo‘yicha kalitdan generatsiya qilinadi),
qij -

elementlari
0  qij  15,
i  0,...,15,
j  0,...,15
va teng taqsimlangan:

- w41 =


q00

q01



q0,15

q10

q11



q1,15









q15,0

q15,1



q15,15



w1 , w2 , w3 , w4  – 32-bitli (4-baytli) vektor, SJ natijasi.

Shifrlashda kalitlarni saqlash qurilmasiga (massiviga) 32-bitli bo‘lgan

sakkizta
ki -qismkalitlardan tashkil topgan 256-bitli
k k1k2 ...k8
-kalit bloki

kiritiladi, ochiq ma’lumot 64-bitli bloklarga ajratilib, har bir T0 -blok 8-raundli





akslantirishlar jarayonidan o‘tkaziladi. Har bir
i raund kaliti
k pi

  1. bitli

ki k1 ik2 i...k32 i-qismkalitni to‘rtta

k  (k 1, k 2 , k 3 , k 4 )  k ik
i...k
i, ..., k
ik
i...k
i
baytlarga ajratilib, hosil

i i i i i
1 2 8
25 26 32


bo‘lgan
k 1 ,…, k 4
baytlarni o‘nlik sanoq tizimidagi ( k 1 )10 ,…, ( k 4 )10 -qiymatlari




i

i

i

i

i
bo‘yicha S-blok yacheykalari tartib soni (nomeri) aniqlanadi, hamda, har bir k l -

bayt S-blokning k l  -tartib sonli yacheykasida turgan S l
soniga almashtirish bilan

i 10 ki

aniqlanadi, ya’ni





k

k
k Sk1,...,k 4  Sk1 ,...,Sk 4   (S ) ,...,(S )  k1 ,...,k 4  .

pi i i i i
1 2 4 2
i i
pi pi

Dastlabki 256-bitli k k1k2 ...k8 -kalit ikki marta SJ akslantirishidan o‘tkazilib,



    1. bitli boshlang‘ich kalit kн hosil qilinadi.



Dastlabki 256-bitli k k1k2 ...k8 -kalit S-blok akslantirishlaridan o‘tkazilib, hosil

bo‘lgan 256-bitli natija ikki marta SJ akslantirishlaridan o‘tkazilib, 64-bitli oxirgi


kalit olinadi.



Ochiq ma’lumot bloki T0
mos bitlari boshlang‘ich kalit kн
mos bitlari bilan

XOR amali bo‘yicha qo‘shilib, ya’ni
T0 kн =
' , hosil bo‘lgan natija
T ' , yana T




T

0

0

0
o‘zgaruvchiga berilib T T ' , T ikkita 32-bitli qismlarga ajratiladi:
0 0 0
T0  t1 0,t2 0,..., t32 0,t33 0,..., t64 0  (a1 (0), a2 (0),..., a32 (0), b1 (0), b2 (0),..., b32 (0))  (L0 , R0 )
Birinchi raundda f -funksiya qiymatini hisoblash quyidagicha amalga oshiriladi:

      1. Blok

R0 mos bitlari raund kaliti
kp1 k1 p1k2 p1...k32 p1
mos bitlari bilan

XOR amali bo‘yicha qo‘shiladi, ya’ni


b1 0b2 0...b32 0 k1 p1k2 p1...k32 p1=
b1 0 k1 p1b2 0 k2 p1...b32 0 k32 p1
x1 1x2 1...x8 1 x1 1x2 1...x8 1 x1 3x2 3...x8 3 x1 4x2 4...x8 4=

 x1 , x2 , x3 , x4   x41 ;

      1. Oldingi bosqich natijasi

x41
xarakteristikasi 256 bo‘lgan chekli maydonda

aniqlangan to‘g‘ri to‘rtburchakli matritsa
yn1  An4 x41 mod 256 ;
An4
orqali akslantiriladi:


      1. Baytlari soni n ta bo‘lgan

yn1
-vektorning har bir i - bayti
yi , i=1,…n, S -

blok akslantirishlaridan o‘tkaziladi, bunda
i baytning y
iy2
i...y8
i = y
o‘nlik

sanoq tizimidagi ifodasi
y iy i...y i  y
bo‘yicha S –blok yacheykalari


1

2

i
1 2 8 2 i 10

tartib soni aniqlanib,
y iy i...y i = y bayt S-blokning y
-tartib sonli


1 2 8
2 i i 10

yacheykasida turgan



i
S ( y )
soniga almashtirish bilan aniqlanadi, ya’ni:

z Sy   Sy iy i...y
i S  ;

i i 1 2 8
yi 2

      1. Siqish jadvali SJ bo‘yicha 8 n bitli ( n baytli) vektor

zn1
32 -bitli (4-

baytli) vektorga w41 =
w1 , w2 , w3 , w4  akslantiriladi:

  • zn1 -vektorning har bir zi baytiyarim baytli qismlarga ajratiladi, ya’ni


n1 1 n
z z ,..., z =z '1 ,..., z '2n z '2n1 ;

z'1 va
z '2n
bloklarning o‘nlik sanoq tizimidagi qiymatlari
z '1


10

10
vaz '2n
bo‘yicha mos ravishda SJ satr va ustun tartib sonlari aniqlanib, ularning

kesishgan joyidagi yarim bayt
q'   '
yarim baytli
z'1 va
z '2n
iborat bo‘lgan

baytni
qz'  z'
2 n
z 1 10 z 2 n 10


  • 10
    yarim baytga SJ akslantirishi natijasi hisoblanadi. So‘ngra, bu


1 10
jarayon barcha ( z '2 ,
z ' 2n1 ), ( z ' 3 ,
z'2n2 ), …, ( z 'n , z 'n1 ), ya’ni ( z'i ,
z ' 2n(i1) ), bu erda

i=1,…, n; juftliklar uchun qo‘llaniladi;
-oldingi qadamdagi SJ akslantirishi (m-2) marta qo‘llanilib, natijada 32-bitli

(4-baytli)
w41 =
w1 , w2 , w3 , w4
blok olinadi;

      1. To‘la siqish natijasi bo‘lgan

w41 =
w1 , w2 , w3 , w4

  • 32-bitli (4-baytli)

vektorning bitlari XOR amali bo‘yicha L0 -blokning mos bitlariga qo‘shiladi:
L0 w41 t1 0t2 0...t32 0 w1 1w2 1...w8 1w1 2...w8 2w1 3...w8 3w1 4...w8 4 

0

1

0 p1

p1
L0f R , k  R

bu erdafunksiya
f R , k orqali 1-4 –bosqichlar akslantirishlari belgilangan;

      1. R0 –blokning qiymati o‘zgarishsiz

L1 -blokga beriladi:
L1 R0 .

Yuqorida keltirilgan 1-6 –bosqich akslantirishlari e’tiboringizga havola etilayotgan shifrlash algoritmining 1-raund akslantirishlarini ifodalaydi.

Birinchi raund akslantirishlari natijalarini ifodalovchi
L1 va
R1 o‘zgaruvchilar

qiymatlarini mos ravishda
L0 va
R0 o‘zgaruvchilarga berilib, ya’ni
L0 L1 ,
R0 R1

, hamda, birinchi raund kaliti massiviga ikkinchi raund kaliti massivi qiymatini
berib k p1 k p2 , so‘ngra, 1-6 –bosqichlar akslantirishlarini qo‘llab, 2-raund

akslantirishlari amalga oshiriladi. SHunday qilib, agarda (i 1) raund akslantirish





natijalari ma’lum bo‘lsa, ushbu
L0 Li1 ,
R0 Ri1
va k p1 k pi1
amallar bajarilib,

so‘ngra 1-6 –bosqichlar akslantirishlarini qo‘llab, i-raund akslantirishlari amalga oshiriladi. Havola etilayotgan algoritmning raundlari soni 8 ta, ya’ni i=1,2,…,8.



L8 va
R8 -bloklarning birlashmasidan tuzilgan
R8 L8 -blokning bitlari
-


blokning mos bitlariga XOR amali bilan qo‘shiladi, ya’ni
Tк kk
, ochiq

ma’lumotning bitta 64-bitli blokini shifrlash jarayoni tamomlanadi.


Quyida, dastlabki kalitdan raund kalitlarini generatsiya qilish, algoritm

shifrlash jarayonining keltirilgan:
i  raundi, hamda, algoritmning umumiy blok sxemasi





S0

S1

...

S255

i raund kaliti generatsiyasining blok sxemasi


Li (32 bit)=a1(i)a2(i)…a32(i)

Ri (32 bit)= b1(i)b2(i)…b32(i)




b1(i) b2(i) b3(i) b32(i)
k1(pi+1)k2(pi+1)k3(pi+1)…k32(pi+1)
x1(1)…x8(1) x1(2)…x8(2) x1(3)…x8(3) x1(4)…x8(4)= x4x1


ynx1 =(Anx4 x4x1) mod256


ynx1
n-bayt


S-blok
S0 S1





znx1
n-bayt

1



ravishda qator vaustun aniqlanadi, ularning kesishish joyida







yarim bayt

1 10

1

2



juftliklarni siqish natijalari olinib, 1-bosqich





siqish amalga oshiriladi. Bu jarayon (m-2) marta takrorlanib, to’la siqishga erishiladi.



w4x14-
bayt
f(Ri,kpi+1)
+



Li+1

Ri+1


Algoritm i-raundining blok sxemasi



Download 0.76 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling