- •Лекция 9
- •Принцип слепой подписи на основе КС РША (формирование слепой подписи)
- •Программно-технический комплекс, обеспечивающий дистанционное электронное голосование избирателей
- •Состав системы ДЭГ
- •Назначение элементов
- •Система ДЭГ
- •Ключи в системе ДЭГ РФ
- •Основные протоколы системы ДЭГ
- •Требования безопасности системы ДЭГ
- •Протокол слепой подписи ключа проверки подписи избирателя
- •Принцип слепой подписи на основе КС РША (проверка подлинности ключа анонимного избирателя)
- •Заполнение бюллетеня
- •Состав транзакции, пересылаемой избирателем в Избирательный ящик
- •БЧ осуществляет следующие проверки:
- •Система ДЭГ
- •Шифрование бюллетеня и его расшифрование для схемы Эль-Гамаля на эллиптической кривой
- •Расшифрование бюллетеня
- •2. Этап. Окончательное расшифрование агрегированной криптограммы учетчиком (в блокчейне)
- •Протокол проверки корректности заполнения
- •Формирование доказательства корректности заполнения бюллетеня
- •Проверка корректности заполнения бюллетеня
- •Пример КС Эль-Гамаля с аддитивным
- •Формирование доказательства корректности заполнения бюллетеня
- •Проверка корректности голосования за кандидата
- •Избиратель неправильно заполнил свой бюллетень
- •Формирование доказательства корректности неправильно заполненного бюллетеня
- •Проверка доказательства неправильно заполненного бюллетеня
- •Протокол проверки корректности заполнения бюллетеня при использовании криптосистемы Эль-Гамаля в поле GF(p)
- •КС Эль-Гамаля с аддитивным гомоморфизмом в системе голосования
- •Шифрование голоса и формирование доказательства
- •Проверка корректности заполнения бюллетеня
- •Проверка корректного бюллетеня
- •Проверка некорректного бюллетеня
- •Доказательство корректности частичного расшифрования бюллетеней
- •Расшифрование бюллетеня
- •Генерация доказательства
- •Разделение ключа дешифрования
- •Доли
- •Примерный порядок распределения долей ключа
- •Церемония восстановления ключа дешифрования
- •Система ДЭГ
- •Протокол обязательства
- •Общая схема обчзательства
- •Протокол обязательства в системе ДЭГ РФ
- •Протокол обязательства (продолжение)
- •Функция сжатия по ГОСТ Р34.11-2012 «Стрибог»
- •SPL преобразование.
Проверка корректности заполнения бюллетеня
Принято от избирателя:
(x,y) - зашифрованный голос
( d1, d2, r1, r2, с)—доказательство корректности голосования
Проверка доказательства
Проверка) modq? доказательства
??
?
?
Если все сравнения выполняются, представленное доказательство соответствует голосу в криптограмме
Проверка корректного бюллетеня
(x, y) (g , h G1) |
d , d |
, r , r |
, с - принято |
|
|||
|
1 |
2 |
1 |
2 |
|
|
|
1. ) modq? |
d1 d2 |
d1 |
c d1 |
c |
|
||
? |
|
r d |
|
r d |
|
|
|
g |
1 x 1 |
g 1 x 1 |
|
||||
? |
r |
( yG) |
d |
r |
d |
||
h 1 |
1 h 1 (yG) |
1 |
|||||
? |
a2 gw |
|
|
|
|
|
|
|
gr2 g d2 gw d2 g (c d1) |
g w (c d1) g (c d1) gw |
|||||
?
b |
hw g sw |
|
|
|
|
|
|
|
|
|
(c d1) |
|
|
|
|
|
||
2 |
|
|
|
|
|
|
|
|
|
g sG |
|
|
|
|
|
|||
r |
|
d |
|
|
|
s(w d |
) |
|
s(w d |
) |
|
s(c d ) |
|
|||||
h 2 |
(y / G) |
2 g |
|
2 |
|
|
|
|
|
g |
2 |
|
g |
1 |
|
|||
|
|
|
G |
|
||||||||||||||
g |
sw s (c d ) |
g |
s (c d ) |
|
|
|
sw |
|
|
|
|
|
|
|
||||
|
1 |
|
1 |
g |
|
|
|
|
|
|
|
|
||||||
Проверка некорректного бюллетеня
(x, y) (g , h G2 ) |
|
d |
, d |
, r |
, r , с) - принято |
|||
|
|
1 |
|
2 |
|
1 |
2 |
|
1. ) modq? |
d1 d2 |
d1 |
c d1 |
c |
||||
? |
|
r |
d |
|
r d |
|
||
g 1 x |
1 g 1 x 1 |
|||||||
? |
r |
(yG) |
d |
r |
d |
|||
h 1 |
1 |
h 1 ( yG) 1 |
||||||
? |
a2 gw |
|
|
|
|
|
|
|
|
gr2 g d2 gw d2 g (c d1) |
g w (c d1) g (c d1) gw |
||||||
?
b2 hw gsw
hr2 ((h G2 / G)d2 gs(w d2 ) g sG (c d1) g s(w d2 )g s(c d1)Gc d1
gsw s (c d1) g s (c d1)Gc d1 g swGc d1 g swGd2
Доказательство корректности частичного расшифрования бюллетеней
Формируемое доказательство позволяет убедить ИК,
что результат R’ |
частичного расшифрования криптограммы |
|
(R ,C ) был действительно получен с помощью |
||
ключа расшифрования |
sучетчик |
|
соответствующего известному ключу шифрования Qучет . |
||
То есть нужно доказать, что |
|
|
R sучетчик R , |
Qучетчик sучетчик P |
|
Нужно доказать, что в обоих равенствах используется ключ sучетчик , без раскрытия этого ключа.
Это задача логарифмирования на эллиптической кривой
Расшифрование бюллетеня
1 Этап. Частичное расшифрование учетчиком (в блокчейне)
Учетчик расшифровывает агрегированную криптограмму (R ,C ) по каждому кандидату и публикует и формирует результат частичного расшифрования
И доказательство того , чтоR расшифровывался с использованием своего Корректного закрытого ключа sучетчик.
2. Этап. Окончательное расшифрование агрегированной криптограммы учетчиком (в блокчейне)
M C H (Qучет |
|
Qком ) sком R H (Qком |
|
Qучет ) R |
|
|
|||||||||||||||||
|
|
|
|
||||||||||||||||||||
|
|
|
|||||||||||||||||||||
C H (Q |
учет |
|
Q ) s R H (Q |
|
Q |
учет |
) s |
учетчик |
R |
|
|||||||||||||
|
|
|
|||||||||||||||||||||
|
|
||||||||||||||||||||||
|
|
|
ком ком |
|
ком |
|
|
|
|
|
|
||||||||||||
C (H (Q |
учет |
|
Q ) s |
ком |
H (Q |
|
Q |
учет |
) s |
учетчик |
)R |
C Q |
r |
||||||||||
|
|
||||||||||||||||||||||
|
|||||||||||||||||||||||
|
|
|
ком |
ком |
|
|
|
|
|
|
|
итог |
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Генерация доказательства
На вход алгоритма поступают: |
s |
|
|
|
|
,Qучетч , P |
|||||||
|
учетчик R , R |
|
|||||||||||
|
u Zq |
|
|
|
|
|
|
|
|
|
|
||
|
U1 uR , U2 uP |
|
|
|
|
|
|
|
|||||
|
|
|
R |
|
,Qучетч |
, P) |
|
|
|
|
|
|
|
v H (U1,U2 , R |
, |
|
|
|
|
|
|
|
|||||
|
w sучетчик v u |
|
|
|
|
|
|
|
|||||
Выход алгоритма: |
|
(w,U1,U2 ) |
|
|
|
|
|
|
|
||||
|
Проверка доказательства (ИК) |
||||||||||||
На вход алгоритма поступают: |
|
|
|
|
R , R ,Qучетч , P (w,U1,U2 ) |
||||||||
|
|
v H (U1,U |
|
|
|
|
,Qучетч , P) |
|
|
||||
|
|
2 , R , R |
|
|
? |
||||||||
|
? |
|
|
|
|
|
|
|
|
|
|
(wP) vQучетч U2 |
|
(wR ) vR U1 |
|
|
|
|
|
|
|
vQучетч U2 vQучетч uP |
|||||
vR U1 vR uR |
|
|
|
|
|
|
|||||||
|
|
|
|
|
vsучетч P uP (vsучетч u)P wP |
||||||||
vsучетчик R uR |
|
|
|
|
|
|
|||||||
(vsучетчик u)R wR |
Если оба сравнения выполняются проверка |
||||||||||||
|
|
|
|
|
|
|
доказательства корректна |
||||||
Разделение ключа дешифрования
Генерирование ключевой пары Qком , sком
осуществляется Избирательной комиссией в присутствии Наблюдателей и представителей средств массовой информации на выделенном устройстве.
В качестве протокола разделения ключа используется (n,t) –схема Шамира, позволяющая разделить ключ таким образом, что любые t участников, объединившись, могли восстановить секрет.
Доли закрытого ключа записываются на защищенные носители, доступ к которым имеют лица, определенные решением комиссии ДЭГ. Открытый ключ Qком отображается на экране устройства
для всех присутствующих. Закрытый ключ sком уничтожается на устройстве.
|
|
k GF( p) |
|
|
|
GF( p) |
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Разделение секрета по схеме Шамира |
|
|
|
|
|
|||||||||
Пусть основной секрет |
|
, где |
|
|
– конечное простое поле, что всегда возможно для |
|||||||||
h(x) at 1x |
t |
1 |
at 2x |
t 2 |
a1x a0 |
|
|
|
||||||
любого k при выборе необходимой величины p. |
|
|
|
|
|
|
|
|
||||||
Пусть |
|
a1, , at 1 GF p |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|||||
полином степени t-1, |
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
Выберем коэффициент |
полинома при его постоянном члене равным основному секрету k, а остальные |
|||||||||||||
его коэффициенты |
|
a0 |
|
|
|
|
|
|
|
a , , a |
|
|
||
выберем чисто случайными. |
|
|
|
|
|
|
|
|
GF |
p |
||||
|
|
|
|
|
|
|
|
1 |
|
m 1 |
|
|
||
Полином ( t-1)-й степени однозначно определяется всеми этими |
|
|
|
xi GF p |
||||||||||
коэффициентами |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Частные секреты (тени) вычисляются по формуле: |
|
|
, |
|
|
|
|
|
|
|||||
где, в частности, можно взять , |
, |
|
|
. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
k |
|
|
i 1, 2, , n, |
||
|
|
|
|
|
|
|
|
|
h x |
|||||
|
|
|
|
x i |
|
n p |
i |
|
i |
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
i |
|
|
|
|
|
|
|
|
|
.
39
Доли |
k конфиденциально передаются каждому из n хранителям ключа . |
|||||
|
i |
|
|
|
i1, i2, ..., it объединят свои |
|
Если m (или более) пользователей |
||||||
индивидуальные секреты |
k |
, k |
, ..., k |
|
, то они смогут восстановить полином |
|
|
|
i1 |
i2 |
it |
|
|
, используя интерполяционную формулу. Лагранжа [14]:
|
|
|
|
|
|
|
|
|
t |
|
t |
x x |
|
|
|
||
|
|
|
i |
j |
|
|
||
h x k |
|
|
|
|
|
mod p |
||
|
|
|
|
|||||
s 1 |
is |
j 1 |
x |
x |
|
|
|
|
|
|
|
||||||
|
|
s j |
|
is |
i j |
|
|
|
Тогда основной секрет легко может быть найден как |
t |
|
x js ' |
||||
|
t |
Cs |
|
|
|||
a0 |
h 0 ksCs mod p , где |
|
|
|
|
||
x |
x |
|
|||||
|
s ' 1 |
js ' |
|||||
|
s 1 |
|
|
js |
|||
|
|
|
s s ' |
|
|
|
|
js - номер пользователя,
40
Примерный порядок распределения долей ключа
•председатель или заместитель председателя территориальной избирательной комиссии – 1 доля;
•председатель или заместитель председателя избирательной комиссии муниципальных образований – 1 долz;
•члены избирательных комиссий с правом решающего голоса – 3 доли (поскольку согласно п. 3 ст. 27 Федерального закона «Об основных гарантиях избирательных прав и права на участие в референдуме граждан Российской Федерации» от 12.06.2002 N 67-ФЗ минимальное количество членов участковой комиссии с правом решающего голоса – 3);
•руководитель или заместитель руководителя общественного штаба – 1 доля;
•руководитель или заместитель руководителя корпуса наблюдателей – 1 доля.
