0Pricing
Cryptology Academy · Урок

SPDZ и арифметический MPC над разделёнными секретами

Выполняйте совместное сложение и умножение целых чисел, разделённых между участниками

«SPDZ и арифметический MPC над разделёнными секретами» — бесплатный урок Cryptology Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cryptology Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cryptology Academy содержит 4 уроков всего.

Арифметические и булевы MPC

Булевы MPC работают с битами (XOR/AND). Арифметические MPC работают с целыми числами или элементами поля, напрямую поддерживая сложение и умножение. Они лучше подходят для приложений машинного обучения и статистики.

Аддитивное распределение секрета над Z_p

Значение x ∈ Z_p распределяется как x = x_1 + x_2 + ... + x_n mod p. Сложение распределённых значений бесплатно: каждая сторона локально складывает свои доли. Обмен данными не требуется.

Тройки умножения Бивера

Чтобы перемножить доли [a] и [b], стороны заранее получают тройку Бивера ([a_t], [b_t], [c_t]), где c_t = a_t·b_t. Для умножения на этапе выполнения требуется один раунд обмена данными.

Обзор протокола SPDZ

SPDZ (Damgård и др., 2012) = «Распределённые вычисления с нулевым разглашением на основе частично гомоморфного шифрования». На автономном этапе с помощью SHE создаются аутентифицированные тройки. Этап выполнения представляет собой быстрое вычисление с аддитивными долями.

Коды аутентификации сообщений в SPDZ

Каждая доля сопровождается MAC: MAC(x_i) = α·x mod p, где α — глобальный секретный ключ. Это не позволяет злоумышленникам незаметно изменить свои доли.

Автономный этап: создание троек

На автономном этапе SPDZ использует частично гомоморфное шифрование (BGV/BFV). Стороны гомоморфно перемножают свои доли, чтобы создать аутентифицированные тройки Бивера. Этот этап требует больших вычислительных ресурсов, но его можно распараллелить.

Этап выполнения: быстрое умножение

Имея тройку ([a],[b],[c]) и входы [x],[y], раскройте d=x-a и e=y-b (значения замаскированы, поэтому информация не утекает). Затем [x·y] = [c] + d·[b] + e·[a] + d·e. Требуется один раунд обмена данными.

MASCOT: автономный этап на основе OT

MASCOT заменяет автономный этап SHE расширением OT и быстрее создаёт тройки для малых полей. Это предпочтительный автономный этап для двухстороннего SPDZ.

Применение SPDZ: конфиденциальная статистика

Несколько больниц вычисляют средний возраст пациентов, не обмениваясь записями. Каждая больница кодирует свои данные в виде арифметических долей. SPDZ вычисляет сумму и количество, а стороны узнают только отношение.

Производительность и масштабируемость

SPDZ-2k (Cramer и др., 2018) расширяет протокол на Z_{2^k} для арифметики с фиксированной точкой, удобной для машинного обучения. Библиотека MP-SPDZ показывает производительность 1 млн умножений в секунду по LAN для 2 сторон.

Проверка знаний

Для чего нужны тройки умножения Бивера в арифметических MPC?

Итоги урока

Арифметические MPC используют аддитивные доли над Z_p. Сложение бесплатно, а для умножения в одном раунде используются тройки Бивера. SPDZ добавляет MAC для защиты от злоумышленников. MASCOT использует OT для быстрого создания троек. MP-SPDZ делает эти методы практически применимыми.

Часто задаваемые вопросы

Урок «SPDZ и арифметический MPC над разделёнными секретами» бесплатный?

Да — полный текст урока «SPDZ и арифметический MPC над разделёнными секретами» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cryptology Academy, подпишись на CoddyKit PRO. Курс Cryptology Academy содержит 4 уроков всего.

Чему я научусь в уроке «SPDZ и арифметический MPC над разделёнными секретами»?

Выполняйте совместное сложение и умножение целых чисел, разделённых между участниками Ты практикуешь Cryptology Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cryptology Academy?

Предыдущий опыт не требуется. Cryptology Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «SPDZ и арифметический MPC над разделёнными секретами»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cryptology Academy?

Да. Каждый урок Cryptology Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Проблема MPC и искажённые схемы Яо
  2. Протокол GMW и забывчивая передача
  3. SPDZ и арифметический MPC над разделёнными секретами
  4. Применение MPC: пересечение частных множеств и машинное обучение
← Назад к Cryptology Academy