УДК 519.7
CA. Диченко, О.А. Финько
АЛГОРИТМ ГЕНЕРАЦИИ БЛОЧНОЙ ПСП, ОСНОВАННЫЙ НА ПРИМЕНЕНИИ ЛОГИКО-ЧИСЛОВЫХ ФОРМ
Обсуждается новый метод параллельной реализации псевдослучайных последовательностей ПСП, образуемых посредством комбинирующих генераторов ПСП. В статье развиваются ранее полученные результаты авторов по генерации ПСП вначале посредством, в общем случае, нелинейных логико-числовых полиномов, а затем и линейных логикочисловых полиномов. Суть новизны достигнутого результата заключается в реализации таких последовательностей (применительно к более общему случаю - комбинирующим генераторам) посредством линейных логико-числовых полиномов, которые отличаются от, в общем случае, нелинейных логико-числовых полиномов существенно более низкой сложностью реализации. Метрика сложности - длина (количество слагаемых) реализующих формул. Верхняя граница выигрыша составила (2An+1 )/(n+1) раз. Достигнутые результаты открывают новые пути для получения дальнейших результатов - повышения безопасности функционирования средств криптографической защиты информации за счет применения методов избыточного арифметического (числового) кодирования данных (обеспечения функционального диагностирования в реальном масштабе времени).
Двоичная псевдослучайная последовательность; комбинирующий генератор двоичной псевдослучайной последовательности; распараллеливание логических вычислений; логикочисловые формы; арифметический полином; линейный числовой полином; нелинейный числовой полином; криптография; шифры; шифрующая гамма.
S.A. Dichenko, O.A. Finko
ALGORITHM FOR GENERATING PSEUDORANDOM SEQUENCE OF BLOCK BASED ON THE USE LOGICAL-NUMERIC FORM
The new method of parallel realization of pseudorandom sequences of PRS constructed by means of combining PRS generators, in this article is discussed. Earlier received results of authors on PRS generation, in the beginning by means of, generally, nonlinear logic - numerical polynoms, and then and linear logic-numerical polynoms develop. The essence of novelty of the reached result consists in realization of such sequences (with reference to more general case to combining generators) by means of linear logic-numerical polynoms which differ from, generally, nonlinear logic-numerical polynoms essentially lower complexity of realization. The length (quantity composed) realizing formulas is a complexity metrics. The top border of a prize made (2An+1 )/(n+1) time. The reached results open new ways for receiving further results of increase of safety of functioning of means of cryptographic protection of information at the expense of application of methods of superfluous arithmetic (numerical) coding of data (ensuring functional diagnosing in real time).
Binary pseudorandom sequence; combining binary pseudorandom sequence generator; parallel computing logic; logic-numeric form; polynomial arithmetic; numerical polynomial linear; nonlinear numerical polynomial; cryptography; codes; ciphers gamma.
Введение. Генератор псевдослучайной последовательности (ПСП) имеет важнейшее значение для различных криптоалгоритмов и систем генерации ключевого материала [1—4]. Наиболее распространенными и проверенными практикой являются алгоритмы генерации ПСП, основанные на использовании рекуррентных логических выражениях и неприводимых полиномов [1—4].
В частности, наиболее простым по структуре является рекуррентный регистр сдвига с обратной связью, реализуемой некоторой функцией f, в результате работы которого последовательно с каждым тактом на выходе получаем один элемент ПСП (рис. 1).
I
ГГ
11
Рис. 1. Общий вид рекуррентного регистра сдвига с обратной связью
Для обеспечения максимальной длины периода ПСП используют рекуррентный регистр сдвига с обратной связью, реализуемой линейной функцией /, характеристический многочлен которого подобран по известным правилам.
Ужесточение требований к скорости шифрования и увеличение объема защищаемой информации вызывает необходимость построения параллельных алгоритмов генерации ПСП [1-6].
Из литературы известны различные методы распараллеливания алгоритма генерации ПСП, в частности с использованием логико-числовых форм, т.е. посредством применения линейных и нелинейных числовых полиномов.
Применение нелинейных числовых полиномов (НЧП) вызывает ряд трудностей, так как длина НЧП, равная 2п -1 (где п - степень многочлена), существенно возрастала с увеличением степеней характеристических многочленов, на основе которых строится генератор ПСП. А, как известно, для обеспечению безопасности функционирования средств криптографической защиты информации в целом используют именно генераторы ПСП, построенные на многочленах больших степеней.
Поэтому, применение линейных числовых полиномов (ЛЧП), длина которых значительно короче длины НЧП и составляет п +1, обеспечивает значительный выигрыш в скорости вычислений и, как следствие, является практически наиболее перспективным для дальнейшего использования в исследованиях.
В частности, метод распараллеливания алгоритма генерации двоичной ПСП с использованием ЛЧП представлен в [7].
Общая схема реализации метода представлена на рис. 2.
Целочисленные
коэффициенты
Вычисление 54 8 « И К <3
Я" м О
числового Ьн X и & ^ И
полинома 0 о оЗ 2 ■—
->
Рис. 2. Схема реализации ПСП ЛЧП
В [7] сам алгоритм генерации двоичной ПСП, подлежащий распараллеливанию, реализован посредством линейного рекуррентного регистра сдвига (ЛРРС).
Благодаря этому методу на выходе генератора мы получим не один, а целый блок элементов ПСП.
Кратко опишем этот метод.
На основе характеристического уравнения полинома (частный случай: образующий полином - трином)
Б( х) = хг + хк +1,
где г - степень тринома, г е N , 1 < к < г — 1, к е N, которое имеет вид:
а,. = а,+к—г Ф а,—г,
где а,, а,+к-г, а,—г е {0,1}; , > г ; г е N , построим систему характеристических уравнений для участка ПСП длины d:
а = аФ а ,
I 1+к-г 1-г7
аш = а;+к-г+1 Ф аi-г+l,
а+й-і = аі+к _і ©
где [а.
аі-1 ] - вектор начальных условий; [а і а{+
вектор участка ПСП; ак Є {0,1}; к = і - г +1,...,і + г -1.
Систему характеристических уравнений представим, как систему БФ, в свою очередь которую, используя правило представления БФ в базисе Q = {©,1} посредством одного ЛЧП [8-10], преобразуем в систему ЛЧП:
і -1
^ Ц —1
р (аі - г , аі - г+1 ,."'> аі-1 ) = =і—г8і ,гаг,
Ґ =і -г -1
^ ц-1
р+1 (аі-г , аі-г+1 ■’"., аі-1) = =і-г8
+1,Г Г
аг,
(1)
Ві+г-1,гаг,
-1(а1 -г , а,-г +1,..., а, -1) ,
где g . { (здесь и далее) принимает значение « 0 » или «1» в зависимости от вхож-
дения в ] -ый ЛЧП аГ;. ] = і, і +1,..., і + й -1
Результат вычисления ] -го ЛЧП системы (1) представим двоичным машин-
ным словом длины /. =
г ).
+1.
Далее систему (1) представим посредством одного ЛЧП вида:
і+г-1
Н (а-г, а-г+1,..., а-1) = Р (щ_г, а-г+1,..., ам) + ^ 2ъ Р (а-, а-г+1,..., а,.-1) =
= Ви-Л-г +... + 8і.і-1аі-1 +... + 2 і+' +... + а 1,
1в.+ , ,. а +... + 2
о і+й- 1,г_г г-г
\+й -1 в а = (2)
Оі+й-1,М і- 1
= КЛ-г + К г+1аі-г+1
ґ = і -г, і -г +1,..., і -1.
Таким образом, представленный метод позволяет с помощью одного ЛЧП реализовать блок ПСП длины й. Значения полученного блока ПСП будут являться начальным заполнением для ЛЧП, реализующего следующий блок последовательности длины равной й.
я=і+1
Однако свойства ЛРРС показывают, что, несмотря на достаточно большой период и хорошие статистические качества, линейные рекуррентные последовательности имеют очень простое строение. Поэтому в большинстве известных криптоалгоритмов используют различные способы усложнения аналитического строения линейных рекуррент [11].
Один из таких способов усложнения связан с использованием в одной схеме нескольких ЛРРС, объединенных одной общей функцией усложнения. В этом случае генератор ПСП называется комбинирующим, в результате работы которого последовательно с каждым тактом на выходе получаем один элемент ПСП [11] (рис. 3). и
рц Рч 0) >
2 о И ^
•у1 О
к 5 о Я
И пЗ
ч; «
<и ьч
а 5
к щ
НН М
Рис. 3. Общий вид комбинирующего генератора ПСП
Настоящая статья является продолжением работы [7]. В ней реализован метод распараллеливания алгоритма генерации ПСП, полученной на основе приме-
(у )
нения комбинирующего генератора ПСП, состоящего из двух и более г ЛРРС различной или равной длины (где у = 1, ..., т ), объединенных функцией усложнения (частный случай: функция усложнения - линейная).
Общая схема реализации метода представлена на рис. 4.
Рис. 4. Схема реализации ПСП ЛЧП
Цель статьи - распараллеливание алгоритма генерации ПСП с использованием ЛЧП, полученной на основе применении комбинирующего генератора ПСП.
Для каждого ЛРРС, входящего в состав комбинирующего генератора ПСП произведем ряд вычислений, описанных в [7], и получим систему ЛЧП (1), которую представим следующим образом:
Р(у)(ай,ай+1 аї-і)) = --гВ і,1
р +'1)( ай, а|-)+1,..., а1-Ь = 2 І, Ві+1, га1у),
(3)
Р +11(аїї, а--)+1,..., аі-і) = 2£_г Ві+й-1, ^).
Результат вычисления ] -го ЛЧП системы (3) можно представить двоичным м вида:
{ 2/<,)-1 ... 22 21 20
машинным словом вида:
Вес разряда
1 Значение разрядных / цифр числа
длины
+ 1.
Пример 1. При РУ' = 5 длина двоичного машинного слова равна I(у' = |_log2 5] +1 = 3, который примет вид:
22 21 20
1
0
(V )
г( V )
При этом результат вычисления БФ I: соответствует значению младшего
разряда двоичного представления результата вычисления Р■ .
Л
т
(V )
0
1
Р
( V )
И, таким образом, для размещения результатов вычисления всех й ЛЧП системы (3) в одном машинном слове необходимо произвести сдвиг влево результата вычисления . -го ЛЧП на количество разрядов занимаемых результатами вычислений предшествующих ему ЛЧП в порядке, указанном в системе (3). Получим
I(”)
З і+й-1
+1
(V )
і+й-1
Р
(V )
і+2
Р
і+1
Р
(V )
Пример 2. При Г) = 4, Р('') = 8, Р^) = 11, Р3(”) = 13, Р() = 15, получим
/1
1 1 1 1 1 1 0 1 1 0 1 1 1 0 0 0
212-15
28-13
24-11
20-8
По примеру (2) представим систему (3) посредством одного ЛЧП вида:
1
1
d —1
H(v)(a(v 1 a(v1 a(v)) = V 2'u'l(v) P(v) (a(v) a(v) a(v)) =
11 \ui —r ’ Ui —r+1 ’ * * * ’ Ui—\)/l ^ ri+su\ui—r ’ Ui—r+1’ * * * ’ Ui —1 /
u=0
= 2S0'l"gi,i - ..al-1+... + 2s0' 1,('р^ ,і-ій(І +... ... + 2Sil g,+1,і-A1-1 +... + 2Sil gi+i,i-icl-i +... ... + 2"-1'lW g,+d-1, i-ra^ +... + 2Sj-1',l-) g;+d -1, i-ia i- =
(4)
= Н а^ + Н a(V1 + + Н a(V1
Пі-гиі-г~ Пі-г+1иі-г+1 Т ••• Т пі-1иі-1
где £0 = 0; -1 +1; Н є г ; ґ = і - г, і - г +1,..., і -1.
Для всех т регистров сдвига, входящих в состав комбинирующего генератора ПСП, выполним преобразования (3), (4), получим общий ЛЧП (5):
(-)
(-)
-і\ !
н б,, (а(), а(1+1,..., 0—1;...; а™, C+i,..., а.:/) =
= 2s01 g и_4" +... + 2s01 *i,i-ia(-1 +... + 2'01 g i, i-ОС: +...
... + 2'0'l g;,;^:1:1 + ... + 2^ g^i-,0^ + ... + 2^ g,+1,i-lO1) + ...
...+2s1'1 gi+i,i—am+...+2''* g i+i, і -—а:1+...+2s-^ g_u _а>+... (5)
+ 2sd—1 "l g a(l) + + 2sd—1" l g a['m) +
•••TZ, Si+d —i,i—iUi—i^...^± Si+d —i,i—r^i—r
+ 2sd—1 lg a'm')= h('1)a('1) + h() a() + + h(1)a(1) +
^ s;+d —1,i—1Ui—1 ni—rUi—r~ ’ H—r+1 Wi—r+1 ~ T ni—1Ui—1 ^
+ h{m)a(m) + h(m) a{m 1 + + h(m)a(m 1 ... T Пі—rUi—rT !l;—r+1Ui—r+1 T ••• T ni—1Ui—1 ’
l = |_log2(r(1 +... + r(m1)J +1; h()є Z; t = i — r, i — г +1,..., і — 1; s0 = 0;
su = su-1 + 1
Таким образом, с помощью одного ЛЧП мы получим -й блок участка ПСП вида {a*, ^ ..., d*+ d —1}.
Представленный алгоритм реализован для комбинирующего генератора ПСП следующего вида (рис. 5):
(1) • • n(m) n(n
(n 7'
где
a
Рис. 5. Комбинирующий генератор ПСП (частный случай: образующий полином - трином)
1бЗ
*
При различных длинах регистров сдвига Г ( перед получением общего ЛЧП (5) необходимо выполнить выравнивание ПСП |а() , а^,а^.^} ЛРРС, состоящего из меньшего числа ячеек памяти, по отношению к ПСП к"0 ■ а;,. , о"г_1} ЛРРС, состоящего из большего числа ячеек памяти.
Числовая и логическая схемы реализации і -го блока ПСП представлены на рис. 6, 7.
/<‘> (я(1)) = а^ ®а«. ,
/( (Я(1)) = Я^_г+1 ® 41
ліі(я(і))=@;:1_г«,я!1)
=01 Я_>+1 ...
где йу’ = Я_ Я
Л)
аі_п
,
•
(1)
і _2
Ґ1)
аі_1
/ 1”) (а<">) = а(+")_г ®аН ,
II Т Ьн /+” (й<”>) = а!+1,1 ®а1_;+1,
/+”І1(Ж”>)=®;:1_г«;а!”
где а(т) -Ш а!_Г+1 ... а1-! ]
/*(3*) - а!1 ®.. ® а!”,
N /+1(3*) - а!+і ®. .® а!+1) ,
/і+«(2* ®... ® а!+;>-l
Ь и ч ... а+н ... а” . ай-]
а
:^-1
а
і +1
а
Рис. 6. Логическая схема реализации двоичной ПСП системой БФ
а(_)
—т/ я(1)(а(1)) - ^Г2‘-'1ар! (а(1)) и=0 нг^я} 2 и;_2 2
где а1 = [а(_) а(_)+1 ... ай ] а,-1 аі+^_1
. • : *
* * ✓ яобщ(а') = /=] ГМ ‘
аі+1
аі" 7 + 1 с 1 и N ш Т -с" и ч а Г
—т/ я;) (а")=(я” ) и=0 где «с") = [а(_’Г ай+1 ... ч|_1) ] ГМ • а(”) аі_2 а^ •
Рис. 7. Числовая схема реализации двоичной ПСП одним ЛЧП (где оператор маскирования ЕГ^Я} необходим для определения ; -го двоичного разряда)
Пример 3. На рис. 8 представлен комбинирующий генератор ПСП, состоящий из двух 3-х и 4-х разрядных ЛРРС, объединенных общей функцией усложнения (функция усложнения реализуется через сумматор по модулю два).
■а.
Рис. 8. Комбинирующий рекуррентный регистр сдвига
Подробно рассмотрим 3-хразрядный ЛРРС: Образующий трином имеет вид:
В ^ (х) = х3 + х +1,
характеристическое уравнение:
а
(!) - „(О
а г' © а1
і—3 і—2
,(!)
Система характеристических уравнений участка ПСП длины 7 имеет вид:
а(1 = а,(11 © а)
і -3
(!)
4+1=аЕ © аі-і, а()2 = ай © а1(1) , а(+> = а(!) © а(!)
Ч - 2’ (!)
і+3
а
(і)
+4
+1’
ай-1 © а(+2 ’
а
+5
(1)
а
(1) = а(1)
і+6
а}+з © а}
+3
(1) і+4'
Запишем систему характеристических уравнений, как систему БФ, с выраженными правыми частями равенств через начальные условия:
(1)
/і11 (а<-> ,.. ., а(-1) = а()з © ^ ,
/■((а(з,.. ., а() ) = ^ © ай ,
/(2 (а()з ,. .., а(\ ) = аЯ © а(1-2 © а
/((а(1-з ,. —1 = іа 3 © К
/л а-) ,. .., а() = а(^3 ,
(ай ,. .., а(-1 ) = а(—2,
, /і+б (а(-з , .., а()) ) = аЯ .
*
Получим систему ЛЧП:
Р(1) (4І •• ., аії) = а!-3 + а!!)2,
рЩ («1 . + =
р+‘2(а,(-3,. .., а(^1) = ай + а(-2 + а
< Р (1)(а (1) Ґг+3^м(-3’ •• ., «й)=а(-3+«й,
р'Д^Й,. ., а(^1)=а(-3,
Р+Ы-З,. ., аг(-1) = а^,
_ Р;+‘6(аЯ,. ... «-Ь = а,(-1
(1) 1-І ’
Так как длины ЛРРС различны и длина рассматриваемого ЛРРС короче, выполним выравнивание его выходной ПСП по отношению к ПСП второго ЛРРС. Система (3) примет вид:
Р+1 («“,..., а)-І)
(1)'
: а(1_{ + а)-1,
Р+1 (а)-3,..., а)-?) = а)-3 + а)-2 + а)-?
■.СО'
,(1)
,(1)
(1)
РI1] (а)-3,..., а)1}) = а)-3 + а)-1
(1)-
,(1)
,(1)
Р)|4(аН,..., а)-1) = а)-3,
ї(1)/
';+4'
ї(1)г л(1)
(1)'
,(1)
Р(а)-3,..., а)-1) = а)
,(1)
Р +1) (а)-3
>(1)г „(О
..., а£1):
,(1)'
а
Р+Х-З,..., а^-1) = а)-3 + а)-2
(1)
)-1
,(1)
(1)
Получим ЛЧП:
Н(1) (а^,АЦ) = (1054)16+ (1105)16+ (415)16АЦ,
где запись (...) 6 означает запись в 16-ричной системе счисления.
Для 4-х разрядного ЛРРС выполним преобразования аналогичные для 3-х разрядного, получим ЛЧП:
Н(2) (а<24 ,..., а®) = (41201)16а^ + (48209)16а£} + (41048)16а(?> + (8240)16а£}.
Получим общий ЛЧП (5):
Ио6щ(а«,..., а)-1; а^,..., а]-/) = (40248)16а^З + (41009)16а,- + (8049)16а,- +
,(1). „(2)
,(2) Л _
(1)
,(1)
+ (41201)16 а” + (48209)16 а^ + (41048)16 а^ + (8240)16 а”.
Пусть аг(13 = 0, а^2 = 1, = 1, = 1, = 0, = 0, = 1.
Тогда
Нобщ = (40248\6 • 0 + (41009)16 • 1 + (8049Хв • 1 + • 1 + (48209^ • 0 +
+ (41048)16 • 0 + (8240\6 -1 = (92493^ =
= (1 0 010 010 010 010 010 011 )2.
^ ^ ^ ЧН Ч-1
&+6 /г +5 /г +4 +3 +2 +1
2
Вывод. Разработан метод распараллеливания алгоритма генерации ПСП на основе представления систем БФ посредством ЛЧП. Решение необходимо для построения высокопроизводительных средств криптографической защиты информации.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Бабаш, А.В., Шанькин Г.П. Криптография / Под ред. В.П. Шерстюка, Э.А. Применко.
- М.: СОЛОН-ПРЕСС, 2007. - 512 с.
2. Тилборг. Основы криптологии. - М.: Мир, 2006. - 472 с.
3. Шнайер, Б. Практическая криптография. - М.: Вильямс, 2005. - 424 с.
4. Фороузан, Б.А. Криптография и безопасность сетей: Учеб. пособие: пер. с англ. под ред. А.Н. Берлина. - М.: Интернет-Университет Информационных Технологий: БИНОМ. Лаборатория знаний, 2010. - 784 с.
5. Вишневский А.К., Финько О.А. Реализация типовых функций гибридных криптосистем арифметико-логическими полиномами // Теория и техника радиосвязи. - 2011. - № 1.
- С. 32-36.
6. Вишневский А.К., Финько О.А. Параллельная реализация систем подстановок числовыми полиномами // V Международная конференция «Параллельные вычисления и задачи управления» (PAC0-2010). - М., 26-28 октября 2010.
7. Диченко С.А., Вишневский А.К., Финько О.А. Реализация двоичных псевдослучайных последовательностей линейными числовыми полиномами // Известия ЮФУ. Технические науки. - 2011. - № 12 (125). - С. 130-140.
8. Малюгин В.Д. Параллельные логические вычисления посредством арифметических полиномов / В.Д. Малюгин. - М.: Физматлит, 1997. - 192 с.
9. Финько, О.А. Реализация систем булевых функций большой размерности методами модулярной арифметики // Автоматика и телемеханика. - 2004. - № 6. - С. 37-60.
10. Yanushkevich L., Shmerko V., Lyshevski S. Logic design of nanoICs. CRC Press, 2005.
11. Алферов А.П., Зубов А.Ю., Кузьмин А.С., Черемушкин А.В. Основы криптографии: Учеб. пособие. - М.: Гелиос АРВ, 2001. - 480 с.
Статью рекомендовал к опубликованию д.т.н., профессор В.Н. Марков.
Диченко Сергей Александрович - Филиал Военной академии связи (г. Краснодар); e-mail: [email protected]; 350063, г. Краснодар, ул. Красина, 4; тел.: +79618588866; адъюнкт очной адъюнктуры.
Финько Олег Анатольевич - e-mail: [email protected]; тел.: +79615874848; профессор.
Dichenko Sergey Alexsandrovich - Branch of the Military Academy of Communications (Krasnodar); e-mail: dichenko.sa @yandex.ru; 4, Krasina, Krasnodar, 350063, Russia; phone: +79618588866; associate postgraduate full-time.
Finko Oleg Anatolievich - e-mail: [email protected]; phone: +79615874848; professor.
УДК 81.93.29
О.Ю. Пескова, Ю. Г. Халабурда
ПРИМЕНЕНИЕ СЕТЕВОЙ СТЕГАНОГРАФИИ ДЛЯ СКРЫТИЯ ДАННЫХ, ПЕРЕДАВАЕМЫХ ПО КАНАЛАМ СВЯЗИ*
Представлены основные понятия сетевой стеганографии, приведена классификация и рассмотрены базовые методы сетевой стеганографии. Наиболее подробно проанализированы методы модификации полей заголовков, методы 8СТГ-стеганографии, а также гибридные методы. Приведена сравнительная таблица характеристик рассмотренных
* Работа поддержана грантом РФФИ №10-07-00464-а.