Научная статья на тему 'Код аутентификации с секретностью на основе проективной геометрии'

Код аутентификации с секретностью на основе проективной геометрии Текст научной статьи по специальности «Математика»

CC BY
298
67
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
КОД АУТЕНТИФИКАЦИИ С СЕКРЕТНОСТЬЮ / СОВЕРШЕННЫЙ ШИФР / ПРОЕКТИВНАЯ ГЕОМЕТРИЯ / AUTHENTICATION CODE WITH SECRECY / PERFECT CIPHER / PROJECTIVE GEOMETRY

Аннотация научной статьи по математике, автор научной работы — Зубов Анатолий Юрьевич

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

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

Authentication code with secrecy based on projective geometry

An authentication code with the secrecy based on the projective geometry is proposed. It ensures the secure authentication and confidentiality for the equiprobable source of information.

Текст научной работы на тему «Код аутентификации с секретностью на основе проективной геометрии»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2013 Математические методы криптографии №2(20)

МАТЕМАТИЧЕСКИЕ МЕТОДЫ КРИПТОГРАФИИ

УДК 519.7

КОД АУТЕНТИФИКАЦИИ С СЕКРЕТНОСТЬЮ НА ОСНОВЕ ПРОЕКТИВНОЙ ГЕОМЕТРИИ

А. Ю. Зубов

Московский государственный университет им. М. В. Ломоносова, г. Москва, Россия

E-mail: Zubovanatoly@yandex.ru

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

Ключевые слова: код аутентификации с секретностью, совершенный шифр, проективная геометрия.

1. Определения и постановка задачи

Код аутентификации (далее — A-код) —это тройка A = (S, E, M) конечных множеств, называемых соответственно множествами состояний источника, правил кодирования и сообщений. Правило кодирования е Е E — это инъективное отображение е: S ^ M. Для защиты сообщений от активных атак, к которым относятся атаки имитации и подмены, отправитель и получатель выбирают общее (секретное) правило кодирования е. Отправитель вычисляет m = e(s) и направляет сообщение m получателю. Критерием аутентичности полученного сообщения является условие e-1(m) = 0. Здесь е-1 : M ^ S U {0} — обратное к е отображение, определяемое формулой

-I . . Is, если m = e(s),

е (m) = < у’

I 0, если m Е e(S),

где e(S) = {e(s): s Е S}. Предполагается, что 0 Е S. Для удобства выбора правила кодирования индексируются ключами из множества K.

Матрицей кодирования A-кода A называется матрица C(A) = (c(e,m)) размеров |E | х |М|. Строки матрицы C(A) занумерованы правилами кодирования е Е E, столбцы— сообщениями m Е M. Элементы матрицы определяются равенством c^m) = = е-1^). Матрица инцидентности A-кода —это матрица I(A) = (¿(е,^,)) тех же размеров, где

1, если е-1^) = 0,

0, если е-1^) = 0.

Если в каждом столбце матрицы кодирования A-кода имеются вхождения лишь одного состояния источника, то A-код называется декартовым или A-кодом без секретности. Он характеризуется тем, что е-^m) = е-^m) для любых m Е M и е1,е2 Е E(m), где E(m) = {е Е E: е-1^) = 0}. Это означает, что сообщение однозначно определяет состояние источника, поэтому состояние источника не является секретом для противника. Недекартов A-код называют A-кодом с секретностью.

i(e,m)

Фактически А-код с секретностью может обеспечивать конфиденциальность состояния источника. В связи с этим можно говорить о криптографической стойкости А-кода.

Стойкость А-кода к активной атаке оценивается величиной вероятности успеха атаки. При имитации противник вводит в канал связи поддельное сообщение (имитируя передачу сообщения от одного пользователя другому), а при подмене — подменяет наблюдаемое сообщение (например, модифицируя его). В обоих случаях противник рассчитывает на то, что поддельное сообщение будет принято как аутентичное. Не зная правила кодирования, противник добьётся успеха при выборе поддельного сообщения лишь с некоторой вероятностью. Если противник сможет определить по наблюдаемому сообщению правило кодирования, то он добьётся успеха в подмене с вероятностью равной 1. При этом противник сможет навязать получателю любое поддельное сообщение. Чем меньше эта вероятность, тем более стойким является А-код.

В простейшем случае речь идёт об атаках на основе не более чем одного наблюдаемого сообщения. В этом случае естественно полагать, что каждое правило кодирования используется для передачи лишь одного состояния источника. Кроме того, имеется в виду атака, в которой противник добивается успеха, когда лишь некоторое (а не выбранное по его усмотрению) сообщение принимается как аутентичное. Другими словами, противник рассчитывает лишь на навязывание «наугад». Только такие атаки рассматриваются в этой работе. Любые другие атаки, в которых противник может использовать имитацию или подмену на основе наблюдения нескольких сообщений, образованных с помощью одного и того же правила кодирования или имеющих целью навязывание выбранного состояния источника, должны рассматриваться отдельно.

Определим вероятности успеха атак. Будем полагать, что состояния источника и правила кодирования выбираются случайно и независимо друг от друга в соответствии с заданными на множествах Б и Е распределениями вероятностей Р(Б) = (рв(в): вЕ Б) и Р(Е) = (ре(е): е Е Е). Пусть Б и Е — соответствующие случайные величины. Они полагаются независимыми и естественным образом индуцируют случайную величину М с множеством исходов М. Вероятность рм (т) вычисляется по формуле

Рм (т) = ^ ре (е)рв (е-1(т)).

ееЕ(т)

Обычно полагают, что правила кодирования выбираются случайно и равновероятно (в общем случае это не обязательное условие [1, 2]). Будем и мы полагать, что распределение Р(Е) —равномерное.

Пусть ри(т) —вероятность того, что (при случайном выборе правила кодирования) имитируемое сообщение т Е М будет принято как аутентичное. Ясно, что

Ри(т) = ^ ре (е).

ееЕ(т)

Тогда (учитывая равномерность распределения Р(Е)) определим вероятность ри успеха имитации формулой

/ ^ |Е(т)| ^

ри = тах ри(т) = тах———. (1)

тем тем |Е |

Вероятность рп успеха подмены определяется формулой

рп = Е рм (т)рп(т),

тем

где

рп (т) = тахрп(п | т),

п=т

а рп(п | т) —вероятность того, что (для случайно выбранной пары (е,з)) противник добьётся успеха при подмене наблюдаемого т Е М сообщением п = т. Эта вероятность вычисляется по формуле

где Е(т, п) = Е(т) П Е(п). Учитывая равномерность распределения Р(Е), получаем

Будем называть е- стойким А-код, для которого тах{ри, рп } ^ е, где е — выбранный порог стойкости. В настоящее время достаточной считается величина е порядка 2-128. Известны (см., например, [3]) достижимые нижние оценки вероятностей ри,рп:

Актуальной является разработка конструкций А-кодов, использующих общий секретный ключ для обеспечения аутентификации и конфиденциальности передаваемых сообщений. Этой теме посвящён целый ряд работ [4-18]. В данной работе предлагается конструкция А-кода на основе проективной геометрии, обеспечивающего е-стойкую аутентификацию и совершенное шифрование для равновероятного источника.

Пусть V, к, Л — натуральные числа. Тогда (у, к, X)-схемой или блок-схемой называется пара (М, В), где М — множество мощности у и В — семейство к-подмножеств (блоков) множества М, таких, что любое 2-подмножество множества М содержится точно в Л блоках.

Пусть Ь — число блоков схемы и г — число блоков, содержащих любой выбранный элемент множества М. Тогда для параметров блок-схемы выполняются следующие соотношения:

Для блок-схемы выполняется неравенство Фишера Ь ^ V. Блок-схема, для которой Ь = V, называется симметричной. Известно, что для симметричной блок-схемы справедливо равенство г = к и любые два блока имеют ровно Л общих точек.

Пусть — поле из q элементов. Пространство всех векторов (ага,... , а0), а Е , называется проективной геометрией размерности п над и обозначается РС(п^). Вектор 0 = (0,... , 0) образует пустое подпространство размерности -1. Точка — подпространство размерности 0. Это множество векторов ЬХ, где х = (хп,...,х0) = 0,

Е Ре (фз (е 1(т))

Если распределение Р(£) равномерно, то формула (2) принимает вид

(2)

(3)

2. Теорема Зингера

Ь ■ к = V ■ г,

г ■ (к — 1) = Л ■ (V — 1).

а Ь пробегает все элементы из Fq. Если векторы у0,...,уи линейно независимы, то множество векторов {Ь0у0 + ... + Ьиуи: Ь € Fq} — подпространство Би размерности Л,. Подпространство Бп-1 называется гиперплоскостью. Если (сп,... ,с0) = 0, то множество всех точек (хп,... , Х0), удовлетворяющих уравнению

образует гиперплоскость, и обратно, каждая гиперплоскость может быть определена таким образом, причём (сп,..., с0) и (всп,... , вс0), в = 0, определяют одну и ту же гиперплоскость.

(хп,...,х0) и (йхп,... , йх0), й = 0, определяют одну и ту же точку, всего имеется V = ^га+1 — 1)/^ — 1) точек. Аналогично, поскольку (сп,... , с0) и (всп,..., вс0), в = 0, определяют одну и ту же гиперплоскость, имеется у гиперплоскостей. Подпространство Би содержит у = ^и+1 — 1)/^ — 1) точек, а гиперплоскость — к = (с^ — 1)/^ — 1) точек.

С проективной геометрией РС(п, q) ассоциируется симметричная блок-схема. Это следует из теоремы Зингера [19].

Теорема 1. Гиперплоскости геометрии РС(п, q), взятые в качестве блоков, и точки, взятые в качестве элементов, образуют симметричную блок-схему с параметрами

Эта схема является циклической, и точки в любой гиперплоскости определяют (у, к, Л)-разностное множество.

Симметричная блок-схема называется циклической, если она имеет автоморфизм а, который переставляет элементы и блоки по циклу длины у. Автоморфизмом блок-схемы называется взаимно однозначное отображение а множеств элементов и блоков схемы на множества элементов и блоков той же схемы, такое, что если х^ — элемент, а Bj — блок и

то xi G Bj тогда и только тогда, когда xi G Bj.

Множество D, состоящее из k вычетов ai,... , a& по модулю v, называется (v, k, Л)-разностмым множеством, если для каждого d = 0 (mod v) существует ровно Л упорядоченных пар (ai, aj), a^ aj G D, таких, что ai — aj = d (mod v).

Рассмотрим А-код, множеством сообщений и ключей которого служит множество точек геометрии РС(п, q), а множества ек(Б), к Е К, совпадают с множествами точек гиперплоскостей (произвольным образом упорядоченными). Таким образом, правило кодирования ек, отвечающее ключу к, удовлетворяет равенству ек(Б) = Вк, где Б — множество состояний источника, а Вк — гиперплоскость, определяемая точкой к.

По теореме Зингера для построенного А-кода множества ек(Б) составляют блоки симметричной (у, к, Л)-схемы с параметрами, указанными в (5). Для такой схемы выполняется равенство г = к и любые два блока имеют ровно Л общих точек. Отсюда

CnXn + ... + CqXq = 0,

Каждый из qn+1 — 1 ненулевых векторов определяет точку, и, поскольку

v

qn+1 — i — i qn-1 — 1

--------, k =-------------г, Л =------------Г~

q — 1 q — 1 q — 1

a : xi ^ xj = (xi)a, a : Bj ^ (Bj)a,

3. A-код на основе проективной геометрии

следует, что для любого сообщения т и любой пары различных сообщений Ш1 и т2

дп - 1 дп-1 - 1

|Е(т)| = г = к =------- и |Е(т, п)| = Л =---------.

д — 1 д — 1

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

дп — 1 дп-1 — 1

Ри = дп+1 — 1, Рп = дп — 1 .

Таким образом, тах{ри,рп} « 1/д. Например, при д = 2128 шансы на успех атаки имитации или подмены оцениваются величиной порядка 2-128.

Уточним теперь выбор гиперплоскости ек(Б) для каждого к Е К и значение ек(в) для каждого в Е Б, при котором А-код, рассматриваемый как шифр, реализует совершенное (по К. Шеннону [20]) шифрование. В связи с этим отметим, что любой А-код с секретностью может быть формально рассмотрен как шифр. При этом Б и М — множества открытых и шифрованных текстов, ек : Б ^ М и е-1 : М ^ Би{0} —правила зашифрования и расшифрования на ключе к Е К. Такой взгляд на код аутентификации позволяет формально ставить вопрос о его стойкости как шифра.

Теорема 2. Правило кодирования А-кода на основе проективной геометрии можно выбрать так, чтобы А-код являлся совершенным шифром.

Доказательство. Пусть А — код аутентификации на основе проективной геометрии и I(А) —его матрица инцидентности. Как было отмечено, для параметров кода А справедливы равенства |М| = V = Ь = |Е| и г = к = |Б|, означающие, что I(А) —квадратная (0,1)-матрица, в каждой строке и каждом столбце которой содержится ровно к единиц. Согласно [21, теорема 4, с. 364], такая матрица представляется в виде суммы к подстановочных матриц. Поместив на места единиц в каждой из подстановочных матриц одно из к состояний источника, получим матрицу, в каждой строке и каждом столбце которой содержатся все состояния источника. Обозначим полученную матрицу через С (А). Она является матрицей кодирования кода аутентификации А с данными множествами Б, Е, М. Покажем, что А реализует совершенное шифрование.

Для этого воспользуемся критерием совершенности, согласно которому для любых т Е М и в Е Б выполняется равенство рм(т) = рм\я(т|в). Это равенство можно записать в виде

Е Ре(е) = Е Ре(е) ■ ря(е-1 (т)), (6)

еЕЕ(в,т) вЕЕ(т)

где Е(в,т) = {е Е Е: е(в) = т}. С учётом условия равновероятности выбора состояний источника и правил кодирования (6) равносильно равенству

1 |Е(в,т)| = Ьк |Е (т)|. (7)

Из свойств матрицы С (А) следует, что |Е (в,т)| = 1 для любых в Е Б и т Е М.

А поскольку Е(т) = к, приходим к выводу о том, что равенство (7), а вместе с ним

и (6) справедливо. ■

Остаётся найти подходящее разложение матрицы I(А) в сумму подстановочных матриц. Для того чтобы сделать это, обратимся к доказательству (из [19]) цикличности блок-схемы в теореме Зингера.

Пусть 9 — примитивный элемент поля GF(qn+1). Тогда в — корень многочлена F(x) степени n +1, неприводимого над GF(q). Пусть

F(x) = xn+1 + cnxn + ... + с0, c G GF(q).

Поскольку F(9) = 0, выполняется соотношение

9n+1 = -со - ci9 - ... - c„9ra.

Отсюда следует, что для любой степени i элемента 9 для подходящих элементов a0,... , an G GF(q) выполняется равенство

9* = ao + ai9 + ... + an9n. (8)

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

Тем самым устанавливается взаимно однозначное соответствие между множеством степеней элемента 9 и множеством ненулевых векторов (a0,...,an) над GF(q), рассматриваемых как точки геометрии PG(n,q).

qn+1 - 1

В условиях теоремы v = ---------------, поэтому элементы 0,1, 9v,... , 9(q-2)v дают q ре-

q - 1

шений уравнения zq = z и образуют подполе GF(q) поля GF(qn+1). Если 9sv = t, то t G GF(q), и поэтому если (8) выполняется, то

9i+sv = ta0 + ta19 + ... + tan9n.

Следовательно, 9* и 9j соответствуют одной и той же точке из PG(n, q) тогда и только тогда, когда i = j (mod v). Таким образом, если задано отображение а поля GF(qn+1) в себя

/а : 0 ^ 0, (9)

|а : 9* ^ 9i+1,

то, ввиду (8), а можно рассматривать и как отображение

а : (a0, a1, . . . , an) ^ ( anc0, a0 anс1, . . . , an_1 ancn) (10)

множества точек в себя. Поскольку 9v(q-1) = 1, отображение (9) является взаимно однозначным, и поэтому взаимно однозначно и отображение (10). Так как 9* и 9i+v соответствуют одной и той же точке, а 1,9,..., 9v-1 —различным точкам, отображение а в (10) переставляет все v точек по полному циклу.

Заметим теперь, что v - qk = 1. Из этого равенства следует, что к и v взаимно просты. Если для некоторого j = 0 отображение aj переводит точки некоторой гиперплоскости в себя, то aj переставляет их по циклам длины t, где t делит к. Но тогда, поскольку av = 1, t должно делить v и, раз v - qk = 1, приходим к выводу, что t =1 и aj = 1. Так как никакая степень отображения а, за исключением степени v, не фиксирует гиперплоскость, а должно переставлять гиперплоскости по циклу длины v. Это доказывает цикличность блок-схемы.

Пусть q = pd. Рассмотрим башню полей GF(p) С GF(q) С GF(qn+1). Пусть 9 — примитивный элемент поля GF(qn+1) над GF(q) и ш — примитивный элемент поля GF(q) над GF(p). Тогда для подходящих b* G GF(p) и Cj G GF(q) выполняются равенства

+ bd_1Wd 1 + ... + b0 — 0,

9n+1 + c„9n + ... + C0 = 0.

Пусть 9і о (а0,... , ап-1) —взаимно однозначное соответствие из (8) и a — автоморфизм (9). Можно полагать, что множества ключей и сообщений нашего A-кода представлены в виде K = M = {90,0і,... , 9v-1}. Пусть S = {s0, s1,... , sk-1} —произвольное множество состояний источника. Блоками блок-схемы, ассоциированной с геометрией PG(n,q), служат гиперплоскости. Пусть

Во = {9і | i : 9і = ао + аі9 + ... + ага-і9га 1, ао, аі,..., ага-і Є GF(q)}

— одна из гиперплоскостей. Запишем для удобства её элементы в виде

B0 = {9Y0, 9Y1 ,...,97к-}. (12)

Положим

Bj = (Bo)aj = {9Y0+j, 97l+j,..., 9Yk-1 +j}, j = 1, 2,..., v — 1.

Тогда B0, B1,... , Bv-1 —все блоки блок-схемы, связанные в один цикл преобразованием a:

B0 ^ B1 ^ ... ^ Bv-1 ^ B0.

Если теперь строки и столбцы матрицы кодирования упорядочить в соответствии с последовательностью степеней 9 : 00,01,... , 0v-1, и для к Є K положить ек(S) = BK, то, согласно сказанному выше, получим циклическую матрицу. При этом элементы множества S упорядочены естественным образом: s0, s1,... , Sfc-1. Мы получили искомую «раскраску» клеток матрицы инцидентности и соответствующую формулу для правила кодирования. Её можно записать в виде

(Si) = 9(7i+j) modv, (13)

где Yi определены формулой (12).

Итоги проведённых рассуждений сформулируем в следующем утверждении.

Теорема 3. Код аутентификации с правилом кодирования (13) гарантирует успех активной атаки с вероятностью, не превосходящей 1/q, и совершенное шифрование.

Для лучшего понимания устройства такого A-кода приведём пример.

4. Пример

Пусть q = 22 и n = 2. В этом случае GF(qn+1) = GF(26). Выберем в качестве ш корень примитивного многочлена f (y) = y2 + y + 1 над полем GF(2), а в качестве 9 — корень примитивного многочлена F(х) = x3 + шх2 + шх + ш над полем GF(22).

Используя равенства (11) ш2 = ш + 1 и 93 = ш02 + ш9 + ш, вычисляем степени 9і для

i = 0,1,... , v — 1, где v = q2 + q + 1 = 21 (табл. 1).

Для большей наглядности закодируем элементы поля GF(22) числами 0,1, 2, 3, а операции сложения и умножения этих элементов будем производить в соответствии с операциями фактор-кольца GF(2)[y]/f (y) (табл. 2).

При этом элемент ш заменится на 2, а ш + 1 —на 3. Учитывая, что векторы (cn,... , c0) и (scn,... , sc0), s = 0, определяют одну и ту же гиперплоскость, получаем следующее представление элементов множеств K = M (табл. 3).

Заменим 9і вычетом i mod 21 или соответствующей тройкой а0а1а2 согласно табл. 3. Тогда гиперплоскость B0 из (11) имеет вид

B0 = {0,1, 6,8,18} или B0 = {100, 010,130,110,120}.

Таблица 1

Степени дг

д0 = 1 (1, 0, 0)

д1 = д (0,1, 0)

д2 = д2 (0,0,1)

д3 = ш + шд + шд2 (ш, ш, ш)

д4 = (ш +1) + д + д2 (ш + 1,1, 1)

д5 = ш + д + 2 1 + (ш (ш, 1, ш +1)

д6 = 1 + (ш + 1)д (1, ш + 1, 0)

д7 = д + 2 1 + (ш (0,1, ш + 1)

д8 = 1 + д (1,1, 0)

д9 = д + д2 (0,1,1)

д10 = ш + шд + 2 1 + (ш (ш, ш, ш + 1)

д11 = 1 + (ш + 1)д + 2 1 + (ш (1, ш + 1, ш + 1)

д12 = 1 + шд2 (1,0, ш)

д13 = (ш +1) + шд + 2 1 + (ш (ш + 1, ш, ш + 1)

д14 = 1 + шд + 2 оъ 1 + (ш (1, ш, ш +1)

д15 = 1 + 2 1 + (ш (1,0, ш + 1)

д16 = 1 + 2 д ш (1, 0, ш)

д17 = ш + (ш + 1)д + шд2 (ш, ш + 1, ш)

д18 = (ш +1) + д (ш + 1,1, 0)

д19 = (ш + 1)д + д2 (0, ш + 1, 1)

д20 = ш + шд + д2 (ш, ш, 1)

д21 = ш 0) 0, (ш,

Таблица 2 Операции в кольце СЕ(2)[у]//(у)

0 1 2 3

0 0 0 0 0

1 0 1 2 3

2 0 2 3 1

3 0 3 1 2

+ 0 1 2 3

0 0 1 2 3

1 1 0 3 2

2 2 3 0 1

3 3 2 1 0

Таблица 3 Представление степеней д

д0 100

д1 010

д2 001

д3 111

д4 122

д5 132

д6 130

д14 123

д15 103

д16 101

д17 121

д18 120

д19 012

д20 113

д7 013

д8 110

д9 011

д10 112

д11 1 СО со

д12 102

д13 131

Отметим, что элементы множества {0,1, 6,8,18} образуют (21, 5,1)-разностное множество и дают (21, 5,1)-блок-схему с блоками

В = {г, г + 1, г + 6,г + 8,г + 18}, г = 0,1,..., 20,

являющимися гиперплоскостями геометрии РС(2,4).

Приведём теперь матрицу кодирования А-кода с правилом кодирования (13) (табл. 4). В матрице первый столбец соответствует номеру к правила кодирования, а первая строка — сообщению т. Например, 6122(33) = 102.

Таблица 4

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

Матрица кодирования 1

1 О о 010 001 111 122 132 1 00 о 013 110 011 112 133 2 0 1 131 123 1 О 00 101 121 120 012 113

1 о о «0 «1 «2 «3 «4

010 «0 «1 «2 «3 «4

001 «0 «1 «2 «3 «4

111 «4 «0 «1 «2 «3

122 «4 «0 «1 «2 «3

132 «4 «0 «1 «2 «3

1 00 О «4 «0 «1 «2 «3

013 «4 «0 «1 «2 «3

110 «4 «0 «1 «2 «3

011 «4 «0 «1 «2 «3

112 «4 «0 «1 «2 «3

133 «4 «0 «1 «2 «3

102 «4 «0 «1 «2 «3

131 «3 «4 «0 «1 «2

123 «3 «4 «0 «1 «2

1 О 00 «2 «3 «4 «0 «1

101 «2 «3 «4 «0 «1

121 «2 «3 «4 «0 «1

120 «2 «3 «4 «0 «1

012 «2 «3 «4 «0 «1

113 «1 «2 «3 «4 «0

5. Обсуждение

Подчеркнём, что при построении полученной матрицы важен порядок следования состояний источника в строках (он соответствует разложению матрицы инцидентности в сумму подстановочных матриц). Перестановки элементов множества Б в строках матрицы кодирования могут привести к тому, что получится код аутентификации без секретности. Такой А-код на основе проективной плоскости изучается в работе [22]. Этот А-код без секретности и построенный здесь А-код с секретностью «диаметрально удалены» друг от друга с точки зрения криптографической стойкости. «Между ними» расположены многие другие А-коды с секретностью. Приведём один пример (табл. 5).

Пусть Б = {(1, а): а € ОЕ(д)} и {(0,1)} и правило кодирования задаётся формулой

{(0,31,3о), если к = (1, 0, 0),

(й1, -К2К-1^1,5о), если к = (К2, К1, 0), К = 0, (14)

(^1, Зо, —Ко 1(к2^1 + К1 во)), если Ко = 0.

Операции в (14) производятся в поле СЕ(^). Непосредственно из (14) получаем следующее утверждение.

Теорема 4. Сообщение т = (ш2,ш1,то) однозначно определяет состояние источника з = (з1,зо) тогда и только тогда, когда т € {(0, 0,1), (1,а,а), а € СГ(^)}.

Если при этом т = (0, 0,1), то з = (0,1), а если т = (1, а, а), то з = (1, а). Сообщение

Таблица 5

Матрица кодирования 2

001 010 011 012 013 100 101 102 103 110 111 112 113 120 121 122 123 130 131 132 133

011 01 10 11 12 13

010 01 10 11 12 13

011 01 10 11 12 13

012 01 10 11 12 13

013 01 10 11 12 13

100 01 10 11 12 13

101 01 10 11 12 13

102 01 10 11 12 13

103 01 10 11 12 13

110 01 10 11 12 13

111 01 10 11 12 13

112 01 10 11 12 13

113 01 10 11 12 13

120 01 10 11 12 13

121 01 10 11 12 13

122 01 10 11 12 13

123 01 10 11 12 13

130 01 10 11 12 13

131 01 10 11 12 13

132 01 10 11 12 13

133 01 10 11 12 13

т = (0,1, а) в одном случае определяет в = (1, а) ив д случаях — в = (0,1); сообщение т = (1, а, Ь) в одном случае определяет в = (1,Ь) ив д случаях — в = (1, а).

Мы построили А-код, позволяющий злоумышленнику однозначно определить состояние источника для д + 1 сообщений, а для д2 сообщений — по два состояния ис.. д 1

точника, причем одно из них с вероятностью ------, а другое — с вероятностью ----.

д + 1 д + 1

Матрица кодирования такого А-кода при д = 4 приведена в табл. 5.

Следует отметить, что конструкция кода аутентификации с секретностью на основе проективной плоскости изучается (в числе других конструкций) в [17], где указывается возможность построения совершенного шифра (частный случай теоремы 2), но не получена явная формула для соответствующего правила кодирования (аналог формулы (13)).

В заключение отметим, что основной сложностью в практическом использовании предлагаемого А-кода является нахождение явного выражения степеней 9г, что связано с выбором примитивных многочленов f (у) и Е(ж). Вместе с тем эффективно вычисляемое правило кодирования (14) оставляет надежду на то, что неким подобным образом может быть построен А-код, допускающий совершенное или почти совершенное [4] шифрование.

ЛИТЕРАТУРА

1. Зубов А. Ю. К теоретико-игровому подходу исследования кодов аутентификации // Дискретная математика. 2009. Т. 21. Вып.3. С. 45-72.

2. Зубов А. Ю. О выборе оптимальной стратегии для кода аутентификации с двумя состояниями источника // Дискретная математика. 2009. Т. 21. Вып. 4. С. 135-147.

3. Зубов А. Ю. Математика кодов аутентификации. М.: Гелиос АРВ, 2007.

4. Зубов А. Ю. Почти совершенные шифры и коды аутентификации // Прикладная дискретная математика. 2011. №4(14). С. 28-33.

5. Casse L. R. A., Martin K. M., and Wild P. R. Bound and characterizations of authentication / secrecy schemes // Designs, Codes and Cryptography. 1998. V. 13. P. 107-129.

6. Ding C. and Tian X. Three constructions of authentication codes with perfect secrecy // Designs, Codes and Cryptography. 2004. V. 33. P. 227-239.

7. Huber M. Authentication and secrecy codes for equiprobable source probability distributions // arxiv.org/abs/0904.0109, 2009.

8. Huber M. Constructing optimal authentication codes with perfect multi-fold secrecy // Proc. IEEE Int. Zurich Seminar on Communications (IZS), March 3-5, 2010. Zurich, 2010. P. 86-89.

9. Mitchell C. J., Piper C., Walker M., and Wild P. Authentication schemes, perfect local randomizers, perfect secrecy and secret sharing schemes // Designs, Codes and Cryptography. 1996. V. 7. P. 101-110.

10. Rees R. and Stinson D. R. Combinatorial characterizations of authentication codes II // Designs, Codes and Cryptography. 1996. V. 7. P. 239-259.

11. Sgarro A. An introduction to the theory of unconditional secrecy and authentication // Geometries, Codes and Cryptography. CISM Courses and Lectures. No. 313. Springer Verlag, 1990. P. 131-160.

12. Saygi Z. Constructions of authentication codes. A thesis submitted to the Graduate School of Applied Mathematics of the METU. Ankara, 2007. 74 p.

13. Smeets B., Vanrose P., and Wan C.-X. On the constraction of authentication codes with secrecy and codes withstanding spoofing attack of order L // Eurocrypt’90. LNCS. 1990. V.473. P. 307-312.

14. De Soete M. Some constructions for authentication — secrecy codes // Eurocrypt’88. LNCS. 1988. V. 330. P. 57-75.

15. De Soete M. Authentication/secrecy codes. Geometries, Codes and Cryptography // CISM Courses and Lectures. No. 313. Springer Verlag, 1990. P. 187-199.

16. Stinson D. R. A construction for authentication secrecy codes from certain combinatorial designs // Crypto’87. LNCS. 1988. V.293. P. 355-366.

17. Stinson D. R. The combinatorics of authentication and secrecy codes // J. Cryptology. 1990. No. 2. P. 23-49.

18. Van Tran T. On the construction of authentication and secrecy codes // Designs, Codes and Cryptography. 1995. V. 5. P. 269-280.

19. Холл М. Комбинаторика. М.: ИЛ, 1970.

20. Зубов А. Ю. Криптографические методы защиты информации. Совершенные шифры. М.: Гелиос АРВ, 2005.

21. Сачков В. Н. Введение в комбинаторные методы дискретной математики. М.: МЦНМО, 2004.

22. Gilbert E., MacWilliams F. J., and Sloane J. A. Codes which detect deception // Bell System Tech. J. 1974. V. 53. P. 405-424.

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