Главная / Каталог

Баричев С. Криптография без секретов

Датчики М-последовательностей

М-последовательности также популярны, благодаря относительной легкости их реализации.

М-последовательности представляют собой линейные рекуррентные последовательности максимального периода, формируемые k-разрядными генераторами на основе регистров сдвига. На каждом такте поступивший бит сдвигает k предыдущих и к нему добавляется их сумма по модулю 2. Вытесняемый бит добавляется к гамме.

Строго это можно представить в виде следующих отношений:

r1:=r0 r2:=r1 ... rk-1:=rk-2

r0:=a0 r1 ( a1 r2 ( ... ( ak-2 rk-1

Гi:= rk-

Здесь r0 r1 ... rk-1 - k однобитных регистров, a0 a1 ... ak-1 - коэффициенты неприводимого двоичного полинома степени k-1. Гi - i-е значение выходной гаммы.

Период М-последовательности исходя из ее свойств равен 2k-1.

Другим важным свойством М-последовательности является объем ансамбля, т.е. количество различных М-последовательностей для заданного k. Эта характеристика приведена в таблице:

k

Объем ансамбля

5

6

6

8

7

18

8

16

9

48

10

60

16

2048

Очевидно, что такие объемы ансамблей последовательности неприемлемы.

Поэтому на практике часто используют последовательности Голда, образующиеся суммированием нескольких М-последовательно​стей. Объем ансамблей этих последовательностей на несколько порядков превосходят объемы ансамблей порождающих М-последовательностей. Так при k=10 ансамбль увеличивается от 1023 (М-последовательности) до 388000.

Также перспективными представляются нелинейные датчики ПСП (например сдвиговые регистры с элементом И в цепи обратной связи), однако их свойства еще недостаточно изучены.

Воз​мож​ны и дру​гие, бо​лее слож​ные ва​ри​ан​ты вы​бо​ра по​ро​ж​даю​щих чи​сел для гам​мы шиф​ра.

Шиф​ро​ва​ние с по​мо​щью дат​чи​ка ПСЧ яв​ля​ет​ся до​воль​но рас​про​стра​нен​ным крип​то​гра​фи​че​ским ме​то​дом. Во мно​гом ка​че​ст​во шиф​ра, по​стро​ен​но​го на ос​но​ве дат​чи​ка ПСЧ, оп​ре​де​ля​ет​ся не толь​ко и не столь​ко ха​рак​те​ри​сти​ка​ми дат​чи​ка, сколь​ко ал​го​рит​мом по​лу​че​ния гам​мы. Один из фун​да​мен​таль​ных прин​ци​пов крип​то​ло​ги​че​ской прак​ти​ки гла​сит, да​же слож​ные шиф​ры мо​гут быть очень чув​ст​ви​тель​ны к про​стым воз​дей​ст​ви​ям.

Стан​дарт шиф​ро​ва​ния дан​ных ГОСТ 28147-89

Важ​ной за​да​чей в обес​пе​че​нии га​ран​ти​ро​ван​ной безо​пас​но​сти ин​фор​ма​ции в ИС яв​ля​ет​ся раз​ра​бот​ка и ис​поль​зо​ва​ния стан​дарт​ных ал​го​рит​мов шиф​ро​ва​ния дан​ных. Пер​вым сре​ди по​доб​ных стан​дар​тов стал аме​ри​кан​ский DES, пред​став​ляю​щий со​бой по​сле​до​ва​тель​ное ис​поль​зо​ва​ние за​мен и пе​ре​ста​но​вок. В на​стоя​щее вре​мя все ча​ще го​во​рят о не​оп​рав​дан​ной слож​но​сти и не​вы​со​кой крип​то​стой​ко​сти. На прак​ти​ке при​хо​дит​ся ис​поль​зо​вать его мо​ди​фи​ка​ции.

Бо​лее эф​фек​тив​ным яв​ля​ет​ся оте​че​ст​вен​ный стан​дарт шиф​ро​ва​ния дан​ных.

Он ре​ко​мен​до​ван к ис​поль​зо​ва​нию для за​щи​ты лю​бых дан​ных, пред​став​лен​ных в ви​де дво​ич​но​го ко​да, хо​тя не ис​клю​ча​ют​ся и дру​гие ме​то​ды шиф​ро​ва​ния. Дан​ный стан​дарт фор​ми​ро​вал​ся с уче​том ми​ро​во​го опы​та, и в ча​ст​но​сти, бы​ли при​ня​ты во вни​ма​ние не​дос​тат​ки и не​реа​ли​зо​ван​ные воз​мож​но​сти ал​го​рит​ма DES, по​это​му ис​поль​зо​ва​ние стан​дар​та ГОСТ пред​поч​ти​тель​нее. Ал​го​ритм дос​та​точ​но сло​жен и ни​же бу​дет опи​са​на в ос​нов​ном его кон​цеп​ция.

Вве​дем ас​со​циа​тив​ную опе​ра​цию кон​ка​те​на​ции, ис​поль​зуя для нее муль​ти​п​ли​ка​тив​ную за​пись. Кро​ме то​го бу​дем ис​поль​зо​вать сле​дую​щие опе​ра​ции сло​же​ния:

A(B - побитовое сложение по модулю 2;

A[+]B - сложение по модулю 232;

A{+}B - сложение по модулю 232-1;.

Алгоритм криптографического преобразования предусматривает несколько режимов работы. Во всех режимах используется ключ W длиной 256 бит, представляемый в виде восьми 32-разрядных чисел x(i).

W=X(7)X(6)X(5)X(4)X(3)X(2)X(1)X(0)

Для дешифрования используется тот же ключ, но процесс дешифрования является инверсным по отношению к исходному.

Самый простой из возможных режимов - замена.

Пусть открытые блоки разбиты на блоки по 64 бит в каждом, которые обозначим как T(j).

Очередная последовательность бит T(j) разделяется на две последовательности B(0) и A(0) по 32 бита (правый и левый блоки). Далее выполняется итеративный процесс шифрования описываемый следующими формулами, вид который зависит от :i: