- •Конфиденциальные вычисления
- •Водные замечания по проблематике конфиденциальных вычислений
- •Описание используемых примитивов, схем и протоколов
- •Общие определения
- •Проверяемая схема разделения секрета
- •Широковещательный примитив (Br-протокол)
- •Протокол bb
- •Протокол византийского соглашения (ba-протокол)
- •Обобщенные модели для сети синхронно и асинхронно взаимодействующих процессоров
- •Вводные замечания
- •Обобщенные модели сбоев и противника
- •Получестные модели
- •Злонамеренные модели Действия процессоров в злонамеренной модели
- •Вычисления в идеальной модели
- •Вычисления в идеальной модели
- •Вычисления в реальной модели
- •Модель взаимодействия
- •Синхронная модель вычислений Общее описание модели
- •Идеальный и реальный сценарии
- •Асинхронная модель вычислений Общее описание модели
- •Асинхронные идеальный и реальный сценарии
- •Безопасность асинхронных вычислений
- •Конфиденциальное вычисление функции
- •Проверяемые схемы разделения секрета как конфиденциальное вычисление функции
- •Описание проверяемой схемы разделения секрета
- •Протокол РзПр
- •Протокол ВсПр
- •Доказательство безопасности схемы проверяемого разделения секрета
- •Описание работы моделирующего устройства m
- •Синхронные конфиденциальные вычисления
- •Примитив «Забывающий обмен»
- •Протокол отпчм
- •Двухсторонние вычисления Безопасные протоколы для получестной модели
- •Редукция к от41
- •Протокол вычислений на арифметической схеме над gf(2)
- •Редукция к мв
- •Основной результат для злонамеренной модели
- •Многосторонние протоколы Общая идея
- •Получестная модель
- •Конфиденциальное вычисление
- •Многосторонний протокол схемного вычисления
- •Редукция к кВm
- •Основной результат для злонамеренной модели
- •Асинхронные конфиденциальные вычисления
- •Вводные замечания
- •Примитив «Соглашение об аккумулируемом множестве» (соам-субпротокол)
- •Протокол соам
- •Алгоритм звз
- •Процедура скоп
- •Асинхронная схема проверяемого разделения секрета Общие определения
- •Протокол аРзПр
- •Протокол аВсПр
- •Доказательство безопасности схемы апрс
- •Асинхронная схема глобального проверяемого разделения секрета
- •Протокол агРз
- •Протокол агВс
- •Субпротокол агпрс
- •Вычисления на мультипликативном вентиле Вычисления при fs-сбоях
- •Вычисления на линейном вентиле
- •Вычисления на мультипликативном вентиле
- •Протокол мат (XI,a)
- •Субпротокол mul(ai,bi)
- •Основной протокол
- •Протокол авф
- •Вычисления при By-сбоях
- •Процедура соим
- •Протокол соим(Zi)
- •Протокол ByMul
Редукция к мв
Вход.Процессорiсодержит строку битовxi1...xin{0,1}n,i=1,2.
1. Разделение входов. Каждый процессор делит каждый из своих входных битов с другим процессором. То есть для каждогоi=1,2 иj=1,...,nпроцессорiравномерно выбирает битrijи посылает его другому процессору, как долю входной линии (с нумерацией ((i-1)n+j) последнего. Процессорiустанавливает свою собственную долю на входной линии с нумерацией (i-1)n+jв значениеxij+rij.
2. Эмуляция схемы. Следуя нумерации линий, процессоры используют свои доли двух входных линий схемы, чтобы конфиденциально вычислить доли для выходной линии вентиля.
Предположим, что процессоры имеют общие две входные линии вентиля, то есть процессор 1 содержит доли a1,b1, а процессор 2 содержит долиa2,b2, гдеa1,a2- доли на первой линии иb1,b2- доли на второй линии. Рассмотрим два случая.
2.1. Эмуляция аддитивного вентиля.Процессор 1 только устанавливают долю выходной линии вентиля в значениеa1+b1, а процессор 2 устанавливают долю выходной линии вентиля в значениеa2+b2.
2.2. Эмуляция мультипликативного вентиля. Доли выходной линии вентиля получаются посредством вызова оракула для вычисления функции (см.(3.1)-(3.2)), где процессор 1 обеспечивает вход (часть запроса) (a1,b1), а процессор 2 обеспечивает вход (a2,b2). После ответов оракула, каждый из процессоров устанавливают свою долю выходной линии вентиля в значение равное своей части ответа оракула.
3. Восстановление выходных битов. Как только доли выходных линий схемы вычислены, каждый процессор посылает долю с каждой из таких линий процессору, с которым линия связана. То есть доли на последнихnлиниях посылаются процессором 1 процессору 2, в то время как долиnпредшествующих линий посылаются процессором 2 процессору 1. Каждый из процессоров восстанавливает соответствующие выходные биты, складывая две доли; то есть доли, которую он получил на шаге 2 и доли, полученной на текущем шаге.
Выход.Каждый процессор локально выдает биты, восстановленные на шаге 3.
Сначала необходимо проверить, что выходы действительно корректны. Это можно сделать методом индукции, которая состоит в том, что значение доли каждой линии прибавляется к корректному значению на линии. Базис индукции – номер входной линии схемы. А, именно, ((i-1)n+j)-тая линия имеет значениеxijи ее доли -rijиrij+xij. На каждом шаге индукции рассматривается эмуляция аддитивного или мультипликативного вентиля. Предположим, что значения входных линий –aиbи что их долиa1,a2иb1,b2, которые удовлетворяютa1+a2=aиb1+b2=b. В случае аддитивного вентиля доли на выходной линии устанавливаются в значенияa1+b1иa2+b2, что удовлетворяет (a1+b1)+(a2+b2)=(a1+a2)+(b1+b2)=a+b. В случае мультипликативного вентиля доли выходной линии были устанавливаются в значенияc1иc2так, чтоc1+c2=(a1+a2)(b1+b2). Таким образом,c1+c2=ab, что и требовалось показать.
В работе [Go2] приводятся формальные аргументы для конфиденциального сведения вычисления на арифметической схеме надGF(2) к функции, вычислимой в соответствии с уравнениями (3.1)-(3.2). А следующая теорема, устанавливает главный результат для конфиденциального вычисления любой вычислимой функции для случая двухстороннего протокола взаимодействия.
Теорема 3.2.Предположим, что односторонние перестановки с секретом существуют. Тогда любая вычислимая функция для получестной модели конфиденциально вычислима.