Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 30 сентября 2017 года; проверки требуют 12 правок.
Текущая версия страницы пока не проверялась опытными участниками и может значительно отличаться от версии, проверенной 30 сентября 2017 года; проверки требуют 12 правок.
Схема является аддитивнойгомоморфной криптосистемой, то есть зная только открытый ключ и шифротексты, соответствующие открытым текстам и , мы можем вычислить шифротекст открытого текста .[2]
Алгоритм был впервые предложен Паскалем Пэйе в его статье в 1999 году[3]. В работе было описано предположение о сложности вычисления корня остатка от деления по модулю и предложен соответствующий механизм использования этой математической проблемы в криптографических целях. В оригинальной статье отмечается, что криптосистема может быть уязвима для атак на основе подобранного шифротекста, однако уже в 2001 году было показано, что при небольшом изменении оригинальной схемы криптосистема перестает быть уязвимой для такого рода атак[4]. В 2006 году был предложен метод увеличения эффективности и безопасности криптосистемы Пэйе, основанный на верифицируемых перестановках[5].
Отличительной особенностью криптосистемы Пэйе является её гомоморфность. Так как функция шифрования является аддитивно гомоморфной, могут быть записаны следующие тождества[2]:
Гомоморфное сложение открытых текстов
Произведение двух шифротекстов будет расшифровано как сумма соответствующих их открытых текстов,
Умножив шифротекст на мы получим сумму соответствующих открытых текстов,
Гомоморфное умножение открытых текстов
Шифротекст, возведенный в степень, равную другому шифротексту, будет расшифрован как произведение двух открытых текстов,
В общем случае, возведение шифротекста в степень , будет расшифровано как произведение исходного текста на ,
В 2001 году Иван Дамгард и Мадс Юрик предложили обобщение[6] криптосистемы Пэйе. Для этого предлагается вести вычисления по модулю , где , - натуральное число. Измененный алгоритм выглядит следующим образом:
Используя криптосистему Пэйе можно организовать выборы между несколькими кандидатами, используя следующую схему:
[7][8]
Пусть — число избирателей и такое, что .
Если избиратель хочет проголосовать за кандидата номер , то он шифрует число и передает полученный шифротекст координатору выборов.
При подведении итогов выборов координатор дешифрует произведение всех шифротекстов, полученных от избирателей. Несложно заметить, что первые бит результата будут давать число голосов, отданных за первого кандидата, вторые бит будут давать число голосов, отданных за второго кандидата, и так далее.
При помощи криптосистемы Пэйе можно организовать проведение электронной лотереи следующим образом:[7][8]
Пусть игроков хотят поучаствовать в лотерее, каждый имеет свой лотерейный билет с уникальным номером .
Каждый игрок выбирает случайное число, шифрует и передает организатору лотереи.
Для того чтобы вычислить «счастливый» билет, организатор дешифрует произведение всех полученных шифротекстов, получая при этом сумму случайных чисел, сгенерированных игроками. Организатор лотереи объявляет победителем билет с номером .
Несложно заметить, что у всех участников вероятности выигрыша будут равны даже если игроков попытаются сфальсифицировать итог лотереи, отправив организатору заранее подготовленные числа.
Еще одной отличительной особенностью криптосистемы Пэйе является так называемое самоослепление. Под этим термином понимают способность изменения шифротекста без изменения открытого текста. Это может быть использовано при разработке систем электронной валюты, например таких как ecash. Допустим, вы хотите оплатить товар онлайн, но не хотите сообщать продавцу номер своей кредитной карты, и, следовательно, свою личность. Как и в случае с электронным голосованием, мы можем проверить правильность электронной монеты (или электронного голоса), не раскрывая при этом личность человека, с которым сейчас она связана.