30.1.1. Simmetrik kalitli kriptografiya
Barcha kriptografiya algoritmlari bir-birini to’ldirib keladi, masalan, asl
matnni olib, hisoblab hamda unga mos shifrlashni qo’shish orqali kodlangan xabar
hosil qilinadi. Zamonaviy kalitga asoslangan kriptografiyani o’rganishdan oldin,
eng oddiy bo’lgan hamda Sezar shifridek (shifr ma’lumotni kodlash uchun usuldir)
ma’lum simmetrik kalit algoritmini ko’rib chiqish kerak.
Ingliz matnlari uchun Sezar shifri asl matndagi har bir harfning alifbodagi
boshqa harf bilan almashtirish orqali matnni kodlash amalga oshiriladi. Masalan,
agar
k=3
bo’lsa, matndagi
a
harfi kodlangan matndagi
d
harfiga teng bo’ladi yoki
b
harfi kodlanib
e
harfiga teng bo’ladi va x.k. Bu yerda kalitdek
k
qiymati xizmat
qiladi. Agar asl matn
“Bob, men seni yaxshi ko’raman, Alisa”
bo’lsa,
kodlangandan keyin
“ere, l oryh brx. dolfh”
ko’rinishiga o’zgaradi. Kodlangan
matn tushunib bo’lmaydigan shaklga o’zgarganida, agar Sezarni shifri faqat 25 ta
402
mumkin bo’lgan kalit xarakteridan foydalangani aniq bo’lsa, uni asl ma’nosini
bilib olish unchalik ko’p vaqtni olmaydi.
Sezar shifrini takomillashtirilishi
monoalifboli
shifr
deyiladi, ya’ni
alifboning bitta harfi alifboning boshqa istalgan harfi bilan almashtiriladi. Biroq,
bir xil ko’rinishli o’zgarishga qaraganda (masalan, barcha harflar uchun
k
asosiy
rolni o’ynasa), istalgan harf istalgan boshqa harf uchun foydalanishi maqsadga
muvofiqdir. 30.3-rasmda asl matnni kodlash uchun o’zgarish qoidasi ko’rsatilgan.
Shunday qilib
“Bob, men seni yaxshi ko’raman, Alisa”
aynan
“nkn, s gktc
wky. mgsbc.”
ko'rinishiga aylanadi. Xullas, Sezar shifrining holatiga ko’ra bu
xabar tushinib bo’lmas ko’rinishni aks etadi.
Monoalifboli shifrlash Sezar shifriga qaraganda ancha yaxshiroq ko’rinadi,
ya’ni bu usulda 25 ta mumkin bo’lgan kalitga qaraganda 26! (10
26
tartibida)
mumkin bo’lgan kalit mavjud. Bu usul natijasida kodlangan xabarni dekodlash
uchun hamda kodlash algoritmini buzish (26! Kalitni tekshirib chiqish) uchun juda
ham ko’p vaqt talab qilinadi. Ammo, bu asl matnning statistik tahlili orqali
bilinadiki, odatdagi ingliz matnlarida
e
va
t
harflari juda ko’p martta takrorlanadi
(xatlarda 9% dan 13% gacha to’g’ri keladi) hamda ikkita va uchta harflar borki
juda ko’p martta takrorlanadi masalan “in”, “it”, “the”, “ion”, “ing” va “four” ko’p
takrorlanganligi uchun kodni buzish jarayonini osonlashtiradi. Agar, buzg’unchi
xabar kontenti haqida ba’zi bilimlarga ega bo’lsa, bu kodni buzishni yanada
osonlashtiradi. Masalan, agar buzg’unchi Trudi, Alisa va Bobni o’rtasidagi
munosabatdan shubhalanib kodlangan matndan “alisa” va “bob”ni nomini aniqlab
olsa, shirflangan xabardagi mavjud 26 harfning yettitasini tezda aniqlab olishi
mumkin, keyin “brute-force” usuli orqali faqatgina 10
9
kalitni aniqlash talab
qilinadi xolos. Albatta, Trudi Bobdan shubhalanganda xabardagi ba’zi boshqa
so’zlarni ham aniqlashi mumkin.
403
30.3-rasm. Monoalifboli shifr
Trudi uchun Alisa va Bobni kriptografiya usulini buzish qanchalik
osonligini muhokama qilganimizda, buzg’unchi qanday axborotga ega ekanligiga
bog’liq uchta holatni ko’rib chiqamiz.
Faqat kodlangan matnga qilinadigan hujum
. Ba’zi holatlarda buzg’unchi
faqatgina asl matn xabarining kontenti haqida xech qanday ma’lumotga
ega bo’lmasdan turib, faqat ushlab olingan kodlangan matnga ega
bo’lishi mumkin. Qanday qilib statik tahlil kodlash sxemasidagi faqat
kodlangan matnga qilinadigan hujum uchun yordam bera olishini ko’rib
chiqdik.
Ma’lum oddiy matnga qilinadigan hujum
. Biz yuqorida ko’rdikki, agar
Trudi kodlangan xabarda “bob” va “alisa” so’zlari borligiga ishonchi
komil bo’lsa, u
a, l, i, c, e, b
va
o
harflarini aniqlay olishi osonlashadi.
Shuningdek, Trudi shifrlab uzatilgan xabardan yetarlichasini o’zida
saqlab qolib, Bob dekodlagan so’zni topishi mumkin. Qachon buzg’unchi
oddiy matndagi ba’zi so’zlarni aniqlaganda, biz uni kodlashdagi ma’lum
oddiy matnga qilinadigan hujum deb nazarda tutamiz.
Tanlangan matn matniga hujum
. Tanlangan matn matniga hujum
qilishda, buzg’unchi oddiy matn xabarni tanlash imkoniga hamda
kodlangan formatga ega bo’lishi mumkin. Biz hozirgacha ko’rib chiqqan
oddiy kodlash algoritmlari uchun Trudi Alisaga xabar yubora olsa
“chaqqon jigarrang tulki yalqov itni ustidan sakray oladi”
qabilida, u
kodlash sxemalarini to’liqligicha buza oladi. Juda murakkab kodlash
texnikalari uchun, tanlangan matn matniga hujum qilish kodlash
texnikasini buzish mumkin degani emas.
Besh yuz yil oldin, yarimalifboli shirflash usulidek ma’lum bo’lgan ko’p
alifboli shifrlashda, mavjud texnikalarni yaxshilash yaratilgan edi. Yarim alifbo
404
shifrlashning g’oyasi ko’p alifboli shifrlash usuliga asoslanadi, ya’ni oddiy matnni
maxsus holatda, maxsus monoalifboli shifrdan foydalanib harf kodlanadi. Shunday
qilib, bitta harf oddiy matnda turli holatlarda namoyon bo’ladi, turlicha kodlanishi
mumkin. Yarim alifbo shirflash usuliga misol 30.4-rasmda keltirilgan. Unda
qatorlarda ko’rsatilganidek ikkita Sezar shifri mavjud (
k=5 va k=19
). Bu ikki C
1
va C
2
Sezar shifrlarini takroriy kodlash uchun tanlash mumkin, masalan, C
1
, C
2
,
C
2
, C
1
, C
2
. Shu tariqa oddiy matndagi birinchi harf C
1
, ikkinchi va uchunchisi C
2
,
to’rtinchisi C
1
va beshinchisi C
2
shifrlaridan foydalanib kodlanadi. Shifrlardan
foydalanish takrorlanaveradi, ya’ni yuqoridagi holatga bog’liq ravishda oltinchi
harf C
1
, ettinchisi C
2
shifr bilan va h.k. Qolgan harflar shu tariqa kodlanadi. Ko’rib
chiqilgan usul bo’yicha
“Bob, seni yaxshi ko’raman.”
oddiy matn xabari
“ghu, n
etox dhz.”
ko'rinishida kodlandi. Yuqoridagi oddiy matndagi birinchi
b
C
1
shifri
bilan hamda ikkinchi
b
C
2
bilan kodlanadi. Bu misolda, kodlash va dekodlashda
qo’llanilgan “kalit”
k = 5
va
k = 19
hamda
C
1
, C
2
, C
2
, C
1
, C
2
.
30.4-rasm. Ikkita Sezar shifridan foydalanib oddiy matnni yarimalifbo
shifrlash
Endi zamonaviy shirflash usullariga o’tamiz, bugungi kunda simmetrik
kodlash usullari qanday amalga oshirilishi jarayonlarini ko’rib chiqamiz.
Simmetrik kodlash texnikalarining ikki usuli mavjud: oqim shifrlari va blok
shifrlari. Bu bobda asosan blokli shifrlar ko’rib chiqiladiki, bu usul PGP (for
secure e-pochta), SSL (for securing TCP connections) va IPsec (for securing the
network-layer transport)ni o’z ichiga olgan ko’pgina xavfsiz Internet
protokollarida qo’llaniladi.
405
Blokli shifrda, xabarni kodlash
k
bit bloklarida amalga oshiriladi. Masalan,
agar
k
=64 bo’lsa, xabar 64 bitli bloklarga bo’linadi va har bir blok alohida
kodlanadi. Blokni kodlash uchun, shifrdan oddiy matndagi
k
bitli blokni
k
bitli
shifrlangan matn blokiga birma-bir o’tkazish uchun foydalaniladi. Bu holatga
misol qilib, faraz qilaylik
k
=3 bo’lsa, blok shifr 3 bitli oddiy matnni kiritadi va
chiqishda 3 bitli kodlangan xabarni chiqaradi. 30.1-jadvalda yuqoridagi misol
vaziyati tasvirlangan. E’tibor berilsa, blokli shifrlash holati birma-bir tasvirlangan;
bunda har bir kirish turli chiqishga mos keladi. Bu blokli shifrlar xabarni 3 bitli
blokka bo’ladi va quyidagi jadval ko’rinishiga muvofiq har bir blokni kodlaydi.
010110001111 bitli xabar 101000111001 ko’rinishda kodlanadi.
30.1 jadval
maxsus uch bitli blokli shifr variantlari
|