Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Протоколы защищенных вычислений на основе линейных схем разделения секрета. Учебное пособие
.pdf
1.5. Линейные êîäû
Напомним, ÷òî эффективной длиной êîäàCназываетсÿ мощность ìíî-
æества
∪
c∈C
supp(c)
. Â случае, êîãäà êîдовое расстоÿíèådнеизвестно èëè
íå используåòñÿ â êîíòåêñòå, òî êîäCназываетсÿ
[n, k]q-êîäîì. Элементы
êîäà áóäåì называть êîдовыми векторами èëè êîдовыми словами. Матрица,
строкàìè êоторой являютсÿ âñå êîдовые слова êîäàC, называетсÿ êîдовой
матрицей.
Упражнение 4.
Ñêîëüêî строк è ñòîлбцов â кодовой матрице линей-
íîãî
[n, k]q-êîäà?
Определение 8.
Порождающей матрицей
[n, k]q-êîäàCназывается
(k × n)
-матрица
GCтакая, ÷òî
C = {mGC: m ∈ F
k
q
} = L(GC).
(1.1)
Èç (1.1) следуåò, ÷òî åñëè
GC ïîðîждающая матрица, òî äëÿ любой
невырожденной
(k × k)
-матрицыSматрица
SGCòàêæå являетсÿ ïîðîæäà-
þùåé.
Òàê êàê äëÿ
[n, k]q-êîäàCïîðîждающая матрица
GCимеет ðàíãk, òî
среди столбцов ýòîé ìàòðèöû найдутсÿkлинейно независимых столбцов.
Определение 9.
ПустьC линейный
[n, k]q-êîä. Множество íîìå-
ðîâ координатτ,
|τ| = k
, òàêîå, ÷òî
rank(GC|τ) = k
, íàçûâàåòñÿ инфор-
мационной совокупностьþ.
Число âñåõ информационных совокупностей äëÿ
[n, k]q-êîäàCíå ïðå-
вышает
n
k
.
Упражнение 5.
Покажите, ÷òî åñëèτ информационная совокуп-
ность êîäà
[n, k]q-êîäà, òî äëÿ âñåõ порождающих матриц этого êîäà âû-
ïîлняется ðавенство
rank(GC|τ) = k
.
Определение 10.
Åñëèτ информационная совокупность, òî ïî-
рождающая матрица âèäà
(GC|τ)−1G
C
называется порождающей матрицей â систематическоì âèäå.
Определение 11.
Проверочной матрицей
[n, k]q-êîäàCназывается
такая
(n − k × n)
-матрица
HCïîлного ðàíãà, ÷òî
HCG
T
C
= O.
(1.2)
Èç равенства (1.2) вытекàåò, ÷òî линейный
[n, k]q-êîäCìîæåò áûòü
определен ñ помощью ïðоверочной матрицы:
C = {c ∈ F
n
q
: HCcT= 0T(∈ F
n−k
q
}.
(1.3)
11

Ãëàâà 1. Предварительные сведения
Определение 12.
ПустьC ëèнейный
[n, k]q-êîä. Подпространство
пространства
F
n
q
, порожденное строками матрицы
HC, называется êî-
äîì, дуальным ê êîäóC:
C⊥= L(HC) = {c0∈ F
n
q
: ∀c ∈ C (c, c0) = 0}.
Äëÿ этого êîäà èñïîльзуется обозначение
C⊥.
Òеорема 1.
 проверочной матрице
HCлинейного
[n, k, d]q-êîäàCíà-
áîð èç любых
d − 1
ñòîлбцов является линейно независимым.
Доказательство.
Предполоæèì, ÷òî существуåòлинейно зависимый íà-
áîð столбцов
HC|
i
1
, ..., HC|
i
d−1
.
Следовательно, существуåò òàêîé íåíóлевой вектор
z(∈ F
n
q
)
âåñà íå более
d − 1
, ÷òî
z
i
1
HC|
i
1
+ ... + HC|
i
d−1
z
i
d−1
= 0T(∈ F
n−k
q
).
Èíà÷å ýòî равенство ìîæíî переписать â следующем âèäå:
HCzT= 0T(∈ F
n−k
q
).
Учитывая (1.3), получаем, ÷òî
z ∈ C
. Однакî ýòî противоречит òîìó, ÷òî
êîäCимеет минимальное расстоÿíèåd, â òî время êàê
wt(z) 6 d − 1
.
Линейные êîäû â настоÿùåå время âñå ÷àùå íàõîäÿò ïрименение â ðàç-
личных областÿõ криптографии. Â частности, асимметричные êîдовые êðèï-
тосистемы рассматриваютсÿ êàê àëüтернатива êîдовым криптосистемам,
основанным íà ñëîжности факторизации è äèскретного ëîãарифмирова-
íèÿ [20]. Однакî исторически ýòè êîäû исследовались êàê способ борьбы
ñ помехàìè â цифровых êаналах переда÷è данных. Часто различают äâà
òèïà помех: ошибки è стирания. Â случае ошибок ìåñòà èñêàæенных êîîð-
динат êîдового вектораzнеизвестны è ýòîò вектор обычно представляетсÿ
â âèäå (аддитивная ïîìåõà):
z = c + e,
ãäåc êîдовый вектор,e вектор помехи.
Получателю векторыcèeïðè приеме èç êанала вектораzнеизвест-
íû. Â случае стираний èñêàæенные (стертые) êîîðдинаты известны. Ñòè-
рание êîîðдинаты íà практикå ìîæåò îçíà÷àòü, например, неисправность
ячейки памяти, â êоторой õðàíилось çíàчение êîîðдинаты (â случае, êîãäà
12

1.5. Линейные êîäû
êàíàë переда÷è данных представлен системой хранения), èëè потерю ñåòå-
âîãî ïàêåòà (êàíàë переда÷è данных здесь ýòî ñåòü связи). Часто стертые
êîîðдинаты обозна÷àþò символом∗. Например, принятый вектор длины
6
ìîæåò иметь âèä:
z = (z1, ∗, ∗, z4, ∗, z6).
Следующая теорема äëÿ
[n, k, d]q-êîäàCóñòанавливает связь между
числом исправлÿåìûõ ошибок è стираний, ñ îäíîé стороны, è êîдовым ðàñ-
ñòîяниемd, ñ другой стороны. Äîêазательство теоремы ìîæåò áûòü найде-
íî, например, â [2;4].
Òеорема 2.
Линейный
[n, k, d]q-êîäCпозвоëÿåò ãàðантированно èñ-
ïðавитьtошибок èpñòèðàíèé, åñëè
d > 2t + 1 + p.
(1.4)
Алгоритм äåêîдирования
[n, k, d]q-êîäàC, позволяющий исправить íå
менееtошибок èpстираний â êîдовых векторах è âûõîäîì êоторого ÿâëÿ-
åòñÿ вектор èçCèëè сообщение îá ошибкå äåêîдирования
err
, обозна÷èì
DecC. Èíîãäà óдобно использовать äåêîäåð, âûõîäîì êоторого являютсÿ èí-
формационные векторы èëè сообщение îá îøèáêå äåêîдирования
err
. Òàêîé
äåêîäåð зависит îò ïîðîæдающей матрицû
GC, êоторая использовалась ïðè
êîдировании. Поэтому äëÿ этого äåêîäåðà áóäåì использовать обозначение
Dec
G
C
. Äåêîäåð
Dec
G
C
ìîæåò áûòü построен íà основе äåêîäåðà
DecCè ëþ-
áîé информационной совокупностиτэтого êîäà:
Dec
G
C
(z) = (DecC(z))|τ(GC|τ)−1.
Òеорема 3.
Äëÿ
[n, k, d]q-êîäàCâûïîлняется íåðавенство
n − k > d − 1.
(1.5)
Доказательство.
Любая ïîðîждающая матрица êîäàCìîæåò áûòü
приведена ê систематическîìó âèäó. Неравенство (1.5) вытекàåò èç òîãî,
÷òî âåñ êаждой строки матрицы â систематическîì âèäå íå превышает
n − k + 1
.
Неравенство (1.5) называетсÿ неравенством Ñèíãлтона.
Определение 13.
[n, k, d]q-êîäC, äëÿ которого âûïîлняется ðàâåí-
ñòâî â
(1.5)
, называетсÿ êîäîì ñ максимальным достижимым ðасстоя-
íèåì (ÌÄÐ-êîäîì).
13

Ãëàâà 1. Предварительные сведения
Èç (1.4) è (1.5) вытекàåò, ÷òî åñëètèp соответственно число ãàðàí-
тированно исправляемых
[n, k, d]q-êîäîìCошибок è стираний, òî
n − p > 2t + k.
(1.6)
Òеорема 4.
Êîä
C⊥, дуальный ê ÌÄÐ
[n, k, d]q-êîäóC, является ÌÄÐ-
êîäîì.
Доказательство.
Îñòàåòñÿ â êàчестве упражнения.
Пример 1.
[n, 1, d]q-êîäCñ порождающей матрицей
GC= (1, ..., 1
| {z}
n
ðàç
)
называется êîäîìn-êðатного повторения. Очевидно, ÷òî
d = n
, поэтоìó
âûïîëíяется ðàâåíñòâî â
(1.5)
. Следоватеëüíî, êîän-êðатного повторе-
íèÿ ÌÄÐ-êîä.
[n, n − 1, d⊥]q-êîä
C⊥, дуальный ê êîäóC, называется êîäîì проверки
четности. Èç теореìû 4 вытекает, ÷òî îí òàêæå является ÌÄÐ-êîäîì.
Определение 14.
[n, k, d]q-êîäCназывается êîäîì, перестановочно
эквивалентным
[n, k, d]q-êîäóD, åñëè существует такая подстановка
σ
èç ñèмметрической группы
Sn, ÷òî
D = σ(C) = {(c
σ(1)
, ..., c
σ(n)
): (c1, ..., cn) ∈ C}.
Ïîä перестановочной
(n × n)
-матрицей áóäåì понимать матрицу, â êî-
торой â êаждом столбце è â êаждой строкå îäíà åäèíèöà ïîëÿ. Áóäåì
говорить, ÷òî перестàíовочная
(n × n)
-матрица
Pσсоответствуåò ïîäñòà-
íîâêå
σ(∈ Sn)
, åñëè матрица
GCPσявляетсÿ ïîðîæдающей матрицей êî-
äà
σ(C)
. Äëÿ перестановочно эквивалентных êîäîâCèDобозна÷èì через
GetP ermutation
алгоритм íàõîждения òàêîé ïîäñòановкиσ, ÷òî
D = σ(C)
.
Âõîäîì этого алгоритма являютсÿ ïîðîждающие матрицы êîäîâCèD.
Примером òàêîãî алгоритма ìîæåò áûòü алгоритм расщепления носите-
ëÿ [19]. Отметим, ÷òî â настоÿùåå время íåò эффективного алгоритма íà-
õîждения ïîäñòановкиσäëÿ произвольного êîäà. Â òî æå время äëÿ íåêî-
торых известных êîäîâ òàêèå алгоритмы известны. Ê íèì относÿòñÿ: àë-
горитм Сидельникîâà Øåñòàêîâà [21] è алгоритм Виешбринкà [22] (äëÿ
обобщенных êîäîâ ÐèäàСоломона), алгоритм Миндера Шокроллахи [13]
è алгоритм Áîðîäèíà×èæîâà [8] (äëÿ двоичных êîäîâ Ðèäà Маллера).
14

1.5. Линейные êîäû
Определение 15.
ПустьC линейный
[n, k]q-êîä. Подгруппа группы
Sn, такая, ÷òî
σ(C) = C,
называется группой перестановочных àâòîìîðфизмов êîäàC. Òàêàÿ ïîä-
группа обозначается
PAut(C)
.
Определение 16.
Äëÿ векторов
a = (a1, ..., an)èb = (b1, ..., bn)
èç
F
n
q
покоординатное умноженèå
a ? b = (a1b1, ..., anbn),
называется произведенèåì Øóðà ýòèõ векторов [16].
Неслоæíî проверить, ÷òî äëÿ любых векторов
a, b, c ∈ F
n
q
è любых
a, b, c ∈ F
выполняетсÿ равенство
(aa + bb) ? cc = ac(a ? c) + bc(b ? c).
(1.7)
Определение 17.
Квадрàòîì линейного
[n, k, d]q-êîäàCназывается
пространство (êîä)
C ? C = C⊗2, порожденное множествоì векторов
{a ? b: a, b ∈ C}
.
Åñëè
GC|1, ...,
GC|n столбцы ïîðîждающей матрицы
GCêîäàC, òî
êîä
C ? C
ïîðîждаетсÿ строкàìè матрицы
GC? GC= (GC|1⊗ GC|1|...|GC|n⊗ GC|n).
(1.8)
Упражнение 6.
ПустьC
[n, k]q-êîä,
GC порождающая ìàòðè-
öà. Докажите, ÷òî êîä
C⊗2= C ? C = L({c ? c0: c0, c ∈ C})
совпадает êàê множество ñ линейной îáîëî÷êîé
L(GC? GC).
Пример 2.
Пусть
x1,...,
xn попарно ðазличные ýëåменты ïîëÿ
F
q
,
q > n.[n, k]q-êîäCñ порождающей матрицей âèäà
GC=
1 . . . 1
x1. . . x
n
.
.
.
.
.
.
x
k−1
1
. . . x
k−1
n
(1.9)
15

Ãëàâà 1. Предварительные сведения
называется êîäîì Ðèäà Ñîëîìîíà. Òàêîé êîä áóäåì обозначать
RS
k,n
. Èç
представления
(1.8)
ñледует, ÷òî
C⊗2 êîä ÐèäàÑîëîìîíà ðазмерности
min{2k − 1, n}
:
RS
⊗2
k,n
= RS
min{2k−1,n},n
.
Êîдовое слово
c [n, k]q-êîäàCназываетсÿ минимальным, åñëè íå ñóùå-
ñòâóåò íåíóлевого êîдового слова
c0(∈ C)
, линейно независимого ñ вектором
c
, ÷òî
supp(c0) ⊆ supp(c)
[5;6; 12]. Ìíîæество минимальных векторов êîäà
C
обозна÷èì
P(C)
.
Òеорема 5.
ПустьC
[n, k, d]q-êîä ñ проверочной матрицей
HC. Îò-
ñþäà
1) векторc минимальныé тогда è òîëüêî тогда, когда
rank((HC)|
supp(c)
) = wt(c) − 1;
2) åñëè
c1è
c2 минимальные, òî
c1= ac2äëÿ некоторого
a ∈ Fq\{0}
;
3) åñëèc ìèíèìàëüíûé, òî
wt(c) 6 n − k + 1
;
4) åñëè
q = 2
, òî любой кодовый вектор âåñà ìåíåå2dявляется ìè-
нимальным;
5) áàçèñ êîäà может áûòü âûáðàí среди минимальных векторов.
Доказательство.
Îñòàåòñÿ â êàчестве óïðажнения.
Известно, ÷òî строкè любой систематическîé матрицы
[n, k]q-êîäàCÿâ-
ляютсÿ минимальными êîдовыми векторами [18].
Упражнение 7.
Приведите доказательство ýòîãî утверждения.
Пример 3.
Ðàññмотрим
[7, 3]2-êîäCñ порождающей матрицей
G
C
âèäà
GC=
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
.
16

1.5. Линейные êîäû
Кодовая матрица этого êîäà имеет âèä
0 0 0 0 0 0 0
0 0 0 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
0 1 1 1 1 0 0
1 0 1 1 0 1 0
1 1 0 0 1 1 0
1 1 0 1 0 0 1
.
Òàê êàê
q = 2
è âñå âåкторы имеют одинаковый âåñ (âåñ4), òî âñå íåíó-
левые векторы этого êîäà ÿâëÿþòñÿ минимальными.
Пример 4.
Ðàññмотрим
[7, 3]2-êîäCñ порождающей матрицей
G
C
âèäà
GC=
1 1 1 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
.
Кодовая матрица этого êîäà имеет âèä
0 0 0 0 0 0 0
1 1 1 1 1 1 1
0 1 1 0 0 1 1
1 0 1 0 1 0 1
1 1 0 0 1 1 0
1 0 0 1 1 0 0
0 1 0 1 0 1 0
0 0 1 1 0 0 1
.
 ýòîì êîäå âñå ненулевые векторы, êðîìå векторà èç âñåõ единиц, ÿâëÿ-
þòñÿ ìèíèìàëüíûìè.
17

Ãëàâà 1. Предварительные сведения
Определение 18.
[n, k]q-êîäCназывается минимальным, åñëè âñå
ненулевые ñëîâà этого êîäà являются ìèíèìàëüíûìè.
Пример 5.
Êîä èç примерà 4 ÿâëÿåòñÿ минимальным.
Определение 19.
Множество
C(⊆ F
n
q
)
называется
êîäîì покры-
òèÿñðадиусоì ïокрытèÿR, åñëèR такое минимальное натурàëü-
íîå ÷èñëî, äëÿ которого âûïîлняется óñловие:
∀x ∈ F
n
q
∃c ∈ C: ρ(c, x) 6 R.
Èç этого определения вытекàåò, ÷òî åñëèH проверочная матрица
êîäàCñ радиуñîì покрытияR, òî äëÿ любого вектор-столбца
s(∈ F
n−k
q
)
найдетсÿ òàêîé вектор
y(∈ F
n
q
)
âåñà Хэммингà íå болееR, ÷òî
HyT= s.
Упражнение 8.
Докажите, ÷òî åñëèC линейный êîä ñ ðадиусоì
покрытияR, òî любой ñмежный класс этого êîäà ÿâëÿåòñÿ êîäîì покры-
òèÿ ñ ðадиусоì покрытияR.
1.6. Íåîòличимость
Определение 20.
Пусть дискретные ñлучайные âåличинûXèYïðè-
нимают значения èçV. Статистичесêèì ðасстояниеì
∆(X; Y )
между
ñлучайными âåличинамиXèYназывается âåличина
∆(X; Y ) =
1
2
X
v∈V
|Pr{X = v} − Pr{Y = v}|.
Ïóñòü дискретная случайная величинаZпринимает çíàчения èçV. Ñòà-
тистическîå расстоÿíèå
∆(X; Y )
обладает следующими свойствами:
• 0 6 ∆(X; Y ) 6 1
;
• ∆(X; Y ) = 0
òîãäà è толькî òîãäà, êîãäà
Pr{X = v} = Pr{Y = v}
äëÿ âñåõ
v ∈ V
;
• ∆(X; Y ) = ∆(X; Y )
;
• ∆(X; Y ) 6 ∆(X; Z) + ∆(Z; Y )
.
Определение 21.
Неотрицательная функция
f : N → R
называется
незначительной, åñëè äëÿ каждого
γ ∈ N
найдется
k0∈ N
, ÷òî äëÿ âñåõ
k > k0âûïîлняется íåðавенство
f(k) 6
1
k
γ
.
18

Вопросы è задания äëÿ самопроверки
Примером незначительной функции являетсÿ
f(k) = 2−k.
Упражнение 9.
Покажите, ÷òî функция
f(k) =
1
k
íå является незна-
÷èòåльной.
 криптографии важную ðîëü играет ïонятие
отличимости
случай-
íûõ величин. Например, ïðè определении êàчества генерируåìîé псевдо-
случайной последовательности оценивают, íàñêîëüêî генерируåìàÿ ïîñëå-
довательность îòличима îò случайной последовательности. Â области êîäî-
âûõ криптосистем исследуåòñÿ îòличимость матрицы публичного ключа îò
случайной матрицы.
Определение 22.
ПустьI счетное множество,
X = {Xi}
i∈I
è
Y = {Yi}
i∈I
äâà ñåмейства äèñêðåòíûõ ñлучайных âåличин, пронумеро-
ванных ýëåментами множестваI, ñлучайные âåличины
Xiè
Yiпринима-
þò значения èç îäíîãî è òîãî æå множества
Vi, ãäå äëÿ âñåõiзначение
|Vi|
îãðаничено сверху значениеì
p(|i|)
некоторого ïîëèíîìà
p(x)
, ãäå
|i|
длина индексài, представленного â âèäå строки симвоëîì. Ãоворят, ÷òî
ñåмействаXèY:
1)
совершенно íåðазличимы
, åñëè
∆(Xi; Yi) = 0
;
2)
статистически íåðазличимы
, åñëè
∆(Xi; Yi)
незначитеëü-
íàÿ ïî
|i|
функция;
3)
вычисëèòåëüíî íåðазличимы
, åñëè
∆(D(Xi); D(Yi))
незначи-
òåльная ïî
|i|
функция äëÿ каждого ïîëèíîмиального вероятностíîãî
алгоритмаD, выходоì которого ÿâëÿåòñÿ значение èç
{0, 1}
.
Вопросы è задания äëÿ самопроверки
1. Дайте определение энтропии è взаимной информации случайных âå-
личин.
2. Дайте определение линейного êîäà, ïîðîждающей матрицы, прове-
рочной матрицы, êîдового расстоÿíèÿ.
3. Ñêîëüêî îøèáîê è стираний ìîæåò исправить
[n, k, d]q-êîä?
4. Дайте определение информационной совокупности êîäà. Опишите
способ äåêîдирования ïî информационным совокупностÿì (â ïîñî-
áèè åãî íåò).
5. ×åì îòëè÷àþòñÿ понятия ¾êîдовое слово минимального âåñà¿ è ¾ìè-
нимальное êîдовое слово¿?
19

Ãëàâà 1. Предварительные сведения
6. Êàêîå èç äâóõ утверждений верное: ¾Минимальное êîдовое слово âñå-
ãäà имеет минимальный âåñ¿ èëè ¾Êîдовое слово минимального âåñà
âñåãäà являетсÿ минимальным êîдовым словом¿?
7. Какие âèäû íåîòличимости случайных величин âû знаете? Дайте
определения. ×åì îíè îòличаютсÿ?
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
