Научная статья на тему 'MGM2: РЕЖИМ АУТЕНТИФИЦИРОВАННОГО ШИФРОВАНИЯ, УСТОЙЧИВЫЙ К ПОВТОРУ ВЕКТОРА ИНИЦИАЛИЗАЦИИ'

MGM2: РЕЖИМ АУТЕНТИФИЦИРОВАННОГО ШИФРОВАНИЯ, УСТОЙЧИВЫЙ К ПОВТОРУ ВЕКТОРА ИНИЦИАЛИЗАЦИИ Текст научной статьи по специальности «Математика»

CC BY
147
36
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
MGM / AEAD-РЕЖИМ / МОДЕЛЬ ПРОТИВНИКА / ОЦЕНКИ СТОЙКОСТИ / ПОВТОР ВЕКТОРА ИНИЦИАЛИЗАЦИИ / УСТОЙЧИВОСТЬ К ПОВТОРУ

Аннотация научной статьи по математике, автор научной работы — Ахметзянова Лилия Руслановна, Алексеев Евгений Константинович, Бабуева Александра Алексеевна, Божко Андрей Алексеевич, Смышляев Станислав Витальевич

В работе разработан новый режим аутентифицированного шифрования MGM2, для которого удается доказать стойкость в усиленных моделях противника, учитывающих возможность повторного использования вектора инициализации для обработки различных сообщений. Рассмотрение таких усиленных моделей является актуальным при использовании схем шифрования в приложениях, в которых отсутствуют технические возможности для обеспечения уникальности вектора инициализации. Более того, стойкость при повторе вектора инициализации также обеспечивает дополнительную защиту от ошибок в реализации, как случайных, так и вызванных противником. Режим MGM2 является модификацией стандартизированного в Российской Федерации режима аутентифицированного шифрования MGM (Multilinear Galois Mode). В новом режиме используется то же криптографическое ядро - мультилинейная функция, но изменяется процедура выработки секретных коэффициентов и маскирующих значений с целью уменьшения вероятности коллизий между входами в блочный шифр. Для режима MGM2 были доказаны оценки в формально определенных моделях MRAE-integrity и CPA-res. Полученные оценки стойкости демонстрируют, что разработанный режим даже в усиленных моделях обеспечивает больший уровень конфиденциальности и целостности, чем оригинальный режим MGM в базовых моделях, которые не учитывают возможность повторного использования вектора инициализации.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Ахметзянова Лилия Руслановна, Алексеев Евгений Константинович, Бабуева Александра Алексеевна, Божко Андрей Алексеевич, Смышляев Станислав Витальевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MISUSE-RESISTANT MGM2 MODE

We introduce a new AEAD mode - an MGM2 mode. For this mode we provide security bounds regarding extended security notions in the nonce-misuse setting. Misuseresistance is crucial for applications for which there is no way to provide uniqueness of nonces. Moreover, this security property also provides additional protection against implementation errors, both accidental and adversarial. The MGM2 mode was developed basing on the MGM (Multilinear Galois Mode) mode that was standardized in the Russian Federation. The main cryptographic core of the construction, namely multilinear function, is not changed. For the new mode we change the way how secret masking blocks and secret coefficients of the multilinear function are produced, decreasing the probability of collision between block cipher inputs. We provide the security bounds for MGM2 in the MRAE-integrity and CPA-res models. The obtained bounds show that the developed mode provides better security properties regarding even extended security notions than the original MGM mode provides regarding base security notions (in the nonce-respecting setting).

Текст научной работы на тему «MGM2: РЕЖИМ АУТЕНТИФИЦИРОВАННОГО ШИФРОВАНИЯ, УСТОЙЧИВЫЙ К ПОВТОРУ ВЕКТОРА ИНИЦИАЛИЗАЦИИ»

MGM2: режим аутентифицированного шифрования, устойчивый к повтору вектора

инициализации

Л. Р. Ахметзянова, Е. К. Алексеев, А. А. Бабуева, А. А. Божко, С. В. Смышляев

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

Режим MGM2 является модификацией стандартизированного в Российской Федерации режима аутентифицированного шифрования MGM (Multilinear Galois Mode). В новом режиме используется то же криптографическое ядро - мультилинейная функция, но изменяется процедура выработки секретных коэффициентов и маскирующих значений с целью уменьшения вероятности коллизий между входами в блочный шифр. Для режима MGM2 были доказаны оценки в формально определенных моделях MRAE-integrity и CPA-res. Полученные оценки стойкости демонстрируют, что разработанный режим даже в усиленных моделях обеспечивает больший уровень конфиденциальности и целостности, чем оригинальный режим MGM в базовых моделях, которые не учитывают возможность повторного использования вектора инициализации.

Ключевые слова—MGM, AEAD-режим, модель противника, оценки стойкости, повтор вектора инициализации, устойчивость к повтору

I. Введение

Схемы аутентифицированного шифрования с ассоциированными данными (Authenticated Encryption with Associated Data, AEAD), предназначенные для обеспечения целостности и конфиденциальности данных, используются во многих значимых криптографических протоколах, таких как IPsec и TLS. Поэтому исследование стойкости данных схем является крайне важной задачей. Анализ стойкости AEAD-схем обычно проводится в базовых моделях противника, введенных в работе [1]: IND-CPA для конфиденциальности и INT-CTXT для целостности.

Статья получена 10 декабря 2021

Лилия Руслановна Ахметзянова, МГУ им. М.В. Ломоносова, ООО "КРИПТО-ПРО", (email: lah@cryptopro.ru).

Евгений Константинович Алексеев, ООО "КРИПТО-ПРО", (email: alekseev@cryptopro.ru).

Александра Алексеевна Бабуева, МГУ им. М.В. Ломоносова, ООО "КРИПТО-ПРО", (email: babueva@cryptopro.ru).

Андрей Алексеевич Божко, МГУ им. М.В. Ломоносова, ООО "КРИПТО-ПРО", (email: bozhko@cryptopro.ru).

Станислав Витальевич Смышляев, ООО "КРИПТО-ПРО", (email: svs@cryptopro.ru).

Одним из примеров таких схем является режим работы блочного шифра MGM, который был принят в качестве национального стандарта в Российской Федерации [2]. Процедура зашифрования в режиме MGM аналогична процедуре зашифрования в режиме CTR2 [3]. Основным элементом процедуры формирования имитовстав-ки в режиме MGM является мультилинейная функция, секретные коэффициенты которой вырабатываются способом, аналогичным процедуре выработки секретных масок для шифрования данных. Целостность и конфиденциальность режима MGM были проанализированы в работе [4] путем построения сведения в базовых моделях противника.

Хотя анализ AEAD-схем в базовых моделях является необходимым и достаточным для использования во многих приложениях, в последнее время все чаще возникает необходимость в рассмотрении усиленных свойств безопасности, например, стойкости при возможности получения открытых текстов, соответствующих некорректным шифртекстам (release of unverified plaintext, RUP [5]), стойкости при обработке сообщений, зависящих от ключа (key dependent message, KDM [6]), и т.д. В настоящей работе рассматривается такое усиленное свойство как стойкость при условии, что одно и то же значение вектора инициализации может использоваться для обработки более одного сообщения (misuse-resistance [7]). Вектор инициализации подается на вход алгоритмам шифрования и расшифрования AEAD-схем, обычно предполагается его однократное использование в рамках одного фиксированного ключа. Обеспечение уникальности вектора инициализации возможно с помощью внутреннего состояния или генерации случайных значений, однако не во всех приложениях есть такие возможности, примером могут служить схемы полнодискового шифрования [8]. Более того, стойкость при повторе вектора инициализации также обеспечивает дополнительную защиту от ошибок в реализации, как случайных, так и вызванных противником.

Модели противника для AEAD-схем, устойчивых к повтору вектора инициализации, впервые были предложены Рогавеем и Шримптоном в работе [7] и далее развиты в работе [9]. Сильная модель противника, называемая MRAE («Misuse-Resistant AE»), была предложена в [7]. Данная модель противника является расширением базовых моделей IND-CPA и INT-CTXT путем предоставления противнику возможности повторять значения вектора инициализации в запросах не только к оракулу расшифрования, но и к оракулу зашифрования.

Модель MRAE аналогична модели противника DAE [7] («Deterministic AE»), которая формализует свойство конфиденциальности следующим образом: шифртекст для каждого нового запроса (не только нового вектора инициализации) должен быть неотличим от случайной строки той же длины. Известно, что конфиденциальность, определенная моделью нарушителя MRAE, является достаточно трудно обеспечиваемым свойством. Так, например, любые поточные режимы, к которым относится и режим MGM, не обладают им, а все известные авторам схемы, стойкие в модели MRAE, теряют некоторые эксплуатационные свойства: либо требуют большого количества вызовов блочного шифра [10], либо теряют свойство online-обработки данных [11, 12]. Поэтому в работе [9] вводится более слабое определение безопасности для конфиденциальности, называемое CPA-res («Chosen Plaintext Attack-resilience»). Оно также является расширением базовой модели противника IND-CPA, но подразумевает более слабое в сравнении с MRAE свойство безопасности: конфиденциальность должна быть обеспечена только для корректно обработанных сообщений с использованием уникального значения вектора инициализации.

С точки зрения целостности, определяемой моделью MRAE, режим MGM был проанализирован в работе [13]: была предложена атака, требующая объема обработанных данных не меньше 2n/2 блоков, где n - битовый размер блока используемого блочного шифра. Данный результат позволяет выдвинуть гипотезу, что режим MGM обладает достаточным уровнем стойкости в модели MRAE-int (целостность). Однако получение нижних оценок стойкости для MGM, необходимое для подтверждения данной гипотезы, все еще остается открытой задачей.

С целью получения оценок стойкости в усиленных моделях в настоящей работе предлагается модификация режима MGM — режим MGM2. Основное различие между двумя режимами заключается в способе создания секретных маскирующих блоков и секретных коэффициентов мультилинейной функции - для режима MGM2 этот процесс выполняется аналогично режиму CTR [3], без предварительного шифрования вектора инициализации. Отметим, что основное криптографическое ядро конструкции, а именно, мультилинейная функция, не изменилось. Были получены оценки стойкости для режима MGM2 в моделях MRAE (целостность) и CPA-res, которые оказались даже лучше, чем оценки для исходного режима MGM в базовых моделях INT-CTXT и IND-CPA, при этом соответствующие доказательства получились существенно проще. Помимо указанных преимуществ, конструкция режима MGM2 также позволяет прозрачно встроить внутреннее преобразование ключа (так же, как это сделано для CTR-ACPKM [14]) для увеличения срока жизни ключа (подробнее см. [15]).

II. Обозначения

Обозначим через {0,1}" множество всех и-битовых строк, и через {0,1}* — множество всех битовых строк конечной длины, в том числе пустую строку. Битовую строку, состоящую из и нулей, будем обозначать через 0". Длину битовой строки U будем обозначать через \U|. Через \U\и = \\U\/и\ обозначим длину битовой

строки U в u-битовых блоках. Через {0,1}^" обозначим множество всех строк, длина которых меньше или равна

и.

Для битовой строки U и целого числа 0 < l ^ \U\ через msb;(U) (lsb;(U)) будем обозначать строку, состоящую из l крайних левых (правых) бит строки U. Для целых чисел l > 0 и 2l > i > 0 через süj (i) будем обозначать l-битовое представление числа i, в котором наименее значащий бит находится справа. Для целого числа l > 0 и битовой строки U е {0,1}1 через int(U) будем обозначать целое число i < 2l, такое что str;(i) = U. Для битовых строк a е {0,1}" и b е {0,1}" через a ® b будем обозначать строку, которая является результатом их перемножения в поле GF (2") (здесь строки кодируют полиномы стандартным образом). Также введем функцию Set1r: {0,1}" — {0,1}",

т п—т—1

Set1r(x) = x or (0~"0 1G~"o), 0 < r < n.

Для произвольного множества S через Perm(S) обозначим множество всех биективных отображений множества S в себя (перестановок на S), а через Func(S) — множество всех отображений множества S в себя. Под блочным шифром E (или просто шифром) с длиной блока n и длиной ключа к будем понимать произвольное семейство перестановок на множестве {0,1}", параметризованное параметром K е {0,1}fc, т.е. E = {EK е Perm({0,1}") \ K е {0,1}fc}. Параметр K в этом семействе E называется ключом шифра. Факт того, что значение s выбрано из некоторого множества S в соответствии с равномерным распределением U, будем обозначать через s i— S.

III. Модели противника

В данном разделе вводятся формальные определения моделей, в которых противник может повторять значения вектора инициализации в своих запросах.

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

Экспериментаторы и противники описываются с помощью псевдокодов, которые используют следующие обозначения. Через x i val будем обозначать присваивание значения val переменной x. Аналогично, через x i- y будем обозначать присваивание значения переменной y

переменной x. Для вероятностного алгоритма A через

$ $

A -— x (x i— A) будем обозначать присваивание результата его работы переменной x. В случае, когда требуется подчеркнуть детерминированность алгоритма A, будем использовать обозначение A — x (x i— A).

Определение III.1. AEAD-схемой для множества ключей K, множества векторов инициализации N, множества открытых текстов P, множества ассоциированных данных A, множества шифртекстов C и множества имитовставок T является набор алгоритмов П = {П.Gen, П.Епс, П.Dec}, где

- n.Gen() — K : Вероятностный алгоритм генерации ключа. Результатом работы данного алгоритма является ключ K G K.

- n.Enc(K, N, A, P) — (C,T): Детерминированный алгоритм аутентифицированного шифрования, принимающий на вход ключ K G K, вектор инициализации N G N, ассоциированные данные A G A и открытый текст P G P. Результатом работы данного алгоритма являются шифртекст C G C и имитов-ставка T G T.

- n.Dec(K, N, A,C,T) — P : Детерминированный алгоритм расшифрования с проверкой целостности, принимающий на вход ключ K G K, вектор инициализации N G N, ассоциированные данные A G A, шифртекст C G C и имитовставку T G T. Результатом работы данного алгоритма является открытый текст P G P или символ ошибки

Введем модель противника MRAE-int («Misuse-Resistant Authenticated Encryption - integrity»), которая является частью модели MRAE, определенной в [7].

Определение III.2 (MRAE-int). Преимущество противника A в модели MRAE-int для AEAD-схемы П определяется следующим образом:

AdvMRAE"int(A) = Pr [ExpMRAE"int(A) — 1]

где эксперимент Exp

MRAE-int

описан ниже:

ExpMRAE-int (A)

Oracle Encrypt(N, A, P)

4)

Oracle Decrypt(N, A,C,T)

- Pr [ExpnpA-res-°(A) — 1]

где эксперименты Exp

CPA-res-b

b G {0,1}, описаны ниже:

ExpCpA-res-b(A)

K £ n.Gen( )

Li, L2 £ 0 b £ AOl'°2 ()

return b

Oracle O2(N,A,P)

Oracle O1(N, A, P)

if N G Li UL2 : return ±

if b = 1 :

(C,T) £ n.Enc(K, N,A,P) else :

с и t £-{о, i}|pl+s

Li £ Li U {N} return (C, T)

K £ n.Gen() (C,T) £ n.Enc(K,N,A,P)

sent £$ sent £ sent U{(N,A,C,T)}

win £ false return (C,T)

AEncrypt,Decrypt (

return win

P £ n.Dec(K, N, A, C, T)

if (P = ±) A ((N, A, C, T) / sent):

win £ true return P

Введем модель противника CPA-res («Chosen Plaintext Attack - resilience»), определенную в работе [9].

Определение III.3 (CPA-res). Преимущество противника A в модели CPA-res для AEAD-схемы П определяется следующим образом:

AdvnPA-res(A) = Pr [ExpnpA-res-1(A) — 1] -

CPA-res-0 t

if N G Li : return ±

(C,T) £ n.Enc(K, N,A,P) if N G L2 :

L2 £ L2 U {N} return (C, T)

В работе [9] также вводится модель противника CCA-res («Chosen Qphertext Attack - resilience»). Данная модель отличается от модели CPA-res тем, что она предоставляет дополнительный доступ к оракулу расшифрования, что является более релевантным с точки зрения практики. С помощью техники доказательства, описанной в [17], легко показать, что из стойкости в моделях MRAE-int и CPA-res следует стойкость в модели CCA-res. Поэтому мы рассматриваем только модель CPA-res.

IV. Режим MGM2

В данном разделе определяется AEAD-режим MGM2,

который является модификацией режима MGM. Через

MGM2E r s будем обозначать режим MGM2, который

в качестве параметров использует блочный шифр E (с

длиной блока n и длиной ключа к), длину вектора ини-

n 3n

циализации r, ^ ^ r ^ , и длину имитовставки

s, 1 ^ s ^ n.

Режим MGM2[E, r, s] определен для следующих множеств: K = {0, 1}k, N = {0,1}r, A = P = C =

{0,1}<п(2" ' "-1), г = {0,1}я. Дополнительно на длину открытого текста и ассоциированных данных накладывается следующее ограничение: 0 < Щ + \Р| < п(2п-г-2 — 1). Алгоритмы генерации ключа, шифрования и расшифрования определены на Рис. 1.

Отличия от МСМ. Главное отличие режима МСМ2 от оригинального режима MGM состоит в модификации способа вычисления маскированных значений для процедуры шифрования (Г4), коэффициентов мультили-нейной функции (Н¿) и формирования имитовставки Т. В режиме MGM2 входные значения блочного шифра, используемые для различных целей (а именно, для формирования значений Г^Н^Т), не пересекаются за счет фиксации определенных битов. Такая модификация позволяет улучшить оценки стойкости, так как, в отличие от режима MGM, коллизия между входами в блочный шифр возможна только среди значений т.

А. Целостность

Через MGM2perm(n)IrIS (MGM2FиnC(n),r,s) обозначим режим MGM2, который использует случайную подстановку п (случайную функцию р) вместо преобразования Ек.

п

MGM2.Gen()

K i— {G,l}k return K

MGM2.Enc(K, N, A, P)

h i \A\n,q i \P\n

l i h + q + l и n — r — 2

.........Encryption.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

for i = l.. .q do ;

MGM2.Dec(K, N, A, C, T)

h i \A\n,q i \C\n l i h + q + l и i n — r — 2

..........Padding......

Yi i N||GG||str„(i — l) Г i Ек (Yi) Г i msb|p|(Г1 У ... У Г,) C i P ф Г

..........Padding........

a i n\A\n — \A\ с i n\C\n — \C\ L i strn/2(\A\) У stfn/2 (\C\) M i AyGaycyGcyL

.......Tag verification.......

for i = l . . . l do i

Zi i N У Gl У str^ (i — l) Hi i EK(Zi)

т i Setl, I ff) Mi ® Hi

a i n\A\n — \A\ с i n\C\n — \C\ L i strn/2(\A\) У strn/2(\C\)

M i AyGаycyGcyL .......Tag generation.......

for i = l . . . l do i

Zi i N У Gl У str^ (i — l) Hi i Ек (Zi)

Mi ® H^j

т -í— Setl,

Mi ® H^j

T' i msbs (Ек(т)) if T' = T i return ±

.........Decryption.......

for i = l . . . q do i

Yi i NyGGystr„(i — l) Г i Ек (Yi) Г i msb|c| (Г1 У ... У Г, ) P i C ф Г return P

ДгК/MRAE-int

MaVMGM2perm(„),,

ДА) < 1 + f)

(1 2n )

-a/2

n,|..MRAE-mt

MGM2 Per

,(A) < 1.7

7 f q(q -1) + . V 2n + 2V .

MGM2-MAC.Gen()

p, p —- Fиnс(n)

K i (p,p')

return K

PreTag(p',N, M)

l i \M\n и i n — r — 2 for i = l . . . l do i

MGM2-MAC.Tag(K, N, M)

т i PreTag(p',N, M) T i msbs(pCr)) return T

MGM2-MAC.Verify(K, N, M, T) т i PreTag(p',N, M) T' i msbs(pCr)) if T' = T i return false

Hi i p' (NУ Gl У str^ (i — l)) return true

т i Setl, ^J0(Mi ® Hi)^j return т

T i msb^(т)) return (C, T)

Рис. 1. AEAD-режим MGM2

Теорема IV.1. Для любого MRAE-int противника A, делающего не более qE запросов к оракулу Encrypt и не более qD запросов к оракулу Decrypt, причем суммарное количество блоков ассоциированных данных в запросах равно ад, а суммарное количество блоков открытых текстов и шифртекстов равно аР, справедливо

где д = дв + до и а = 2а р + а а + 2д.

В частном случае, когда значение а не превышает 2п/2 и п > 128, оценка (1) принимает следующий вид:

Рис. 2. Схема MGM2-MAC

Доказательство. Доказательство проводится в два этапа. На первом этапе вводится вспомогательный абстрактный режим выработки имитовставки MGM2-MACr s и доказывается оценка его стойкости в модели UF-CMA (см. Раздел IV-A1).

На втором этапе показывается, что из стойкости MGM2-MACr_s в модели UF-CMA следует стойкость режима MGM2Func(n) r s в модели MRAE-int (см. Раздел IV-A2).

Оценка стойкости режима MGM2Perm(n)rs напрямую получается из оценки стойкости режима MGM2Func(n) r s, используя результат Бернштейна [18], Theorem 2.3. Согласно данной теореме для любого алгоритма Df с оракулом f: {0,1}n ^ {0,1}n, который делает не более q запросов, верно следующее неравенство:

Pr [Vn ^ 1] < Pr [Vp ^ 1] • 1 -

(1 2n )

-q/2

(1)

(2)

Заметим, что для оригинального режима MGM, если суммарная длина обработанных данных достигает 2п/2 блоков, то оценка из работы [4] вырождается. Оценка для режима MGM2 выродится, только если будет обработано 2п/2 сообщений. Данный результат также позволяет использовать MGM2 как функцию выработки имитовставки путем фиксации N. Далее представлено доказательство Теоремы IV1.

where п i— Perm(n) and р i— Func(n).

Положив в качестве алгоритма D алгоритм Exp^GM-"!^ (A), в котором вместо вызовов блочного шифра осуществляется запрос к оракулу, мы получим искомую оценку. □

1) Стойкость MGM2-MAC: Введем вспомогательную схему выработки имитовставки с вектором инициализации MGM2-MACTjS, основанную на схеме MGM2 Func(n),r,s. Такая схема определяется как набор алгоритмов MAC = {MAC.Gen, MAC.Tag, MAC.Verify}, для схемы MGM2-MACr,s данные алгоритмы определены на Рис. 2. Данная схема определена для множества сообщений {M = Ml У ... \\Ы£: Mi е {0,1}", Ы£ = 0", 1 < I < 2"-r-2} (длина сообщения кратна n, последний блок ненулевой).

Сначала введем модель PRF для схемы выработки имитовставки с вектором инициализации и получим в ней оценку для схемы MGM2-MAC.

Определение IV.1 (PRF). Для схемы MAC преимущество любого противника A в модели PRF определяется

Expb(A), b e {Q, 1}

(p,p') £ MGM2-MAC.Gen( ) bad £ false tau, sent £ 0 b £ ATagb () return b

Oracle Tagb(N,M)

if (N,M) G sent : return ±

t £ PreTag (p ,N, M) T £ msbs (р(т)) if t G tau : bad £ true

if b = 0 : T

{0, i}s

tau £ tau U { t} sent £ sent U {(N, M)} return T

эксперименте Exp0 все значения T генерируются в соответствии с равновероятным распределением, как и в эксперименте ExpMGm2-MAC по следующим причинам. Для запросов, в которых соответствующее значение т является новым (т.е. не лежит в текущем множестве tau), к данному новому входу применяется случайная функция р и поэтому возвращает равновероятные значения T. Для других запросов значение T явно выбирается случайно равновероятно (см. выделенную в рамки строку на Рис. 3). Поэтому

AdvMRF

MGM2-MACr

,(A) = Pr [Exp1 (A) ^ 1] -

- Pr [Exp°(A) ^ 1]

Рис. 3. Эксперименты Exp0 и Exp1

следующим образом:

AdvPRc(A) = Pr [ExpPMRAFc-1(A) — 1] -

Заметим, что до выставления флага bad равным true (обозначим это событие как bad = true) эксперименты Exp0 и Exp1 функционируют идентичным образом. Поэтому (согласно Лемме 2, [16]) верно следующее неравенство:

- Pr [ExpPRAc °(A) — ^ , Pr [Exp1 (A) ^ 1] - Pr [Exp°(A) ^ 1] < Pr [bad = true ] .

где эксперименты ExpPRAC b(A), b G {0,1}, описаны ниже.

ExpPMRAF<rb (A)

if b = 1 :

Oracle Tagi(N, M)

if (N, M) G sent: return

K £ MAC.Gen() T £ MAC.Tag(K, N, M)

sent £0 sent £ sent U {(N, M)}

b' £ ATagh ( ) return T

return b' Oracle Tag0(N, M)

if (N, M) G sent: return ±

T £ {0,1}s

sent £ sent U {(N, M)}

return T

AdvMGM2-MACr

, (A) <

2n

Более того, для Pr [Exp°(A) ^ 1]

Pr

ExpPRF-° bAPMGM2-MACr

.(A) ^ 1 .

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Действительно,

Оценим величину Pr [bad = true]. Без ограничения общности, будем считать, что противник является детерминированным и делает q попарно различных запросов(Ж®, M®), i = 1,... ,q. Будем использовать нотацию coll®, i = 2,... ,q, для обозначения события, что флаг bad принял значение true после обработки первых i запросов. Тогда,

Pr [bad = true] = ^ Pr

colPn coll®

colPn coll®

Оценим вероятность Рг 2,..., д.

Заметим, что каждый г-й

прос является парой (М®,Ы1),

для любого i

за-где

Лемма IV.1. Для любого противника A в модели PRF, делающего не более q запросов к оракулу Tag:

q(q - 1)

Доказательство. Определим эксперименты Exp0 и Exp1 (см. Рис. 3), которые отличаются от эксперимента ExpMMGm2-mac следующим образом. На этапе инициализации дополнительно вводится множество tau, которое инициализируется пустым множеством, а также флаг bad, который изначально полагается равным значению false. Во время выполнения эксперимента проверяется, лежит ли очередное значение т в множестве tau, и если лежит, то флаг bad выставляется равным true, после этого значение т добавляется в множество. Также, в эксперименте Exp0 значение имитовставки T выбирается из множества {0,1}s случайно равновероятно, в случае, если т G tau (см. строку в рамке, Рис. 3).

Легко заметить, что эксперимент Exp1 в точности совпадает с экспериментом ExpMGm2-MAC • любого противника A значение в точности равно значению

M® = M1 \\...\\Mlh, M® G {0,1}n, и определяется значениями T1,... ,T®-1, полученными на предыдущих запросах. Без ограничения общности, будем считать, что l1 = ... = l®. Действительно, если это не так, то мы всегда можем дополнить сообщение нулевыми блоками до длины l := max(l1,..., l®). Данное дополнение не повлияет на значение имитовставки, а дополненные сообщения останутся попарно различными, так как M® = 0n. Поэтому значения T1,...,T®-1 однозначно определяют значение l и пары (N1; M1),..., (N®, M®).

Для фиксированного Nj обозначим через Hk, j = 1,...,i; k = 1,...,l, случайную величину p'(Nj\\01\\str„_r_2([ - 1)).

1

Заметим, что Pr

Hl

B

— для любого B G

2n

{0,1}п. Также заметим, что случайные величины Н и Н[ для любых ] = t и любого к независимы, при этом

Pr

Hj = Ht

Для рез

Hj

1 тогда и только тогда, когда N k = Nj.

обозначим случайных

краткости набор

j

че-величин

в

(Hj,..., Hj ). Также для набора H = (H1,...,Hl) и сообщения M = M1\ ... \\M^ через т(H, M) обозначим

1

( é H k ® M k

функцию Set1r ф Hk ® Mk . Таким образом, мы

vk=l

имеем

Pr

coll® П coll

l

E

Pr

coll® П coll4"1 П {Tj = Tj}j=1

l

где через Т- обозначены случайные величины т5Ья(уо(т(Н-))) и суммирование ведется по всем наборам (Ть..., Тк-1) е ({0,1}я)к-1.

Для фиксированных (Щ,М1),..., ^к,Мк) введем следующие условия на множество наборов Н1,... ,Нк, Н- :=(Н-), э = 1,...,г:

Е1: V 1 < э < г < г — 1: г(Н-, М-) = т (Н1 ,М4).

Е2: 3 э, 1 < э < г — 1: т(Нк, Мк) = т(Н-, М-).

Для любых фиксированных Т1,...,Тк-1 и, следовательно, фиксированных (Щ,М-1),..., Мк) событие со11к П со11к-1 возникает тогда и только тогда, когда случайные величины Н1,... ,Нк приняли такие значения Н1 ,...,Нк, для которых выполнены условия Е1 и Е2. Для краткости мы будем обозначать события, что выполнены данные условия, таким же образом, а именно через Е1 и Е2 соответственно.

Заметим, что фиксация значений Н-, Э = 1,... ,г, приводит к фиксации значений т- := т(Н-, М-). Поэтому

Pr

coll® П coll

l

Е

Pr

T1,...,Ti-1

Ei П E2 П {Tj = Tj}j=1

Pr

T1,...,Ti-1 h1 ,...,Hi :

{Н- = Н- })=1П _^Ь3(р(тэ)) = Т

Е1ПЕ2

= ЕЕ Рг [{& = Н- }$=1

Т1,...,Т-1 н: Е1ПЕ2

рг[{тадт)) = т-}-=и.

Здесь, суммирование ведется по всем Н1,... ,Нк, Н- е ({0,1}п)1, для которых выполнены условия Е1 и Е2. Последний переход верен в силу того, что величины д и Н-, Э = 1,... ,г, независи мы.

Рассмотрим значение Рг [{тБЬя(уо(т-)) = Т- }}=!]. Для любых Т1,..., Тк-1 и Н1,..., Нк-1, для которых выполнено условие Е1, данная вероятность в точности равна вероятности выбора функции р, для которой г — 1 фиксированным входам соответствуют выходы с фиксированными первыми в битами, а именно ——. Таким

образом:

2s(i-i) •

Pr

coll^ П coll

i-1

Е Е pr VHj = Hj}

}j=i

Ti,...,Ti-i H1 ,...,Hi : Ei ПЕ2

1 £ Pr [Ei П E2 ] < 1

1

2s(i-i)

2s(i-i)

Tu..,Ti-

2s(i-i)

E Pr [E2].

T1,..,Ti-

Теперь рассмотрим Pr [E2 ] при фиксированных Ti,... ,Ti_i и, следовательно, при фиксированных

(Ni,Mi),..., (Ni,M k).

Pr [E2 ]= Pr 3 j : T (H®, M k) = T (Hj ,Mj )

Pr

i— i ___ ___ U {t (H®, M k) = T (Hj, j=i

<

ii

< Рг т(Нк, Мк) = т(Н-, М-) -=1

Оценим значение р := Рг т(Нк,М®) = т(Н-,М-) для любых э = 1, . . . , г - 1. Рассмотрим два случая:

1) N1 = N (в данном случае Н\ и Н3к являются независимыми).

2) N = Nj (в данному случае Нгк и Н- являются зависимыми).

Первый случай:

= #{Нк, Н- : т(Нк, Мк) = т(Н-, М-)} р = 2^ .

#{Нк, Н- : т(Нк, Мк) = т(Н-, М-)} =

l l ^H®,Hj ^ Hl ® Mi = 0 Hj ® Ml)

=i

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

=i

Hl,Hj ^ Hi®Mkk = 0 Hj®Mj©Set1r(0"^.

k

=i =i

Так как M= 0" для любого i, мощность множества

равна

2

2 . 2"(2l—i) и p = —.

2"

Второй случай:

#{Hk : t(Hk, Mk) = T(Hk, Mj)}

p

2"

#{Нк: т(Нк, Мк) = т(Нк, М-)} =

I

= #{Нк ^ Нк ® (Мк ® М-)=0^ + =1 I

+ #{Нк ^ Нк ® (Мк ф М-) = Set1r (0"^.

=1

Так как для одинаковых векторов инициализации Мк и М- должны быть различными, существует к, такой что Мк ф М- = 0". Таким образом, мощность множества

равна 2 • 2п(1-1) и р =2".

В итоге получаем искомую оценку:

Ч 1 к-1 2

Рг [Ъаа = true Е Е^п =

к=2 Ти...,Т-1 -=1

у^ i - 1 = q(q - 1)

/ j 2"—i 2" '

i=2

Теперь введем стандартную модель ОТ-СМА для схем выработки имитовставки с вектором инициализации и получим оценку в данной модели для схемы MGM2-MAC.

Определение IV.2. Для схемы MAC преимущество противника A в модели UF-CMA определяется следующим образом:

в

Tag,V erify

A_

Adv

MAC

V)= Pr [ExpMFaC^A) — 1],

где эксперимент ExpMAC^A) описан ниже:

ExpMFaCma(A) K £ MAC.Gen( )

sent £ 0 win £ false

ATag,V erify ( )

return win

Oracle Tag(N, M)

if (N, M) G sent:

return ± T £ MAC.Tag(K, N, M) sent £ sent U {(N, M)} return T

Oracle Verify(N, M, T)

res £ MAC.Vf(K, N, M, T) if res A ((N, M ) G sent):

win £ true return res

Adv

,UF-CMA / ^ q(q - 1) , qV

MGM2-MACr>s (A) ^ 2П + 2s ,

MRAE-int MavMGM2Fun

(A) ^ AdvMGM2-MACr s (B)

p ' £— Func(n)

. tSEnc.SDec/ \

return A ( )

SEnc(N, A, P)

h £ \A\n,t £ \P\n u £ n — r — 2

.........Encryption..

for i = 1.. .t do :

Oracle SDec(N, A, C, T)

h £\A\n,t £\C\n u £ n — r — 2

..........Padding.....

Yi £ N||00||str„(i — 1) Г £ p '(Yi) Г £ msb |p i (Г || ... Ц Г4) C £ P ф Г

..........Padding........

Используя Предложение 7.3 [16] и Лемму IV. 1 легко доказать следующее утверждение.

Следствие IV.1. Для любого противника A в модели UF-CMA, делающего не более qT запросов к оракулу Tag и не более qv запросов к оракулу Verify:

где q = qx + qv.

2) Стойкость MGM2 со случайной функцией:

Лемма IV.2. Для любого противника A в модели MRAE-int, делающего не более qE запросов к оракулу Encrypt и не более qD запросов к оракулу Decrypt, существует противник B в модели UF-CMA, делающий не более qE запросов к оракулу Tag и не более qD запросов к оракулу Verify, такой что

a £ n\A\n — \A\ c £ n\C\n — \C\ L £ str„/2(\A\) || str„/2(\C\) M £ A||0a||C||0c||L

.......Tag Genetation.......

T £ Tag(N, M) return (C, T)

Рис. 4. Противник B

Если противник A подделку, то противник формирует подделку в

a £ n\A\„ — \A\ c £ n\C\n — \C\ L £ strn/2(\A\) || str„/2(\C\) M £ A||0a||C||0c||L

......Tag Verification......

if Verify(N, M, T) = 0: return ±

.........Decryption.........

for i = 1 . . . t do :

Yi £ N || 001 str^ (i — 1) ri £ p''(Yi) Г £ msb|C|(ri || .. P £ C ф Г return P

. || Г0

Exp

UF-CMA 'MGM2-MACr

успешно формирует B также успешно своем эксперименте

( B) . Действительно, прямой проверкой

Доказательство. Построим противника B, который использует противника A в качестве черного ящика. Противник B (см. Рис. 4) перехватывает запросы противника A и самостоятельно их обрабатывает с использованием своих оракулов. Для шифрования/расшифрования B реализует процедуру «lazy sampling» для функции р''. Для вычисления/проверки имитовставки противник B реализует процедуру дополнения и отправляет соответствующие запросы своему оракулу.

Заметим, что противник B симулирует для противника A в точности эксперимент Exp^GM-™^^) r s • Действительно, так как для схемы MGM2Func(n),r,s входы в случайную функцию в случае 1) вычисления имитовставки, 2) вычисления значения H® и 3) вычисления значений Г® является различными (в силу фиксации битов у входов), использование одной случайной функции абсолютно неотличимо от использования трех различных случайных функций р,р',р'' для этих трех случаев. Также заметим, что сообщения M, формируемые противником B, удовлетворяют условиям на множество сообщений для схемы MGM2-MACr s.

можно убедиться, что если A делает нетривиальный корректный запрос (N, A, C, T) к оракулу Decrypt, то противник B делает соответствующий запрос (N,M = A||0a||C\\0c\\L,T) к оракулу Verify, который также будет корректным и нетривиальным. □

B. Конфиденциальность

Теорема IV.2. Для любого противника A в модели CPA-res, делающего не более q1 запросов к оракулу O1 и не более q2 запросов к оракулу O2, где суммарная длина ассоциированных данных не превосходит a a блоков, а суммарная длина открытых текстов не превосходит aP блоков,

Adv

CPA-res

,(A) < - +

a2 , q(q - 1)

(3)

где q = q1 + q2 и a = 2a p + a a + 2q.

Доказательство. Сначала применим результат работы [19] для замены семейства Perm(n) на семейство Func(n) (это даст дополнительный член ^ в оценке), и далее получим оценку в модели CPA-res для схемы

MGM2Func(n),r,s.

Оценку для схемы MGM2F„nc(n)rs можно получить аналогичным Теореме IV. 1 образом. Действительно, шифртексты C, полученные от оракула O1, абсолютно неотличимы от случайных равновероятных строк, так как входы в случайную функцию р, используемые для вычисления значений Г®, всегда уникальны.

Неотличимость имитовставок Т, полученных от оракула 01, от случайных равновероятных строк можно оценить путем построения двух противников в модели PRF для схемы MGM2-MAC, которые используют противника А в качестве черного ящика. Таким образом,

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Adv

MGM2c

c(n),

(A) <

q(q—i)

2n-1

V Заключение

В настоящей работе предложен новый режим аутенти-фицированного шифрования MGM2. Для данного режима были доказаны оценки стойкости в расширенных моделях MRAE-int и CPA-res, которые учитывают возможность повторного использования вектора инициализации. На основе полученных оценок стойкости был сделан вывод, что стойкость режима MGM2 даже в усиленных моделях превышает стойкость режима MGM, на базе которого был разработан режим MGM2, в базовых моделях.

В дальнейших работах мы планируем разработать SIV-конструкцию (см. [12]) на основе режима MGM2 для обеспечения конфиденциальности в модели MRAE. Также нашей целью является внедрение механизмов смены ключей в режим MGM2 для увеличения срока жизни ключа и достижения новых свойств безопасности, таких как устойчивость к утечкам.

Библиография

БИБЛИОГРАФИЯ

[1] M. Bellare и C. Namprempre, «Authenticated encryption: Relations among notions and analysis of the generic composition paradigm», Advances in Cryptology — ASIACRYPT 2000. ASIACRYPT 2000. Lecture Notes in Computer Science, т. 1976, 2000.

[2] «Информационная технология. Криптографическая защита информации. Режимы работы блочных шифров, реализующие аутентифицированное шифрование», Федеральное агентство по техническому регулированию и метрологии (Росстандарт), 2019.

[3] P. Rogaway, «Nonce-Based Symmetric Encryption», Fast Software Encryption. FSE 2004. Lecture Notes in Computer Science, т. 3017, 2004.

[4] L. Akhmetzyanova, E. Alekseev, G. Karpunin и V. Nozdrunov, «Security of Multilinear Galois Mode (MGM)», IACR Cryptology ePrint Archive, т. 2019/123, 2019.

[5] E. Andreeva и et al, «How to Securely Release Unverified Plaintext in Authenticated Encryption», Advances in Cryptology -ASIACRYPT 2014. Lecture Notes in Computer Science, т. 8873, 2014.

[6] J. Black, P. Rogaway и T. Shrimpton, «Encryption-Scheme Security in the Presence of Key-Dependent Messages», In Revised Papers from the 9th Annual International Workshop on Selected Areas in Cryptography (SAC '02), 2002.

[7] P. Rogaway и T. Shrimpton, «A provable-security treatment of the key-wrap problem», Annual International Conference on the Theory and Applications of Cryptographic Techniques. Lecture Notes in Computer Science, т. 4004, 2006.

[8] Е. Алексеев, Л. Ахметзянова, А. Бабуева и С. Смышляев, Прикладная дискретная математика, т. 49, 2020.

[9] T. Ashur, O. Dunkelman и A. Luykx, «Boosting authenticated encryption robustness with minimal modifications», Advances in Cryptology - CRYPTO 2017. Lecture Notes in Computer Science, т. 10403, 2017.

[10] V Hoang, T. Krovetz и P. Rogaway, «Robust Authenticated-Encryption AEZ and the Problem That It Solves», dvances in Cryptology - EUROCRYPT 2015. EUROCRYPT 2015. Lecture Notes in Computer Science, т. 9056, 2015.

[11] T. Shrimpton и R. Terashima, «A modular framework for building variable-input-length tweakable ciphers», International Conference on the Theory and Application of Cryptology and Information Security. Lecture Notes in Computer Science, т. 8269, 2013.

[12] S. Gueron и Y. Lindell, «GCM-SIV: full nonce misuse-resistant authenticated encryption at under one cycle per byte», Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015.

[13] A. Kurochkin и D. Fomin, «MGM Beyond the Birthday Bound», 8th Workshop on Current Trends in Cryptology (CTCrypt 2019), 2019.

[14] «Информационная технология. Криптографическая защита информации. Криптографические алгоритмы, сопутствующие применению алгоритмов блочного шифрования», Федеральное агентство по техническому регулированию и метрологии (Росстандарт), 2018.

[15] L. Akhmetzyanova, E. Alekseev, S. Smyshlyaev и I. Oshkin, «On Internal Re-keying», Advances in Cryptology - Security Standardisation Research 2020. Lecture Notes in Computer Science, т. 12529, 2020.

[16] M. Bellare и P. Rogaway, «The Security of Triple Encryption and a Framework for Code-Based Game-Playing Proofs», Advances in Cryptology — EUROCRYPT 2006. Lecture Notes in Computer Science, т. 4004, 2006.

[17] T. Shrimpton, «A Characterization of Authenticated-Encryption as a Form of Chosen-Ciphertext Security», IACR Cryptology ePrint Archive, т. 2004/272, 2004.

[18] D. Bernstein, «Stronger Security Bounds for Permutations», 2005. url: http://cr.yp.to/papers.html.

[19] D. Chang и M. Nandi, «A Short Proof of the PRP/PRF Switching Lemma», IACR Cryptology ePrint Archive, т. 2008/078, 2008.

[20] «CAESAR competion», url: https://competitions.cr. yp.to/caesar.html.

Misuse-resistant MGM2 mode

Liliya Akhmetzyanova, Evgeny Alekseev, Alexandra Babueva, Andrey Bozhko, Stanislav Smyshlyaev

Abstract—We introduce a new AEAD mode - an MGM2 mode. For this mode we provide security bounds regarding extended security notions in the nonce-misuse setting. Misuse-resistance is crucial for applications for which there is no way to provide uniqueness of nonces. Moreover, this security property also provides additional protection against implementation errors, both accidental and adversarial.

The MGM2 mode was developed basing on the MGM (Multilinear Galois Mode) mode that was standardized in the Russian Federation. The main cryptographic core of the construction, namely multilinear function, is not changed. For the new mode we change the way how secret masking blocks and secret coefficients of the multilinear function are produced, decreasing the probability of collision between block cipher inputs. We provide the security bounds for MGM2 in the MRAE-integrity and CPA-res models. The obtained bounds show that the developed mode provides better security properties regarding even extended security notions than the original MGM mode provides regarding base security notions (in the nonce-respecting setting).

Keywords—MGM, AEAD mode, security notion, security bounds, nonce-misuse, misuse-resistant

References

REFERENCES

[1] M. Bellare and C. Namprempre, «Authenticated encryption: Relations among notions and analysis of the generic composition paradigm», Advances in Cryptol-ogy — ASIACRYPT 2000. ASIACRYPT 2000. Lecture Notes in Computer Science, vol. 1976, 2000.

[2] «Information technology. Cryptographic data security. Authenticated encryption block cipher operation modes», Federal Agency on Technical Regulating and Metrology, 2019.

[3] P. Rogaway, «Nonce-Based Symmetric Encryption», Fast Software Encryption. FSE 2004. Lecture Notes in Computer Science, vol. 3017, 2004.

[4] L. Akhmetzyanova, E. Alekseev, G. Karpunin, and V Nozdrunov, «Security of Multilinear Galois Mode (MGM)», IACR Cryptology ePrint Archive, vol. 2019/123, 2019.

[5] E. Andreeva and et al, «How to Securely Release Unverified Plaintext in Authenticated Encryption», Advances in Cryptology -ASIACRYPT 2014. Lecture Notes in Computer Science, vol. 8873, 2014.

[6] J. Black, P. Rogaway, and T. Shrimpton, «Encryption-Scheme Security in the Presence of Key-Dependent Messages», In Revised Papers from the 9th Annual International Workshop on Selected Areas in Cryptography (SAC '02), 2002.

[7] P. Rogaway and T. Shrimpton, «A provable-security treatment of the key-wrap problem», Annual International Conference on the Theory and Applications of Cryptographic Techniques. Lecture Notes in Computer Science, vol. 4004, 2006.

[8] L. Akhmetzyanova, E. Alekseev, A. Babueva, and S. Smyshlyaev, Prikladnaya diskretnaya matematika, vol. 49, 2020.

[9] T. Ashur, O. Dunkelman, and A. Luykx, «Boost-ing authenticated encryption robustness with minimal modifications», Advances in Cryptology - CRYPTO 2017. Lecture Notes in Computer Science, vol. 10403, 2017.

[10] V Hoang, T. Krovetz, and P. Rogaway, «Robust Authenticated-Encryption AEZ and the Problem That It Solves», dvances in Cryptology - EUROCRYPT 2015. EUROCRYPT 2015. Lecture Notes in Computer Science, vol. 9056, 2015.

[11] T. Shrimpton and R. Terashima, «A modular framework for building variable-input-length tweakable ci-phers», International Conference on the Theory and Application of Cryptology and Information Security. Lecture Notes in Computer Science, vol. 8269, 2013.

[12] S. Gueron and Y. Lindell, «GCM-SIV: full nonce misuse-resistant authenticated encryption at under one cycle per byte», Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015.

[13] A. Kurochkin and D. Fomin, «MGM Beyond the Birthday Bound», 8th Workshop on Current Trends in Cryptology (CTCrypt 2019), 2019.

[14] «Information technology. Cryptographic data security. Cryptographic algorithms accompanying the use of block ciphers», Federal Agency on Technical Regulating and Metrology, 2018.

[15] L. Akhmetzyanova, E. Alekseev, S. Smyshlyaev, and I. Oshkin, «On Internal Re-keying», Advances in Cryptology - Security Standardisation Research 2020. Lecture Notes in Computer Science, vol. 12529, 2020.

[16] M. Bellare and P. Rogaway, «The Security of Triple Encryption and a Framework for Code-Based Game-Playing Proofs», Advances in Cryptology — EUROCRYPT 2006. Lecture Notes in Computer Science, vol. 4004, 2006.

[17] T. Shrimpton, «A Characterization of Authenticated-Encryption as a Form of Chosen-Ciphertext Security», IACR Cryptology ePrint Archive, vol. 2004/272, 2004.

[18] D. Bernstein, «Stronger Security Bounds for Permutations», 2005. [Online]. Available: http://cr.yp.to/ papers.html.

[19] D. Chang and M. Nandi, «A Short Proof of the PRP/PRF Switching Lemma», IACR Cryptology ePrint Archive, vol. 2008/078, 2008.

[20] «CAESAR competion», [Online]. Available: https:// competitions.cr.yp.to/caesar.html.

i Надоели баннеры? Вы всегда можете отключить рекламу.