Bir martali bloknot. Bir martali bloknot (one time pad) yoki “Vernam shifri” nomi bilan tanilgan kriptotizim bardoshli shifrlash algoritmi hisoblanib, tarixda keng foydalanilgan bo‘lsada, ko‘p hollarda amalga oshirishning imkoniyati mavjud bo‘lmagan. Uning bir martali deb
atalishiga asosiy sabab, undagi kalitning (bloknotning) bir marta foydalanilishi bo‘lib, uni aksariyat hollarda amalga oshirishning imkoni bo‘lmaydi. Masalan, ushbu shifrlash algoritmi 8 ta simvoldan iborat bo‘lgan alfavit bo‘lsin. Olingan alfavit simvollari va unga mos bo‘lgan binar qiymatlar 9-rasmda keltirilgan. Alfavit simvollari va ularga mos bit qiymatlari barcha uchun ochiq va sir saqlanmaydi.
9-rasm
Ochiq matn chun tanlangan alfavit
Simvollar
|
B
|
E
|
I
|
L
|
O
|
P
|
S
|
T
|
Binar qiymat
|
000
|
001
|
010
|
011
|
100
|
101
|
110
|
111
|
Faraz qilaylik, biror qonuniy foydalanuvchi A bir martali bloknotdan foydalangan holda “POSSIBLE” matnini shifrlab, o‘z sherigi B tomonga jo‘natishi talab etilsin. Ushbu ochiq matnning binar qiymatdagi ko‘rinishi quyidagicha bo‘ladi:
P
|
O
|
S
|
S
|
I
|
B
|
L
|
E
|
101
|
100
|
110
|
110
|
010
|
000
|
011
|
001
|
Bir martali bloknot usulida shifrlashda ochiq matn uzunligiga teng bo‘lgan tasodifiy tanlangan kalitdan foydalaniladi. Shifrmatn ochiq matn va kalitga XOR amalini qo‘llab hosil qilinadi (P – ochiq matn, K – kalit va C – shifrmatn): 𝐶 = 𝑃⨁𝐾. XOR amali (⨁) quyida keltirilgan:
0⨁0 = 0
|
0⨁1 = 1
|
1⨁0 = 1
|
1⨁1 = 0
|
Jadvaldan, 𝑥⨁𝑦⨁𝑦 = 𝑥 tenglik o‘rinligini ko‘rish mumkin. Bu esa bir martali parol bilan rasshifrovkalashda shifrmatnga kalitni XOR amalida bajarilishining o‘zi yetarligini ko‘rsatadi: 𝑃 = 𝐶⨁𝐾.
Faraz qilaylik, A tomon 9-rasmda ochiq matn uzunligiga teng bo‘lgan quyidagi kalitga ega bo‘lsin:
111
|
101
|
110
|
101
|
111
|
100
|
000
|
101
|
A tomon ushbu kalit asosida shifrmatnni quyidagicha hisoblaydi:
|
P
|
O
|
S
|
S
|
I
|
B
|
L
|
E
|
Ochiq matn:
|
101
|
100
|
110
|
110
|
010
|
000
|
011
|
001
|
Kalit:
|
111
|
101
|
110
|
101
|
111
|
100
|
000
|
101
|
Shifrmatn:
|
010
|
001
|
000
|
011
|
101
|
100
|
011
|
100
|
|
I
|
E
|
B
|
L
|
P
|
O
|
L
|
O
|
A tomonidan jo‘natilgan shifrmatn B tomonda bir xil kalitdan foydalanib osongina rasshifrovkalanadi:
|
I
|
E
|
B
|
L
|
P
|
O
|
L
|
O
|
Shifrmatn:
|
010
|
001
|
000
|
011
|
101
|
100
|
011
|
100
|
Kalit:
|
111
|
101
|
110
|
101
|
111
|
100
|
000
|
101
|
Ochiq matn:
|
101
|
100
|
110
|
110
|
010
|
000
|
011
|
001
|
|
P
|
O
|
S
|
S
|
I
|
B
|
L
|
E
|
Bir martalik bloknot usuli Onetimepad deb ham yuritiladi. Kalit sifatida esa uzunligi juda katta bo‘lgan belgilar ketma – ketligi olinadi.
Masalan, biror yozuvchining asarini olishimiz mumkin. Misol sifatida Pirimqul Qodirovning “Yulduzli tunlar” asarini olamiz. Bunda shifirlanuvchi 33 matn kalitdagi mos belgilar bilan qo‘shiladi va modul olinadi. Modul olinayotgan son tanlanayotgan alfavit uzunligiga teng bo‘lishi shart. Kalitning ishlatilgan qismi o‘chirib tashlanadi. Bu jarayon to shifrlanayotgan matn tamom bo‘lguncha davom ettiriladi. Ushbu Onetimepad usuli shifrni ochishdagi qiyinchiligi bilan (axborotlarni himoyalash borasida) ancha mustahkam shifrlash usuli hisoblangan. Yana bir jihati kalitning uzunligida bo‘lgan.
Misol: K - kalit, M - shifrlanuvchi so‘z yoki matn, m - alfavit uzunligi, C - shifrlangan so‘z yoki matn. Alfavit oldindan kelishuv asosida belgilangan bo‘lishi kerak. Alfavitga turli belgilarni (tire, qo‘shtirnoq, ikki nuqta, vergul) kabi belgilarni ham qo‘shish mumkin. Ushbu biz ko‘rayotgan misolda ingliz alfaviti tanlab olingan. Har bir harf ketma-ket tarzda raqamlangan:
K= “shifrlangan”, m=26, M=“kompyuter”, C=?
Shifrlash: C = (M + K)mod m formuladan foydalaniladi.
C1=(10+18) mod 26 = 2 - c
C2=(14+7) mod 26 = 21 - v
C3=(12+8) mod 26 = 20 - u
C4=(15+5) mod 26 = 20 – u
C5=(24+17) mod 26 = 15 - p
C6= (20+11) mod 26 = 5 - f
C7= (19+0) mod 26 = 19 - t
C8= (4+13) mod 26 = 17 - r
C9= (17+6) mod 26 = 23 – x
Shifrlangan so‘z: C = “ c v u u p f t r x”
Shifrni ochish: M = (C — K)mod m formuladan foydalaniladi.
M1 = (2-18) mod 26 =10 - k
M2 = (21-7) mod 26 = 14 - o
M3 = (20-8) mod 26 = 12 - m
M4 = (20-5) mod 26 = 15 – p
M5 = (15-17) mod 26 = 24 - y
M6 = (5-11) mod 26 = 20 - u
M7 = (19-0) mod 26 = 19 - t
M8 = (17-13) mod 26 = 4 - e
M9 = (23-6) mod 26 = 17 - r
M = ” kompyuter” so‘zi paydo bo‘ldi.
Foydalanilgan Adobiyatlar
1.M.M.Aripov, B.F.Abdurahimov, A.S.Matyakubov “KRIPTOGRAFIK USULLAR” kitobi.
2. “KIBERXAVFSIZLIK ASOSLARI” О‘quv qо‘llanma S.K. GANIYEV, A.A. GANIYEV, Z.T. XUDOYQULOV.
3. https://uz.wikipedia.org/wiki/Kriptografiya saytidan.
4.https://lib.samtuit.uz/uploads/files/61a1f802400240.80551248.pdf saytidan.
5. https://poe.com saytidan.
|