A5/1 oqimli shifrlash algoritmi. Ushbu oqimli shifrlash
algoritmidan GSM mobil aloqa tizimlarida ma’lumotlarni
konfidensialligini ta’minlashda foydalaniladi. Mazkur algoritm algebraik
tuzilishga ega bo‘lsada, uni sodda diagramma ko‘rinishda ham tasvirlash
imkoniyati mavjud.
A5/1 shifrlash algoritmi uchta chiziqli siljitish registrlaridan iborat,
ular mos holda
𝑋, 𝑌 va 𝑍 kabi belgilanadi. 𝑋 registr o‘zida 19 bit
(
𝑥
0
, 𝑥
1
, … , 𝑥
18
),
𝑌 registr 22 bit (𝑦
0
, 𝑦
1
, … , 𝑦
21
) va
𝑍 registr 23 bit
(
𝑧
0
, 𝑧
1
, … , 𝑧
22
) ma’lumotni saqlaydi. Uchta registrning bunday
o‘lchamdagi bitlarni saqlashi bejiz emas. Sababi, chiziqli siljitish
registrlari o‘zida jami bo‘lib 64 bitni saqlaydi. A5/1 shifrlash
algoritmida foydalaniluvchi kalit
𝐾 ning uzunligi 64 bitga teng va ushbu
kalitdan registrlarni dastlabki to‘ldirish uchun foydalaniladi. So‘ngra
oqimli shifrlash algoritmi asosida talab etilgan uzunlikdagi (ochiq matn
uzunligiga teng bo‘lgan) ketma-ketliklar generasiyalanadi. Ketma-
ketliklarni generatsiyalash tartibini o‘rganishdan oldin, registrlar
xususidagi ba’zi ma’lumotlar quyida keltirilgan.
𝑋 siljitish registrida quyidagi amallar ketma-ketligi bajariladi:
𝑡 = 𝑥
13
⨁𝑥
16
⨁𝑥
17
⨁𝑥
18
𝑖 = 18,17,16, … ,1 𝑢𝑐ℎ𝑢𝑛 𝑥
𝑖
= 𝑥
𝑖−1
𝑥
0
= 𝑡
Shunga o‘xshash,
𝑌 𝑣𝑎 𝑍 registrlar uchun ham quyidagilarni
yozish mumkin:
𝑡 = 𝑦
20
⨁𝑦
21
58
𝑖 = 21,20,19, … ,1 𝑢𝑐ℎ𝑢𝑛 𝑦
𝑖
= 𝑦
𝑖−1
𝑦
0
= 𝑡
va
𝑡 = 𝑧
7
⨁𝑧
20
⨁𝑧
21
⨁𝑧
22
𝑖 = 22,21,20, … ,1 𝑢𝑐ℎ𝑢𝑛 𝑧
𝑖
= 𝑧
𝑖−1
𝑧
0
= 𝑡
Berilgan uchta bit
𝑥, 𝑦 va 𝑧 uchun 𝑚𝑎𝑗(𝑥, 𝑦, 𝑧) funksiya qiymati
eng ko‘p bitga teng bo‘ladi. Masalan, agar
𝑥, 𝑦 𝑣𝑎 𝑧 bitlar 0 ga teng
bo‘lsa, u holda funksiyaning qiymati 0 ga teng bo‘ladi. Funksiyaga
kiruvchi bitlar toq bo‘lgani uchun, funksiya har doim 0 ni yoki 1 ni
qaytaradi. Boshqa holatlar bo‘lmaydi.
A5/1 shifrida, ketma-ketlikning har bir bitini generatsiyalash uchun
quyidagilar bajariladi. Dastlab,
𝑚 = 𝑚𝑎𝑗(𝑥
8
, 𝑦
10
, 𝑧
10
) funksiya qiymati
hisoblanadi. So‘ngra
𝑋, 𝑌 va 𝑍 registrlar quyidagicha sijitiladi (yoki
siljitilmaydi):
− agar 𝑥
8
= 𝑚 ga teng bo‘lsa, 𝑋 siljitiladi;
− agar 𝑦
10
= 𝑚 ga teng bo‘lsa, 𝑌 siljitiladi;
− agar 𝑧
10
= 𝑚 ga teng bo‘lsa, 𝑍 siljitiladi.
Ketma-ketlikning bir biti
𝑠 quyidagicha generatsiyalanadi:
𝑠 = 𝑥
18
⨁𝑦
21
⨁𝑧
22
Yuqorida keltirilgan ketma-ketlik amallari talab etilguncha
takrorlanadi (ochiq matn yoki shifrmatn uzunligiga teng).
Agar biror registr siljitilsa, uning to‘liq holati o‘zgaradi. Ketma-
ketlikning bir bitini hosil qilishda uchta registrdan kamida ikkitasi
siljiydi va shuning uchun yuqoridagi ketma-ketlikni davom ettirgan
holda yangi bitlar ketma-ketligini hosil qilish mumkin.
A5/1 oqimli shifrlash algoritmi murakkab ko‘rinsada, qurilmada
amalga oshirilganida yuqori tezlik qayd etiladi. Umumiy holda A5/1
oqimli shifrni 3.4-rasmdagi kabi ifodalash mumkin.
|