Добавил:
ivanov666
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Протоколы защищенных вычислений на основе линейных схем разделения секрета. Учебное пособие
.pdf
Вопросы è задания äëÿ самопроверки
Åñëè
N = qk, òî говорÿò, ÷òî обеспечиваетсÿ совершенная секретность ïðè
наблюдении êîîðдинат èç ìíîæестваτ:
H(S) = H(S|(Z|τ)),
ãäå случайный векторSìîделируåò выбор секретного çíàчения, à случай-
íûé вектор
Z|τìîделируåò наблюдаемые çíàчения íà êîîðдинатàõ èç ìíî-
æестваτ. Величина
∆(C, µ) = min
τ:|τ |=µ
{rank(HC|τ)}
называетсÿ неопределенностью случайной величиныSïðè наблюдении
µ
êîîðдинат (любых).
Определение 38.
Ïðè
∆(C, µ) = k
говорят, ÷òî обеспечивается ñî-
вершенная ñåкретность ïðè ïåрехваòåµè ìåíåå координат.
Упражнение 25.
Найдите
∆(C, µ)
äëÿ
µ = 0, ...,n
, когда
[n, k]q-êîä
C
ýòî ÌÄÐ-êîä.
Вопросы è задания äëÿ самопроверки
1. Приведите определение криптографическîãî протокîëà, полноты è
прочности протокîëà. ×åì îòличаютсÿ нарушèòåëè îò противникîâ?
2. Приведите определение ñõåìûвручения îáязательства. Свойства ìàñ-
кировки è связности.
3. Опишите ñõåìó íå÷åòíîãî вручения îáязательства íà основе линей-
íûõ êîäîâ.
4. Приведите определение ñõåìû äîêазательства ñ íóлевым ðàçãëàøå-
íèåì.
5. Приведите ñõåìó Штерна.
6. Приведите определениå ñõåìû разделения секретà.
7. ×òî òàêîå структура доступа? ×òî òàêîå структура противниêà?
8. ×åì îòличаетсÿ совершенная ÑÐÑ îò идеальной?
9. Опишите протокîë Шамира.
10. Приведите формулировку çàäà÷è забывчивой переда÷è îäíîé строки
битов èçnимеющихñÿ.
11. Приведите формулировку çàäà÷è çàùèòû информации â êанале ñ ÷à-
стичным перехватом (â êанале ñî стираниями).
41

Ãëàâà 3
Линейные ñõåìû разделения секретà
3.1. Определение линейной ñõåìû разделения секретà
Íàì понадобитсÿ понятие монотонной ïîðîждающей программы.
Определение 39.
Монотонной порождающей программой (ÌÏÏ) íà-
зывается четверка
M = (Fq, M, e, ψ)
, ãäåM
(d×e)
-матрица,
d > n > e
,
e = (1, 0, ..., 0)(∈ F
e
q
)
öåлевой вектор,
ψ: {1, ..., d} → {1, ..., n}
сюрьек-
тивное отобрàæåíèå.
Ðîëü отображåíèÿψ ¾присвоить¿ метки строкàì матрицыM. Òàêèì
образом, ìíîæество строк матрицыMраспадаетсÿ íànклассов, êаждый
èç êоторых соответствуåò îäíîìó èç участникîâ ìíîæества
P = [n]
. Через
M(A)
здесь áóäåì обозна÷àòü ìíîæество строк матрицыMñ номерамиi,
ãäå
ψ(i) ∈ A
. Òàêèì образом, åñëè
TA= ∪
j∈A
ψ−1(j),
(3.1)
òî
M(A) = M |
T
A
.
Íàðÿäó ñ
TAòàêæå, ãäå íåîáõîäèìî, áóäåì использовать обозначение
ψ−1(A), TA:= ψ−1(A).
42

3.1. Определение линейной ñõåìû разделения секретà
Пример 15.
Äëÿ
n = 3,d = 8èe = 4
пусть
M = (F2, M, e, ψ)
, ãäå
M =
0 1 0 1
0 1 0 1
0 0 0 1
0 1 1 0
0 0 0 1
0 1 1 0
0 1 1 1
1 1 1 1
,
ψ(i) = 1 + ((i − 1) mod 3), e = (1, 0, 0, 0).
(3.2)
Отображениеψðазбивает множество íîмеров ñòðîê
(8 × 4)
-матрицы
M
íà òðè классà:
{1, 4, 7},{2, 5, 8},{3, 6}
.
Монотонная ïîðîждающая программаMзадает линейную ñõåìó ðàç-
деления секретà (ËÑÐÑ).
Определение 40.
Линейной ñõåìîé ðàçäåления секрета называется
картеж
Ω = (P, Fq,
Share,Recon
, Γ(Ω), A(Ω)),
(3.3)
ãäå протокоëû
ShareèRecon
основаны íà èñïîльзовании общедоступной
(несекретной) ÌÏÏ
M = (Fq, M, e, ψ)
,
M =
M
1
M
2
.
.
.
M
d
.
(3.4)
 протокоëå
Share
äëÿ секрета
s ∈ Fqñлучайно è ðавновероятно âû-
áèðается âåêòîð
p ∈ F
e−1
q
è ôîðмируется вектор èç
F
e
q
âèäà
b = (s|p).
(3.5)
Äîëåé секретаj-îãî участника, ãäå
j ∈ P
, является набор
x(j) = (xa= (Ma, b): a ∈ ψ−1(j)).
(3.6)
43

Ãëàâà 3. Линейные ñõåìû разделения секретà
 протокоëå
Recon
äëÿ âîññтановлåíèÿ êîалицией
A ⊆ P
секрета
сначала находится матрица
M(A) = M |
T
A
, ãäå множество
TA= {i1, ..., il}(⊆ [d])
имеет âèä
(3.1)
. Далее êîалицией находится ðåøåíèå
y = (y
i
1
, ..., y
i
l
)
óðàâ-
нения
yM|
T
A
= (1, 0, ..., 0)(∈ F
e
q
).
(3.7)
Åñëè решение существует, òî секрет вычисляется ïî ôîðìóëå
X
a∈T
A
xaya.
(3.8)
Замечание 4.
Áóäåì â дальнейшеì ãîâîðèòü, ÷òî ìàòðèöàMïî-
рождает ÑÐÑ, èëè ÷òîM порождающая матрица ÑÐÑ.
Замечание 5.
Вектор
bM
T
(3.9)
áóäåì называть вектороì äîëåé секретаs, ïðè ýòîì
x(j) = (bMT)|
ψ−1(j)
.
(3.10)
Сравните (3.10) è (3.6).
Определение 41.
Пусть
P = [n],Ω
линейная ñõåìà ðàçäåления
секрета, построенная íà основе ÌÏÏ
M = (Fq, M, e, ψ)
, ãäåM
(d × e)
-
матрица. Ïðè
d = n
ËÑÐÑ называется îäíîмерной, à ïðè
d > n
называ-
åòñÿ ìíîãîмерной.
Òеорема 8.
Åñëè äëÿ ËÑÐÑΩâèäà
(3.3)
è êîàëèöèè
A(⊆ P)
систе-
ìà
(3.7)
имеет решенèå, òî любой ñекрет
s ∈ Fqвосстанавливается ïî
ôîðìóëå
(3.8)
.
Доказательство.
Äëÿ произвольного
s ∈ Fqäîëè секретà имеют âèä
(3.6). Ïóñòüy решение уравнения (3.7). Òîãäàäëÿ матрицы (3.4) è вектора
b
âèäà (3.5) имеет место ñëåäóþùàÿ цепочкà равенств:
X
a∈T
A
xaya=
X
a∈T
A
(Ma, b)ya=
=
X
a∈T
A
(yaMa, b) =
X
a∈T
A
yaMa, b!=
= ((1, 0, ..., 0), (s, p)) = s.
Îòêóäà получаем äîêазываемое утверждение.
44

3.1. Определение линейной ñõåìû разделения секретà
Замечание 6.
Векторy, являющийсÿ решениеì óðавнения
(3.7)
, íà-
зывается вектороì
реконструкции
äëÿ ïðàâîìî÷íîé êîалицииA. Ýòîò
вектор íå зависит îò значениÿ секрета è ñлучайных значений, выбирàå-
ìûõ â процессе âûïîлнения протокоëà
Share
, à зависит òîëüêî îò соста-
âà êîалиции è матрицыM. (Ñðавните ñ определениеì 37 êîýôфициентîâ
ðåêîмбинации äëÿ ñõåìû Шамирà.)
Ãîâîðÿò, ÷òî монотонная ïîðîждающая программа
вычисëÿåò
струк-
òóðó äîñòóïà
Γ(Ω)
, åñëè
(1, 0, ..., 0) ∈ L(M |A)
, òîãäà è толькî òîãäà, êîãäà
A ∈ Γ(Ω)
.
Замечание 7.
Èç доказательства теореìû вытекает, ÷òî вместо
öåлевого векторà
e = (1, 0, ..., 0)
â óðавнении
(3.7)
è â определении порож-
дающей ïðîãðàììûMможет èñïîльзоваться любой öåлевой вектор åäè-
ничного âåñà. Â частности, åñëè èñïîльзуется âåêòîð, â котороì ненуле-
âîé ýëåìåíò
u(∈ Fq)
находится â êîîðäèíàòå ñ íîìåðîìi, òî вектор
b
вместо âèäà
(3.5)
имеет âèä
(p1, ..., p
i−1
, s, pi, ..., p
e−1
),
ãäå ýëåменты
p1, ..., p
e−1
выбираются ñлучайно è ðавновероятно èç
F
q
. Ïðè
ýòîì äëÿ восстановления ñåкрета необходимо ïîлучившееся â соответ-
ствии ñ ïðавилоì
(3.8)
значение умножить íà
u−1.
Òеорема 9.
Åñëè äëÿ ËÑÐÑΩâèäà
(3.3)
è êîàлиции
A(⊆ P)
систе-
ìà
(3.7)
íå имеет решения, òî êîалицияAíå ïîлучает информации î
секрете.
Доказательство.
Приведем äîêазательство èç [7]. Äëÿ äîêазательства
теоремы äîñòаточно ïîêазать, åñëè äëÿ êоалицииAсистема (3.7) íå имеет
решения, òî выполняетсÿ равенство (2.3). Ïóñòü
s0 произвольное çíàчение
èçS,
(ν(i))
i∈A
произвольный набор долей. Ðассмотрим систему
((1, 0, ..., 0), (s0, p)) = s0,
M|
ψ−1(i)
, (s0, p)= ν(i), i ∈ A.
(3.11)
Ñîãласно теореме Кронекåðà Капелли, òàêàÿ система совместна, åñëè ðàíã
матрицы êоэффициентов равен рангу матрицы, дополненной столбцом çíà-
чений. Ïóñòü
M(A ∪ 0)
матрица êоэффициентîâ ýòîé системы, à
M
aug
(A ∪ 0)
матрица, дополненная столбцом çíàчений, матрицы
M(A)
è
M
aug
(A)
соответственно матрица êоэффициентов è дополненная матрица
áåç первого уравнения. Òàê êàê система (3.7) íå имеет решения, òî
rank(M(A ∪ 0)) = 1 + rank(M(A)),
45

Ãëàâà 3. Линейные ñõåìû разделения секретà
rank(M
aug
(A ∪ 0)) = 1 + rank(M
aug
(A)).
Òàêèì образом, совместность системы (3.11) íå зависит îò çíàчения
s0, à
зависит толькî îò òîãî, выполняетсÿ ëè равенство
rank(M
aug
(A)) = rank(M(A)).
Îòñþäà получаем, ÷òî выполняетсÿ равенство (2.3).
Пример 16.
Ðàññмотрим ËÑÐÑΩíà основе ÌÏÏ
M = (F2, M, e, ψ)
èç примерà 15. Òðåì участникам ñõåìû соответствуют матрицы
M(1) =
M
1
M
4
M
7
=
0 1 0 1
0 1 1 0
0 1 1 1
,
M(2) =
M
2
M
5
M
8
=
0 1 0 1
0 0 0 1
1 1 1 1
,
M(3) =
M
3
M
6
=
0 0 0 1
0 1 1 0
.
Òàê êàê линейные îáîлочки
L(M(1)),L(M(2))èL(M(3))
íå содержат âåê-
òîð
e = (1, 0, 0, 0)
, òî каждый èç участников ïî îòäåльности íå может
восстановить однозначно секрет. Â òî æå âðåìÿ îáîлочки
L(M(1, 2))
,
L(M(2, 3))èL(M(1, 2, 3))
такой вектор содержат. Поэтоìó êîалиции
{1, 2},{2, 3}è{1, 2, 3}
могут восстановить секрет, решив óðавненèå âèäà
(3.7)
è вычисëèâ
(3.8)
. Отметим, ÷òî ýòà ñõåìà ðàçäåления ñåкрета îáëà-
äàåò ñâîéñòâîì3-восстановления è îáëàäàåò свойствоì1-секретности.
Òàêèì îáðàçîì, ýòà ñõåìà íå является пороговой.
Заметим, ÷òî â îдномерных линейных ñõåìàõ разделения секретà векто-
ðó
b = (s|p)
, используемому äëÿ получения долей секретà,ìîæíî ïîñòавить
â соответствие
F
q
-линейное отображåíèå
φ: F
e
q
→ Fq,
φ(x) = sx1+ p1x2... + p
e−1xe−1
, x ∈ F
e−1
q
.
46

3.2. Ðеплицированная ÑÐÑ
Òîãäà
φ(e) = s
, ãäå
e = (1, ..., 0)
, à äîëÿ âèäà (3.6)j-îãî участникà ìîæåò
áûòü представлена â âèäå
x(j) = (φ(Ma): a ∈ ψ−1(j)).
(3.12)
Замечание 8.
Вместо öåлевого векторàeможет èñïîльзоваться,
вообще говоря, любой öåлевой вектор
e0(íå обязатеëüíî единичного âå-
ñà), äëÿ которого áû âûïîлнялось óñловие:
e0∈ L(M )
. Òîãäà структурой
доступа
Γ(Ω)
является множестâî таких подмножеств
A ⊆ P
, ÷òî
e0∈ L(M(A)),
à структурой противника
A(Ω)
является множество таких подмно-
жеств
A ⊆ P
, ÷òî найдется линейное отображениеφ, äëÿ которого
φ(e0) = 1, ∀m ∈ L(M(A)): φ(m) = 0.
3.2. Ðеплицированíàÿ ÑÐÑ
Ðàññìîòðèì çàäà÷ó построения ñõåìû разделения секретà ïî заданной
структуре противникà. Именно, ïóñòü, êàê обычно,
P = [n]
набор ó÷àñò-
íèêîâ ñõåìû,
A(⊂ 2P)
заданная структура противникà. Требуåòñÿ ïî-
строить òàêóþ ÑÐÑΩ, чтобы
A(Ω) = A
. Имеетсÿ простой способ постро-
åíèÿ протокîëà
Share
äëÿ èñêîìîé ñõåìû разделения секретà, åñëè çàäà-
íà структура противникà. Ñõåìà разделения секретà, построенная ñ ïîìî-
ùüþ этого способа, называетсÿ
реплицированной ñõåìîé ðàçäåления секре-
òà
. Протокîë
Share
ïðè разделении секретà
s ∈ Fqсостоит â выполнении
следующих шагов:
1. Äëÿ êаждогоAèçAдилер выбирает случайно è равновероÿòíî ÷èñ-
ëî
rAèç ïîëÿ
F
q
òàê, чтобы выполнялось равенство
X
A∈A
rA= s.
2. Äëÿ êаждогоAèçAдилер передает çíàчение
rAучастникàì èç ìíî-
æества
P \ A
. Ïðè ýòîì участникàì êоалицииAçíàчение
rAíå ñîîá-
щаетсÿ.
 ðåçóëüòàòå выполнения этого протокîëà участникiполучит äîëþ
x(i)
âèäà
x(i) = {rA|i 6∈ A, A ∈ A}.
47

Ãëàâà 3. Линейные ñõåìû разделения секретà
Протокîë
Recon
состоит â вычислении êоалицией
B ⊆ P
суммы âèäà
X
A:∃i∈B\A
rA.
Замечание 9.
Ðàññматриваеìûé âûøå протокоë
Share
строит äî-
ëè òàê, чтобы любое множество èçAáûëî íåïðàâîмочной êîалицией.
ÅñëèA произвоëüíûé набор подмножеств множестваP(
P 6∈ A
), òî
â реплицированной ÑÐÑΩструктурà противника имеет âèä
A(Ω) = A ∪ {A0: A0⊂ A, A ∈ A}.
(3.13)
Ýòî ñледует èç òîãî, ÷òî åñëèA íåïðàâîмочная êîалиция, òî è ëþ-
áîå åãî ïîäìíîæество
A0также является íåïðàâîмочной êîалициеé (ñì.
свойства структуðû доступа è структуры противника â ðàçäåëå 2.3.).
Поэтоìó далее предпоëагаетñÿ, â частности, ÷òî äëÿ реплицироваí-
íîé ÑÐÑ âî множествеAíåò ýëåментов
A(⊂ P)èB(⊂ P )
, äëÿ которых
ëèáî
A ⊂ B
, ëèáî
B ⊂ A
.
Пример 17.
Ðеплицированная ÑÐÑ является линейной ÑÐÑ. Ýòî çíà-
÷èò, ÷òî существует монотонная порождающая прогрàììà
M = (Fq, M, e, ψ),
соответствующая ýòîé ÑÐÑ. Пусть, например,
P = [4]
,
A = {A1= {1, 3}, A2= {2}, A3= {3, 4}}.
Пусть
r
A
1
,
r
A
2
è
r
A
3
такие ÷èñëà, ÷òî
r
A
1
+ r
A
2
+ r
A
3
= s,
(3.14)
ãäå
s(∈ Fq)
секрет. Â соответствии ñ îïèñанным âûøå протокоëîì
Share
, участники ïîлучают äîëè, указанные â òàáë. 1.
Построим монотонную порождающую прогрàììó
M = (Fq, M, e, ψ)
.
Èç
(3.14)
ñледует, ÷òî
e = (1,1, 1)
. Òîãäà ýòîé ÑÐÑ можно поставить
â соответствие
(7 × 3)
-матрицуM, ïîлучающуюся èç òàáë. 2 удалени-
åì первой ñòðîêè è первого ñòîëáöà. Отображение
ψ : [7] → [4]
имеет
ñледующий âèä:
ψ(1) = ψ(2) = 1, ψ(3) = ψ(4) = 2, ψ(5) = 3, ψ(6) = ψ(7) = 4.
Очевидно, ÷òî ïîñтроенная матрицаMпорождает ÑÐÑΩ, äëÿ êî-
торой
A(Ω) = A ∪ {{1}, {3}, {4}},
48

3.2. Ðеплицированная ÑÐÑ
Òàáëèöà 1
Äîëè участникîâ äëÿ
A = {A1= {1, 3}, A2= {2}, A3= {3, 4}},P = [4]
Участник Äîëÿ
1 A2, A
3
2 A1, A
3
3 A
2
4 A1, A
2
Òàáëèöà 2
Строки матрицы
M
Участник
A
1
A
2
A
3
1
0 1 0
0 0 1
2
1 0 0
0 0 1
3 0 1 0
4
1 0 0
0 1 0
òàê êàê íè îäíà êîалиция èçAíå может, èñïîльзуя линейную êîìáèíà-
öèþ соответствующих ýòîé êîалиции строк, ïîлучить вектор
(1, 1, 1)
.
Заметим, ÷òî структурà протиâíèêàAîáладает ñâîéñòâîìQ2, íî
íå îáладает свойствоìQiäëÿ
i > 2
(ñì. определение 34).
Замечание 10.
Äëÿ реплицированной ÑÐÑ порождающая матрица
M
содержит ëèáî строки âåñà 1, ëèáî нулевые строки, ëèáî строки, ïîëíî-
ñòüþ состоящие èç единиц. Ïðè ýòîì нулевые строки соответствуют
участникам, которые âõîäÿò â каждую êîалициюAструктуры против-
íèêà
A(Ω)
. À строки èç единиц соответствуют участникам, которые íå
входят íè â îäíó êîалицию. Åñëè проиндексировать ñòîëáöû матрицы
M
ýëåментами мультимножестваA, òî ñòîëáåö ñ íîìåðîì
Ajсодержит
|P \ Aj|
единиц, причеì каждая èç единиц ñòîëáöà находится â ñтроке,
соответствующей îäíîìó ó÷àñòíèêó èç множесòâà
P \ Aj.
49

Ãëàâà 3. Линейные ñõåìû разделения секретà
Упражнение 26.
Ðеплицированная ÑÐÑ является ËÑÐÑ. Предложи-
òå алгоритм построения матрицыMäëÿ реплицированной ÑÐÑ â îáùåì
ñлучае.
Лемма 5.
Пусть
P = [n],n ∈ N,A
заданное мультимножество,
A ⊂ 2P, îáладающая свойствоìQ2, àΩ реплицированная ÑÐÑ, постро-
енная äëÿ структурыA. Òîãäà â протокоëå
Share
÷èñëî
rA, äëÿ âñåõ
A ∈ A
, ïîлучат участники íå менее ÷åì èç äâóõ подмножеств мульти-
множества
A \ {A}
.
Доказательство.
 ðàìêàõ протокîëà
Share
число
rAполучат âñå участ-
íèêè èç ìíîæества
P \ A
. Òàê êàê, ïî óсловию,
∀B ∈ A \ {A}: P \ A 6⊆ B,
òî â
P \ A
найдутсÿ äâà участникà èç разных неправомочных êоалиций.
Следствие 1.
Пусть
P = [n],n ∈ N,A
çàäàííîå мультимноже-
ñòâî,
A ⊂ 2P, íå îáëàäàþùàÿ свойствоìQ2, àΩ ðåплицировàííàÿ ÑÐÑ,
построенная äëÿ структурыA. Òîãäà найдется такая íåïðàâîмочная êîà-
лицияA,
A ∈ A
, äëÿ êîòîðîé â протокоëå
Share
соответствующее ÷èñ-
ëî
rAïîëó÷àò участники одного подмножества èç мультимножества
A \ {A}
.
Лемма 6.
ПустьΩ реплиöèðîванная ÑÐÑ, построенная íà основе
множества íåïðàâîìî÷íûõ êîалицийA, ïðè ýòîì
A 6⊂ BèB 6⊂ A
äëÿ
любых
A, B ∈ A
. Òîãäà
∀A, B ∈ A: A ∪ B ∈ Γ(Ω).
(3.15)
Доказательство.
Ïóñòü
A, B ∈ A
разные êоалиции. Èç óсловия ëåì-
ìû следуåò, ÷òî участники êоалицииAполучат äîëè секретà âñåõ êоалиций
èç ìíîæества
A\{A}
. Действительно, ïóñòü
X ∈ A\{A}
. Òàê êàê
A\X 6= ∅
,
òî êаждый участник èç
A\X
получит äîëþ êоалицииX. Аналогично ìîæíî
ïîêазать, ÷òî участники êоалицииBполучат äîëè секретà âñåõ êоалицèé
èç
A\{B}
. Òàê êàêAèB разные êоалиции, òî участники êîàлиции
A∪B
обладают âñåì набором долей секретà.
Èç (3.15) вытекàåò, ÷òî ìíîæество строк матрицыM, соответствующих
участникàì
A ∪ B
, ñîäåðæèòvразных строк âåñà1, образующих êанони-
ческий базис пространства
F
v
q
, ãäå
v = |A|
êоличество неправомочных
êоалиций âA.
50
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]
