Скачиваний:
103
Добавлен:
02.05.2014
Размер:
891.9 Кб
Скачать
      1. Доказательство безопасности схемы проверяемого разделения секрета

Теорема 3.1.СхемаПРСКявляется (n/3-1)-устойчивой.

Доказательство.  Пусть

g((w1,...,wn-1,sr),(,...,))=((s1,...,sn-1,wn),(,...,))

и

h((s1,...,sn-1,wn),(,...,))=((s,s,...,s,wn),(,...,)),

где si=f0(i), f0(x)=s+a1x+...+at+1xt+1 и r=a1....ad(то есть полином, созданный, с использованием случайного параметраrдилераД).

При рассмотрении протокола РзПрнапомним, чтоti– трафик процессораPi. Ясно, что для всех процессоровPi,in, функция входа всегда возвращает пустую строкуIi(ti)=, так как процессоры не вносят никакие входы в процессе вычисления функцииg. Для дилераД,Д=Pn+1, функция входа немного сложнее. Пустьmi- сообщение, которое дилер распространяет процессоруPiв 5-м раунде, еслиPiсообщил об ошибке в 4-м раунде или сообщение, которое дилер послал процессоруPiв 1-м раунде, еслиPiне заявлял об ошибке. ТогдаID(tD)=f(0), гдеf=BW(m1,...,mn) – полином степениt+1, следующий из интерполяции Берлекампа-Велча. Функция выхода более простая:Oi(ti)=mi, гдеmD=.

При рассмотрении протокола ВсПр, определим вход и выход функцииg. Функция входа Iiдля процессораPiопределена как следующая: пустьmi,j– сообщение, посланное процессоромPiпроцессоруPjв 1-м раунде;Ii(ti)=hi(0), гдеhi=BW(mi,1,...,mi,n) - многочлен степениt+1, следующий из интерполяции Берлекампа-Велча. Если такого полинома не существует, тоIi(ti)=0. Функция выхода следующая: пустьMi– сообщение, распространяемая процессоромPiв раунде 9;Oi(ti)=F(0)=s, гдеF=BW(M1,...,Mn) – полином степениt+1, следующий из интерполяции Берлекампа-Велча.

Далее для доказательства теоремы необходимо доказать выполнения условий полноты, корректности и конфиденциальности.

Полнота.Если дилерД- честный, исходя из свойств схемыПРСК, любой несбоящий процессор может восстановить секретsс вероятностью 1, так как посредством определенных выше функцийgиh

g((w1,...,wn-1,sr),(,...,))=((s1,...,sn-1,wn),(,...,)),

h((s1,...,sn-1,wn),(,...,))=((s,s,...,s,wn),(,...,))

реализуется

f(w1,...,wn-1,s)=((s,s,...,s,wn),(,...,)).

Корректность.Для доказательства теоремы необходимо доказать следующие две леммы.

Лемма 3.1. Пусть функцияgимеет вид

g((w1,...,wn-1,sr),(,...,))=((s1,...,sn-1,wn),(,...,)).

Тогда gкорректно вычисляет доли секретаs1,...,sn-1.

Доказательство.Сначала мы должны доказать, что для всех несбоящих процессоровPi, значениеIi(ti) равно корректному входу. Если дилерД - честный, тоmi=f(i), гдеf- многочлен степениt+1 со свободным членомs(секретом). Таким образом,ID(tD)=s, если дилер честный. Второе условие корректности состоит в том, что с высокой вероятностью должно выполнятьсяO(t)=g(I(t)). В нашем случае это означает, что с высокой вероятностью значенияmi, находящиеся у несбоящих процессоров, должны предназначаться для единственного полинома степениt+1. Это справедливо с вероятностью, где не менее битов выбраны действительно случайно несбоящими процессорами в раундах 2 и 6. Каждый бит представляет запрос, на который нечестный дилер, распределивший «плохие» доли, должен будет ответить правильно в следующем раунде только с вероятностью 1/2 (то есть, если он предскажет правильно значение бита). Следовательно, это и есть граница для вероятности ошибки. ▄

Лемма 3.2. Пусть функцияhимеет вид

h((s1,...,sn-1),(,...,))=((s,s,...,s,wn),(,...,)).

Тогда hкорректно восстанавливает секретs.

Доказательство.Понятно, что для всех несбоящих процессоровIi(ti)=si– корректная доля входа. В этом случае необходимо проверить, что с высокой вероятностьюO(t)=h(I,t), а это означает, что необходимо доказать, что

h((s1,...,sn-1),(,...,))=((s,s,...,s,),(,...,)).

Это равенство не выполняется, если:

  • любой сбоящий процессор Pl«преуспевает» в получении случайного «мусора» вместо значенийpl(j) в раунде 2 (в этом случае, сообщенияMiне будут интерполировать полином);

  • процессор Piраспределяетpl(j) в раунде 2 и использует полином со свободным членом, отличным от нуля (в этом случае,Miвосстановит другой секрет).

Так как мы уже знаем, что Pl«преуспевает» в любом из двух описанных случаев с вероятностью, то, следовательно, имеется не более, чемn/3 сбоящих процессоров и вероятность того, что протокол вычисляет неправильный выход не более, чемn/3(), что для достаточного большогоK, является экспоненциально малым.

Конфиденциальность.Для доказательства теоремы необходимо доказать следующие две леммы.

Лемма 3.3. Пусть функцияgимеет видg((w1,...,wn-1,sr),(,...,))= =((s1,...,sn-1,wn),(,...,)).

Тогда gконфиденциально вычислима в отношение долей секретаs1,...,sn-1.

Доказательство. Доказательство условия конфиденциальности для функцииgзаключается в описании работы моделирующего устройстваМ, которое взаимодействует со сбоящими процессорами (в том числе с нечестным дилером) и создает «почти» такое же распределение вероятностей, которое возникает у сбоящих процессоров во время реального выполнения протоколаРзПр.

Необходимо рассмотреть два случая.

Случай A:Дилер нечестен до начала 1-ого раунда. Моделирующее устройство будет следовать только командам процессоров с единственным исключением, что оно будет «передавать» их в какое-либо время противнику в случае «сговора». Так как процессоры не сотрудничают по любому входу, то это сводит моделирование к работе схемы проверяемого разделения секрета с нечестным дилером. Так что моделирование будет неразличимо с точки зрения противника.

Случай B:Дилер честен до начала 1-ого раунда. Моделирующее устройство в 1-м раунде будет создавать случайный «ложный» секретs'и распределять его процессорам в соответствии с командами протокола с полиномомf'. Если дилер честен в течение всего протокола, тогда он будет выполняться с точки зрения противника как обычный протокол проверяемого разделения секрета с честным дилером. Если дилер нечестен после 1-ого раунда противник и моделирующее устройство получит из оракула истинный входsдилера. В этом случае моделирующее устройство передает управление от дилера к противнику и меняет полином, используемый для разделения на новый полиномf"такой, чтоf"(0)=sиf"(i)=f'(i) для всех процессоровPi, которые были «подкуплены» противником. Изменения моделирующего устройства в соответствии со случайным полиномомfi, используемым для доказательств с нулевым разглашением (см, например, [Ка14,КУ4] и приложение) делает их совместимыми с любым широковещательным каналом. Моделирующее устройство может всегда сделать это, так как противник имеет не болееtточек полинома степениt+1. Далее моделирующее устройство использует полиномf"для работы несбоящих процессоров, все еще находящихся под его управлением. Можно утверждать, что для противника эти вычисления не отличимы от реальных вычислений. Единственный момент, отличающийся от реальных вычислений, - это тот факт, что доли секрета, которые противник получает до того, как дилер становится нечестным, созданы с использованием другого полинома. Но благодаря свойствам полиномов – это не является проблемой для моделирующего устройства, в том случае, если дилер нечестен. ▄

Лемма 3.4. Пусть функцияhимеет вид

h((s1,...,sn-1),(,...,))=((s,s,...,s,wn),(,...,)).

Тогда hконфиденциально вычислима в отношение секретаs.

Доказательство. Работа моделирующего устройстваMсводится к следующему.

Соседние файлы в папке Казарин О.В. Теория и практика защиты программ