2. Ikki tomonlama o‘rin almashtirish usuli.
2.1. Ikki tomonlama o‘rin almashtirish usuli haqida nazariy malumot bering.
2.2. Ikki tomonlama o‘rin almashtirish usulidan foydalanib har bir talaba o‘zining ism, familiya va sharfini shifrlash.
Nazariy qisim
Ikki tomonlama o‘rin almashtirish (affine cipher) usuli bir xil qo‘llaniladigan shifrlash usulidir. Ushbu usul har bir harfni belgilangan kalit (ko‘rsatkich) miqdorida boshqa belgi bilan o‘rniga almashtirish usuli.
Bu usulda, matn har bir harfini quyidagi formulaga asosan shifrlaydi:
Ci≡(a⋅Pi+b)mod
Bu formulada:
Ci shifrlangan harf,
Pi asal matndagi harf,
a va b o‘zgaruvchanligi, a - qo‘paytirish koeffitsienti, b - qo‘shish koeffitsienti,
m alifbo uzunligi (masalan, m=26 uchun lotin alifbosidagi harflar).
Matnni shifrlash uchun kalit raqamlarini tanlash va keyingi deshifrlash uchun inverziyasini topish talab qilinadi.
Shifrlash formulasi: Ci≡(a⋅Pi+b)mod
Deshifrlash formulasi: Pi≡a−1⋅(Ci−b)mod
Bu usulni foydalanishda avvaliyatni himoya qilish uchun a tanlanishi va inverziyasini olish juda muhimdir. Agar a va b ni to'g'ri tanlagan bo'lsangiz, shifrlash va deshifrlash qulayroq bo'ladi.
Amaliy qism
S
|
H
|
A
|
H
|
B
|
O
|
Z
|
5
|
6
|
7
|
4
|
3
|
1
|
2
|
M
|
U
|
S
|
F
|
A
|
A
|
A
|
E
|
R
|
H
|
I
|
L
|
L
|
S
|
N
|
A
|
O
|
L
|
I
|
A
|
I
|
N
|
F
|
N
|
I
|
T
|
B
|
.
|
O
|
Z
|
B
|
H
|
S
|
H
|
A
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
A
|
A
|
A
|
F
|
M
|
U
|
S
|
L
|
S
|
L
|
I
|
E
|
R
|
H
|
A
|
I
|
I
|
L
|
N
|
A
|
O
|
B
|
.
|
T
|
I
|
N
|
F
|
N
|
3. Vijiner shifrlash usuli.
3.1. Vijiner shifrlash usuliga qisqacha nazariy ma’lumot bering.
3.2. Vijiner jadvalini lotin alifbosiga asoslangan o‘zbek alifbosida yaratish.
3.3. 3.2 da yaratgan Vijiner shifrlash jadvali orqali ismingizni, familiyangizni shifrlang va deshifrlang.
Nazariy qism
Vijiner shifrlash usuli, ma'lum bir kalit so'z (kalit) yordamida matnni shifrlash usuli. Bu usulda, matn har bir harfi kalitning mos kelgan harfiga qarab o'giriladi. Misol uchun, agar biz matnni "HELLO" deb olgan bo'lsak, va kalitimiz "KEY" bo'lsa, birinchi harfni kalitimizdagi "K" harfiga qarab o'girib yozamiz, ikkinchi harfni "E" ga qarab o'girib yozamiz va hokazo. Agar kalit tugasa, uni qaytadan boshidan boshlab qaytaramiz. Vijiner shifrlash usulida kalit uzunligi matn uzunligidan kichik yoki teng bo'lishi shart emas. Bu usul, 16-qaradagi Fransuz matematikachi Blaise de Vijiner tomonidan 16-asrning oxirida yaratilgan.
Vijiner shifrlash usulini o'zbek alifbosiga asoslangan lotin alifbosida yaratish uchun, o'zbek alifbosidagi harflar ketma-ketlik qilib joylashtiriladi. O'zbek alifbosida 29 ta harf mavjud (a, b, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, x, y, z, o‘, g‘, sh, ch), shuningdek kalit ham matn harflaridan iborat bo'lishi kerak.
Masalan, agar biz "o‘zbekiston" so'zini shifrlash uchun kalit sifatida "xabardor"ni ishlatishni qaror qilsak, shu so'zning har bir harfini lotin alifbosidagi mos harf bilan almashtirib yozamiz:
o‘zbekiston
x a b a r d o r x a b a r d o r
Endi, agar biz boshqa so'zni shifrlashni xohlaysak, ammo uning uzunligi "xabardor" so'zidagi uzunligi kabi bo'lmasa, "xabardor" so'zini boshidan qaytib boshlaymiz:
xabardorxabardorxab
Natijada, "xabardorxabardorxab" matni "o‘zbekiston" so'zini shifrlagan xolatda bo'ladi.
kalit so’z “KITOB” va ochiq matn “SHAHBOZ GAYRATJONOV” bilan quyidagi jadvalni tuzamiz:
| Ochiq matn | S | H | A | H | B | O | Z | G | A | Y | R | A | T | J | O | N | O | V | | Kalit so’z | K | I | T | O | B | K | I | T | O | B | K | I | T | O | B | K | I | T | | Shifrlangan matn | C | Q | W | O | G | Q | C | Q | W | G | Q | C | W | O | G | Q | C | W |
Shifrlangan matnni olish uchun, ochiq matn harflari va kalit so’z harflari orasidagi siljish qatorini topish kerak. Masalan, agar S harfi K harfi bilan siljitilsa, siljish qatori 2 bo’ladi. Agar S harfi L harfi bilan siljitilsa, siljish qatori 3 bo’ladi.
|