67
7
АҒЫНДЫ ШИФРЛАР ЖӘНЕ КЕЗДЕЙСОҚ ТӘРІЗДЕС САНДАРДЫҢ
ГЕНЕРАТОРЛАРЫ
1 бөлім
Бұл бөлімнен нақты уақыт тәртібінде деректер берілгенде қалай шифрлау
орындалатының білуге болады.
Ағынды шифрлауда кездейсоқ кілттер генераторларының
пайдалану принциптері көрсетілген. Кездейсоқ тәріздес (псевдокездейсоқ) сандардың
кейбір қарапайым генераторлары қарастырылады: сызықтық конгруэнтты, кешігуі бар
Фибоначчи әдісі бойынша генератор, BBS алгоритм негізіндегі кездейсоқ тәріздес сандар
генераторы. Әрбір алгоритмның сипаттауы мысалмен бірге беріледі.
Бөлім мақсаты: «ағынды шифр» ұғымымен және ағынды шифрлауда кездейсоқ
тәріздес (псевдокездейсоқ) сандар генераторларының пайдалану принциптерімен таңысу.
7.1 Ағынды шифрлар
Блокты алгоритм белгілі бір ұзындығы бар блоктарды шифрлауға арналған. Бірақ,
деректерді блоктармен емес, мысалы, символдар бойынша шифрлаудың қажеті болу
мүмкін.
Ағынды шифр (stream cipher) кіру хабардың биттерін (немесе байттарын) бір-
бірден түрлендіріп бір операцияны
орындайды. Ағынды шифрлау алгоритмы хабарды
бүтін сандар блоктарға бөлуді қажет етпейді, сондықтан ол нақты уақытта істей алады.
Сонымен, егер символдар ағыны берілсе, әрбір символ шифрланып бірден беріледі.
Типті ағынды шифрдың жұмысы 7.1 суретте көрсетілген.
Сурет 7.1. Ағынды шифрдың жұмыс принципі
Кілттер генераторы биттер ағының
k
i
шығарады, олар гамма ретінде пайдаланатын
болады. Хабар көзі ашық мәтіннің
х
i
биттерін генерациялайды, олар гаммамен модулі 2
бойынша қосылады, нәтижесінде шифрланған хабардың
у
i
биттері алынады:
y
i
=
x
i
k
i
,
i = 1, 2,…,
n
Шифрмәтіннен
y
1
,
y
2
,...,
y
n
хабарды
x
1
,
x
2
,...,
x
n
қалпына келтіру үшін тура шифрлау
кезіндегідей кілттік тізбекті
k
1
генерациялау қажет
y
k
,...,
k
n
, және ашып оқу үшін
x
i
=
y
i
k
i
,
i = 1, 2,…,
n
формуланы пайдалану керек.
Әдетте бастапқы хабар мен кілттік тізбегі тәуелсіз бит ағыны болып табылады.
Сонымен, барлық ағынды шифрлар үшін шифрлайтын (және дешифрлайтын) түрлендіруі
бірдей болғандықтан, олар тек кілттер генераторын жасау тәсілдерімен ажыратылады.
Осыдан, жүйенің қауіпсіздігі кілттер ағын генератордың қасиетіне толық тәуелді болады.
Егер кілттер ағын генераторы тек нөлден (немесе бірден) тұратын тізбекті жасап шығарса,
онда шифрланған хабар тура бастапқы биттер ағыны сияқты болады. Егер гамма ретінде
бір символ (мысалы, сегіз битты) пайдаланса, онда шифрланған хабар бастапқыға
ұқсамасада, жүйенің қауіпсіздігі нашар болады. Бұл жағдайда мәтін ұзындығы бойынша