Устройство криптографической обработки, способ построения алгоритма криптографической обработки, способ криптографической обработки и компьютерная программа

Иллюстрации

Показать все

Изобретение относится к секретной связи, а именно, к устройству и способу криптографической обработки. Техническим результатом является повышение устойчивости к дифференциальному и линейному криптоанализу. Технический результат достигается тем, что в устройстве и способе криптографической обработки применяют расширенную структуру Фейстеля, имеющую количество строк данных d, установленное как целое число, удовлетворяющее условию d≥3. В упомянутой структуре Фейстеля множество разных матриц избирательно применяют при обработке линейного преобразования, выполняемой в блоках F-функции, при этом выполняется условие, в котором минимальное количество ответвлений для всех строк данных, соответствующих матрицам линейного преобразования, равно или больше, чем заданное значение, причем минимальное количество ответвлений для всех строк данных выбирают среди минимальных количеств ответвлений, соответствующих строкам данных. 4 н. и 20 з.п. ф-лы, 20 ил.

Реферат

Текст описания приведен в факсимильном виде.

1. Устройство криптографической обработки, отличающееся тем, что содержит блок криптографической обработки, который выполняет обработку блочного шифра типа Фейстеля с общим ключом, состоящую в многократном выполнении F-функции SP-типа в множестве раундов, причем F-функция SP-типа выполняет обработку преобразования данных, включающую в себя обработку нелинейного преобразования и обработку линейного преобразования, в котором блок криптографической обработки выполнен с возможностью выполнения криптографической обработки, в которой применяют расширенную структуру Фейстеля, имеющую количество строк данных d, которое установлено как целое число, удовлетворяющее условию d≥3, выполненную с возможностью избирательно применять множество из, по меньшей мере, двух или больше различных матриц при обработке линейного преобразования, которую выполняют в F-функциях в соответствующих раундах,множество из двух или больше различных матриц, представляющих собой множество различных матриц, удовлетворяющих условию, в соответствии с которым минимальное количество ответвлений для всех строк данных равно или больше, чем заданное значение, минимальное количество ответвлений для всех строк данных выбирают среди минимальных количеств ответвлений, соответствующих строкам данных, причем каждое из минимальных количеств ответвлений соответствует строкам данных, основанным на матрицах линейного преобразования, включенных в F-функции, которые вводят в соответствующую строку данных в расширенной структуре Фейстеля, и выполненное так, что множество различных матриц многократно компонуют в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля.

2. Устройство криптографической обработки по п.1, отличающееся тем, что множество различных матриц, которые используются в блоке криптографической обработки, представляют собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений [BkD] для всех строк данных равно или больше трех, минимальное количество ответвлений [ВkD] для всех строк данных, выбираемых среди минимального количества ответвлений [BkD(s(i))], соответствующих строкам данных, причем каждому из минимальных количеств ответвлений [BkD(s(i))]соответствуют строки данных, рассчитанные на основе матриц линейного преобразования, включенных в k (где k представляет собой целое число, равное или большее двух) непрерывных F-функций, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

3. Устройство криптографической обработки по п.1, отличающееся тем, что множество различных матриц, которые используются в блоке криптографической обработки, представляет собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений [В2D] для всех строк данных равно или больше трех, минимальное количество ответвлений [В2D] для всех строк данных, выбираемых среди минимальных количеств ответвлений [В2D(s(i))], соответствуетстрокам данных, причем каждое из минимальных количеств ответвлений [B2D(s(i))]соответствует строкам данных, рассчитанным на основе матриц линейного преобразования, включенных в две непрерывные F-функции, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

4. Устройство криптографической обработки по п.1, отличающееся тем, что множество различных матриц, которые используют в блоке криптографической обработки, представляет собой множество различных матриц, удовлетворяющих условию, вкотором минимальное количество ответвлений [В2L] для всех строк данных равно или больше трех, минимальное количество ответвлений [B2L] для всех строк данных, выбираемых среди минимальных количеств ответвлений [B2L(s(i))], соответствует строкам данных, причем каждое из минимальных количеств ответвлений [B2L(s(i))] соответствует строкам данных, рассчитанным на основе матриц линейного преобразования, включенных в две непрерывные F-функции, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

5. Устройство криптографической обработки по п.1, отличающееся тем, что, когда множество разных матриц обозначено как n (где n представляет собой целое число, равное или большее двух) различных матриц, то естьM0, M1,…Mn-1,блок криптографической обработки выполнен так, что различные матрицы М0, M1,…Mn-1 многократноскомпонованы в определенном порядке в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля.

6. Устройство криптографической обработки по любому из пп.1-5, отличающееся тем, чтоблок криптографической обработкивыполнен с возможностью выполнения криптографической обработки, в которой применяют расширенную структуру Фейстеля, которая выполняет только одну F-функцию в одном раунде.

7. Устройство криптографической обработки по любому из пп.1-5, отличающееся тем, чтоблок криптографической обработкивыполнен с возможностью выполнения криптографической обработки, в которой применяют расширенную структуру Фейстеля, которая выполняет множество F-функций параллельно в одном раунде.

8. Устройство криптографической обработки по любому из пп.1-5,отличающееся тем, чтоблок криптографической обработкивыполнен с возможностью выполнения, когда а представляет собой любое целое число, удовлетворяющее условию а≥2, и х представляет собой любое целое число, удовлетворяющее условию х≥1, криптографической обработки, к которой применяют расширенную структуру Фейстеля, в которой используется а типов F-функций, и которая имеет количество строк данных d, которое установлено как d=2ax, причем а типов F-функций выполняют различную обработку линейного преобразования с использованием множества различных матриц, ивыполнен с возможностью выполнения в равной мере х частей каждого из типов (а типов) F-функций в одном раунде.

9. Устройство криптографической обработки по п.8, отличающееся тем, что блок криптографической обработки выполнен так, что он включает в себя модуль выполнения F-функции, который выполняет ах F-функций, которые выполняют параллельно в одном раунде; и модуль управления, который выполняет управление вводом/выводом для модуля выполнения F-функции.

10. Устройство криптографической обработки по любому из пп.1-5, отличающееся тем, что блок криптографической обработки включает в себя:множество модулей выполнения F-функций, которые выполняют различную обработку линейного преобразования, с использованием множества различных матриц; имодуль управления, который меняет последовательность использования множества модулей выполнения F-функций, в соответствии с установкой,в котором модуль управлениявыполнен с возможностью избирательного выполнения любой из криптографической обработки (a), (b1) и (b2), то есть(а) криптографической обработки с использованием структуры Фейстеля, имеющей количество строк данных d, которое установлено как d=3,(b1) криптографической обработки, в которой используется расширенная структура Фейстеля, имеющая количество строк данных d, которое установлено как любое число, удовлетворяющее условию d≥3, и в которой только одну F-функцию разрешено выполнять в каждом раунде, или(b2) криптографической обработки, в которой используется расширенная структура Фейстеля, имеющая количество строк данных d, которое установлено как любое число, удовлетворяющее условию d≥3, и в котором множество F-функций разрешено выполнять параллельно в каждом раунде.

11. Устройство криптографической обработки по п.10, отличающееся тем, что модуль управлениявыполнен с возможностью выбора режима обработки, предназначенного для выполнения в соответствии с длиной в битах данных, которые требуется подвергнуть обработке шифровании или дешифрования.

12. Способ криптографической обработки, предназначенный для выполнения криптографической обработки в устройстве криптографической обработки, причем способ отличается тем, что он содержитэтап криптографической обработки, состоящий в выполнении обработки блочного шифра типа Фейстеля с общим ключом, при котором блок криптографической обработки повторяет F-функцию SP-типа в множестве раундов, причем F-функция SP-типа выполняет обработку преобразования данных, включающую в себя обработку нелинейного преобразования и обработку линейного преобразования,в котором этап криптографической обработкипредставляет собой этап выполнения криптографической обработки, в котором применяют расширенную структуру Фейстеля, имеющую количество строк данных d, которое установлено как целое число, удовлетворяющее условию d≥3, и включает в себя этап операции, состоящий в выполнении операций, в котором множество, состоящее из, по меньшей мере, двух или больше различных матриц, избирательно применяют при обработке линейного преобразования, которую выполняют в F-функциях в соответствующих раундах, в котором множество различных матриц, которые применяют на этапе операции, представляет собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений для всех строк данных равно или больше, чем заданное значение, минимальное количество ответвлений для всех строк данных выбирают среди минимальных количеств ответвлений, соответствующих строкам данных, причем каждому из минимальных количеств ответвлений соответствуют строки данных, основанные на матрицах линейного преобразования, включенных в F-функции, которые вводят в соответствующую строку данных в расширенной структуре Фейстеля, и в котором этап операциипредставляет собой этап выполнения операций линейного преобразования на основе множества различных матриц в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля.

13. Способ криптографической обработки по п.12, отличающийся тем, что множество различных матриц представляет собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений [BkD] для всех строк данных равно или больше трех, минимальное количество ответвлений [ВkD] для всех строк данных, выбираемых среди минимальных количеств ответвлений [BkD(s(i))], соответствует строкам данных, причем каждому из минимальных количеств ответвлений [BkD(s(i))]соответствуют строки данных, рассчитанные на основе матриц линейного преобразования, включенных в k (где k представляет собой целое число, равное или большее двух) непрерывных F-функций, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

14. Способ криптографической обработки по п.12, отличающийся тем, что множество различных матриц представляет собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений [В2D] для всех строк данных равно или больше трех, минимальное количество ответвлений [В2D] для всех строк данных, выбираемых среди минимальных количеств ответвлений [В2D(s(i))], соответствует строкам данных, причем каждому из минимальных количеств ответвлений [В2D(s(i))]соответствуют строки данных, рассчитанные на основе матриц линейного преобразования, включенных в две непрерывные F-функции, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

15. Способ криптографической обработки по п.12, отличающийся тем, что множество различных матрицпредставляет собой множество различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений [В2L] для всех строк данных равно или больше трех, причем минимальное количество ответвлений [В2L] для всех строк данныхвыбирают среди минимальных количеств ответвлений [В2L(s(i))], соответствующих строкам данных, каждому из минимальных количеств ответвлений [B2L(s(i))]соответствуют строки данных, рассчитанные на основе матриц линейного преобразования, включенных в две непрерывные F-функции, которые вводят в соответствующую строку s(i) данных в расширенной структуре Фейстеля.

16. Способ криптографической обработки по п.12, отличающийся тем, что, когда множество различных матриц обозначено как n (где n представляет собойцелое число, равное или большее двух), разных матриц, то естьM0, M1, …Mn-1,этап операции представляет собойэтап многократного выполнения различных матриц M0, M1, …Mn-1 в определенном порядке в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля.

17. Способ криптографической обработки по любому из пп.12-16, отличающийся тем, что этап криптографической обработки представляет собойэтап выполнения криптографической обработки, в котором применяют расширенную структуру Фейстеля, которая выполняет только одну F-функцию в одном раунде.

18. Способ криптографической обработки по любому из пп.12-16, отличающийся тем, что этап криптографической обработки представляет собойэтап выполнения криптографической обработки, в которой применяют расширенную структуру Фейстеля, которая выполняет множество F-функций параллельно в одном раунде.

19. Способ криптографической обработки по любому из пп.12-16, отличающийся тем, что этап криптографической обработки представляет собой этап выполнения, когда а представляет собой любое целое число, удовлетворяющее условию а≥2, и х представляет собой любое целое число, удовлетворяющее условию х≥1, криптографической обработки, в которой применяют расширенную структуру Фейстеля, в которой используют а типов F-функций и которая имеет количество строк данных d, которое установлено как d=2ax, а типов F-функций выполняют различную обработку линейного преобразования, используя множество различных матриц, и этап выполнения равных х частей каждого из типов (а типов) F-функций в одном раунде.

20. Способ криптографической обработки по п.19, отличающийся тем, что этап криптографической обработки представляет собойэтап выполнения криптографической обработки, в которой применяют модуль выполнения F-функции, который выполняет ах F-функций, выполняемых параллельно в одном раунде, в соответствии с управлением, выполняемым модулем управления, который выполняет управление вводом/выводом данных для модуля выполнения F -функции.

21. Способ криптографической обработки по любому из пп.12-16, отличающийся тем, чтоэтап криптографической обработки представляет собой этап выполнения криптографической обработки путем использования множества модулей выполнения F-функций, которые выполняют разную обработку линейного преобразования, используя множество различных матриц, и путем использования модуля управления, который изменяет последовательность использования множества модулей выполнения F-функции, в соответствии с установкой, в котором этап криптографической обработки представляет собой этап в соответствии с управлением, выполняемым модулем управления, избирательного выполнения любой криптографической обработки (а), (b1) и (b2), то есть (а) криптографической обработки с использованием структуры Фейстеля, имеющей определенное количество строк d данных, которое установлено как d=3, (b1) криптографической обработки, в которой используется расширенная структура Фейстеля, имеющая количество строк d данных, которое установлено равным любому числу, удовлетворяющему условию d≥3, и в которой разрешено использовать только одну F-функцию, выполняемую в каждом раунде, или(b2) криптографической обработки, в которой используют расширенную структуру Фейстеля, имеющую количество строк d данных, которое установлено равным любому числу, удовлетворяющему условию d≥3, и в которой множество F-функций разрешено выполнять параллельно в каждом раунде.

22. Способ криптографической обработки по п.21, отличающийся тем, что модуль управления выбирает режим обработки для выполнения в соответствии с длиной в битах данных, которые должны быть подвергнуты обработке шифрования или дешифрования.

23. Носитель записи, содержащий записанную на нем программу, при выполнении которой устройством криптографической обработки оно обеспечивает выполнение способа криптографической обработки, причем способ криптографической обработки содержит этап криптографической обработки, состоящий в обеспечении выполнения блоком криптографической обработки обработки блочного шифра типа Фейстеля с общим ключом, состоящей в многократном применении F-функции SP-типа в множестве раундов, причем F-функция SP-типа выполняет обработку преобразования данных, включающую в себя обработку нелинейного преобразования и обработку линейного преобразования,в котором этап криптографической обработки представляет собой этап, обеспечивающий выполнение блоком криптографической обработки криптографической обработки, в которой применяют расширенную структуру Фейстеля, имеющую количество строк данных d, которое установлено как целое число, удовлетворяющее условию d≥3, и включает в себя этап операции, состоящий в выполнении операций, в котором множество из, по меньшей мере, двух или больше разных матриц избирательно применяют к обработке линейного преобразования, которую выполняют в F-функциях в соответствующих раундах,в котором множество различных матриц, которые применяют на этапе операции, представляет собой множество разных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений для всех строк данных равно или больше, чем заданное значение, минимальное количество ответвлений для всех строк данных, выбираемых среди минимального количества ответвлений, соответствуют строкам данных, каждое из минимальных количеств ответвлений соответствует строкам данных, основанных на матрицах линейного преобразования, включенных в F-функции, которые вводят в соответствующую строку данных в расширенной структуре Фейстеля, ив котором этап операции представляет собой этап выполнения операций линейного преобразования на основе множества различных матриц в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля.

24. Носитель записи, содержащий записанную на нем программу, при выполнении которой устройством обработки информации оно обеспечивает выполнение способа построения алгоритма криптографической обработки, причем способ построения алгоритма криптографической обработки содержит:этап определения матрицы, состоящий в обеспечении, в конфигурации алгоритма криптографической обработки, в которой применяют расширенную структуру Фейстеля, имеющую количество строк данных d, которое установлено как целое число, удовлетворяющее условию d≥3, определения модулем управления, предусмотренным в устройстве обработки информации, множества из, по меньшей мере, двух или больше различных матриц, которые применяют в обработке линейного преобразования в F-функциях, в соответствующих раундах; иэтап установки матрицы, состоящий в обеспечении многократного размещения модулем управления множества различных матриц, которые определены на этапе определения матрицы, в F-функциях, которые вводят в соответствующие строки данных в расширенной структуре Фейстеля, в которой этап определения матрицы представляет собойэтап выполнения обработки определения, в качестве множества из двух или больше разных матриц, как матриц, которые должны применяться, множества различных матриц, удовлетворяющих условию, в котором минимальное количество ответвлений для всех строк данных равно или больше, чем заданное значение, минимальное количество ответвлений для всех строк данных выбирают среди минимальных количеств ответвлений, соответствующих строкам данных, причем каждое из минимальных количеств ответвлений соответствует строкам данных, на основе матриц линейного преобразования, включенных в F-функции, которые вводят в соответствующую строку данных в расширенной структуре Фейстеля.