ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
(
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
)
ᱹ
ˌˏ˵˕
,bu ma'lum
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
qiymatini topish juda oson
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
(
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
)
ᱹ
ˌˏ˵˕
, ta'rifi
esa
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
dan
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
oqilona vaqt ichida topish mumkin emas.
Ammo bir tomonlama funktsiyaning o‘zi dasturda foydasiz: u xabarni
shifrlashi mumkin, lekin uni parolini hal qila olmaydi. Shuning uchun ochiq kalit
kriptografiyasi bo‘shliq bilan bir tomonlama funktsiyalardan foydalanadi. Bo‘shliq
- bu parolni ochishga yordam beradigan sir. Ya'ni, shunday bor
ᱸ
ˌˏ˵˕
y
ᱹ
ˌˏ˵˕
shuni bilish
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
(
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
)
ᱹ
ˌˏ˵˕
va
ᱸ
ˌˏ˵˕
y
ᱹ
ˌˏ˵˕
, hisoblashingiz mumkin
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
. Misol uchun, agar siz soatni ko‘p qismlarga
ajratsangiz, yana ishlaydigan soatni qayta yig‘ish juda qiyin. Ammo agar montaj
bo‘yicha ko‘rsatma (bo‘shliq) mavjud bo‘lsa, unda bu muammoni osongina hal
qilish mumkin.
Axborotni qabul qiluvchi ochiq kalit va “trapdoor” (boshqacha aytganda,
kalitning ochiq va yopiq qismini) hosil qiladi, so‘ngra ochiq kalitni jo‘natuvchiga
o‘tkazadi va “trapdoor”ni o‘zi uchun saqlab qoladi. Yuboruvchi ma’lumotni ochiq
kalit asosida shifrlaydi: agar sizda bir vaqtning o‘zida ochiq kalit va "orqa eshik"
mavjud bo‘lsa, bunday shifrlangan ma’lumotni parolini ochish oson. Funktsiya
nuqtai nazaridan qabul qiluvchi shakllanadi
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
()
ᱹ
ˌˏ˵˕
bo‘shliq bilan
ᱸ
ˌˏ˵˕
y
ᱹ
ˌˏ˵˕
, keyin funksiya
parametrlari haqidagi ma’lumotlarni uzatadi
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
()
ᱹ
ˌˏ˵˕
jo‘natuvchi (bir vaqtning o‘zida,
hatto funktsiya parametrlarini bilish
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
()
ᱹ
ˌˏ˵˕
, oqilona vaqt ichida "bo‘shliq" topish
mumkin emas). Shundan so‘ng, jo‘natuvchi shifrlangan xabarni yaratadi
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
(
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
),
ᱹ
ˌˏ˵˕
va qabul qiluvchi uni oladi
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
dan
ᱸ
ˌˏ˵˕
f
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
(
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
x
ᱹ
ˌˏ˵˕
ᱸ
ˌˏ˵˕
)
ᱹ
ˌˏ˵˕
,bilish
ᱸ
ˌˏ˵˕
y
ᱹ
ˌˏ˵˕
(qayerda x - shifrlanmagan asl
xabar).
Misollar
Quyidagi misol ochiq kalit kriptografiyasining g‘oyalari va usullarini
tushunishga yordam beradi - parollarni foydalanuvchilar ulanishi kerak bo‘lgan
masofaviy kompyuterda saqlash. Tarmoqdagi har bir foydalanuvchi har xil parolga
ega. Kirishda u ismni ko‘rsatadi va maxfiy parolni kiritadi. Ammo agar siz parolni
masofaviy kompyuterning diskida saqlasangiz, kimdir uni o‘qiy oladi (ayniqsa, bu
kompyuterning ma'muri uchun buni qilish juda oson) va maxfiy ma’lumotlarga
kirish huquqiga ega bo‘ladi. Muammoni hal qilish uchun bir tomonlama
funktsiyadan foydalaniladi. Yashirin parolni yaratishda kompyuter parolni o‘zi
saqlamaydi, balki ushbu parol va foydalanuvchi nomidan funktsiyani hisoblash
natijasidir. Misol
uchun,
foydalanuvchi Elis "Gladiolus"
parolini
o‘ylab
topdi. Ushbu ma’lumotlarni saqlashda funktsiyaning natijasi hisoblanadi f (ALICE
GLADIOLUS),
natijada
tizimda
saqlanadigan
CAMOMILE
qatori bo‘lsin. Natijada, parol fayli quyidagi shaklni oladi:
Ism
f(Ism: parol)
ALISA
ROMACHA
loviya
NARKISS
Endi tizimga kirish quyidagicha ko‘rinadi:
Nomi:
ALISA
Parol:
GLADIOLUS
Elis "
maxfiy
" parolni kiritganda, kompyuter ALICE_GLADIOLUS-ga
qo‘llaniladigan funksiya kompyuter diskida saqlangan CAMOMILE to‘g‘ri
natijani beradimi yoki yo‘qligini tekshiradi. Nom yoki parolda kamida bitta harfni
o‘zgartirishga
arziydi
va
funktsiyaning
natijasi
butunlay
boshqacha
bo‘ladi. "
Yashirin
" parol hech qanday shaklda kompyuterda saqlanmaydi. Parol
faylini endi boshqa foydalanuvchilar maxfiylikni yo‘qotmasdan ko‘rishlari
mumkin, chunki funktsiya deyarli qaytarib bo‘lmaydi.
Oldingi misolda bo‘shliqsiz bir tomonlama funksiya qo‘llaniladi, chunki
shifrlangan xabardan asl xabarni olish shart emas. Quyidagi misolda "orqa eshik",
ya'ni topish qiyin bo‘lgan ma’lumotlardan foydalangan holda asl xabarni tiklash
qobiliyatiga ega sxema ko‘rib chiqiladi. Matnni shifrlash uchun siz bir nechta qalin
jildlardan iborat katta obunachi katalogini olishingiz mumkin (uni ishlatadigan har
qanday shahar aholisining raqamini topish juda oson, ammo ma'lum raqamdan
foydalangan holda abonentni topish deyarli mumkin emas). Shifrlangan xabarning
har bir harfi uchun bir xil harf bilan boshlanadigan nom tanlanadi. Shunday qilib,
xat abonentning telefon raqamiga tayinlanadi. Yuborilayotgan xabar, masalan,
" BOX " quyidagi tarzda shifrlanadi:
Xabar
Tanlangan ism
Kriptomatn
Kimga
Korolev
5643452
O
Orexov
3572651
R
Ruzaeva
4673956
O
Osipov
3517289
B
Baturin
7755628
Kimga
Kirsanova
1235267
VA
Arseniyev
8492746
Kriptomatn katalogdagi o‘zlari tanlagan tartibda yozilgan raqamlar zanjiri
bo‘ladi. Shifrni ochishni qiyinlashtirish uchun siz kerakli harf bilan boshlangan
tasodifiy nomlarni tanlashingiz kerak. Shunday qilib, asl xabar turli xil raqamlar
ro‘yxati (kriptomatnlar) bilan shifrlanishi mumkin.
Ochiq kalitli kriptografik tizimlardan foydalanishda quyidagi belgilashlar
kiritiladi:
tomonning ochiq kaliti bilan xabar
ni shifrlash:
|