Устройство для управляемого преобразования двоичных данных

Реферат

 

Изобретение относится к области электросвязи, а именно к области криптографических устройств для защиты информации, передаваемой по телекоммуникационным сетям. Техническим результатом является обеспечение прямого и обратного преобразования n-разрядного двоичного вектора. Устройство состоит из блоков управляемого преобразования, блоков фиксированного преобразования и р блоков выбора типов преобразования. 4 з.п. ф-лы, 11 ил.

Изобретение относится к области электросвязи и вычислительной техники, а именно к техническим средствам криптографического преобразования двоичных данных, в частности, для защиты информации, передаваемой по телекоммуникационным сетям.

Известны устройства для преобразования двоичных данных. В работе John В. Kam, George I. Davida "Structured design of Substitution-Permutation encryption networks" IEEE Transactions on computers, vol. c-28, Nr.10, October 1979, p.747-751, Fig.2 описано устройство для управляемого преобразования двоичных данных. Устройство состоит из трех блоков управляемого преобразования (БУП) и двух блоков фиксированного преобразования (БФП). Каждый БУП состоит из трех управляемых элементов (УЭ), имеющих 3-разрядные информационные входы и выходы и одноразрядные управляющие входы. Информационные 9-разрядные выходы БУП подключены к соответствующим 9-разрядным входам БФП, выходы которых в свою очередь подключены к 9-разрядным входам БУП. Информационные вход первого БУП и выход третьего БУП являются 9-разрядными информационными входом и выходом устройства. Совокупность управляющих входов УЭ в каждом БУП является его управляющим входом. В свою очередь, управляющие входы всех БУП являются 9-разрядным управляющим входом устройства.

Однако известное устройство имеет недостатки:

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

2. Нетехнологичность изготовления, обусловленная необходимостью использования БУП с различной разрядностью информационного входа при построении устройств с информационным входом, размер которого соответствует типовому размеру блоков данных, а именно равен натуральной степени числа 2, т. е. равен 2h, где h = 3, 4, 5,... .

Известно также устройство для преобразования двоичных данных по пат. РФ №2140715, МПК H 04 L 9/28, опубл. 27.10.99. Известное устройство состоит из w 2n-разрядных последовательно соединенных сумматоров и, по крайней мере, одного узла перестановок, который выполнен в виде узла управляемых перестановок. Информационный вход узла перестановок является управляющим входом устройства, а его выход является вторым выходом р-го сумматора, где 1 р w.

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

Наиболее близким по своей технической сущности к заявленному является устройство для управляемого преобразования двоичных данных, описанное в книге: Молдовян А.А., Молдовян Н.А., Гуц Н.Д., Изотов Б.В. Криптография: скоростные шифры. - СПб.: БХВ-Петербург, 2002, с.174-176, рис. 3.5.

Устройство-прототип состоит из S 2 блоков управляемого преобразования (БУП), S-1 блоков фиксированного преобразования (БФП) и снабжено n-разрядными, где n 4, информационными входом и выходом и w-разрядным, где m 4, управляющим входом. Информационный n-разрядный выход i-го, где i= 1,2,... , S-1, БУП подключен к i-разрядному входу i-го БФП, n-разрядный выход которого подключен к n-разрядному информационному входу (i+1)-го БУП. Каждый i-й БУП снабжен mi-разрядным управляющим входом, а n-разрядные информационные вход первого и выход S-го БУП являются n-разрядными информационными соответственно входом и выходом устройства.

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

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

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

Поставленная цель достигается тем, что в известном устройстве для управляемого преобразования двоичных данных, содержащем S 2 БУП, S-1 БФП и снабженным n-разрядными, где n 4, информационными входом и выходом, и m-разрядным, где m 4, управляющим входом, n-разрядный информационный выход i-го, где i= 1,2,... , S-1, БУП подключен к n-разрядному входу i-го БФП, n-разрядный выход которого подключен к n-разрядному информационному входу i+1-го БУП, причем каждый i-й БУП снабжен mi-разрядным управляющим входом, а n-разрядные информационные вход первого и выход S-го БУП являются n-разрядными информационными соответственно входом и выходом устройства, дополнительно введены р блоков выбора типа преобразования (БВТП), где р=S/2 при S четном и р=(S-1)/2 при S нечетном. Каждый j-й, где j= 1, 2,... ,р, БВТП снабжен первым и вторым mj-разрядными управляющими входами, первым и вторым mj-разрядными управляющими выходами и входом управления типом преобразования. Первый и второй mj-разрядные управляющие выходы j-го БВТП подключены к mj-разрядным управляющим входам соответственно j-го и [(S+1)-j]-го БУП. При S четном совокупность mj-разрядных управляющих первых и вторых входов р БВТП являются m-разрядным управляющим входом устройства, т.е. . При нечетном S эта совокупность включает в себя дополнительно mр+1-разрядный управляющий вход (р+1)-го БУП, т.е.

Входы управления типом преобразования всех БВТП объединены и являются входом управления типом преобразования устройства. БУП с номерами i и (S+1-i), так же как и БФП с номерами i и (S-i), выполнены взаимно обратимыми. Причем при S четном S/2-й БФП и при S нечетном [(S+1)/2]-й БУП выполнены внутренне самообратимыми.

БУП состоит из Z 2 управляемых элементов (УЭ). Каждый УЭ снабжен t-разрядными, где 1=2, 3, информационными входом и выходом и w-разрядным, где w=1, 2, управляющим входом. Совокупности информационных входов, выходов и управляющих входов всех Z УЭ являются соответственно n-разрядными информационными входом, выходом и mj-разрядным управляющим входом БУП.

БВТП состоит из mj управляемых переключателей (УП). Каждый УП снабжен первым и вторым входами, первым и вторым выходами и входом управления коммутацией. Совокупность первых и вторых входов и первых и вторых выходов всех управляемых переключателей является соответственно первым и вторым mj-разрядными управляющими входами и первым и вторым mj-разрядными управляющими выходами БВТП. Входы управления коммутацией mj управляемых переключателей объединены и являются входом управления типом преобразования БВТП.

Каждый УП состоит из первого, второго, третьего и четвертого элементов И и первого и второго элементов ИЛИ. Первые входы первого и второго элементов И объединены и являются первым входом УП, а первые входы третьего и четвертого элементов ИЛИ объединены и являются вторым входом УП. Выходы первого, второго, третьего и четвертого элементов И подключены соответственно к первому, второму входам первого элемента ИЛИ, первому и второму входам второго элемента ИЛИ. Вторые входы первого, второго, третьего и четвертого элементов И объединены и являются входом управления коммутацией УП. Выходы первого и второго элементов ИЛИ являются соответственно первым и вторым выходами УП. Первые входы второго и третьего УП выполнены инверсными.

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

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

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

Заявленное устройство поясняется чертежами, на которых показаны:

- на фиг.1 - общая структурная схема устройства;

- на фиг.2 - вариант построения схемы БУП;

- на фиг.3 - типовые варианты УЭ;

- на фиг.4 - электрические схемы УЭ типа S2/1;

-на фиг.5 - электрические схемы УЭ типа S2/2;

- на фиг.6 - электрические схемы УЭ типа S3/1;

- на фиг.7 – чертеж, поясняющий взаимообратимость БУП (БФП);

- на фиг.8 – чертеж, поясняющий внутренне самообратимый БУП (БФП);

- на фиг.9 - схема, иллюстрирующая взаимообратимость коммутации в двух БФП;

- на фиг.10 - вариант структурной схемы БВТП;

- на фиг.11 - вариант структурной схемы УП;

Устройство для управляемого преобразования двоичных данных, показанное на фиг.1, состоит из S БУП 11-1s, S-1 БФП 21-2s-1 и р БВТП 31-3р, где р=S/2 при четном S и р=(S-1)/2 при нечетном S.

Число S БУП 1 и, соответственно, БФП 2 выбирают, исходя из компромиссного учета предъявляемых к устройству требований криптостойкости, скорости преобразования и сложности реализации. Однако выбранное значение S должно удовлетворять условию S 2. Каждый БУП 1 снабжен n-разрядными информационными входом X и выходом Y, где значение n определяется разрядностью подлежащего преобразованию блока двоичных данных. Кроме того, каждый БУП 1 снабжен mj-разрядным управляющим входом, где значение mj определяется разрядностью управляющего вектора. В свою очередь, при выборе mj и n должно соблюдаться условие mj 4 и n 4. Каждый БФП 2 также снабжен n-разрядными входом и выходом. Информационный n-разрядный выход i-го БУП 1i, где i= 1,2,... , S-1, подключен к n-разрядному входу i-го БФП 2i, n-разрядный выход которого подключен к n-разрядному информационному входу (i+1)-го БУП 1i+1. Информационные n-разрядные вход первого БУП 11 и выход S-го БУП 1s являются соответственно n-разрядными информационными входом и выходом устройства.

Каждый j-й, где j=1, 2,... , p, БВТП 3j снабжен первым и вторым mj-разрядными управляющими входами и первым и вторым mj-разрядными управляющими выходами.

Кроме того, БВТП 3j снабжен одноразрядным входом управления типом преобразования. Причем входы управления типом преобразования всех БВТП 31-3р объединены и являются входом управления типом преобразования устройства.

Разрядности mj первого, второго управляющих входов, первого и второго управляющих выходов j-го БВТП 3j равны. Первый и второй mj-разрядные выходы j-го БВТП 3j подключены к mj-разрядным управляющим входам соответственно j-го и [(S+1)-j]-го БУП 1. Таким образом, разрядности mj, первого и второго управляющих выходов j-го БВТП 3 равны разрядностям (mj) управляющих входов БУП 1, к которым они подключены. Например, разрядности m1 первого и второго управляющих выходов первого БУТП 31 равны разрядностям (m1 и ms) соответственно первого 11 и S-го 1s БУП. Совокупность mj-разрядных первых и вторых управляющих входов р БВТП 31-3р при четном S является m-разрядным управляющим входом устройства, т.е.

При нечетном S указанная совокупность дополнительно включает mр+1-разрядный управляющий вход (р+1)-го БУП 1p+1, т.е.

На фиг.1 индексами х1, x2, х3,... , хn и у1, у2, у3,... , уn обозначены разряды n-разрядных информационных входа Х и выхода У устройства. Разряды, приведенные в скобках, означают изменение типа преобразования, когда входным является блок двоичных данных Y и соответственно выходным - X.

Показанный на фиг.2 БУП 1 предназначен для выполнения операции управляемой операционной подстановки над поступающим на его информационный вход n-разрядным блоком двоичных данных в зависимости от mj-разрядного управляющего вектора, поступающего на управляющий вход.

В общем случае, любой из БУП 1, например, первый 11, включает Z1 2 УЭ 1.11-1.1Z. Каждый из УЭ снабжен t-разрядными (t=2, 3) информационными входом и выходом и w-разрядным (w=1, 2) управляющим входом.

Совокупности информационных входов, выходов и управляющих входов всех Z1 УЭ 1.11-1.1z1, являются соответственно n-разрядными информационными входом, выходом и m1-разрядным управляющим входом БУП 1, т.е. .

Каждый УЭ 1.1 предназначен для выполнения элементарной операции управляемой операционной подстановки над малоразрядным (t=2, 3) входящим блоком двоичных данных с помощью малоразрядного (w=1, 2) управляющего вектора.

На фиг.3 приведены типовые варианты построения УЭ, в общем виде обозначенные как St/w, (фиг.3а), где t - разрядность информационных входа и выхода, w - разрядность управляющего входа.

Типовыми вариантами УЭ являются S3/1 (фиг.3б), S2/1 (фиг.3в) и S2/2 (фиг.3г), которые выполняют элементарные управляемые подстановки типа 3 3 (S3/1) и 2 2 (S2/1 и S2/2). Все варианты УЭ могут быть реализованы в виде простых комбинационных электронных схем, некоторые из которых показаны на фиг.4 (S2/1), фиг.5 (S2/2) и фиг.6 (S3/1). На указанных схемах символами &, V и обозначены соответственно логические элементы И, ИЛИ и операция суммирования по модулю 2.

Так, на фиг.4 показаны варианты электронных схем, реализующих подстановки типа 2 2, выполняемые над двухбитовым двоичным вектором (x1, х2), в зависимости от текущего значения одного управляющего бита (w=1). Каждый бит выходного двоичного вектора (у1, у2) является булевой функцией от трех переменных, т.е. у1 =f1(x1, x2, w) и у2= f2(x2, x2, w). На фиг.4 приведены булевые функции, описывающие подстановки с помощью приведенных вариантов схем УЭ типа S2/1 (фиг.4а и фиг.4б).

На фиг.5 приведены варианты электронных схем, реализующих подстановки типа 2 2, выполняемые над двухбитовым двоичным вектором (х1, х2), в зависимости от четырех возможных значений двухбитового управляющего вектора (w=2). Например, вариант, соответствующий значению управляющего вектора w=(1,1) задан как инверсия двух входных битов (х1, х2) - операция инверсии обозначена символом . В данном варианте УЭ каждый бит выходного двоичного вектора (у1, у2) является булевой функцией от четырех переменных, т.е. у1=f1(x1, x2, w1, w2) и у2=f1(x1, x2, w1, w2).

На фиг.6 приведены варианты электронных схем, реализующих подстановки типа 3 3, выполняемые над трехбитовым двоичным вектором (х1, х2, х3), в зависимости от текущего значения одного управляющего бита (w=1). Каждый бит выходного двоичного вектора (у1, у2, у3) является булевой функцией от четырех переменных у1=f1(x1, х2, х3, w), у2=f2(x1, х2, х3, w), у3=f31, х2, х3, w).

В зависимости от конкретного варианта схемотехнической реализации управляемых операционных подстановок из трех типов УЭ 1.1 может быть выбран наиболее подходящий из них, который обеспечит оптимизацию использования схемотехнических ресурсов при заданном уровне криптостойкости и скорости преобразования. В частности, на фиг.2 показан БУП 1, состоящий из четырех УЭ 1.11-1.14, два из которых типа S2/2, а два S3/1. Такой БУП 1 реализует управляемую операционную подстановку над 10-разрядным входным двоичным вектором (n=10) в зависимости от 6-разрядного управляющего вектора (mj=6).

БФП 21-2s предназначены для выполнения операции фиксированной перестановки битов входного n-разрядного двоичного вектора на его выходе. Коммутацию входов и выходов i-го БФП 2 выполняют произвольно. В частности, на фиг.7 в БФП 2i разряды 8-разрядного входа (n=8) х1, х2, х3,... , х8 переставлены на выходе в следующей последовательности х1, х3, х2, х5, х4, х7, х6, х8.

При выборе структуры и схем реализации УЭ в БУП 1, а также при выборе вариантов коммутации в БФП 2 необходимо выполнение условий:

- БУП 1 с номерами i и (S+1-i), а также БФП 2 с номерами i и (S-i) должны быть выполнены взаимно обратимыми;

- при S четном S/2-й БФП 1 и при S нечетном [(S+1)/2]-й БУП 2 должны быть выполнены внутренне самообратимыми.

Под взаимно обратимыми понимают пару БУП 1 или пару БФП 2, которые выполняют взаимно обратное преобразования: один из блоков - прямое преобразование Y=F1(X), второй блок - обратное преобразование X=F-12(Y). Например, если на вход первого блока подана n-разрядная последовательность цифровых данных Х (х1, x2,... , хn) и в результате преобразования на его выходе получена n-разрядная последовательность Y (у1, у2, ..., уn), то при подаче на вход второго блока, взаимообратимого по отношению к первому, n-разрядной последовательности Y (у1, у2,... ,уn) на его выходе после преобразования должна быть получена n-разрядная последовательность X(x1, x2... , хn) (см. фиг.7).

Внутренне самообратимым является БУП 1 или БФП 2, который реализует преобразование, являющееся инволюцией: Х=F(Y), если Y=F(X), т.е. F(F(X))=x (cм. фиг.8).

Внутренне самообратимым БУП 1 будет, если каждый из его УЭ 1.1 также обеспечивает преобразование, являющееся инволюцией. Схемы УЭ 1.1, реализующие такое преобразование, известны. В частности, на фиг.6 показаны УЭ 1.1 типа S3/3, выполняющие преобразование, являющееся инволюцией.

Вариант выполнения взаимообратимых БФП 2 показан на фиг.9 2i и 2i+1. Каждый из этих БФП является также внутренне самообратимым.

БВТП, показанный на фиг.9, предназначен для выбора типа преобразования, прямого или обратного. При прямом преобразовании поданный на вход устройства n-разрядный двоичный вектор Х(х1, x2,... ,хn) на выходе преобразуется в выходной n-разрядный двоичный вектор Y(у1, y2, ..., yn). При обратном преобразовании на вход устройства подают n-разрядный входной двоичный вектор Y(y1, y2,... ,yn), который на выходе преобразуют в n-разрядный двоичный вектор Х(х1, х2,... , хn).

Все БВТП 3 идентичны, и каждый из них состоит из mi УП 3.11 -3.1j и снабжен mj-разрядными первым и вторым управляющими входами и первым и вторым управляющими выходами. Кроме того, БВТП 3 снабжен входом управления типом преобразования.

Каждый УП 3.1 снабжен первым и вторым входами и первым и вторым выходами, а также входом управления коммутацией. Совокупности первых и вторых входов, а также первых и вторых выходов всех УП 3.11-3.1j являются соответственно mj-разрядными первым и вторым входами, а также первым и вторым выходами в БВТП 3. Входы управления коммутацией всех УП 3.11-3.1j объединены и являются входом управления типом преобразования БВТП 3. В каждом отдельном БВТП разрядности первого и второго управляющих входов и первого и второго управляющих выходов одинаковы и равны mj. В общем случае разрядности управляющих входов и выходов в j- и (j+1)-м БВТП могут отличаться, т.е. допускается условие mj mj+1.

УП 3.1, показанный на фиг.11, предназначен для перекоммутации его первого и второго входов в зависимости от значения бита, поступающего на его вход управления коммутацией. Все УП 3.1 выполнены одинаковыми и состоят из первого 3.1.11, второго 3.1.12, третьего 3.1.13 и четвертого 3.1.14 элементов И и первого 3.1.21 и второго 3.1.22 элементов ИЛИ. Вторые входы всех четырех элементов И 3.1.11-3.1.14 объединены и являются входом управления коммутацией УП 3.1, причем вторые входы второго 3.1.12 и третьего 3.1.13 элементов И выполнены инверсными. Первые входы первого 3.1.1 и второго 3.1.12 элементов И объединены и являются первым входом УП 3.1. Первые входы третьего 3.1.13 и четвертого 3.1.14 элементов И объединены и являются вторым входом УП 3.1. Выходы первого 3.1.11, второго 3.1.12, третьего 3.1.13 и четвертого 3.1.14 элементов И подключены соответственно к первому, второму входам первого элемента ИЛИ 3.1.21 и первому, второму входам второго элемента ИЛИ 3.1.22. Выходы первого 3.1.21 и второго 3.1.22 элементов ИЛИ являются соответственно первым и вторым выходами УП 3.1.

Заявленное устройство работает следующим образом. При подаче на вход n-разрядного двоичного вектора Х (прямое преобразование) последовательно в каждом из БУП 1 и затем в подключенном к нему БФП 2 над ним выполняют соответственно управляемую операционную подстановку и фиксированную перестановку. Значение соответствующих разрядов n-разрядного вектора на выходе конкретного (например, первого) БУП 11 определяется как структурой БУП (числом Z1 и типами УЭ 1.1), а также значениями соответствующих разрядов m1-разрядного управляющего вектора. На n-разрядном выходе БФП 1 положение соответствующих разрядов преобразованного в БУП 11 n-разрядного вектора будет определяться выбранным вариантом коммутации входов и выходов БФП 21 (см. фиг.9). Число (т.е. число S) таких циклов преобразования выбирают с учетом предъявленных к устройству требований по криптостойкости и скорости преобразования. На выходе устройства значения разрядов (у1, у2, ..., yn) n-разрядного преобразованного двоичного вектора Y будут определяться совокупно проведенными над ним операциями управляемых операционных подстановок (в БУП 11-1s) и фиксированных перестановок (в БФП 21-2s-1) в зависимости от значения m-разрядного управляющего вектора и при определенном значении бита (например, е=1) на входе управления типом преобразования.

Выполнение обратного преобразования, т.е. получение на выходе устройства n-разрядного двоичного вектора X, достигается тем, что на входе управления типом преобразования инвертируют значение бита (значение е=1 изменяют на е=0). В результате с помощью управляемых переключателей 3.1 (фиг.11) в каждом блоке выбора типа преобразования 3 (фиг.10) обеспечивается переключение i-го i-разрядного управляющего вектора на вход (S+1-i)-го БУП 1S+1-i, а (S+1-i)-го mS+1-i-го управляющего вектора на вход i-го БУП 1i.

В силу взаимной обратимости i-го и (S+1-i)-го БУП в i-том БУП 1i реализуется обратная операция управляемой подстановки по отношению к БУП с номером (S+1-i) и соответственно в БУП с номером (S+1-i) реализуется обратная операция управляемой подстановки по отношению к БУП с i-м номером.

При S нечетном управляющий вектор, подаваемый на БУП с номером [(S+1)/2], остается неизменным, и в силу внутренней самообратимости этого БУП процесс прямого и обратного преобразования в нем происходит автоматически.

В БФП 2 прямое и обратное преобразование обеспечивается взаимнобратимыми схемами коммутации входов и выходов в БФП с номерами i и (S-i) (см. фиг.9), а также использованием S/2-го БФП при S четном с внутренней самообратимостью (см. фиг.9).

Таким образом, заявляемое устройство позволяет осуществлять как прямое (при е=1), так и обратное (при е=0) преобразование, благодаря чему с помощью одного и того же устройства для управляемого преобразования может быть выполнено как зашифрование данных, так и их расшифрование, за счет чего упрощается построение устройств криптографического преобразования. Заявляемое устройство для управляемого преобразования может быть использовано в скоростных шифраторах, обладающих высокой стойкостью и низкой сложностью схемотехнической реализации.

ПРИЛОЖЕНИЕ

ТОЛКОВАНИЕ ТЕРМИНОВ, ИСПОЛЬЗУЕМЫХ В ОПИСАНИИ ЗАЯВКИ

- криптографическое преобразование - это преобразование цифровой информации, заключающееся в изменении значений многих бит выходных данных в зависимости от значения одного бита исходных данных. Различают следующие виды криптографического преобразования: одностороннее, хэширующее и шифрование. Последний вид, в свою очередь, включает процедуры зашифрования и расшифрования;

- зашифрование есть процесс преобразования информации, который зависит от секретного ключа и преобразует исходный текст в шифртекст (криптограмму);

- расшифрование есть процесс, обратный процедуре зашифрования, обеспечивающий восстановление информации по криптограмме при знании секретного ключа;

- одностороннее преобразование - это преобразование n-битового входного блока данных в n-битовый выходной блок данных, позволяющее вычислить выходной блок данных по входному блоку и делающий практически невыполнимой обратную задачу;

- двоичный вектор - это некоторая последовательность нулевых и единичных битов;

- операнд - это двоичный вектор, над которым выполняется двуместная или одноместная операция;

- одноместная операция - это операция, выполняемая над одним операндом (блоком данных или двоичным вектором); значение подблока после выполнения некоторой данной одноместной операции зависит только от его начального значения; примером одноместных операций являются операции циклического сдвига;

- управляемая операционная подстановка - это частный случай одноместной операции, выполняемой над одним операндом под управлением некоторого двоичного вектора, называемого управляющим вектором, и заключающаяся в подстановке в зависимости от управляющего вектора вместо битов операнда некоторых значений (см. Еремеев М.А., Молдовян Н.А. Синтез аппаратно-ориентированных подстановок над векторами большой длины // Вопросы защиты информации. 2001, №4, с.46-52);

- фиксированная перестановка - преобразование, заключающееся в изменении порядка следования элементов (битов) в исходном двоичном векторе;

- взаимообратимые криптографические преобразования - два криптографических преобразования, для которых выполняется условие: если первое (прямое) преобразование Y=F1(X), то второе (обратное) преобразование X=F-12(Y), где Х и Y - исходные n-разрядные последовательности цифровых данных соответственно для первого и второго преобразований;

- инволюция - операция преобразования, являющаяся обратной самой себе, т.е. самообратимой, для которой выполняется условие X=F(Y), если Y=F(X). Для инволюции выполняется соотношение F(F(Х))=Х;

- внутренне самообратимая операция - операция, являющаяся инволюцией.

Формула изобретения

1. Устройство для управляемого преобразования двоичных данных, содержащее S2 блоков управляемого преобразования, S-1 блоков фиксированного преобразования и снабженное n-разрядными, где n4, информационными входом и выходом и m-разрядным, где m4, управляющим входом, n-разрядный информационный выход i-го, где i=1, 2,..., S-1, блока управляемого преобразования подключен к n-разрядному входу i-го блока фиксированного преобразования, n-разрядный выход которого подключен к n-разрядному информационному входу (i+1)-го блока управляемого преобразования, причем каждый i-й блок управляемого преобразования снабжен mi-разрядным управляющим входом, а n-разрядные информационные вход первого и выход S-го блоков управляемого преобразования являются n-разрядными информационными входом и выходом устройства соответственно, отличающееся тем, что дополнительно введены р блоков выбора типа преобразования, где р=S/2 при S четном и р=(S-1)/2 при S нечетном, каждый j-й, где j=1, 2,..., р, блок выбора типа преобразования снабжен первым и вторым mj-разрядными управляющими входами, первым и вторым mj-разрядными управляющими выходами и входом управления типом преобразования, первый и второй mj-разрядные управляющие выходы j-го блока выбора типа преобразования подключены к mj-разрядным управляющим входам соответственно j-го и [(S+1)-j]-го блоков управляемого преобразования, причем при S четном совокупности mj-разрядных первых и вторых управляющих входов р блоков выбора типа преобразования являются m-разрядным управляющим входом устройства, а при S нечетном эта совокупность включает дополнительно mp+1-разрядный управляющий вход (p+1)-го блока управляемого преобразования, входы управления типом преобразования всех блоков выбора типа преобразования объединены и являются входом управления типом преобразования устройства, i-й и (S+1-i)-й блоки управляемого преобразования и также i-й и (S-1)-й блоки фиксированного преобразования выполнены взаимно обратимыми, причем при S четном S/2-й блок фиксированного преобразования и при S нечетном [(S+1)/2]-й блок управляемого преобразования выполнены внутренне самообратимыми.

2. Устройство по п.1, отличающееся тем, что каждый блок управляемого преобразования состоит из Z2 управляемых элементов, каждый из которых снабжен t-разрядными информационными входом и выходом и w-разрядным управляющим входом, причем совокупности информационных входов, выходов и управляющих входов всех Z управляемых элементов являются соответственно n-разрядным информационными входом, выходом и mj-разрядным управляющим входом блока управляемого преобразования.

3. Устройство по п.2, отличающееся тем, что разрядности t информационных входа, выхода и разрядность w управляющего входа управляемого элемента выбирают равными t=2, 3 и w=1, 2.

4. Устройство по п.1, отличающееся тем, что блок выбора типа преобразования состоит из mj управляемых переключателей, каждый из которых снабжен первым и вторым входами, первым и вторым выходами и входом управления коммутацией, причем первые и вторые входы и первые и вторые выходы mj управляемых переключателей являются соответственно первым и вторым mj-разрядными управляющими входами и первым и вторым mj-разрядными управляющими выходами блока выбора типа преобразования, а входы управления коммутацией mj управляемых переключателей объединены и являются входом управления типом преобразования блока выбора типа преобразования.

5. Устройство по п.4, отличающееся тем, что каждый управляемый переключатель состоит из первого, второго, третьего и четвертого элементов И и первого и второго элементов ИЛИ, первые входы первого и второго элементов И объединены и являются первым входом управляемого переключателя, первые входы третьего и четвертого элементов И объединены и являются вторым входом управляемого переключателя, выходы первого и второго элементов И и выходы третьего и четвертого элементов И подключены соответственно к первому и второму входам первого элемента ИЛИ и первому и второму входам второго элемента ИЛИ, вторые входы первого, второго, третьего и четвертого элементов И объединены и являются входом управления коммутацией управляемого переключателя, причем выходы первого и второго элементов ИЛИ являются соответственно первым и вторым выходами управляемого переключателя, а первые входы второго и третьего элементов И выполнены инверсными.

РИСУНКИРисунок 1, Рисунок 2, Рисунок 3, Рисунок 4, Рисунок 5, Рисунок 6, Рисунок 7, Рисунок 8, Рисунок 9, Рисунок 10, Рисунок 11