- •Конфиденциальные вычисления
- •Водные замечания по проблематике конфиденциальных вычислений
- •Описание используемых примитивов, схем и протоколов
- •Общие определения
- •Проверяемая схема разделения секрета
- •Широковещательный примитив (Br-протокол)
- •Протокол bb
- •Протокол византийского соглашения (ba-протокол)
- •Обобщенные модели для сети синхронно и асинхронно взаимодействующих процессоров
- •Вводные замечания
- •Обобщенные модели сбоев и противника
- •Получестные модели
- •Злонамеренные модели Действия процессоров в злонамеренной модели
- •Вычисления в идеальной модели
- •Вычисления в идеальной модели
- •Вычисления в реальной модели
- •Модель взаимодействия
- •Синхронная модель вычислений Общее описание модели
- •Идеальный и реальный сценарии
- •Асинхронная модель вычислений Общее описание модели
- •Асинхронные идеальный и реальный сценарии
- •Безопасность асинхронных вычислений
- •Конфиденциальное вычисление функции
- •Проверяемые схемы разделения секрета как конфиденциальное вычисление функции
- •Описание проверяемой схемы разделения секрета
- •Протокол РзПр
- •Протокол ВсПр
- •Доказательство безопасности схемы проверяемого разделения секрета
- •Описание работы моделирующего устройства m
- •Синхронные конфиденциальные вычисления
- •Примитив «Забывающий обмен»
- •Протокол отпчм
- •Двухсторонние вычисления Безопасные протоколы для получестной модели
- •Редукция к от41
- •Протокол вычислений на арифметической схеме над gf(2)
- •Редукция к мв
- •Основной результат для злонамеренной модели
- •Многосторонние протоколы Общая идея
- •Получестная модель
- •Конфиденциальное вычисление
- •Многосторонний протокол схемного вычисления
- •Редукция к кВm
- •Основной результат для злонамеренной модели
- •Асинхронные конфиденциальные вычисления
- •Вводные замечания
- •Примитив «Соглашение об аккумулируемом множестве» (соам-субпротокол)
- •Протокол соам
- •Алгоритм звз
- •Процедура скоп
- •Асинхронная схема проверяемого разделения секрета Общие определения
- •Протокол аРзПр
- •Протокол аВсПр
- •Доказательство безопасности схемы апрс
- •Асинхронная схема глобального проверяемого разделения секрета
- •Протокол агРз
- •Протокол агВс
- •Субпротокол агпрс
- •Вычисления на мультипликативном вентиле Вычисления при fs-сбоях
- •Вычисления на линейном вентиле
- •Вычисления на мультипликативном вентиле
- •Протокол мат (XI,a)
- •Субпротокол mul(ai,bi)
- •Основной протокол
- •Протокол авф
- •Вычисления при By-сбоях
- •Процедура соим
- •Протокол соим(Zi)
- •Протокол ByMul
Протокол аРзПр
Вычисления дилера (по входу s):
1. Выбрать случайный полином h(,) степениtот двух переменных такой, чтоh(0,0)=s(Т.е.h(x,y)=, гдеh0,0=sи все другие коэффициентыh0,1,...,ht,tвыбраны однородно и независимо над F). Для каждого 1inпосылает полиномыfi()=h(,i) иgi()=(hi, ) процессоруPi.
Вычисления процессора Pi:
2. После полученияfi() иgi() от дилера и для каждого 1jnпосылаетfi(j) процессоруPj.
3. После получения vi,jот процессораPjпроверяет, еслиvi,j=gi(j), тогда этот процессор распространяет (OK,i,j).
4. После получения (OK,j,k), контролирует существование звезды вOK, используя процедуруЗВЗ, описанную выше. Если звезда (Ci,Di) найдена, переходит к шагу 6 и посылает (Ci,Di) всем процессорам.
5. После получения сообщения (Cj,Dj) добавляет (Cj,Dj) к множеству «предлагаемых звезд». Пока звезда не найдена, всякий раз, когда получено распространяемое сообщение (OK,k,l), проверяет, формируют ли (Cj,Dj) звезду в графе OKi.
6. После нахождения звезды (Ci,Di) и еслиiDiскорректировать полиномgi(), основываясь на сообщении о верификации, полученном от процессоров изDiи с использованием кодовcисправлением ошибок (процедурыСКОП, описанной ниже). А именно, пустьVi={(j,vi,j)jDi}, тогда установить (t,Vi)СКОП=(gi()).
7. Как толькоgi() локально скорректирован, выдаетg(0).
Протокол аВсПр
Вычисления для процессора Pi (по входу i и с параметрами R{P1,...,Pn}).
7. Посылает aiпроцессорам изR.
Пусть Si={(j,aj)ajполучен изPj. ЕслиPiR, заканчивает без выхода. В противном случае установить (t,Si)СКОП=zi() и выдаетzi(0).
Доказательство безопасности схемы апрс
Теорема 3.7.Пара протоколов (АРзПр,АВсПр) являетсяt-устойчивой схемойАПРСв сети изnпроцессоров, еслиn4t+1.
Доказательство.Из определения 3.6 видно, что нам необходимо доказать условия завершения, корректности и конфиденциальности. Начнем с доказательства корректности схемыАПРС.
Корректность.С каждым несбоящим процессоромPi, который завершает протоколАРзПрмы ассоциируем уникальный полиномhi(,) степениtот двух переменных и показываем, что каждые два несбоящих процессораPiиPjимеютhi(,)=hj(,). Затем, мы показываем, что условия 1 и 2 корректности выполняются, относительноr=hi(0,0) (для некоторого несбоящего процессораPi). Кроме того, мы показываем, что выход процессораPiпротоколаАРзПрестьhi(i,0).
Для демонстрации этого мы используем две технических леммы, которые приведем без доказательства [BCG]. В лемме 3.5 показывается, что если 4t+1 долей несбоящих процессоров, находящихся в звезде в графеОKопределяют единственный полином степениtот двух переменных. Лемма 3.6 демонстрирует тот факт, что полиномы индуцированные звездами каждой из двух процессоров одинаковы. Таким образом, только несбоящий процессор находит звезду, и, следовательно, секрет определяется единственным образом.
Лемма 3.5.Пустьmd+1, и пустьf1(),...,fm() иg1(),...,gm() - полиномы степениdнад полемFсFmтакие, что для каждого 1id+1 и каждого 1jmмы имеемfi(j)=gj(i) иgi(j)=fj(i). Тогда существует единственный полиномh(,) степениdот двух переменных такой, что для каждого 1imмы имеемh(,i)=fi() иh(i,)=gi().
Лемма 3.6.Пустьh(,),h(,) – два полинома степениdот двух переменных над полемFсFdи пустьv1,...,vd+1- различные элементы вF. Предположим, что для каждого 1i,jd+1 мы имеемh(vi,vj)=h(vi,vj). Тогдаh(,)=h(,).
Далее, пусть Pi– несбоящий процессор, который завершил протоколАРзПри пусть (Ci,Di) - звезда, найденная процессоромPi. ПустьDi- множество несбоящих процессоров вDiпустьCi- множество несбоящих процессоров вCiи, таким образом,DiDi-tn-2tиCiCi-tn-3tt+1 (так как 4t+1). В соответствии с леммой 3.5 полиномыfj(),gj() процессоровjDiопределяют единственный полином степениtот двух переменных. Пустьhi(,) обозначает этот полином. А именно,hi(,) - полином, ассоциированный сPi. Отметим также, чтоhi(,) фиксирован, как толькоPiзавершает протоколАРзПр. Для каждого другого несбоящего процессораPjпустьIi,j- множество несбоящих процессоров изDiDj. Так какn4t+1, мы имеемDiDjn-2t2t+1 и, таким образом,Ii,jt+1. Для каждых двух процессоровk,lIi,j, мы имеемhi(k,l)=vk,l=hj(k,l), гдеvk,l– верификационная часть, посланнаяPkкPlна шаге 2 протоколаАРзПр. Применяя результаты леммы 3.6, мы имеемhi(,)=hj(,). Значениеr, требуемое в условии корректности, является равнымhi(0,0).
Мы утверждаем, что условие 1 (а именно, что если дилер честен и выдает значение s, тоr=s). Если дилер честен и он выбрал полиномh(,) на шаге 1, тогда для каждых двух процессоровPk,PlDiмы имеемhi(k,l)=h(k,l). В соответствии с леммой 3.6 мы снова можем получитьhi(,)=h(,). Далее нижний индекс в полиномеh(,) опускается.
Далее мы показываем, что выход каждого несбоящего процессора PiпротоколаАРзПрестьh(i,0). Полиномh(i,) - интерполируемый полином аккумулируемого множестваUiпроцессораPiна шаге 6. Следовательно, выход процедурыСКОПна шаге 6 будетh(i,) и выход протоколаАРзПрбудетh(i,0).
В заключение мы показываем, как выполняется условие 2 (а именно, что выход PiпротоколаАВсПрестьr). Каждый несбоящий процессорPjраспространяетh(j,0) на шаге 7 и, таким образом,h(,0) - интерполируемый полином аккумулируемого множестваUiпроцессораPiна шаге 8. Следовательно, выход процедурыСКОПна шаге 8 будетh(,0) и выход протоколаАВсПрбудетh(0,0)=r.
Завершение.Условие 1. Если дилер честен, то для каждых двух несбоящих процессоровPjиPk, оба сообщения (ОК,j,k) и (ОК,k,j) будут распространены так какfj(k)=h(k,j)=gk(j) иgj(k)=h(j,k)=fk(j). Таким образом, каждый несбоящий процессорPiбудет в конечном счете иметь клику размераn-tв графеOKi. Поэтому процедураЗВЗбудет находить звезду вOKiи шаг 4 будет завершен. Шаг 6 будет завершен, так как вход процедурыСКОП(а именно, аккумулируемое множествоUi, которое базируется на звезде, найденной на шагах 4 или 5) - событийно (t,t)-интерполируем.
Условие 2. Пусть Pi– несбоящий процессор, который завершил протоколАРзПри пусть (Ci,Di) - звезда, найденная процессоромPi. Тогда (Ci,Di) будет в конечном счете звездой в графеOKjдля каждого несбоящего процессораPj, даже еслиPjне завершил протоколАРзПр. Кроме того, процессорPjполучит (Ci,Di) сообщение (посланноеPiна шаге 4), и будет проверять на шаге 5, что множества (Ci,Di) формируют звезду вOKj. После нахождения звезды процессорPjвыполнит шаг 6 и завершит протоколАРзПр.
Условие 3. Если все несбоящие процессоры начали выполнять протокол АВсПр, тогда аккумулируемое множествоSiна шаге 8 для каждого несбоящего процессораPi, событийно (t,t)-интерполируемо. Таким образом, все несбоящие процессоры завершат процедуруСКОПи протоколАВсПр.
Конфиденциальность.Мы используем следующую систему обозначения. Для значенияvпустьHvобозначает множество полиномов степениtот двух переменных со свободным коэффициентомv. Будем говорить, что последовательностьf1(),...,ft(),g1(),...,gt() полиномовчередуемы, если для каждых 1i,jtмы имеемfi(j)=gj(i). ПустьIобозначает множество чередуемых последовательностей 2tполиномов степениt.
Лемма 3.7.ПустьF– поле сFdи пустьsF. Тогда для каждой чередуемой последовательностиf1(),...,fd(),g1(),...,gd() вIсуществует единственный полиномh(,)Hsтакой, что для каждого 1idмы имеемh(,i)=fi() иh(i,)=gi().
Доказательство.См. работу [BCG].
Далее предположим, что дилер честен и пусть s– разделяемое значение. Тогда дилер имеет на шаге 1 протоколаАРзПрполиномh(,) с равномерным распределением вероятностей надHs. Кроме того, вся необходимая информация о множестве изtпроцессоров, полученная во время выполнения протоколаАРзПр, является чередуемой последовательностьюf1(),...,ft(),g1(),...,gt() вIтакой, что для каждого 1itмы имеемh(,i)=fi() иh(i,)=gi().
Из леммы 3.7 следует, что для каждого разделяемого значения sFэто соответствие между полиномами вHsи чередуемыми последовательностями в I– является взаимнооднозначным. Следовательно, равномерное распределение над полиномами изHsиндуцирует равномерное распределение вероятностей над чередуемыми последовательностями вI.