AQShning axborotni shifrlash standarti

|
AQShning axborotni shifrlash standarti
|
bet | 13/20 | Sana | 05.02.2024 | Hajmi | 0,75 Mb. | | #151679 |
Bog'liq 1-mavzu. Axborotlarni stenografik himoyalashAQShning axborotni shifrlash standarti. AQShda davlat standarti sifatida DES(Data Encryption Standart) standarti ishlatilgan. Bu standart asosini tashkil etuvchi shifrlash algoritmi IBM firmasi tomonidan ishlab chiqilgan bo‘lib, AQSh Milliy Xavfsizlik Agentligining mutaxasislari tomonidan tekshirilgandan so‘ng davlat standarti maqomini olgan. DES standartidan nafaqat federal departamentlar, balki nodavlat tashkilotlar, nafaqat AQShda, balki butun dunyoda foydalanib kelingan.
DES standartida dastlabki axborot 64 bitli bloklarga ajratiladi va 56 yoki 64 bitli kalit yordamida kriptografik o‘zgartiriladi.
Dastlabki axborot bloklari o‘rin almashtirish va shifrlash funksiyalari yordamida iterasion ishlanadi. Shifrlash funksiyasini hisoblash uchun 64 bitli kalitdan 48 bitligini olish, 32-bitli kodni 48 bitli kodga kengaytirish, 6-bitli kodni 4-bitli kodga o‘zgartirish va 32-bitli ketma-ketlikning o‘rnini almashtirish ko‘zda tutilgan.
DES algoritmidagi shifrlash jarayonining blok-sxemasi 7.4–rasmda keltirilgan. Rasshifrovka jarayoni shifrlash jarayoniga invers bo‘lib, shifrlashda ishlatiladigan kalit yordamida amalga oshiriladi.
Hozirda bu standart quyidagi ikkita sababga ko‘ra foydalanishga butunlay yaroqsiz hisoblanadi:
kalitning uzunligi 56 bitni tashkil etadi, bu kompyuterlarning zamonaviy rivoji uchun juda kam;
algoritm yaratilayotganida uning apparat usulda amalga oshirilishi ko‘zda tutilgan edi, ya’ni algoritmda mikroprotsessorlarda bajarilishida ko‘p vaqt talab qiluvchi amallar bor edi (masalan, mashina so‘zida ma’lum sxema bo‘yicha bitlarning o‘rnini almashtirish kabi).
Bu sabablar AQSh standartlash institutining 1997 yilda simmetrik algoritmning yangi standartiga tanlov e’lon qilishigaolib keldi. Tanlov shartlariga binoan algoritmga quyidagi talablar qo‘yilgan edi:
algoritm simmetrik bo‘lishi kerak;
algoritm blokli shifr bo‘lishi kerak;
blok uzunligi 128 bit bo‘lib, 128, 192, va 256 bitli kalit uzunliklarini ta’minlashi lozim.
Undan tashqari tanlovda ishtirok etuvchilar uchun quyidagi tavsiyalar berilgan edi:
ham apparat usulda ham programm usulda osongina amalga oshiriluvchi amallardan foydalanish;
32 xonali protsessorlardan foydalanish;
iloji boricha shifr strukturasini murakkablashtirmaslik. Bu o‘z navbatida barcha qiziquvchilarning algoritmni mustaqil tarzda kriptotahlil qilib, unda qandaydir xujjatsiz imkoniyatlar yo‘qligiga ishonch hosil qilishlari uchun zarur hisoblanadi.
2000 yil 2 oktyabrda tanlov natijasi e’lon qilindi. Tanlov g‘olibi deb Belgiya algoritmi RIJNDAEL topildi va shu ondan boshlab algoritm-g‘olibdan barcha patent chegaralanishlari olib tashlandi.
Hozirda AES (Advanced Encryption Standard) deb ataluvchi ushbu algoritm Dj.Deymen (J. Daemen) va V. Raydjmen (V.Rijmen) tomonidan yaratilgan. Bu algoritm noan’anaviy blokli shifr bo‘lib, kodlanuvchi ma’lumotlarning har bir bloki qabul qilingan blok uzunligiga qarab 4x4, 4x6 yoki 4x8 o‘lchamdagi baytlarning ikki o‘lchamli massivlari ko‘rinishiga ega.
Shifrdagi barcha o‘zgartirishlar qat’iy matematik asosga ega. Amallarning strukturasi va ketma-ketligi algoritmning ham 8-bitli, ham 32-bitli mikroprotsessorlarda samarali bajarilishiga imkon beradi. Algoritm strukturasida ba’zi amallarning parallel ishlanishi ishchi stansiyalarida shifrlash tezligining 4 marta oshishiga olib keladi.
Ushbu algoritmning shifrlash jarayoni quyidagi blok sxema orqali ifodalangan (7.5-rasm).
7.5-rasm. Shifrlash jarayoni
Shifrlash jarayonining har bir raund shifrlash jarayonlari quyida keltirilgan to‘rtta akslantirishlardan foydalanilgan holda amalga oshiriladi:
- Sub Bytes – algoritmda jadval asosida baytlarni almashtiradi, ya’ni S-blok akslantirishlarini amalga oshiradi;
- ShiftRows – algoritmda berilgan jadvalga ko‘ra holat baytlarini siklik surish;
- MixColumns – ustun elementlarini aralashtiradi, ya’ni algoritmda berilgan matritsa bo‘yicha akslantirishni amalga oshiradi;
- AddRoundKey – raund kalitlarini qo‘shish, ya’ni bloklar mos bitlarini XOR amali bilan qo‘shish.
Deshifrlash jarayonida shifrlash jarayonidagi Sub Bytes, ShiftRows, MixColumns va AddRoundKey funksiyalari o‘rniga mos ravishda invSub Bytes, invShiftRows, invMixColumns va AddRoundKey teskari almashtirish funksiyalari qo‘llaniladi (7.6-rasm).
7.6-rasm. Deshifrlash jarayoni
|
| |