О модификации схемы подписи Эль-Гамаля для
применения в одном классе систем голосования, использующих механизм подписи
вслепую
А. А. Бабуева
Аннотация—В настоящей работе рассматривается сценарий применения классической схемы подписи в одном классе систем дистанционного электронного голосования, использующих механизм подписи вслепую. Особенностями такого класса систем являются формирование подписи на мобильном устройстве избирателя и включение значения подписи в состав бюллетеня. Подчеркивается, что в таком случае от классической схемы подписи может требоваться малая длина подписи, а также обеспечение стойкости в случае использования вырожденных источников случайности. Для стандартных схем подписи Эль-Гамаля настоящие свойства не выполняются. При повторе случайного значения, используемого при формировании подписи, такие схемы позволяют восстановить ключ подписи. В настоящей работе показано, что схемы подписи Эль-Гамаля могут быть модифицированы с целью достижения указанных выше свойств. Предлагаемая модификация описана на примере стандартизированной в РФ схемы подписи, определенной в документе ГОСТ Р 34.10-2012. Она позволяет сократить длину подписи на четверть и дополнительно использует функцию HMAC. Получена оценка стойкости предложенной схемы в модели SUF-CMRA, предоставляющей нарушителю возможность контролировать случайные значения, а также метки времени, используемые в процессе формирования подписи.
Ключевые слова—схема подписи Эль-Гамаля, схема подписи ГОСТ, короткая подпись, схема подписи вслепую
I. Введение
Различные области применения одного и того же криптографического механизма могут накладывать различные криптографические и эксплуатационные требования к нему. Рассмотрим такую область применения схем подписи, как системы дистанционного электронного голосования (ДЭГ). Как правило, при проведении голосования избиратель аутентифицируется перед Организатором голосования и получает некоторый «тикет», подтверждающий его право на голосование, после чего «бросает в урну» свой голос с использованием настоящего «тикета». Так, в случае традиционной (очной) системы голосования аналогом такого «тикета» является незаполненный бюллетень установленного образца. В случае систем ДЭГ «тикет» может представлять собой подписанное Организатором вслепую сообщение. В качестве
Статья получена 1 марта 2023
Александра Алексеевна Бабуева, МГУ им. М.В. Ломоносова, ООО "КРИПТО-ПРО", (email: babueva@cryptopro.ru).
подписываемого сообщения может выступать заполненный бюллетень избирателя (см. [1—4]) или одноразовый открытый ключ избирателя (см. [5—8]).
Рассмотрим сценарий применения схем подписи в системах ДЭГ, когда в качестве подписываемого вслепую сообщения выступает одноразовый открытый ключ избирателя. В этом случае предполагается, что после получения «тикета» избиратель заполнит бюллетень, подпишет его с помощью классической схемы подписи, после чего отправит Организатору по анонимному каналу связи транзакцию (подписанный бюллетень; открытый ключ проверки подписи; подпись открытого ключа проверки подписи, полученная вслепую). Таким образом, классическая схема подписи в данном случае позволяет обеспечить целостность бюллетеня, в то время как схема подписи вслепую позволяет обеспечить аутентичность этого бюллетеня, т.е. подтверждает, что настоящий открытый ключ проверки подписи действительно принадлежит легитимному избирателю.
Такой сценарий обладает следующими особенностями, требующими от классической схемы подписи наличия дополнительных криптографических и эксплуатационных свойств.
Формирование подписи происходит полностью на стороне избирателя. На практике это осуществляется на некотором пользовательском мобильном устройстве, на котором в общем случае сложно обеспечить выполнение требований по корректной генерации случайных значений [9]. Это связано, в первую очередь, с возможным отсутствием на пользовательских устройствах хороших, равновероятно распределенных начальных значений для программных датчиков случайных чисел. Поэтому в рассматриваемом случае целесообразно использовать схему подписи, обеспечивающую стойкость даже в случае, если одноразовые случайные значения, используемые для формирования подписи, выбираются не в соответствии с равновероятным распределением, в частности, могут быть зависимыми и даже повторяться.
Заметим, что в ряде систем может требоваться, чтобы схема подписи оставалась вероятностной даже при повторе случайных значений. Например, это является актуальным в системах, предоставляющих избирателю возможность повторной отправки бюллетеня и определяющих уникальность полученного бюллетеня по его хэш-значению. Тогда, в случае отсутствия данного свойства, возможна следующая ситуация, нарушающая коррект-
ность работы системы. Легитимный избиратель отправляет бюллетень за кандидата А, далее отправляет бюллетень за кандидата Б, после чего — снова за кандидата А. Поскольку содержимое первого и третьего бюллетеней одинаковое, избиратель сформирует то же самое значение подписи и отправит идентичную транзакцию. С точки зрения системы, такие транзакции будут неразличимы, а потому третий бюллетень будет отброшен и будет учтен голос за кандидата Б. Заметим, что проверка уникальности полученных бюллетеней необходима, поскольку она защищает от повторной отправки нарушителем бюллетеней, сформированных легитимными избирателями.
Другой особенностью рассматриваемого класса систем ДЭГ является высокая нагрузка на Организатора голосования, для сокращения которой желательно сократить размер отправляемого бюллетеня, в частности, длину подписи.
Схемы подписи Эль-Гамаля [10] не являются стойкими в случае вырождения случайности [11], более того, повтор одноразовых случайных значений приводит к восстановлению ключа подписи. Длина подписи в этих схемах составляет 2[log q] бит, где q — порядок подгруппы группы точек используемой эллиптической кривой.
В настоящей работе показано, что схемы подписи Эль-Гамаля могут быть модифицированы с использованием идей из работ [11, 12] с целью достижения обсуждаемых выше свойств, представляющих интерес для рассматриваемого класса систем ДЭГ, использующих подпись вслепую. Предлагаемая модификация описана на примере схемы подписи, определенной в ГОСТ Р 34.102012 [13] (далее — схема GOST). Длина подписи в
результирующей схеме составляет [log q] + бит.
Алгоритм формирования подписи остается вероятностным при повторе случайных значений за счет добавления метки времени в процесс выработки одноразового значения (см. раздел 7 [11]). Для модифицированной схемы получена оценка стойкости в модели SUF-CMRA, учитывающей возможность нарушителя контролировать случайные значения и метки времени, используемые в процессе формирования подписи.
II. Обозначения
Обозначим через {0,1}" множество всех и-битовых строк, через {0,1}* — множество всех битовых строк конечной длины, в том числе пустую строку. Битовую строку, состоящую из и нулей, будем обозначать через 0".
Для целых чисел I > 0 и 0 < i < 21 через stii(i) будем обозначать 1-битовое представление числа i, в котором наименее значащий бит находится справа. Для целого числа I > 0 и битовой строки U € {0,1}1 через int(U) будем обозначать целое число i < 21, такое что stri (i) = U.
Будем обозначать множество всех отображений из A в B через Func(A, B). Факт того, что значение s выбрано из некоторого множества S в соответствии с равновероятным распределением U, будем обозначать через
U с s i— S.
Через x i val будем обозначать присваивание значения val переменной x. Аналогично, через x i y
будем обозначать присваивание значения переменной y переменной x.
Пусть p — простое число. Будем обозначать через Zp конечное поле характеристики p. Будем считать, что все элементы Zp имеют каноническое представление в виде натуральных чисел из отрезка [0; p — 1]. Будем обозначать через Z* множество Zp без нулевого элемента.
Обозначим группу точек эллиптической кривой над полем Zp через G, порядок простой подгруппы группы G через q, точку эллиптической кривой порядка q через P. Определим вспомогательный параметр I равным [log q\.
Пусть HMAC : {0,1}к х {0,1}* ^ {0,1}1 — ключевая хэш-функция, определенная в [14], отображающая ключ K длины к бит и строку T произвольной длины в двоичный вектор длины I бит. Будем считать, что размер ключа к может принимать любые значения от 256 до 512 бит. В рамках настоящей работы будем считать, что хэш-функция H1, используемая в схеме подписи, действует из {0,1}* в Zq.
Схема подписи (далее — SS) задается тремя алгоритмами: алгоритм генерации ключей KGen, алгоритм формирования подписи Sig и алгоритм проверки подписи Vf. Алгоритм KGen возвращает пару ключей (sk, pk), где sk -секретный ключ подписи, pk - открытый ключ проверки подписи. Алгоритм Sig принимает на вход ключ подписи sk и сообщение m и возвращает значение подписи sgn. Алгоритм Vf принимает на вход ключ проверки подписи pk, сообщение m, значение подписи sgn и возвращает единицу, если значение подписи верное, и ноль в противном случае. При этом для любой пары ключей (sk, pk) и для любого сообщения m требуется, чтобы
SS.Vf(pk, m, SS.Sig(sk,m)) = 1.
III. Короткая усиленная подпись на основе схемы GOST
Схема подписи GOST задается алгоритмами генерации ключей, формирования и проверки подписи. Приведем их описание в виде псевдокода:
KGen( )
Sig(d,m)
d Д Z.
q
dP
Q
return (d, Q)
Vf (Q, m, (r,s))
e ^ H1(m) if e = О : e ^ l R ^ kP r ^ R.x mod q if r = О : return
if (s = 0) V (r = 0) : return 0 s ^ ke + dr e ^ Hi (to) if s = 0 : return ±
if e = 0 : e ^ 1 return (r, s)
R ^ e-1sP - e-1rQ if R.x mod q = r :
return 0 return 1
Длина подписи в схеме GOST составляет 2[log2 q\ бит. Определим модифицированную схему подписи, значение
подписи в которой имеет длину ^ [log q\ + бит и
стойкость которой обеспечивается даже в случае вырождения случайности в рамках алгоритма формирования подписи.
Z.
d -Q
return (d, Q)
q
dP
Для укорочения длины значения подписи применим метод 1 из работы [12], в результате получим схему GOST-H. Настоящий метод заключается в изменении способа вычисления первой компоненты подписи r из эфемерной точки R. Если в оригинальной схеме GOST значение r полагается равным R.x mod q, то в модифицированной схеме оно вычисляется следующим образом:
r = 4>(H2(R.x)),
где H2 отображает Zp в {0,1}1/2, и ф отображает {0,1}l/2 KGen() в Z*. Функция ф определяется следующим образом: она ставит в соответствие значению x £ {0,1}l/2 \ {0} значение int(x) и переводит 0 в 21/2. Таким образом, длина компоненты r подписи не превосходит 1/2 + 1 = [log q\ /2 + 1 бит. Отметим, что в силу задания области значений функции ф значение r никогда не можеть быть нулевым, а потому из алгоритмов формирования и проверки подписи можно исключить проверку на равенство r нулю.
Заметим, что метод, предложенный в [12], является более общим и позволяет генерировать подписи, первая компонента r которых имеет длину b бит, b < [logq\, где b — настраиваемый параметр. Однако в настоящей работе фиксируется значение b = 1/2 из следующих соображений. Оценка стойкости схемы GOST-H, полученная в работе [12], свидетельствует о том, что при уменьшении значения b с I до 1/2 оценка стойкости схемы не изменяется, в то время как при дальнейшем уменьшении параметра оценка стойкости начинает ухудшаться. Таким образом, значение b = 1/2 позволяет сохранить стойкость схемы, улучшив ее эксплуатационные характеристики.
Согласно работе [12] схема подписи GOST-H также является схемой подписи Эль-Гамаля, а потому для этой схемы критично использование доверенного источника случайности (предположение о том, что эфемерный ключ подписи к выбирается в соответствии с равновероятным распределением). Действительно, если нарушитель вместе со значением подписи (r,s) получает также значение к, он может восстановить ключ подписи d из уравнения подписи. Применим к схеме GOST-H метод из работы [11], обеспечивающий защиту от вырождения случайности. Настоящий метод заключается в изменении способа выработки эфемерного ключа подписи к. В оригинальной схеме GOST и схеме GOST-H предполагается, что значение к выбирается из множества Z* в соответствии с равновероятным распределением. В модифицированной схеме значение к вырабатывается из ключа подписи d и хэш-значения сообщения e в результате следующей последовательности действий:
K ^ HMAC(0266, str£(d))
k' -{0,1}£
k" ^ HMAC(K, str£(e) || kk || time)
k ^ int(k'') mod q
где time — текущее значение времени (в мс), прошедшее с полуночи 01.01.1970, представленное в виде битовой строки длины I бит. Заметим, что в [11] настоящий метод определен для случая, когда ключ подписи хранится в маскированном виде, однако наличие масок существенно зависит от конкретной реализации и, вообще говоря,
не является обязательным. Поэтому в настоящей работе определяется модифицированная схема в случае отсутствия масок. Кроме того, используется идея из раздела 7 [11]: в эфемерный ключ подписи замешивается текущее значение времени time.
Результирующую схему будем называть GOST-H. Ниже представлено ее описание в виде псевдокода.
Sig(d,m)
Vf(Q,m, (r,s))
if s = 0 : return 0
e ^ Hi (m) if e = 0 : e ^ 1 R ^ e-1sP — e-1r if ф(Н2(Кх)) = r :
return 0 return 1
k' —{0,1}* e ^ H1(m)
K ^ HMAC(0256, str*(d))
k'' ^ HMAC(K, str*(e) || k' || time)
k ^ int(k'') mod q
if k = 0 : return ±
if e = 0 : e ^ 1
R ^ kP
r ^ ф(Н2(Кх))
s ^ ke + dr
if s = 0 : return ±
return (r, s)
Заметим, что методы из работ [11, 12] являются общими и применимы ко всем схемам подписи Эль-Гамаля.
IV. Свойства безопасности
В данном разделе введем целевую для схемы подписи модель безопасности SUF-CMRA, которая предоставляет нарушителю возможность контролировать все случайные значения, использующиеся в алгоритме подписи. Кроме того, определим стандартную модель безопасности SUF-CMA для схемы подписи, вспомогательные модели безопасности для функции хэширования и функции HMAC и задачу дискретного логарифмирования.
Для формализации моделей безопасности используется алгоритмический подход, в рамках которого определяется порядок взаимодействия между экспериментатором и нарушителем. Экспериментатор и нарушитель моделируются с помощью согласованных интерактивных вероятностных алгоритмов. Экспериментатор моделирует для нарушителя функционирование исследуемой криптосистемы и предоставляет ему доступ к одному или более оракулам (для деталей см. [15]).
Экспериментатор и нарушитель описываются с помощью псевдокода с использованием следующих обозна-
$
чений. Для вероятностного алгоритма A через A — x
$
(x <— A) будем обозначать присваивание результата его работы переменной x. В случае, когда требуется подчеркнуть детерминированность алгоритма A, будем использовать обозначение A — x (x ^ A).
A. Модель SUF-CMRA
Определим модель SUF-CMRA [16] со случайным оракулом для схемы подписи G°ST-H, которая рассматривает стойкость к угрозе нахождения подделки при атаке не только с выбором сообщений, но и с выбором случайных значений (chosen message and randomness attack). Для схемы G°ST-H единственным случайным значением, использующимся в процессе формирования
подписи, является значение к'. При формализации предполагается, что это значение подается нарушителем на вход оракулу подписи вместе с значением сообщения. Кроме того, настоящая модель учитывает, что источник времени, вообще говоря, может быть недоверенным, а потому предоставляет нарушителю контролировать значение времени time, также подавая его на вход оракулу подписи.
В рамках настоящей модели нарушителю также предоставляется доступ к двум случайным оракулам: оракул RO1 моделирует вычисление значения функции HMAC(0256, ), оракул RO2 моделирует вычисление значения хэш-функции H2. Заметим, что в работах [11, 12] при обосновании стойкости также предполагалось, что соответствующие функции моделируются как случайные оракулы. Релевантность подобных предположений и интерпретация результатов, полученных в модели со случайным оракулом, подробно обсуждается в оригинальных работах.
Определение IV.1. Преимущество нарушителя A для схемы подписи GOST-H в модели SUF-CMRA со случайным оракулом определяется следующим образом:
Adv'
suf-cmra gost-h
(A) = Pr
ExpsïïstMRA(A) ^ 1
gost-h
щим образом:
Exp^^A)
gost-h_
Fi i— Func({0,1}1, {0,1}1)
F2 i— Func(Zp, {0,1}l/2)
d i— Z*q Q i dP Li 0
(m,sgn) i ASisn,R01,R02 q if (m, sgn) £ L : return 0 return GOST-H.Vf(Q, m, sgn)
Oracle RO1(x) y i Fi (x)
Oracle RO^(x) y i F2 (x)
где эксперимент ExpSUF-CMA(A) определяется следующим образом:
Expssff-cma
(A)
(sk,pk) i SS.KGen( )
0
(m, sgn) i— ASign(Q) if (m, sgn) £ L : return 0 return SS.Vf(pk,m, sgn)
Oracle Sign(m) sgn i SS.Sig(sk,m) L i LJ {(m, sgn)} return sgn
C. Псевдослучайность функции НМАС (модель РЯР)
Преимущество нарушителя А для схемы НМАС в модели PRF определяется следующим образом:
AdvPнRFAc(A) = |2Рг М^АС(А) ^ 1 ] - 11,
где эксперимент Expp|RFAC (А) определяется следующим образом:
exphmac(a)
где эксперимент ExpbyftMRA(A) определяется следую-gost-h
b i— {0,1} if b = 1 :
K i— {0,1}" else :
Fi— Func({0,1}q, {0,1}1)
b' i— ahmac ()
return b = b'
Oracle HMAC(m) if b = 1 :
return HMAC(K,m) else :
return F(m)
D. Задача дискретного логарифмирования ECDLP
Определим формально модель ECDLP, задачей нарушителя в которой является нахождение для некоторой случайно выбранной точки Q ее дискретного логарифма по основанию образующей точки Р.
Определение ГУ.3. Преимущество нарушителя А для группы С в модели ECDLP определяется следующим образом:
Oracle Sign(m, к',time)
sgn i GOST-H.SigDet(d, m, kk,time)
L i LJ {(m, sgn)}
return sgn
Через G°ST-H.SigDet обозначен алгоритм подписи G°ST-H.Sig без генерации значения к' и с определенным значением time (все строки алгоритма G°ST-H.Sig, кроме первой).
B. Модель SUF-CMA
Для схемы подписи SS определим стандартную модель SUF-CMA, которая рассматривает стойкость схемы подписи к угрозе нахождения подделки при атаке с выбором сообщений.
Определение IV.2. Преимущество нарушителя A для схемы подписи SS в модели SUF-CMA определяется следующим образом:
AdvGCDLP'
(A) = Pr Q 4— (P) ; d 4— A(Q, P) : dP = Q
AdvSUUF-CMA(A) = Pr [ExpS^
4A) ^ 1] ,
E. Свойства хэш-функции
Будем рассматривать ключевые хэш-функции H i: {0,1}* ^ Zq, неявно инициализированные соответствующим вектором; предполагается, что эксперименты в определениях моделей начинаются со случайного выбора вектора IV £ IV и передачи его нарушителю.
Определим для семейства хэш-функций H1 свойство устойчивости к коллизиям с точностью до знака (свойство SCR) и свойство устойчивости к поиску делителей с точностью до знака (свойство SDR).
Определение IV.4 (свойство SCR). Преимущество нарушителя A для семейства хэш-функций H1 в модели SCR определяется следующим образом:
Advsif(A) =
г $
= Pr (mi, m2) 4- A : Hi(mi) = ±Hi(m2) A mi = m2
Определение IV.5 (свойство SDR). Преимущество нарушителя A для семейства хэш-функций Hi в модели SCR определяется следующим образом:
Advhiiv)
Pr[ßl,ß2
$ л /Т. О \ Hi(mi)
m2 ^2(r'ß2): w
{0,1}b;(mi, Г) Д Ai(ßi) Hi(m2),
±-
V Оценка стойкости
Получим оценку стойкости схемы GOST-H в модели SUF-CMRA, опираясь на результаты работ [11, 12].
Теорема V.1. Пусть A — нарушитель с вычислитель-ными^ресурсами Ta в модели SUF-CMRA для схемы G°ST-H, делающий не более QS запросов к оракулу Sign, Qo,1 и Qo,2 запросов к случайным оракулам RO1 и RO2 соответственно. Тогда существуют
• нарушитель D, решающий задачу ECDLP в используемой группе точек G,
• нарушитель C, решающий задачу SCR (поиска коллизий с точностью до знака) для хэш-функции H1,
• нарушитель M, решающий задачу SDR (поиска делителей с точностью до знака) для хэш-функции Hi ,
• нарушитель P для схемы HMAC в модели PRF, делающий не более QS запросов к оракулу, длина каждого из которых не превосходит 31 битов,
такие, что:
Adv
.suf-cmra (a) ^ QO,2+3 + AdvS<f (с) +
gost-h
нарушитель, который всегда подает на вход оракулу подписи значение mask = 1. Таким образом, оценка остается верной.
Также заметим, что ограничение на длину запросов нарушителя P поменялось по сравнению с оценкой из работы [11]. Это связано с добавлением времени time в аргументы функции HMAC при выработке значения к". Поскольку на вход функции HMAC приходят значения stri(e), k',time, каждое из которых имеет длину I бит, длина запросов нарушителя P составляет 31 бит. При этом, все остальное доказательство остается неизменным с добавлением time и в точности повторяет доказательство [11].
b) Оценка для метода укорочения (Теорема 1 из работы [12]):
suf-cma advgost-h (b) <
Qo +3 2b
+ Advhcr(c)+
(Qo + 2) (AdvHf (.M) • (Qo + 2) + AdvfDLP(P)
+
(2Qo + QS + 1)Qs
q - 1 •
\J(Qo,2 + 2) (Adv^M) • (Qo,2 + 2) + AdvGCDLP(P)
i (2qo,2 + QS + 1)qs , ^ advprf (t>\
+--^--+ QS • advhmac(p).
q— 1
Для вычислительных ресурсов нарушителей C, D, M и P верно следующее:
TC < TA + C(Qo,i + QO,2 + 2Qs + Tsig + (Qs + 3)Tvf), Tv, TM < 2TA + 2C(Qo,i + 2Qs + Tsig + (Qs + 4)Tvf+ + 2Qo,2 +4), Tp < Ta + c(Qo,i + Tsig + QS (I + 1 + Tsg+
+ 31 log Qs + Thmac)),
где Tsig, Tvf — вычислительные ресурсы, необходимые для подписи одного сообщения и проверки подписи для схемы G°ST-H, Thmac — вычислительные ресурсы, необходимые для вычисления функции HMAC на входе длины 31, с — константа, зависящая только от модели вычислений и способа представления данных.
Доказательство. Настоящая оценка следует из следующих двух оценок, применяемых последовательно.
a) Оценка для метода усиления случайности (Теорема 1 из работы [11] для схемы подписи SS = GOST-H):
Заметим, что настоящая оценка остается верной и в случае, когда маскирование ключа подписи не производится. Действительно, в этом случае можно считать, что рассматривается частный случай нарушителя, а именно,
Для схемы G°ST-H, как было указано ранее, в эту оценку подставляется значение b = 1/2.
Заметим, что наличие двух случайных оракулов не влияет на возможность «совмещения» приведенных оценок, поскольку при построении сведений нарушители C, D и M имеют возможность честно моделировать оракул RO1, адаптивно выбирая значения выходов случайной функции F1 на соответствующих входах, а P — честно моделировать оракул RO2 аналогичным образом.
Вычислительные ресурсы нарушителей также определяются путем совмещения соответствующих оценок из работ [11, 12].
□
Аналогичная теорема может быть сформулирована для модифицированных схем подписи, основанных на других схемах подписи Эль-Гамаля. Этап а) доказательства в таком случае проводится идентично, поскольку оценка из работы [11] применима к произвольной схеме подписи Эль-Гамаля. При этом этап б) доказательства требует оценки стойкости укороченной схемы подписи в модели SUF-CMA, которая, в свою очередь, может быть получена с применением идей из работы [10] (в работе [12] настоящая оценка явно приводится только для схемы подписи GOST-H).
VI. Заключение
В настоящей работе предложен способ модификации схем подписи Эль-Гамаля с целью повышения их защищенности в случае использования недоверенного источника случайности, а также уменьшения размера подписи. В качестве примера настоящая модификация применена к схеме подписи, определенной в ГОСТ Р 34.10-2012. Получена оценка стойкости результирующей схемы в модели безопасности SUF-CMRA, позволяющей нарушителю контролировать все случайные значения, используемые при формировании подписи. Предложенная схема может применяться в системах дистанционного электронного голосования, использующих протокол подписи вслепую.
Библиография
[1] A. Fujioka, T. Okamoto и K. Ohta, «A practical secret voting scheme for large scale elections,» в Advances in Cryptology — AUSCRYPT '92, J. Seberry и Y. Zheng, ред., Berlin, Heidelberg: Springer Berlin Heidelberg, 1993, с. 244—251.
[2] T. Okamoto, «An electronic voting scheme,» в Advanced IT Tools: IFIP World Conference on IT Tools 2-6 September 1996, Canberra, Australia, N. Terashima и E. Altman, ред. Boston, MA: Springer US, 1996, с. 21—30.
[3] C.-I. Fan и W.-Z. Sun, «Uncoercible Anonymous Electronic Voting,» т. 2006, янв. 2006. doi: 10.2991/ jcis.2006.229.
[4] M. Chaieb, M. Koscina, S. Yousfi, P. Lafourcade и R. Robbana, DABSTERS: Distributed Authorities using Blind Signature To Effect Robust Security in e-voting, 2019. url: https://hal.science/hal-02145809.
[5] Q. He и Z. Su, «A new practical secure e-voting scheme,» в SEC'98: international conference on information security, 1998, с. 196—205.
[6] L. Lopez-Garcia, F. Rodriguez-Henriquez и M. A. L. Chavez, «An e-Voting Protocol based on Pairing Blind Signatures,» в International Conference on Security and Cryptography, 2008.
[7] D. Kirillov, V. V. Korkhov, V. Petrunin, M. Makarov, I. M. Khamitov и V. Dostov, «Implementation of an E-Voting Scheme Using Hyperledger Fabric Permissioned Blockchain,» в Communication Systems and Applications, 2019.
[8] Дистанционное электронное голосование, Рус-Крипто'22, 2022. url: https://www.ruscrypto.ru/ resource/archive/rc2022/files/05_presentation.pdf.
[9] С. Смышляев, Математические методы обоснования оценок уровня информационной безопасности программных средств защиты информации, функционирующих в слабодоверенном окружении, Московский государственный университет имени М.В. Ломоносова, дис. ... д-ра ф.-м.н., 2022.
[10] M. Fersch, The provable security of elgamal-type signature schemes, Ruhr-Universität Bochum, Doct. Diss., 2018.
[11] Е. Алексеев, Л. Ахметзянова, А. Бабуева и С. Смышляев, «О повышении безопасности схем подписи Эль-Гамаля,» Математические вопросы криптографии, т. 12(3), 2021.
[12] L. Akhmetzyanova, E. Alekseev, A. Babueva и S. Smyshlyaev, «On methods of shortening ElGamal-type signatures,» Математические вопросы криптографии, т. 12(2), 2021.
[13] ГОСТ Р 34.10-2012 «Информационная технология. Криптографическая защита информации. Процессы формирования и проверки электронной цифровой подписи», Стандартинформ, 2012.
[14] H. Krawczyk, M. Bellare и R. Canetti, «HMAC: Keyed-Hashing for Message Authentication,» RFC 2104, 1997. url: https://www.rfc-editor.org/info/ rfc2104.
[15] M. Bellare и P. Rogaway, «The Security of Triple Encryption and a Framework for Code-Based Game-Playing Proofs,» в Advances in Cryptology -
EUROCRYPT 2006, S. Vaudenay, ред., Berlin, Heidelberg: Springer Berlin Heidelberg, 2006, с. 409—426.
[16] Y. S. Ristenpart T., When Good Randomness Goes Bad: Virtual Machine Reset Vulnerabilities and Hedging Deployed Cryptography, NDSS, 2010.
On ElGamal signature modification for application in one class of e-voting systems using the blind
signature mechanism
Alexandra Babueva
Abstract—In this paper we consider the scenario of the signature scheme application in one class of e-voting systems using the blind signature mechanism. The specificities of this class of systems are the signature generation on the voter's mobile device and the inclusion of the signature value in the ballot. In this case the classical signature scheme may be required to provide a short signature length and remain secure even in case of using unreliable sources of randomness. Standard ElGamal signature schemes do not meet these requirements. The repeating of the random value used in the signature generation process leads to recovering the secret signing key. This paper shows that ElGamal signature schemes can be modified in order to ensure these properties. The proposed modification is described on the example of the standardized signature scheme, defined in the document GOST R 34.102012. It allows to reduce the length of the signature by a quarter and additionally uses the HMAC function. We obtain the security bound of the proposed scheme in the SUF-CMRA model, which allows the adversary to control random values, as well as timestamps used in the signature generation process.
Keywords—ElGamal signature, GOST signature, short signature, blind signature
References
[1] A. Fujioka, T. Okamoto, and K. Ohta, «A practical secret voting scheme for large scale elections», in Advances in Cryptology — AUSCRYPT '92, J. Seberry and Y. Zheng, Eds., Berlin, Heidelberg: Springer Berlin Heidelberg, 1993, pp. 244-251.
[2] T. Okamoto, «An electronic voting scheme», in Advanced IT Tools: IFIP World Conference on IT Tools 2-6 September 1996, Canberra, Australia, N. Terashima and E. Altman, Eds. Boston, MA: Springer US, 1996, pp. 21-30.
[3] C.-I. Fan and W.-Z. Sun, «Uncoercible anonymous electronic voting», vol. 2006, Jan. 2006. doi: 10.2991/ jcis.2006.229.
[4] M. Chaieb, M. Koscina, S. Yousfi, P. Lafourcade, and R. Robbana, Dabsters: Distributed authorities using blind signature to effect robust security in e-voting, 2019. [Online]. Available: https ://hal. science/hal-02145809.
[5] Q. He and Z. Su, «A new practical secure e-voting scheme», in SEC'98: international conference on information security, 1998, pp. 196-205.
[6] L. Lopez-Garcia, F. Rodriguez-Henriquez, and M. A. L. Chavez, «An e-voting protocol based on pairing blind signatures», in International Conference on Security and Cryptography, 2008.
[7] D. Kirillov, V. V. Korkhov, V. Petrunin, M. Makarov, I. M. Khamitov, and V. Dostov, «Implementation of an e-voting scheme using hyperledger fabric permis-sioned blockchain», in Communication Systems and Applications, 2019.
[8] E-voting system, RusCrypto'22, 2022. [Online]. Available: https: / / www. ruscrypto. ru / resource / archive / rc2022/files/05_presentation.pdf.
[9] S. Smyshlyaev, Mathematical methods of proving security bounds for information security software running in the semi-trusted environment, Lomonosov Moscow State University, Doct. Diss., 2022.
[10] M. Fersch, The provable security of elgamal-type signature schemes, Ruhr-Universität Bochum, Doct. Diss., 2018.
[11] L. Akhmetzyanova, E. Alekseev, A. Babueva, and S. Smyshlyaev, «Improving security of ElGamal-type signatures», Matem. vopr. kriptogr., vol. 12(3), 2021.
[12] L. R. Akhmetzyanova, E. K. Alekseev, A. Babueva, and S. Smyshlyaev, «On methods of shortening ElGamal-type signatures», Matem. vopr. kriptogr., vol. 12(2), 2021.
[13] GOST R 34.10-2012. Information technology. Cryptographic data security. Signature and verification processes of electronic digital signature. National standard of the russian federation, STANDARTINFORM, 2012.
[14] H. Krawczyk, M. Bellare, and R. Canetti, «HMAC: Keyed-hashing for message authentication», RFC 2104, 1997. [Online]. Available: https://www.rfc-editor.org/info/rfc2104.
[15] M. Bellare and P. Rogaway, «The security of triple encryption and a framework for code-based game-playing proofs», in Advances in Cryptology - EURO-CRYPT 2006, S. Vaudenay, Ed., Berlin, Heidelberg: Springer Berlin Heidelberg, 2006, pp. 409-426.
[16] Y. S. Ristenpart T., When good randomness goes bad: Virtual machine reset vulnerabilities and hedging deployed cryptography, NDSS, 2010.