Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Пользователь отсылает серверу зашифрованный бинарный вектор, каждый бит которого — зашифрованный нуль (естественно, с помощью гомоморфного алгоритма), кроме i-го бита.Если шифротекст однозначно соответствует открытому тексту, то сервер увидит n-1 одинаковых шифратов на входе и поймёт, что они соответствуют 0, а оставшийся соответствует 1.
Тогда каждый из избирателей составляет вектор предпочтения — (П1, П2, ..., Пn), где каждое Пi ∈ {0, 1}, после чего шифрует каждый элемент из него и отправляет список зашифрованных нулей и единиц инициатору голосования.Что мешает инициатору расшифровать данные от каждого участника в отдельности и узнать, кто как проголосовал?
На сервере тогда выполняется скалярное умножение полученного вектора на x.Получается, для обработки одного поискового запроса серверу придётся пройтись по всей базе данных?
Области применения гомоморфного шифрования