О‘zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi



Yüklə 5,01 Kb.
Pdf görüntüsü
səhifə20/149
tarix07.01.2024
ölçüsü5,01 Kb.
#202059
1   ...   16   17   18   19   20   21   22   23   ...   149
Respublikasi axborot texnologiyalari va kommunikatsiyalarini riv

2.2.4. TEA blokli shifrlash algoritmi 
TEA (Tiny Encryption Algorithm) algoritmi Feystel tarmog’iga 
asoslanmagan bo’lsada, sodda va unga o’xshash algoritm. Boshqacha aytganda, 
shifrlash va deshifrlash funksiyalari bir-biridan farq qiladi.
TEA algoritmida 64-bit uzunlikdagi ochiq matn bloklari va 128 bitli kalitdan 
foydalaniladi. Algoritm 32 bitli so’zlar bilan amallar bajarishga mo’ljallangan va 
shuning uchun 
𝑆𝑆𝑒𝑒𝑑𝑑
2
32
amalidan foydalaniladi. Ushbu algoritmda raundlar soni 
o’zgaruvchan bo’lib, xavfizlik nuqtai nazaridan raundlar soni kamida 32 ga teng 
qilib olinishi shart. TEA algoritmining har bir raundi Feystel tarmog’ining ikki 
raundiga o’xshash. 
Blokli shifrlarni loyihalashda raund funksiyasining murakkabligi va raundlar 
soni orasida balans bo’lishi lozim. Masalan, raund funksiyasi sodda bo’lsa, raundlar 
soni kamroq yoki aksincha bo’ladi. TEA algoritmi sodda algoritm bo’lgani uchun, 
bardoshli bo’lishi uchun raundlar sonini katta tanlash zarur. TEA algoritmining 
shifrlash funksiyasi quyida keltirilgan [13]. 
(
𝐾𝐾
[0],
𝐾𝐾
[1],
𝐾𝐾
[2],
𝐾𝐾
[3]) = 128 bitli kalit
 


40 
(
𝐿𝐿
,
𝑋𝑋
) = ochiq matn bloki (64 bit)
 
𝑑𝑑𝑒𝑒𝑒𝑒𝑆𝑆𝑎𝑎
= 0
𝑥𝑥
9
𝑒𝑒
3779
𝑎𝑎
9
 
𝑠𝑠𝑠𝑠𝑆𝑆
= 0
 
𝑎𝑎𝑒𝑒𝑆𝑆
𝑆𝑆
= 1 dan 32 gacha
 
𝑠𝑠𝑠𝑠𝑆𝑆
=
𝑠𝑠𝑠𝑠𝑆𝑆
+
𝑑𝑑𝑒𝑒𝑒𝑒𝑆𝑆𝑎𝑎
 
𝐿𝐿
=
𝐿𝐿
+ (((
𝑋𝑋 ≪
4) +
𝐾𝐾
[0])

(
𝑋𝑋
+
𝑠𝑠𝑠𝑠𝑆𝑆
)

((
𝑋𝑋 ≫
5) +
𝐾𝐾
[1]))
 
𝑋𝑋
=
𝑋𝑋
+ (((
𝐿𝐿 ≪
4) +
𝐾𝐾
[2])

(
𝐿𝐿
+
𝑠𝑠𝑠𝑠𝑆𝑆
)

((
𝐿𝐿 ≫
5) +
𝐾𝐾
[3]))
 
keyigi 
𝑆𝑆
 
shifrmatn = (
𝐿𝐿
,
𝑋𝑋
)
 
Bu yerda “

” amali sonni chapga surish amali va “

” amali uni o’nga surish 
amali hisoblanadi. Masalan, ikkilik ko’rinishdagi bir baytli son “10110101” ga teng 
bo’lsa, u holda ushbu sonni chapga 4 birlik surish natijasi “01010000” ga teng 
bo’ladi. Ushbu sonni 5 birlik o’nga surish natijasi esa “00000101” ga teng bo’ladi.
TEA algoritmi Feystel tarmog’iga asoslanmagan bo’lsada (Feystel tarmog’ida 
shifrlash va deshifrlash funksiyalari bir xil bo’ladi), deshifrlashda XOR amali 
o’rniga qo’shish yoki bo’lish amallaridan foydalanilmaydi. TEA algoritmining 
deshifrlash funksiyasi quyida keltirilgan. 
(
𝐾𝐾
[0],
𝐾𝐾
[1],
𝐾𝐾
[2],
𝐾𝐾
[3]) = 128 bitli kalit
 
(
𝐿𝐿
,
𝑋𝑋
) = shifr matn bloki (64 bit)
 
𝑑𝑑𝑒𝑒𝑒𝑒𝑆𝑆𝑎𝑎
= 0
𝑥𝑥
9
𝑒𝑒
3779
𝑎𝑎
9
 
𝑠𝑠𝑠𝑠𝑆𝑆
=
𝑑𝑑𝑒𝑒𝑒𝑒𝑆𝑆𝑎𝑎 ≪
5
 
𝑎𝑎𝑒𝑒𝑆𝑆
𝑆𝑆
= 1 dan 32 gacha
 
𝑋𝑋
=
𝑋𝑋 −
(((
𝐿𝐿 ≪
4) +
𝐾𝐾
[2])

(
𝐿𝐿
+
𝑠𝑠𝑠𝑠𝑆𝑆
)

((
𝐿𝐿 ≫
5) +
𝐾𝐾
[3]))
 
𝐿𝐿
=
𝐿𝐿 −
(((
𝑋𝑋 ≪
4) +
𝐾𝐾
[0])

(
𝑋𝑋
+
𝑠𝑠𝑠𝑠𝑆𝑆
)

((
𝑋𝑋 ≫
5) +
𝐾𝐾
[1]))
 
𝑠𝑠𝑠𝑠𝑆𝑆
=
𝑠𝑠𝑠𝑠𝑆𝑆 − 𝑑𝑑𝑒𝑒𝑒𝑒𝑆𝑆𝑎𝑎
 
keyigi 
𝑆𝑆
 
ochiq matn = (
𝐿𝐿
,
𝑋𝑋
)
 

Yüklə 5,01 Kb.

Dostları ilə paylaş:
1   ...   16   17   18   19   20   21   22   23   ...   149




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin