35
𝑆𝑆 = 𝑧𝑧
7
⨁𝑧𝑧
20
⨁𝑧𝑧
21
⨁𝑧𝑧
22
𝑆𝑆 = 22,21,20, … ,1 uchun 𝑧𝑧
𝑖𝑖
= 𝑧𝑧
𝑖𝑖−1
𝑧𝑧
0
= 𝑆𝑆
Berilgan uchta bit
𝑥𝑥, 𝑦𝑦 va 𝑧𝑧 uchun 𝑆𝑆𝑎𝑎𝑚𝑚(𝑥𝑥, 𝑦𝑦, 𝑧𝑧) funksiyasi eng ko’p bitni
qaytaradi. Agar
𝑥𝑥, 𝑦𝑦 va 𝑧𝑧 bitlar 0 ga teng bo’lsa, u holda funksiya 0 ni qaytaradi, aks
holda birni qaytaradi. 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 generasiyalash
uchun
quyidagilar bajariladi. Dastlab,
𝑆𝑆 = 𝑆𝑆𝑎𝑎𝑚𝑚(𝑥𝑥
8
, 𝑦𝑦
10
, 𝑧𝑧
10
) funksiya qiymati hisoblanadi.
Shundan so’ng
𝑋𝑋, 𝑌𝑌 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.
Shundan so’ng, ketma-ketlikning bir biti
𝑠𝑠 quyidagicha generasiyalanadi va
ochiq matn biti bilan XOR amali bajariladi (agar shifrlansa) yoki shifrmatn
biti bilan
XOR amali bajariladi (agar deshifrlansa).
𝑠𝑠 = 𝑥𝑥
18
⨁𝑦𝑦
21
⨁𝑧𝑧
22
Yuqorida keltirilgan ketma-ketlikdagi amallar talab etilgunga qadar
takrorlanadi (ochiq matn yoki shifrmatn uzunligiga teng).
Agar biror registr siljitilsa, uning to’liq holati siljish natijasida 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 bo’ladi.
A5/1 oqimli shifrlash algoritmi murakkab ko’rinsada, qurilmada amalga
oshirilganida yuqori tezlik qayd etadi. Umumiy holda A5/1 oqimli shifrni 12 -
rasmdagi kabi ifodalash mumkin.