Стохастические генераторы псевдослучайных последовательностей

Стохастические генераторы ПСП с многораундовой функцией обратной связи


Одной из типовых структур, использующихся для построения многораундовых функций обратной связи генераторов ПСП, является квадрат (см. главу 1). Рассмотрим вариант схемы с подобной структурой на основе R-блоков. Входной блок разрядностью 128 бит и все промежуточные результаты его преобразования представляются двумерным массивом байтов размерностью 4 ? 4, вид этого массива показан на рис. 3.20, а, где aij – элемент массива (байт), находящийся на пересечении i-й строки и j-го столбца,

. Преобразование (рис. 3.20, б) суть многократное повторение одного и того же раунда, состоящего из трех операций:
  • перемешивание строк;

  • перемешивание столбцов;

    стохастическое преобразование байтов блока с использованием элементов (байтов) раундового ключа.

На рис. 3.21 показана схема операции стохастического преобразования байтов aij с использованием блоков стохастического R1 преобразования, параметрами преобразования являются соответствующие байты kij раундового ключа,

,
, i – номер строки, j – номер столбца, a(ij – преобразованный байт, т. е. a(ij = R1(aij, kij).

На рис. 3.22 показаны варианты 4-тактного перемешивания строк

ai3 ai2 ai1 ai0,

,

с использованием блоков R2 – R5. На рис. 3.23 – варианты 4?тактного перемешивания столбцов

a3j a2j a1j a0j,

,

с использованием блоков R6 – R9. Начальное состояние Q3 Q2 Q1Q0 регистров при преобразовании строк (столбцов) равно байтам строки (столбца) или соответствующим байтам ключа. Байты ключа в первом случае или байты строк (столбцов) во втором случае поступают на вход схем последовательно: в первом такте 3-й байт, во втором – 2-й, в третьем – 1-й и в четвертом 0-й.


Рис. 3.20. Принцип построения функции обратной связи генератора ПСП. Структура блока данных – а; процедура преобразования блока данных – б


Рис. 3.21. Раундовая операция стохастического преобразования байтов


Рис. 3.22. Варианты раундовой операции стохастического преобразования строк


Рис. 3.23. Варианты раундовой операции стохастического преобразования столбцов


На рис. 3.24, а показана схема формирования раундовых ключей из исходного 128-разрядного ключа, где ki – 32-разрядные элементы ключа (столбцы); начальное заполнение генератора раундовых ключей равно k3 k2 k1 k0, т. е. исходному ключу. Функция F обратной связи зависит от индекса i: при i = 4n – 1, где n – натуральное, схема преобразования F показана на рис. 3.24, б, где con3r con2r con1r con0r – байты 32-разрядной константы (r – номер 128-разрядного ключевого элемента), в противном случае блок F осуществляет простую передачу 32-разрядного входного набора на выход без изменения. В качестве r-й константы можно использовать, например, состояние 32-разрядного LFSR в r-м такте его работы.



Рис. 3.24. Формирование раундовых ключей:
схема формирования – а; схема 4-тактного преобразования F – б


Можно предложить следующие варианты заполнения таблиц Н 1 – Н 9:


  • фиксированные таблицы стохастического преобразования;


  • таблицы, перемешанные с использованием исходной ключевой информации одним из указанных в разделе 3.2 способов.


При отсутствии особых требований к быстродействию рассмотренного генератора для повышения его криптостойкости можно дополнительно рекомендовать во втором случае перемешивание таблиц преобразования R-блоков после каждого их использования.


Содержание раздела