Скачиваний:
180
Добавлен:
02.05.2014
Размер:
891.9 Кб
Скачать

Асинхронная схема глобального проверяемого разделения секрета

Протокол асинхронного глобального проверяемого разделения секрета, обозначаемый как АГРз, состоит из двух этапов. Сначала, каждый процессор делит секрет среди других процессоров, а затем процессоры используют протоколСОАМ, чтобы договориться о множествеСразмером не менее чем изn-tпроцессоров, которые успешно разделили свои секреты. Выход процессораPiв протоколеАГРз– это множество процессоров, которые успешно разделили свои входы, вместе сi-той долей входа каждого процессора в этом множестве. ПротоколАГРзимеет параметр безопасностиd. Исходя из контекста, этот параметр будет устанавливаться либо вt, либо в 2t.

Протокол агРз

Код для процессора Pi по входу xi, d.

1. Осуществить разделение xi:

1.1. Выбрать случайным образом полином hi() степениdтакой, чтоhi(0)=xi.

1.2. Для каждого 1jnпослатьhi(j) процессоруPj.

1.3. Разослать сообщение «Сторона Piзавершила разделение».

2. После получения доли si,jсекрета процессораPjи сообщения «СторонаPjзавершила разделение» добавитьjк множествуCiпроцессоров, которые успешно разделили свои секреты. Установить (n,t,Ci)СОАМ=С.

3. Подать на выход Cи {si,jjC}.

Необходимо отметить, что аккумулируемые множества C1,...,Cnна шаге 2 определяют (n-t,t)-однородную коллекцию. Таким образом, все несбоящие процессоры завершают протоколСОАМ(и, следовательно, завершают протоколАПРз) с желаемым выходом. Кроме того, сбоящие процессоры не получают информацию о значениях, разделенных несбоящими процессорами.

В протоколе АГВс, описываемом ниже процессоры восстанавливают секрет из долей. Параметры этого протокола – параметр безопасностиdи множествоRпроцессоров, для которого секрет может быть вскрыт. Вход процессораPiявляетсяi-той долей секрета, обозначаемой какsi.

Протокол агВс

Код для процессора Pi по входу si и параметрам d{t,2t} и R{P1,...,Pn}.

1. Послать siвсем процессорам изR.

2. Если процессор PiR, подать на выход 0. В противном случае после полученияd+1 значений (значениеvjот процессораPj) интерполировать полиномpi() степениdтакой, чтоp(j)=vjдля каждого полученного значенияvj. Подать на выходpi(0).

Асинхронная схема глобального проверяемого разделения секрета (АГПРС), описанная ниже, является обобщением предыдущей схемы для случаяBy-сбоев. Схема состоит из двух этапов: сначала, каждый процессор разделяет вход, используя протоколАРзПрсхемыАПРС, а затем процессоры используют субпротоколСОАМдля того, чтобы договориться о множествеCне менее чемn-tпроцессорами, которые объединили свои входы. Выход процессораPiв субпротоколеАГПРСи есть это множествоCиi-тая доля каждого секрета включена процессоромPiвC. В данном протоколе параметр безопасности фиксирован:d=t.

Субпротокол агпрс

Код для процессора Pi по входу xi.

1. Инициировать АРзПр(xi) сPiв качестве дилера. Для 1jnучаствовать в протоколе вАРзПрj. Пустьvj– есть выходАРзПрj.

2. Пусть Ui={jАРзПрjбыл завершен}. МножествоCвычислить как: (n,t,Ui)СОАМ=С.

3. Как только множество Cвычислено, подать на выход (C,vjjC).

      1. Вычисления на мультипликативном вентиле Вычисления при fs-сбоях

В данном разделе показывается, как надежно при наличии FS-сбояхt-вычислить любую функцию, вход которой разделен междуnпроцессорами, когдаn3t+1.

Пусть F– конечное поле, известное всем процессорам иF>n. Пусть такжеf:FnF- вычислимая функция. Предположим, что процессоры имеют арифметическую схему, вычисляющую функциюf. Схема состоит из вентилей сложения и умножения степени 2. Добавление константы рассматривается как частный случай сложения. Все вычисления в выполняются в полеF.

Общее описание протокола выглядит следующим образом [BCG]. Пустьxi- вход процессора Pi. На первом шаге каждый процессор разделяет вход среди других процессоров, используя, например, схему разделения секрета Шамира (см. выше). А именно, для каждого процессораPi, который успешно разделил свой вход, случайным образом генерируется полиномpi() степени t, сгенерирован такой, что каждый процессорPjимеетpi(j) иpi(0) - значение входа процессорPi. Будем говорить, чтоpi(j) - доляpi(0) процессораPi. Затем, стороны договариваются, используя протоколСОАМ,о множествеСпроцессоров, которые успешно разделили свои входы. Как толькоCвычислено, процессоры начинают вычислятьfC(), следующим образом. Сначала, входные значения процессоров не принадлежащиеC– устанавливаются в некоторое значение по умолчанию, скажем в 0. Затем процессоры вычисляют данную схему, вентиль за вентилем способом, описанном ниже. Заметим, что выход протокола будет зафиксирован, как только множествоCзафиксировано.

Для каждого вентиля процессоры используют свои доли входных линий для совместного и безопасного «генерирования» случайного полинома p() степениt, такого, что каждый процессорPiвычисляетp(i) иp(0) - является выходным значением этого вентиля. А именно,p(i) - доля процессораPiна выходной линии этого вентиля. Как только процессоры вычислили свои доли на выходных линиях всей схемы, процессоры восстанавливают свои доли на выходной линии и интерполируют выходное значение.

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