O’zbekiston resbuplikasi oliy ta’lim, fan va innovatsiyalar vazirligi mirzo ulug’bek nomidagi

O’ZBEKISTON RESBUPLIKASI
OLIY TA’LIM, FAN VA INNOVATSIYALAR VAZIRLIGI
MIRZO ULUG’BEK NOMIDAGI
O’ZBEKISTON MILLIY UNIVERSITETI
Amaliy matematika va intelektual texnalogiyalar fakul’teti
60610300-Axborot xavfsizligi(sohalar bo’yicha) talabasi
Toshpo’latov Mohirjon Bahodir o’g’lining
Axborotni himoyalashning kriptografik usullari fanidan
KURS ISHI
MAVZU: MD5 xesh funksiya tahlili
TOSHKENT 2024
MUNDARIJA:
Kirish…………………………………..…………..
Feystel tarmogi va uning xususiyatlari…………..
Blowfish simmetrik blokli shifrlash algoritmi…..
Xulosa………………………………………….
Foydalanilgan adabiyotlar………………….
Kirish
Feystel tarmog‘i va uning xususiyatlari
Feystel tarmog‘ining qo‘llanishi ko‘pgina simmetrik blokli shifrlash algoritmlarida uchraydi. Bu kriptoalgoritmlarga misol qilib FEAL, LOCI, Khufu, Khafre Blowfish, Lucifer, CAST, shuningdek, DES, GOST 28147-89 kabi standart algoritmlarni keltirish mumkin.
Feystel tarmog‘i g‘oyasi quyidagicha ifodalanadi. Shifrlanadigan blok ikkita L0,R0 qismlarga ajratiladi. Feystel tarmog‘i i raundi iterativ blokli shifrlash almashtirishi quyidagi sxema bo‘yicha aniqlanadi:
Bu yerda Xi Li1 , Ri1 i -raund uchun Li1 va Ri1 qismlarga ajratilgan kiruvchi ma’lumot, Yi Li Ri , esa X i ni i raund kaliti Ki bilan F akslantirish natijasida hosil bo‘lgan shifr ma’lumot.
Feystel tarmog‘i i raundining matematik modeli quyidagicha ifodalanadi:
Feystel tarmog‘iga asoslangan algoritmlar bir necha iteratsiyadan tashkil topgan Ki kalitlarda shifrlanadigan funksiyadan tashkil topadi. Har bir i raunddagi shifrma’lumot i 1 raund uchun kiruvchi (ochiq) ma’lumot hisoblanadi yoki i raunddagi kiruvchi ma’lumot i 1 raund uchun shifrma’lumot hisoblanadi. Ki raund kalitlari dastlabki K -kalitdan algoritmda ko‘rsatilgan qoida bilan hosil kilinadi.
Feystel tarmog‘i akslantirishlarining asosiy xossasi shundan iboratki, F -raund funksiyasi qaytmas bo‘lsa ham, Feystel tarmog‘i bu akslantirishlarini qaytarib beradi. Haqiqatan ham, yuqoridagi ifodada keltirilgan i raund matematik modelida - ikkilik sanok tizimida qo‘shish amali xossasidan foydalangan holda quyidagi tenglikni olish mumkin:
Bu oxirgi tengliklar tizimi Feystel tarmog‘i asosida qurilgan shifrlash algoritmlarini deshifrlashining matematik modelini ifodalaydi. Umumiy holatda m raundli Feystel tarmog‘ining funksional sxemasi quyidagicha ifodalanadi:
Rasm
Feystel tarmog‘i asosida qurilgan shifrlash algoritmlarida shifrlash va deshifrlash uchun bir xil algoritmdan foydalanilib, faqat raund kalitlarining qo‘llanilishi teskarisiga o‘zgaradi, ya’ni deshifrlashda 1-raundda , K m 2 – raundda K m1 va hakozo oxirgi raundda K1 ishlatiladi. ( , ) F Ri1 Ki funksiya bir tomonlama bo‘lsa ham, deshifrlash natijasida bu funksiya qaytadi.
Hisoblash texnikalari qurilmalarining takomillashuvi natijasida, bugungi kunda standart sifatida qo‘llanilib kelinayotgan shifrlash algoritmlarining bardoshliligi, ularda qo‘llanilaligan akslantirishlarga bog‘liq bo‘lmagan holda, ular kalitlarining uzunliklariga nisbatan kamayadi. Yuqorida sanab o‘tilgan Feystel tarmog‘iga asoslangan shifrlash algoritmlari bugungi kunda ham standat sifatida benuqson qo‘llanilib kelinayotganligi, bunday algoritmlar akslantirishlarini saqlab qolgan holda, ularning kalitlarini uzaytirish masalasining dolzarbligi kelib chiqadi. Quyida Feystel tarmog‘iga asoslangan barcha shifrlash algoritmlarini takomillashtirish uchun umumiy bo‘lgan qoida keltiriladi.
Bugungi kunda ko‘plab amalda qo‘llanilib kelinayotgan kompьyuterlardagi arifmetik amallarni bajaruvchi qurilma ikkilik sanok tizimida 32 razryad bilan ifodalanuvchi sonlar uchun mo‘ljallangan. Kelajakda kompьyuter foydalanuvchilari uchun bundan ham katta 64, 128 va xokazo razryadli sonlar ustida arifmetik amallar bajarish imkoniyatini beruvchi tezkor qurilmalar yaratilishi tabiiy hol. Shularni hisobga olib, Feystel tarmog‘iga asoslangan 38 shifrlash algoritmlarini akslantirish asoslarini saqlab qolgan holda, K-kalit uzunliklarini oshirish masalasi echiladi. Mana shunday masalani echish uchun Feystel tarmog‘i quyidagicha takomillashtiriladi:
Rasm
Bu yerda:
Shifrlanishi kerak bo‘lgan ochiq ma’lumot bloklari uzunligi 64 m bitga teng.
Kalit uzunligi | K | n bitga teng.
K K K K i n i i i ... i 1 2 -raund qism kalitlari birlashmasi.
Feystel tarmog‘i R o‘ng va L chap qismlari uzunliklari: | L || R | 32n bitga teng.
1 (32 ) L n bit i i -raund chap qismi.
1 (32 ) R n bit i i -raund o‘ng qismi.
1 1 (32 ) L bit i , 2 1 (32 ) L bit i ,..., 1 (32 ) n L bit i i -raund chap qismning 32 bitlik bo‘laklari.
1 1 (32 ) R bit i , 2 1 (32 ) R bit i ,..., 1 (32 ) n R bit i i -raund o‘ng qismning 32 bitlik bo‘laklari.
( , ) 1 1 F Ri1 Ki , ( , ) 2 2 F Ri1 Ki ,..., F R K i n i n ( i1 , ) -raund Feystel funksiyasining mos akslantirishlari.
Matematik model
Yuqorida takomillashgan va asosiy Feystel tarmog‘i sxemasidan ko‘rinib turibdiki, takomillashgan Feystel tarmog‘ida takomillashtirish parametri n ga bog‘liq bo‘lgan holda bir nechta ( , ) 1 1 F Ri1 Ki , ( , ) 2 2 F Ri1 Ki ,..., ( , ) 1 n i n F Ri K Feystel funksiyalari uchraydi. Bu esa n ga bog‘liq holda bir necha Feystel tarmog‘iga asoslangan algoritmlar funksiyalaridan yoki bir necha S-bloklardan foydalanish imkonini beradi. Shuningdek, n ga bog‘liq ravishda kalit uzunliklari ham ortib boradi, ya’ni n 1 da kalit uzunligi 256 bit bo‘lsa, n 2 da kalit uzunligi 512 va hakazo bo‘ladi. Kalit uzunligi va takomillashtirish parametri n orasida quyidagicha bog‘liqlik o‘rnatish mumkin:
bu erda l asosiy algoritm kaliti uzunligi, l 1 takomillashgan algoritm kaliti uzunligi.
Feystel tarmog‘iga asoslangan takomillashgan va asosiy algoritmlarning shifrlash va deshifrlash tezligi teng, chunki n 1 da algoritm blok uzunligi 64 ga teng bo‘lib, algoritm tezligi 20 taktdan iborat bo‘lsa, n 2 da takomillashgan algoritm blok uzunligi 128 bit bo‘lib, tezligi 40 taktdan iborat bo‘ladi.
Demak, takomillashgan Feystel tarmog‘i quyidagi afzalliklarga ega:
Takomillashtirish parametri n ga bog‘liq holda shifrlash algoritmi xossalari va bardoshliligini saqlab qolgan holda algoritm kaliti uzunligini oshirib borish imkoniyati mavjud. Bu esa, o‘z navbatida, hisoblash texnikasi qurilmalarining takomillashuvi natijasida algoritm kaliti uzunligi to‘liq tanlash usuliga bardoshsiz
bo‘lib qolishining oldini oladi.
2) Algorim tezligi takomillashtirish parametri n ga bog‘liq emas, ya’ni Feystel tarmog‘iga asoslangan takomillashgan va asosiy algoritm tezliklari teng. Bu xossa o‘z navbatida algoritm tezligini saqlab qolgan holda takomillashtirish imkoniyatini beradi. 40 Quyida Feystel tarmog‘iga asoslangan simmetrik blokli shifrlash algoritmlariga misollar ko‘rib o‘tiladi.
Blowfish simmetrik blokli shifrlash algoritmi
Blowfish algoritmi B.Shnayer tomonidan ishlab chiqilgan bo’lib 1993-yilda e’lon qilingan. Blowfish algoritm Feystel tarmog’iga asoslangan bo’lib kirish blok uzunligi 64 bitga, raundlar soni 16 ta va raund kalitlari uzunligi 32 bitga teng. Blowfish algoritmida chap yarim blokning o’zgarishi o’ng yarim blok o’zgarishiga olib keladi. Algoritmda 4 ta S blok qo’llanilgan bo’lib, bu bloklarning kirishi 8 bitga va chiqishi 32 bitga teng, ya’ni har bit S blokda 32 razyadli 256 ta bir-birini takrorlanmaydigan sonlar qatnashgan.
Ushbu algoritmga quyidagilar asos qilib olingan:
Tezlik 32 razyadli mikroprosessorlarda Blowfish algoritmi 26 taktda shifrlaydi.
Kampaktlik. Blowfish kompyuter xotirasida eng kamida 5kb joy egallaydi.
Oddiylik. Blowfish algoritmida qo’shish, XOR va o’rin almashtirish jadvallaridan foydalaniladi. Bu kriptotahlilni osonlashtiradi.
O’zgaruvchan bardoshlilik. Blowfish algoritmi kaliti uzunligi o’zgaruvchan va 448 bitgacha yetishi mumkin.
|