Существует множество сценариев, в которых асимметричное шифрование невозможно заменить гибридным шифрованием. На высоком уровне общей чертой этих сценариев является то, что они используют некоторые алгебраические свойства схемы асимметричного шифрования, которые могут быть нарушены методом гибридного шифрования. Обычно это происходит, когда мы не хотим общаться данные, но также хотят манипулировать им в режиме сохранения конфиденциальности.
Два наиболее распространенных способа использования алгебраических свойств схем асимметричного шифрования:
- Гомоморфизм: даны два зашифрованных текста $\mathsf{Enc}(m_0)$ и $\mathsf{Enc}(m_1)$, их можно растерзать в шифротекст $\mathsf{Enc}(m_0 \boxplus m_1)$, куда $\боксплюс$ это некоторая операция (например, сложение или умножение).
- Дружественность к доказательству: существуют эффективные доказательства с нулевым разглашением для доказательства утверждений формы "$с$ это шифрование сообщения $м$ куда $м$ удовлетворяет некоторому заданному свойству»
Позвольте мне проиллюстрировать оба с игрушечным сценарием. Предположим, мы хотим провести голосование между двумя кандидатами, $C_0$ и $C_1$, и здесь $n$ избиратели $V_1, \cdots, V_n$. Мы хотим узнать результат голосования, не раскрывая отдельных голосов. Возможное (упрощенное) решение таково: каждый избиратель $V_i$ шифрует свой голос, что либо $0$ (если $V_i$ голосует за $C_0$) или же $1$ (еще). позволь мне позвонить $(E_1,\cdots,E_n)$ зашифрованные голоса. Заметьте, что мы хотим знать следующее: какова сумма значений открытого текста? Результат разделить на $n$ соответствует доле голосов, $C_1$ получил; если это больше, чем $50\%$, они выигрывают выборы.
Я предполагаю, что схема шифрования аддитивно гомоморфный: из шифровок $m_0$ и $m_1$, можно гомоморфно вычислить шифрование суммы $m_0+m_1$ (более формально нам также необходимо техническое требование, называемое функциональной конфиденциальностью: результирующий зашифрованный текст не должен пропускать больше информации, чем эта сумма).
У нас будет две сущности: агрегатор и дешифратор. Агрегатор принимает зашифрованные тексты $E_1, \cdotsE_n$, гомоморфно просуммировав их, получим шифрование $Е$ результатов и отправляет их дешифратору. Дешифратор имеет секретный ключ и публикует результат выборов.
Но подождите, есть проблемы! Что, если дешифратор солжет о расшифрованных значениях? Что, если $V_i$ шифрует, скажем, $18$ вместо $0$ или же $1$? Это эффективно добавит $18$ голосует за $C_1$. Не вдаваясь в подробности, у криптографии есть методы для решения этой проблемы, называемые доказательства с нулевым разглашением, которые позволяют добавить доказательство к объекту (например, зашифрованному тексту), чтобы гарантировать, что он удовлетворяет определенному свойству, не ставя под угрозу его конфиденциальность. Здесь каждый $V_i$ мог бы добавить доказательство того, что $E_i$ действительно шифрует бит (не раскрывая какой), и дешифратор также может отправить доказательство того, что $Е$ действительно расшифровывает правильный результат (без раскрытия секретного ключа дешифрования).
Как видно из вышеприведенного, при наличии схемы шифрования с (1) аддитивным гомоморфизмом и (2) возможностью выполнения доказательств с нулевым разглашением мы можем создавать интересные приложения — например, голосование. Вы можете легко убедиться, что гибридное шифрование нарушает гомоморфизм в целом, и если вы немного знакомы с доказательством с нулевым разглашением, вы также заметите, что гибридное шифрование сделает их крайне неэффективными.
Я мог бы перечислить множество других примеров в том же духе, что и выше: электронные деньги, электронные аукционы, анонимные учетные данные и многое другое. Их объединяет то, что мы хотим делать больше, чем просто передавать данные: мы хотим манипулировать ими, что требует некоторой гибкости, и мы хотим делать это безопасно, что требует возможности проверки того, что были выполнены только авторизованные манипуляции. Оба требуют специального асимметричного шифрования с соответствующими свойствами.