- •Конфиденциальные вычисления
- •Водные замечания по проблематике конфиденциальных вычислений
- •Описание используемых примитивов, схем и протоколов
- •Общие определения
- •Проверяемая схема разделения секрета
- •Широковещательный примитив (Br-протокол)
- •Протокол bb
- •Протокол византийского соглашения (ba-протокол)
- •Обобщенные модели для сети синхронно и асинхронно взаимодействующих процессоров
- •Вводные замечания
- •Обобщенные модели сбоев и противника
- •Получестные модели
- •Злонамеренные модели Действия процессоров в злонамеренной модели
- •Вычисления в идеальной модели
- •Вычисления в идеальной модели
- •Вычисления в реальной модели
- •Модель взаимодействия
- •Синхронная модель вычислений Общее описание модели
- •Идеальный и реальный сценарии
- •Асинхронная модель вычислений Общее описание модели
- •Асинхронные идеальный и реальный сценарии
- •Безопасность асинхронных вычислений
- •Конфиденциальное вычисление функции
- •Проверяемые схемы разделения секрета как конфиденциальное вычисление функции
- •Описание проверяемой схемы разделения секрета
- •Протокол РзПр
- •Протокол ВсПр
- •Доказательство безопасности схемы проверяемого разделения секрета
- •Описание работы моделирующего устройства m
- •Синхронные конфиденциальные вычисления
- •Примитив «Забывающий обмен»
- •Протокол отпчм
- •Двухсторонние вычисления Безопасные протоколы для получестной модели
- •Редукция к от41
- •Протокол вычислений на арифметической схеме над gf(2)
- •Редукция к мв
- •Основной результат для злонамеренной модели
- •Многосторонние протоколы Общая идея
- •Получестная модель
- •Конфиденциальное вычисление
- •Многосторонний протокол схемного вычисления
- •Редукция к кВm
- •Основной результат для злонамеренной модели
- •Асинхронные конфиденциальные вычисления
- •Вводные замечания
- •Примитив «Соглашение об аккумулируемом множестве» (соам-субпротокол)
- •Протокол соам
- •Алгоритм звз
- •Процедура скоп
- •Асинхронная схема проверяемого разделения секрета Общие определения
- •Протокол аРзПр
- •Протокол аВсПр
- •Доказательство безопасности схемы апрс
- •Асинхронная схема глобального проверяемого разделения секрета
- •Протокол агРз
- •Протокол агВс
- •Субпротокол агпрс
- •Вычисления на мультипликативном вентиле Вычисления при fs-сбоях
- •Вычисления на линейном вентиле
- •Вычисления на мультипликативном вентиле
- •Протокол мат (XI,a)
- •Субпротокол mul(ai,bi)
- •Основной протокол
- •Протокол авф
- •Вычисления при By-сбоях
- •Процедура соим
- •Протокол соим(Zi)
- •Протокол ByMul
Протокол отпчм
Вход:ОтправительRимеет входb1,b2,...,bk{0,1}k, а получательS имеет входi{1,...,k} и обе стороны имеют дополнительный параметр безопасности 1n.
1. Отправитель Sравномерно выбирает паруодносторонних функций с секретом(,t) (см. Приложение), выполняя алгоритм их генерацииGпо входу 1n. Параметр отсылаетсяR.
2. Получатель Rравномерно и независимо выбираетe1,...,ekR*D, устанавливаетyi=f(ei) иyj=ejдля каждогоjiи отсылает (y1,y2,...,yk) к отправителюS. Для этого:
2.1. Равномерно и независимо выбирает ejR*Dкаждый раз, вызывая алгоритм генерацииej=D(,rj),rjR*Z,j=1,...,k.
2.2. Вычисляетyi=f(ei).
2.3. Для jiприсваиваетyj=ej.
2.4. Получатель Rотсылает (y1,y2,...,yk) к отправителюS. Таким образом, получатель знаетf-1(yi)=ei, однако не может предсказатьb(f-1(yi)) дляji.
3. После получения (y1,y2,...,yk), используя знание секрета для инвертирования односторонней функции с секретом, отправительSвычисляетxj=f-1(yj) дляj{1,...,k}. В свою очередь,Sпосылает (b1b(x1),b2b(x2),...,bkb(xk)) получателюR.
4. По получении (c1,c2,...,ck) получатель локально выдаетcib(ei).
Отметим сначала, что вышеупомянутый протокол корректно вычисляет OTk1так как
cib(ei)=bib(xi))b(ei)=bib(f-1(f(ei)))b(ei)=bi.
Аргументы для доказательства того, что протокол действительно конфиденциально вычисляет OTk1 следующие. Интуитивно, отправительSне получает никакой информации при выполнении протокола, так как для любого возможного значенияiвсе потенциальные отправители «видят» одно и то же распределение равномерно и независимо выбранных элементов изD.
Интуитивно, получатель Rне получает никакой (с вычислительной точки зрения) информации при выполнении протокола, так как дляji, единственные данные, которые могут «говорить» оbj– это кортеж (,ej,bj(f-1(ej))), из которого невозможно предсказатьbjлучше, чем простым угадыванием.
Формальные аргументы даны в работе [Go1].
Двухсторонние вычисления Безопасные протоколы для получестной модели
В этом подразделе описывается метод построения протоколов конфиденциального вычисления любой заданной вычислимой функции. Конструкция представляет собой булеву схему для реализации заданной функции, вычисления в которой выполняются в соответствии с протоколом. Конструкция носит модульный характер.
Сначала определяется соответствующее понятие редукциии показывается, как получить протокол для конфиденциального вычисления функцииgпо данной редукции (конфиденциально вычислимой) функцииgк (конфиденциально вычислимой) функцииfвместе с протоколом для конфиденциального вычисленияf. В частности мы сводим конфиденциальное вычисление обобщенных вычислимых функций к конфиденциальному вычислению детерминированных вычислимых функций.
Затем, без потери общности, рассматриваются булевы схемы с логическими вентилями andиxorс коэффициентом объединения по входу равным 2. В общем случае можно представить следующий сценарий. Первый процессор «содержит» параметрыa1,b1, а второй процессор -a2,b2, гдеa1+a2- значение одной входной линии иb1+b2- значение другой входной линии. Необходимо обеспечить каждый из процессоров «случайной» долей значения выходной линии, то есть долей значения (a1+a2)(b1+b2). Другими словами нас интересует конфиденциальное вычисление следующей рандомизированной вычислимой функции:
((a1,b1),(a2,b2))(c1,c2), (3.1)
где c1+c2=(a1+a2) (b1+b2). (3.2)
То есть значения (с1,с2) равномерно выбраны среди всех решенийc1+c2=(a1+a2)(b1+b2). Вышеупомянутая вычислимая функция имеет конечную область значений и может быть вычислена (в общем случае) сведением к одному из вариантов забывающего обмена (OT). Ниже показывается, как это может быть сделано при условии существования односторонней перестановки с секретом (см. Приложение).
Конфиденциальное вычисление c1+c2
Теперь мы непосредственно обращаемся к вычислимой функции, определенной в равенствах (3.1)-(3.2). Все арифметические операции выполняются в поле GF(2). Ниже приводится алгоритм редукции (конфиденциальным образом) этой вычислимой функции к вычислениюOT41.