Контакты
Подписка
МЕНЮ
Контакты
Подписка

Information Security №1/2018: Один подход к изучению однонаправленности

Ekaterina Danilina, 27.04.18

gukov 

 

Автор: Алексей Жуков, председатель совета директоров ассоциации “РусКрипто”, к.ф.-м.н., доцент, МГТУ им. Н.Э. Баумана

 

 

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

 

Говоря неформально, однонаправленная функция – это эффективно вычислимая функция, для обращения которой не существует эффективных алгоритмов. В качестве модели обратимого преобразования возьмем подстановку на множестве двоичных наборов; в качестве меры сложности того или иного преобразования – сложность минимальной булевой схемы, реализующей данное преобразование F и обозначаемое в дальнейшем через C(F). В качестве модели однонаправленной функции будем рассматривать вычислительно асимметричное преобразование, т.е. такое обратимое преобразование, сложность которого отличается от сложности обратного преобразования. Такие преобразования известны, их некоторые классы описаны в работах [2], [3].

Пытаясь понять природу такой асимметрии, можно задать глупый вопрос: почему схему, реализующую прямое преобразование, нельзя использовать для вычисления обратного преобразования? Ответ очевиден: потому что логические элементы, отличные от инверсии, необратимы. Однако уже давно известны обратимые логические элементы [4], примерами которых могут служить такие элементы как NOT, CNOT (Controlled NOT), CCNOT (Controlled Controlled NOT), представленные на рисунках 1–3.

gukov_ris1

Рис. 1. Элемент NOT

gukov_ris2

Рис. 2. Элемент CNOT

gukov_ris3

Рис. 3. Элемент CCNOT

Эти элементы имеют равное число входов и выходов и, по сути, реализуют подстановки на множестве двоичных наборов. На схемах такие элементы принято изображать на параллельных горизонтальных линиях, символизирующих проводники. Входные переменные подаются слева, справа располагаются выходы, расщепление выходов, что допустимо для классических логических элементов, а в случае обратимых логических элементов не разрешается. К схеме возможно добавление дополнительных линий, на которые подается логический 0, в процессе вычислений они играют роль "памяти".

Попытаемся теперь какое-нибудь вычислительно асимметричное преобразование реализовать схемой из обратимых логических элементов. На первый взгляд, в силу обратимости используемых логических элементов схема для обратного преобразования должна состоять из тех же самых элементов и, следовательно, иметь ту же сложность, что противоречило бы вычислительной асимметричности преобразования. Однако все не так просто. Сложность прямого и обратного преобразований действительно совпадает, если минимальная схема не использует "дополнительной памяти". В случае вычислительно асимметричных преобразований это не так. Проще всего продемонстрировать влияние дополнительной памяти" на примере.

Широко известным классом вычислительно асимметричных преобразований являются линейные преобразования   form_1 , изученные в работах [2], [3]:

form_2

Так

form_3,    form_4

В работе [3] доказано, что при нечетном n ≥ 5 сложности прямого и обратного преобразования равны, соответственно, form_5.

С помощью элементов CNOT можно построить минимальную схему (рис. 4), реализующую данное преобразование.

gukov_ris4

Рис. 4. Минимальная схема, построенная из элементов CNOT и реализующая вычислительно асимметричное преобразование φ7

Однако схема, приведенная на рис. 4, хотя и построена из обратимых логических элементов, обратимой не будет. Дело в том, что в процессе вычисления нашего преобразования на выходе схемы появился не только вектор результатов, но и некоторая информация (на выходе дополнительной линии), полученная в процессе вычисления и называемая вычислительным мусором, или просто мусором. Без знания этой информации, а только по выходу (y1,...,yn) вход (x1,...,xn) получить невозможно.

Для того чтобы получить обратимую схему, понадобится изменить нашу схему таким образом, чтобы на выходе схемы оставался только искомый результат. Такая процедура называется "уборка мусора" и требует использования дополнительных логических элементов (рис. 5).

gukov_ris5

Рис. 5. Обратимая схема, построенная из элементов CNOT и реализующая вычислительно асимметричное преобразование φ7

Теперь схема действительно является обратимой: по входу (x1,...,xn) вычисляется (y1,...,yn) – значение функции φn, а по (y1,...,yn) (и только по нему) – вычисляется прообраз (x1,...,xn).

В то же время обратимая схема будет содержать некоторые "лишние" элементы, которые не нужны для реализации, например, прямого преобразования, но нужны для реализации обратного преобразования, и наоборот. Так, для реализации прямого преобразования, когда нас интересует только получение значения функции, нас вполне удовлетворит необратимая схема, приведенная на рис. 4 (т.е. схема, не содержащая элементы, требуемые для "уборки мусора"). В то же время для реализации обратного преобразования совершенно не требуются элементы, стоящие в начале обратимой схемы, и минимальной схемой, реализующей обратное преобразование, будет схема, изображенная на рис. 6. Заметим, что сложности минимальных схем для реализации φn и (φ7)¯¹ совпадают с теоретическим результатом, приведенным выше.

gukov_ris6

Рис. 6. Минимальная схема, построенная из элементов CNOT и реализующая преобразование (φ7)¯¹

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

gukov_ris7

Рис. 7. Обратимая схема, реализующая вычислительно асимметричное преобразование φ7 с выделенными подсхемами для "уборки мусора"

Возможно, что схемы из обратимых элементов для вычислительно асимметричных преобразований имеют общую структуру, показанную на рис. 8.

gukov_ris8

Рис. 8. Возможная структура вычислительно асимметричных преобразований

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

Аргументами в пользу сформулированной выше гипотезы служат обратимые схемы, построенные в [6] для таких известных вычислительно асимметричных преобразований, как нелинейные вычислительно асимметричные преобразования [3] и двоичный сумматор/вычитатель [5].

Литература

1. Жуков А.Е. Схемы из обратимых логических элементов: Один подход к изучению однонаправленности. – Труды III Международной конференции "Информационные системы и технологии" (IST’2006). Минск, 2006. – С. 85.

2. Boppana R.B., Lagarias J.C. One-way functions and circuit complexity. Information and Computation, vol. 74 (1987), pp. 226–240.

3. Hiltgen A.P. Cryptographically Relevant Contributions to Combinatorial Complexity Theory. ETH Series in Information Processing, vol. 3 (1993).

4. Toffoli M. Bicontinuous Extensions of Invertible Combinatorial Functions. Math. Syst. Theory, vol. 14 (1981), pp. 13–23.

5. Редькин Н.П. О минимальной реализации двоичного сумматора. Проблемы кибернетики, № 38 (1981). – С. 181–216.

6. Жуков А.Е., Закаблуков Д.В., Засорина Ю.В., Чикин А.А. Вычислительно асимметричные преобразования и схемы из обратимых элементов. – Вопросы кибербезопасности, № 2 (10), 2015. – С. 49–55.

 


Читайте также:

Темы:Информационная безопасностьКриптографияРусКриптоСделано в РоссииТехнологииinformation security

Еще темы...