Q o‘shBosqichKalit()
- oddiy shifralmashtirish bo‘lib,
dastlabki matnni shifrmatnga va teskari yo‘nalishda Holat va
bosqich kaliti massivi Ke elementlari ustida istisnoli YoKI (2
moduli bo‘yicha bitlab qo‘shish) amalini bajarishdan iborat; mazkur
shifralmashtirish kirishi bayt sathida Holat massivi, Ke massivi
bo‘lib, chiqishi bayt sathida Holat massividir;
■
Q o‘shHolat() -
oddiy shifralmashtirish bo‘lib, shifrlash
bloklari ustida amalga oshiriladigan elektron kod kitobi rejimidan
boshqa rejimlarda dastlabki matnni shifrmatnga va teskari yo‘na-
lishda XOR amali ishtirokida foydalaniladigan almashtirish.
Shifrlash kriptografik modulini ishga tushirishda awalo, mo-
dulga shifrlash kaliti к va funksional kalit kf, o‘matilgan bosqichlar
soni e hamda rejim
m=ShBil
uchun initsializasiyalash vektori IV
yuklanadi. Shuningdek, dastlabki matnni shifrmatnga almashtirish
rejimida dastlabki matn, shifrmatnni dastlabki matnga almashtirish
rejimida esa shifrmatn kriptografik modulning
Holat
massiviga
yuklanadi. Shifrlash jarayonining boshlanishida ShaklSeansKalit-
Bayt(k,kf), ShaklSeansKalit(Ksi) va ShaklBosqichKalit(kse) ishga
tushiriladi. ShaklSeansKalitBayt(k,kf), ShaklSeansKalit(Kst) shifral-
mashtirishlari chiqishida bayt sathida almashtirish massivlari va
diamatritsaviy qismlardan tarkib topgan seans kaliti massivlari
shakllantiriladi. Bu massivlar toki k, kf lar o‘zgarmas bo‘lib qolar
ekan, keyingi seanslarda ham foydalanilaveradi. ShaklBosqichKalit-
(kse) shifralmashtirishi chiqishida boshlangich va har bir bosqich
uchun shakllantirilgan bosqich kalitlari to‘plami shakllantiriladi.
Elektron kod kitobi (Elektron kod kitobi) m=Ekk va shifr
bloklami ilaktirish (ShifrBloklami ilaktirish) m=ShBil rejimlariga
tegishli psevdokod keltirilgan.
Aralash (Holat,Ks), BaytAlmash (Holat,Ba), Qo‘shBosqich-
Kalit (Holat,Ke), Sur (Holat) oddiy shifralmashtirishlari va
ShaklSeansKalitBayt(k,kf), ShaklSeansKalit(Kst), ShaklBosqich-
Kalit (kse) va Qo‘shHolat (Holatt, Holat) almashtirishlari keyingi
bandda keltirilgan.
96
Shifrlash modulining dasturiy-apparatli shaklida ftmksional
kalit yangilash jarayonini ShaklSeansKalitBayt(k,kf), ShaklSeans-
Kalit (Kst), ShaklBosqichKalit(kse) almashtirish jarayonlari bilan
qo‘shib olib borish maqsadga muvofiqdir. Unda shifr protsedurasiga
ShaklSeansKalitBayt(k,kf),
ShaklSeansKalit
(Kst),
ShaklBosqichKalit(kse) natijalarini kiritish nazarda tutilishi lozim.
Shifrlash protsedurasining psevdokodi quyida keltirilgan:
Shifr (int blok soni, byte IV[32], byte kirish [blok soni] [32],
byte chiqish [blok soni] [32], byte k[32], byte kf [32], byte e)
begin
byteke[8,4],K .[8,4],K e[8,4]
Holat [8,4], Holatn [8, 4]
if (m=Sh)
ShaklSeansKalitBayt (k, kf)
ShaklSeansKalit (Kst)
ShaklBosqichKalit (kse)
for Ыок=1 step 1 to blok soni
Holat=kirish[blok]
if (m=ShBil)
if (blok=l)
Holatn=IV
else
Holatn=chiqish[blok-1 ]
end if
Qo‘shHolat (Holat, Holatn)
end if
for
bosqich=l step 1 to e
Qo ‘ shB osqichKalit (Holat, Ke)
Aralash (Holat, Ks)
Sur (Holat)
BaytAlmash (Holat, Ba)
end for
Qo ‘ shBosqichKalit (Holat, Ke)
Aralash (Holat, Ks)
Chiqish [blok]=Holat
end for
else
97
ShaklSeansKalitBayt (к, kf)
ShaklSeansKalit (Kst)
ShaklBosqichKalit (kse)
for blok=l step 1 to bloksoni
Holat=kirish [blok]
Aralash (Holat, Ks)
Qo‘shBosqichKalit (Holat, Ke)
for bosqich=l step 1 to e
BaytAlmash (Holat, Ba)
Sur (Holat)
Aralash (Holat, Ks)
Qo‘shBosqichKalit (Holat, Ke)
end for
if (m=ShBil)
if (blok=l)
Holatn=IV
else
Holatn=kirish[blok-1 ]
end if
Qo‘shHolat (Holat, Holatn)
end if
chiqish[blok]=Holat
end for
end if
end
Simmetrik shifrlashning barcha tizimlari quyidagi kamchilikl-
arga ega:
• axborot almashuvchi ikkala subyekt uchun maxfiy kalitni
uzatish kanalining ishonchliligi va xavfsizligiga qo‘yiladigan
talablaming qat’iyligi;
• kalitlami yaratish va taqsimlash xizmatiga qo‘yiladigan
talablaming yuqoriligi.
Sababi, o‘zaro aloqaning «har kim - har kim bilan» sxemasida
Do'stlaringiz bilan baham: |