Sodda shifrlash algoritmlari.
Shifrlash
-Kriptografik uslublardan (shifrmatnga va dastlabki matnga oʻgirish,
elektron raqamli imzoni shakllantirish va tekshirish, xesh-funksiya shakllantirish va
tekshirish) foydalanishga asoslangan axborotni oʻzgartirish jarayoni. Axborotni
shifrlash uni begonalar tomonidan oʻrganish yoki oʻzgartirish imkoniyatini yoʻqqa
chiqaradi. Shuningdek, maʼlumotlarga va dasturlarga, ulardan noqonuniy
foydalanish maqsadida, ruxsatsiz raqamli imzo tizimiga kirishning oldini olishni
taʼminlaydi. Shifrlashning ikki usuli mavjud: simmetrik va asimmetrik.
Simmetrik shifrlashda, kodlash va kodni ochish uchun birgina kalitning
oʻzidan foydalaniladi.
Asimmetrik shifrlashda ikkita kalitdan foydalaniladi. Ulardan biri (ochiq kalit)
dastlabki matnni shifrmatnga oʻgirishni, ikkinchisi esa (yopiq kalit) dastlabki
matnga oʻgirishni taʼminlaydi. Samaradorlikni yanada oshirish maqsadida
simmetrik va asimmetrik shifrlash algoritmlari birgalikda ishlatiladi. Bu holatda
simmetrik shifrlashdan maʼlumotlarni ochiq kanallar orqali uzatishda maʼlumotlarni
shifrlashda, asimmetrik shifrlashdan esa simmetrik shifrlash algoritmlarining
kalitlarini shifrlashda ishlatiladi. CryptoAPI yordamida simmetrik shifrlash
sxemasini amalga oshirish Hozirgi kunda mavjud kriptografik shifrlash
algoritmlarining asosida kriptografik kalit yotadi, shirlash algoritmlarining
kriptobardoshliligi aynan shu kalitlarga bogʻliqdir. Shifrlash algoritmlari uchun
kalitlarni generatsiya qilishning usullaridan biri bu parollardan (kalit soʻzdan)
kriptografik kalit yaratishdir. Ushbu parol oʻzgaruvchan uzunlikda boʻladi va
kriptografik kalitdan uzunligi kichik boʻladi. Lekin parol kalit yaratish uchun uncha
yaxshi boʻlmagan material hisoblanadi, chunki foydalanuvchilar parol sifatida esda
qoluvchi lugʻatlarda mavjud soʻzlardan koʻp foydalanadi, buni esa lugʻat
yordamidagi hurujlardan osonlik bilan buzish mumkin. Odatda lugʻat yordamidagi
hurujlar 105-106operatsiya yordamida amalga oshiriladi, shu sababli parollardan
kalit yasash uzoq vaqt davom etishi kerak, bu vaqt hisoblash mashinalari uchun uzoq
sanaladi, foydalanuvchilar uchun esa bilinmaydigan vaqtdir. Agar lugʻatdagi soʻzlar
soni N ta, kalitnisaqlash vaqti T boʻlsa, u holdakalitdan parol yaratish uchun
ketadigan vaqt t0quyidagi formula orqali hisoblanadi: t0= 2T/N Agar kalitni saqlash
muddati oʻrtacha T = 7kun = 6,1 *105 sekund, lugʻat kattaligi N = 106ta boʻlsa
paroldan kalit yaratish vaqti t0 = 1,2 sekunddan kam boʻlmasligi zarur. Agar
xavfsizlikning yuqoribosqichi talab etilsa bunday hollarda parol tasodifiy ketma-
ketliklardan tashkil topishi zarur. Bunday ketma-ketliklarni kriptoprovayderda
CryptGenRandom()funksiyasi yordamida yoki boshqa tasodifiy sonlar datchigidan
olish mumkin. Parollar yordamida kalit yaratishning bir qancha shartlari mavjud: -
parol ixtiyoriy uzunlikda berilishi mumkin, kalit esa fiksirlangan uzunlikda boʻladi;
- bir-biriga oʻxshash va yaqin parollardan, bir-biriga oʻxshamagan va uzoq kalitlar
yaratilishi kerak; - turli xil parollar yordamida bir xil kalitlar yaratilmasligi kerak;
Bunday shartlar asosida kalit yaratishga xeshlash funksiyalarini ishlatish juda
samarali hisoblanadi.Kalitlarning kriptobardoshliligini yanada oshirish maqsadida
ushbu mexanizmga „asos“ vektori (salt) va iteratsiyalar sonini qoʻshish mumkin.
„Asos“ vektori — tasodifiy ketma-ketlik boʻlib, parol bilan aralashtiriladi. „Asos“
vektorining qoʻllanilishi lugʻat hurujlarini qiyinlashtiradi, ushbu vektorning bugungi
kunda tavfsiya etilgan uzunligi 8 bayt. Iteratsiyalar soni — bu paroldan kalit yaratish
almashtirish funksiyasining qatnashishlar soni. Agar almashtirish funksiyasi sifatida
xeshlash funksiyasi ishtirok etsa u holda xeshlash funksiyasi iteratsiyalar soniga teng
miqdorda ishtirok etadi. Bugungi kunda iteratsiyalar soni 1000 tadan kam
boʻlmasligi zarur. Bu holatda joʻnatuvchi va qabul qiluvchi parollarni oldindan
kelishib olishlari zarur. Keltirilgan kalit yaratish mexanizmi orqali foydalanuvchilar
quyidagi sxemada koʻrsatilgan kabi maʼlumot almashadi:
Himoyalangan kanal mavjud boʻlmagan holatda kalitlar asimmetrik shifrlash
algoritmi yordamida shifrlab joʻnatiladi. Buning uchunxabar joʻnatuvchida qabul
qiluvchining ochiq kaliti boʻlishi kerak, ushbu ochiq kalit yordamida shifrlash kaliti
asimmetrik shifrlash usulida shifrlanadi va shifrlangan axborot bilan qoʻshib ochiq
kanal orqali qabul qiluvchiga uzatiladi.Kalitlar sertifikatlarda yoki konteynerlarda
saqlanadi. Shifrlash kalitini esa tasodifiy sonlar generatori orqali yaratiladi. Bu kalit
ochiq holatda hech qaerda saqlanmaydi, ushbu kalit bilan bogʻliq barcha
operatsiyalar kompyuter tezkor xotirasida amalga oshiriladi. Bunday kalitlar sessiya
kaliti deb ham yoritiladi. Sessiya kaliti har bir yangi aloqa boshlanganda bir marta
yaratiladi.
CryptoAPI yordamida asimmetrik shifrlash sxemasini amalga oshirish
Asimmetrik shifrlash sxemalari ham simmetrik shifrlash sxemalari kabi amalga
oshiriladi faqat kalitlarni tarqatish boshqa usulda amalga oshiriladi. Shifrlash amalga
oshirilishidan oldin kalitlar juftligi yaratiladi hamda ochiq kalit yordamida sertifikat
yaratiladi boshqa foydalanuvchilarga tarqatiladi. Boshqa foydalanuvchilar ushbu
ochiq kalit yordamida maʼlumotlarni shifrlaydi ochiq kanal orqali uzatadi, qabul
qilingan shifrlangan xabar ochiq kalitga mos yopiq kalit bilan deshifrlanadi.
CryptoAPI yordamida ERI sxemasini amalga oshirish Axborotlarni kompyuter
tarmoqlari orqali uzatishda ularning toʻlaligi va haqiqiyligini tekshirish maqsadida
ERIdan foydalaniladi. ERI amalga oshirish uch bosqichda bajariladi: - ERI
kalitlarini shakllantirish; - ERIni shakllantirish; - ERIni tekshirish; ERI kalitlarini
saqlash maxsus tasodifiy sonlar generatori yordamida amalga oshiriladi.
Generatorlar yordamida yaratilgan ochiq kalit sertifikatdasaqlanadi va barchaga
ochiq boʻladi, yopiq kalitesa faqatgina kriptoprovayder tarkibida yoki maxsus token
qurilmalarida saqlanadi. ERIni shakllantirish ERI kaliti mavjud holatda amalga
oshiriladi, bunda ERI qoʻyilishi lozim boʻlgan xujjatning xesh qiymati olinadi va
xesh qiymat xujjat joʻnatuvchining yopiq kaliti yordamida shifrlanadi hamda xujjat
bilan birgalikda qabul qiluvchiga uzatadi. ERIni tekshirishda esa qabul qiluvchi
olingan xujjatning xesh qiymatini hisoblaydi, ERIni joʻnatuvchining ochiq kaliti
yordamida deshifrlaydi hamda deshifrlangan xesh qiymatni xujjatdan olingan xesh
qiymat bilan taqqoslaydi, agar bu qiymatlar teng boʻlsa hujjat haqiqiy va aynan
joʻnatuvidan qabul qilingan deb hisoblanadi. Microsoft CSPDK tarkibi Yuqoridagi
boʻlimlarda CryptoAPI funksiyalari va ulardan qanday foydalanishni koʻrib chiqdik,
endi ushbu funksiyalarni qanday yaratish yaʼni kriptoprovayderni yaratishni koʻrib
chiqamiz. Kriptoprovayder bir nechta tizim kutubxona — DLL fayllardan tashkil
topadi hamda fayllarda funksiyalar joylashadi va ular tizimga eksport qilinadi hamda
ushbu funksiyalar tizim reestrida roʻyxatdan oʻtgan boʻladi. Microsoft kompaniyasi
kriptoprovayderlar yaratish uchun qoʻllanma yaratgan (CSPDK — Cryptographic
Service Provider Development Kit) ushbu qoʻllanma yordamida kriptoprovayder
yaratish mumkin. Ushbu qoʻllanma tarkibiga tayyor bosh (header) fayllarhamda
tizim kutubxona fayllarini roʻyxatdan oʻtkazish dasturlari mavjud.
Kriptografiya
tarixida shartli ravishda to'rt bosqichni ajratish mumkin: sodda, rasmiy, ilmiy,
kompyuter.
1. Sodda kriptografiya (XVI asr boshlarigacha) shifrlangan matnlar mazmuniga
nisbatan dushmanni chalkashtirib yuborishning har qanday, odatda ibtidoiy
usullaridan foydalanish bilan tavsiflanadi. Dastlabki bosqichda ma'lumotni himoya
qilish uchun kriptografiya bilan bog'liq, ammo bir xil bo'lmagan kodlash va
steganografiya usullari qo'llanilgan. Ishlatilgan shifrlarning aksariyati almashtirish
yoki monoalfavit almashtirish edi. Birinchi qayd etilgan misollardan biri bu Qaysar
shifridir, u manba matnning har bir harfini alifboda ma'lum pozitsiyalar bilan
ajratilgan boshqa harf bilan almashtirishdan iborat. Yana bir shifr, yunon yozuvchisi
Polibiyga tegishli bo'lgan Polibiy kvadrati alifbo bilan tasodifiy to'ldirilgan kvadrat
jadval yordamida amalga oshiriladigan umumiy monoalfavit almashtirishdir (yunon
alifbosi uchun o'lcham 5 × 5). Manba matnining har bir harfi kvadrat ichida uning
ostidagi harf bilan almashtiriladi.
2. Formal kriptografiya bosqichi (15-asr oxiri - 20-asr boshlari) qoʻlda
kriptoanalizga nisbatan chidamli boʻlgan rasmiylashtirilgan shifrlarning paydo
boʻlishi bilan bogʻliq. Evropa mamlakatlarida bu Uyg'onish davrida, ilm-fan va
savdoning rivojlanishi axborotni himoya qilishning ishonchli usullariga talabni
keltirib chiqargan paytda sodir bo'ldi. Ushbu bosqichda muhim rol italiyalik
arxitektor Leon Batista Alberti ga tegishli, u birinchilardan bo'lib polialfavit
almashtirishni taklif qilgan. XVI asr diplomati nomini olgan bu shifr. Blez Viginer,
kalit bilan manba matnining harflarini ketma-ket "qo'shish" dan iborat (protsedurani
maxsus jadval yordamida osonlashtirish mumkin). Uning “Shifr haqidagi risola”
kriptologiyaga oid birinchi ilmiy ish hisoblanadi. O'sha paytda ma'lum bo'lgan
shifrlash algoritmlari umumlashtirilgan va shakllantirilgan birinchi bosma
asarlardan biri nemis abbati Iogan Trisemusning "Poligrafiya" asaridir. U ikkita
kichik, ammo muhim kashfiyotga ega: Polibiya kvadratini to'ldirish usuli (birinchi
pozitsiyalar oson esda qoladigan kalit so'z bilan, qolganlari alifboning qolgan
harflari bilan to'ldirilgan) va harflar juftligini shifrlash (bigramlar). Polialfavit
almashtirishning oddiy, ammo barqaror usuli (bigramma almashtirish) 19-asr
boshlarida kashf etilgan Playfair shifridir. Charlz Uitston. Wheatstone ham muhim
yaxshilanishga ega - "ikki kvadrat" shifrlash. Playfair va Wheatstone shifrlari
Birinchi jahon urushigacha ishlatilgan, chunki ularni qo'lda kriptoanaliz qilish qiyin
edi. 19-asrda Gollandiyalik Kerkxof kriptografik tizimlarga qo'yiladigan asosiy
talabni ishlab chiqdi, bu bugungi kungacha dolzarbligicha qolmoqda: shifrlarning
maxfiyligi algoritmga emas, balki kalitning maxfiyligiga asoslanishi kerak. Nihoyat,
ilm-fangacha bo'lgan kriptografiyadagi so'nggi so'z, yanada yuqori kriptografik
kuchni ta'minlagan va shifrlash jarayonini avtomatlashtirishga imkon bergan,
aylanuvchi kriptotizimlar edi. Birinchi shunday tizimlardan biri 1790 yilda Tomas
Jefferson tomonidan ixtiro qilingan mexanik mashinadir. Aylanadigan mashina
yordamida ko'p alfavitli almashtirish aylanadigan rotorlarning nisbiy holatini
o'zgartirish orqali amalga oshiriladi, ularning har biri unda "tikilgan" almashtirishni
amalga oshiradi. Aylanadigan mashinalar faqat 20-asrning boshlarida amaliy
tarqatishni oldi. Birinchi amaliy mashinalardan biri 1917 yilda Edvard Xbern
tomonidan ishlab chiqilgan va Artur Kirch tomonidan takomillashtirilgan nemis
Enigma edi. Aylanadigan mashinalar Ikkinchi Jahon urushi davrida faol ishlatilgan.
Nemis Enigma mashinasidan tashqari Sigaba (AQSh), Turech (Buyuk Britaniya),
Red, Orange va Purple (Yaponiya) qurilmalari ham ishlatilgan. Rotorli tizimlar
rasmiy kriptografiyaning cho'qqisi hisoblanadi, chunki ular juda kuchli shifrlarni
nisbatan osonlik bilan amalga oshirgan. Rotor tizimlariga muvaffaqiyatli kripto-
hujumlar faqat 1940-yillarning boshlarida kompyuterlar paydo bo'lishi bilan
mumkin bo'ldi.
3. Uy o'ziga xos xususiyati ilmiy kriptografiya (1930 - 60-yillar) - kriptografik
barqarorlikni qat'iy matematik asoslash bilan kriptotizimlarning paydo bo'lishi. 30-
yillarning boshlariga kelib. nihoyat kriptologiyaning ilmiy asosi boʻlgan
matematikaning: ehtimollar nazariyasi va matematik statistika, umumiy algebra,
sonlar nazariyasi boʻlimlari shakllanib, algoritmlar nazariyasi, axborot nazariyasi,
kibernetika faol rivojlana boshladi. Klod Shennonning kriptografiya va
kriptoanalizning ilmiy asoslarini jamlagan "Maxfiy tizimlarda aloqa nazariyasi"
asari o'ziga xos suv havzasi bo'ldi. O'sha paytdan boshlab ular kriptologiya
(yunoncha kryptos - maxfiy va logos - xabar) - ma'lumotlarning maxfiyligini
ta'minlash uchun o'zgartiradigan fan haqida gapira boshladilar. 1949 yilgacha
kriptografiya va kriptoanalizning rivojlanish bosqichi fandan oldingi kriptologiya
deb atala boshlandi. Shennon "tarqalish" va "aralashtirish" tushunchalarini kiritdi,
o'zboshimchalik bilan kuchli kriptotizimlarni yaratish imkoniyatini asosladi. 1960-
yillarda Etakchi kriptografik maktablar blokli shifrlarni yaratishga yaqinlashdi, ular
aylanadigan kriptotizimlarga qaraganda xavfsizroq, ammo faqat raqamli elektron
qurilmalar ko'rinishida amaliy amalga oshirishga imkon beradi.
4. Kompyuter kriptografiyasi (1970-yillardan boshlab) oʻzining tashqi koʻrinishi
boʻyicha yuqori shifrlash tezligida “qoʻlda” va “mexanik” shifrlarga qaraganda bir
necha baravar yuqori kriptografik quvvatni taʼminlovchi kriptotizimlarni amalga
oshirish uchun yetarli unumdorlikka ega hisoblash vositalariga qarzdor.
Kriptotizimlarning birinchi sinfi, amaliy foydalanish kuchli va ixcham hisoblash
vositalarining paydo bo'lishi bilan mumkin bo'lgan blokli shifrlarga aylandi. 70-
yillarda. Amerikaning DES shifrlash standarti ishlab chiqilgan. Uning mualliflaridan
biri Horst Feistel blokli shifrlar modelini tasvirlab berdi, uning asosida boshqa,
xavfsizroq simmetrik kriptotizimlar, shu jumladan mahalliy GOST 28147-89
shifrlash standarti qurilgan. DESning paydo bo'lishi bilan kriptoanaliz ham boyidi;
Amerika algoritmiga hujum qilish uchun kriptotahlilning bir necha yangi turlari
(chiziqli, differensial va boshqalar) yaratildi, ularni amaliy amalga oshirish yana
kuchli hisoblash tizimlarining paydo bo'lishi bilan mumkin edi. . 70-yillarning
o'rtalarida. Yigirmanchi asr zamonaviy kriptografiyada haqiqiy yutuqni ko'rsatdi -
tomonlar o'rtasida maxfiy kalitni uzatishni talab qilmaydigan assimetrik
kriptotizimlarning paydo bo'lishi. Bu erda boshlang'ich nuqta Uitfild Diffi va Martin
Hellman tomonidan 1976 yilda "Zamonaviy kriptografiyaning yangi yo'nalishlari"
nomi ostida nashr etilgan asar hisoblanadi. U birinchi bo'lib maxfiy kalit
almashinuvisiz shifrlangan ma'lumotlar almashinuvi tamoyillarini ishlab chiqdi.
Ralf Merkli assimetrik kriptotizimlar g'oyasiga mustaqil ravishda yondashdi. Bir
necha yil o'tgach, Ron Rivest, Adi Shamir va Leonard Adleman RSA tizimini kashf
etdilar, birinchi amaliy assimetrik kriptotizimning xavfsizligi katta tub sonlar uchun
faktorizatsiya muammosiga asoslangan edi. Asimmetrik kriptografiya bir vaqtning
o'zida bir nechta yangi ilovalarni, xususan elektron raqamli imzo (ERI) va elektron
pul tizimlarini ochdi. 1980-90-yillarda. kriptografiyaning mutlaqo yangi sohalari
paydo bo'ldi: ehtimollik shifrlash, kvant kriptografiyasi va boshqalar. Ularning
amaliy ahamiyatini bilish hali oldinda. Simmetrik kriptotizimlarni takomillashtirish
vazifasi ham dolzarbligicha qolmoqda. Xuddi shu davrda Feistel bo'lmagan shifrlar
(SAFER, RC6 va boshqalar) ishlab chiqildi va 2000 yilda ochiq xalqaro tanlovdan
so'ng AQShning yangi milliy shifrlash standarti AES qabul qilindi.
Shunday qilib, biz quyidagilarni bilib oldik: Kriptologiya - ma'lumotlarning
maxfiyligini ta'minlash uchun o'zgartiruvchi fan bo'lib, ikki tarmoqdan iborat:
kriptografiya va kriptoanaliz. Kriptanaliz - bu shifrlarni buzish usullari va usullari
haqidagi fan (va uni qo'llash amaliyoti). Kriptografiya - axborotni noqonuniy
foydalanuvchilardan himoya qilish uchun uni qanday o'zgartirish (shifrlash)
haqidagi fan. Tarixiy jihatdan kriptografiyaning birinchi vazifasi uzatilgan matnli
xabarlarni faqat jo'natuvchi va qabul qiluvchiga ma'lum bo'lgan ularning mazmuniga
ruxsatsiz kirishdan himoya qilish edi, barcha shifrlash usullari faqat ushbu falsafiy
g'oyaning rivojlanishidir. Insoniyat jamiyatida axborot o'zaro ta'sirining
murakkablashishi bilan ularni himoya qilishning yangi vazifalari paydo bo'ldi va
paydo bo'lmoqda, ularning ba'zilari kriptografiya doirasida hal qilindi, bu esa yangi
yondashuv va usullarni ishlab chiqishni talab qildi.
2. Shifrlar, ularning turlari va xossalari Kriptografiyada kriptografik tizimlar
(yoki shifrlar) quyidagicha tasniflanadi:
Kriptografiya - bu ma'lumotlarning maxfiyligini (ma'lumotni begonalarga
o'qishning mumkin emasligi) va haqiqiyligini (mualliflikning yaxlitligi va
haqiqiyligi, shuningdek, mualliflik huquqini rad etishning mumkin emasligi)
ta'minlashning matematik usullari haqidagi fan. Dastlab kriptografiya axborotni
shifrlash usullarini - maxfiy algoritm va kalitga asoslangan ochiq (manba) matnni
shifrlangan matnga teskari o'zgartirishni o'rgandi. An'anaviy kriptografiya
simmetrik kriptotizimlarning bir tarmog'ini tashkil qiladi, unda shifrlash va shifrni
ochish bir xil maxfiy kalit yordamida amalga oshiriladi. Ushbu bo'limga qo'shimcha
ravishda zamonaviy kriptografiya assimetrik kriptotizimlar, elektron raqamli imzo
(ERI) tizimlari, xesh funktsiyalari, kalitlarni boshqarish, yashirin ma'lumotlarni
olish va kvant kriptografiyasini o'z ichiga oladi. Kriptografiya ma'lumotlarning
maxfiyligini ta'minlash va yaxlitligini nazorat qilishning eng kuchli vositalaridan
biridir. Ko'p jihatdan u dasturiy ta'minot va apparat xavfsizligi boshqaruvchilari
orasida markaziy o'rinni egallaydi. Masalan, jismoniy himoya qilish nihoyatda qiyin
bo'lgan portativ kompyuterlar uchun faqat kriptografiya o'g'irlik sodir bo'lgan
taqdirda ham ma'lumotlarning maxfiyligini kafolatlaydi.
Do'stlaringiz bilan baham: |