Протокол конфиденциальных вычислений
Протоко́л конфиденциа́льных вычисле́ний, криптографический протокол, представляющий собой распределённый алгоритм с двумя или более участниками, позволяющий вычислить значение некоторой функции от конфиденциальных данных таким образом, чтобы все участники протокола узнали результат вычисления, но никакая коалиция из не более чем участников не получила бы в результате выполнения протокола никакой информации о входных данных других участников сверх того, что можно извлечь из полученного всеми участниками результата вычисления и входных данных этой коалиции.
Такая схема вычислений также называется пороговой, а число называется порогом этой схемы. В случае двух участников этот порог не может быть больше Существуют и другие постановки задачи. В частности, требуется, чтобы значение вычисляемой функции стало известным лишь участникам из заранее заданного множества. Известны также различные варианты модели в зависимости от предположений о сети связи: защищённые или незащищённые каналы, синхронный или асинхронный случай обмена данными и т. д.
Впервые задача конфиденциальных вычислений была сформулирована Эндрю Яо Цичжи (Yao. 1982) для двух участников. Рассматривалась следующая задача: два миллионера, Алиса и Боб, хотят выяснить, кто из них богаче, при этом они не хотят разглашать точную сумму своего благосостояния. Яо Цичжи также предложил (Yao. 1986) оригинальный способ решения этой задачи. Однако лишь через 20 лет, в 2004 г., Йехуда Линделл и Бенни Пинкас предоставили математически строгое доказательство корректности протокола Яо Цичжи (Lindell. 2009). Казалось бы, что после появления работы К. Джентри (Gentry C. Fully homomorphic encryption using ideal lattices // Proceedings of the 41st Annual ACM Symposium on Theory of Computing. New York, 2009) о возможности построения полностью гомоморфного шифрования было найдено решение задачи построения конфиденциальных вычислений на облаке. Но как показано в работе Мартена ван Дейка (Van Dijk), в случае когда облако работает в режиме базы данных как услуги (англ. Database as a Service – DBAAS), конфиденциальность гомоморфного вычисления невозможна даже в случае двух участников. В связи с этим результатом возник вопрос: в каких случаях, точнее моделях, такие вычисления возможны? Вероятные ответы на этот вопрос имеются в работах (Пороговые системы гомоморфного шифрования ... 2015), (Multiparty computation ... 2012), (Варновский. 2016), (О возможности стойкой обфускации программ ... 2019), (Secure multiparty computation goes life. 2009), (Goldreich. 1987), (A practical implementation ... 2006), (Fairplay – a secure two‐party computation system. 2004), (Ben‐David. 2008).