Kriptoalgaritmlar
|
Serpent
|
Twofish
|
MARS
|
RC6
|
Rijndael
|
1
|
Kriptoturg`unligi
|
+
|
+
|
+
|
+
|
+
|
2
|
Kriptoturg`unlik zaxirasi
|
++
|
++
|
++
|
+
|
+
|
3
|
Dastur ko`rinishidagi shifrlash tezligi
|
-
|
±
|
±
|
+
|
+
|
4
|
Dasturni amalga oshirishda kengaytirilgan kalit tezligi
|
±
|
-
|
±
|
±
|
+
|
5
|
Katta miqdordagi resurslar bilan Smart-kartalar
|
+
|
+
|
-
|
±
|
++
|
6
|
Chegaralangan miqdordagi resurslar bilan Smart-kartalar
|
±
|
+
|
-
|
±
|
++
|
7
|
Aparatli amlga oshirish (PLIS)
|
+
|
+
|
-
|
±
|
+
|
8
|
Aparatli amlga oshirish(Maxsus mikrosxemalarda)
|
+
|
±
|
-
|
-
|
+
|
9
|
Foydalanilayotgan va qudratini yo`qotgandagi himoyasi
|
+
|
±
|
-
|
-
|
+
|
10
|
Kengaytirilgan kalitlar prodsedurasida qudratni yo`qotgandagi himoya
|
±
|
±
|
±
|
±
|
-
|
11
|
Smart-kartalarda qudratni yo`qotgandagi himoya
|
±
|
+
|
-
|
±
|
+
|
12
|
Kengaytirilgan kalitlardan foydalanish
|
+
|
+
|
±
|
±
|
±
|
13
|
Mavjuda variantlarni amalga oshirish
|
+
|
+
|
±
|
±
|
+
|
14
|
Paralell hisoblashlarning mavjudligi
|
±
|
±
|
±
|
±
|
+
|
Bizga ma`lumki AES standarti DES standarti o`zini oqlay olmaganligi tufayli yaratilgan edi. Bu standart hozirda Amerika qo`shma shtatlaring “Standartlar va Texnologiyalar Milliy Universiteti (NIST)” qabul qilinib, standart sifatida foydalanilyapti. Undan tashqari unda foydalanilgan Rijndael blokli shifrlash algaritmi ham alohida kriptobardoshligi yuqori va yuqori darajadagi himoyaga ega. Bundan tashqari bu shifrlash algaritmdan ma`lumotlarni shifrlab uzatish uchun ham qo`llaniladi.
Shu bilan birga kriptoalgaritmlar shifrlash va deshifrlashda ma`lumotlar bilan ishlash tezligiga ham bog`liq bo`ladi. Shu o`rinda biz misol tariqasida AES kriptoalgaritmini ba`zi bir algaritmlar bilan tezliklari farqini ko`rib chiqamiz. Bunda biz shifrlash dasturlaridan foydalanamiz.
1.1-rasm. Encryption Algorithm Benchmark
Bunda biz TrueCrypt shifrlash dasturidan foydalandik. Unda 50MB hajmda axborotlar ishlashdagi tezliklar keltirilgan. Bundan ko`rinib turubdiki AES boshqa kriptoalgaritmlarga qaraganda o`zining tezligi bilan ajralib turibdi.[8]
Shifrlash jarayoni umumiy blok sxemasi
Har bir raund shifrlash jarayonlari quyida keltirilgan to‘rtta akslantirishlardan foydalanilgan holda amalga oshiriladi:
1) SubBytes – algoritmda qayd etilgan 16x16 o‘lchamli jadval asosida baytlarni almashtirish, ya'ni S -blok akslantirishlarini amalga oshirish;
2) ShiftRows – algoritmda berilgan jadvalga ko‘ra holat baytlarini
siklik surish;
3) MixColumns – ustun elementlarini aralashtirish, ya'ni algoritmda
berilgan matrisa bo‘yicha akslantirishni amalga oshirish;
4) AddRoundKey – raund kalitlarini qo‘shish, ya'ni bloklar mos
bitlarni XOR amali bilan qo‘shish.
Bu standartning shifrlash algaritmi asosini Rijndael algaritmi yotadi.
2.1- rasm. Shifrlash jarayonining umumiy blok sxemasi.
Deshifrlash jarayoni algoritmi
Shifrlash jarayonida foydalanilgan Sub Bytes( ), ShiftRows( ), MixColumns () va AddRoundKey( ) almashtirishlariga mos ravishda teskari:
invSub Bytes( ),
invShiftRows( ),
invMixColumns ( ),
AddRoundKey( ) ,
almashtirishlar mavjud bo‘lib, bunday holat qaralayotgan simmetrik shifrlash algritmining apparat-texnik qurilmasini yaratishda muhim omillardan hisoblanadi.
Quyida mazkur teskari almashtirishlarni batafsil ko‘rib chiqamiz:
AddRoundKey( ) – almashtrishida ishlatilayotgan XOR amalining xossasiga muvofiq, , ushbu funksiya o‘z-o‘ziga teskari hisoblanadi.
2. invSub Bytes( )- almashtirishi shifrlash jarayonida foydalaniladigan S-blokga (4.4-jadval) teskari amal bajarishga asoslangan. Masalan {a5} bayt uchun teskari bayt almashtirishi amalining natijasi S-blokda 2-satr va 9-ustun elementlarining kesishida joylashgani uchun javob: invSub Bytes({a5})= {29}.
3. invShiftRows( ) – almashtirishi oxirgi holat matrisasining 3-ta satri berilgan jadval asosida o‘nga siklik surish orqali amalga oshiriladi.
4. invMixColumns ( ) – almashtirishida holat matrisasi ustunlari GF(28) maydonda uchinchi darajali ko‘phad ko‘rinishida qaralib, g-1(x) ={0b}x3 +{0d}x2 +{09}x + {0e} ko‘phadga modul x4 +1 ko‘phad bo‘yicha ko‘paytiriladi. Mazkur fikrlarning matematik ifodasini quyidagicha tasvirlash mumkin:
=
Ushbu teskari almashtirishlardan foydalanib, deshifrlash jarayonida generasiya qilingan raund kalitlari oxirgidan boshlab bittadan kamayib qo‘shib boriladi, ya'ni deshifrlash jarayonining 1-raundida shifrma'lumot blokiga 10-raund kaliti qo‘shiladi, 2 – raundida 9-raund kaliti qo‘shiladi va hokazo 10-raundida 1-raund kaliti qo‘shiladi va oxirida dastlabki kalit qo‘shiladi. Yuqorida ta'kidlangan jarayonini boshqa teskari akslantirishlar bilan birgalikda amalga oshirishning umumiy blok sxemasi quyida keltirilgan.
2.2-rasm. Deshifrlash jarayoni umumiy blok sxemasi
Do'stlaringiz bilan baham: |