Пусть k
- фиксированное целое и пусть b1,b2,...,bkÎ{0,1} и iÎ{1,...,k}.
Тогда забывающий обмен OTk1
определяется как функциональная зависимость:
OTk1((b1,b2,...,bk),i)=(l,bi).
Эта вычислимая функция является в явном виде асимметричной и реализуется посредством протокола взаимодействия двух участников (процессоров). Обычно первый процессор, который содержит вход (b1,b2,...,bk), называется отправителем (илиS), а второй процессор, который содержит вход iÎ{1,...,k}, называется получателем (или R).
Интуитивно, цель забывающего обмена состоит в том, чтобы для отправителя обменяться i-тым битом с получателем так, чтобы не позволить последнему получить какую-либо информацию относительно значения любого другого своего бита и так, чтобы не позволить отправителю получить какую-либо информацию о бите, который был затребован получателем.
С использованием любой перестановки с секретом {fi}iÎI (см. Приложение), ниже описывается протокол для конфиденциально вычисления OTk1. Так как мы имеем дело с конечными вычислимыми функциями, безопасность будет рассматриваться в терминах некоторого дополнительного параметра n, именуемого далее параметром безопасности.
Протокол ОТПЧМ
Вход:
Отправитель R
имеет вход b1,b2,...,bkÎ{0,1}k, а получатель S имеет вход iÎ{1,...,k} и обе стороны имеют дополнительный параметр безопасности 1n.
1. Отправитель S равномерно выбирает пару односторонних функций с секретом (a,t) (см. Приложение), выполняя алгоритм их генерации G по входу 1n. Параметр a отсылается R.
2. Получатель R равномерно и независимо выбирает e1,...,ekÎR*Da, устанавливает yi=f(ei) и yj=ej для каждого j¹i и отсылает (y1,y2,...,yk) к отправителю S. Для этого:
2.1. Равномерно и независимо выбирает ejÎR*Da каждый раз, вызывая алгоритм генерации ej=D(a,rj), rjÎR*Z, j=1,...,k.