Что такое Secure Multiparty Computation (MPC)?
Secure Multiparty Computation это способ, при котором несколько участников совместно вычисляют некоторое значение, не раскрывая свои отдельные входные данные. Каждый вносит вклад, никто не подсматривает, и в итоге безопасно появляется результат. Представьте друзей, которые делят счёт за ужин: приложение подсказывает, сколько платить, при этом никто не видит сумму вашего заказа.
MPC считается «медленнее и менее безопасной, чем единый ключ». На самом деле это не так. Она устраняет риск единственного хранителя, распределяя доверие между людьми или устройствами, а современные реализации MPC достаточно быстры для реальных кошельков и бирж.
Как работает Secure Multiparty Computation (MPC)
Короткая история. Казне нужна подпись, чтобы перевести средства. Несколько членов команды хранят по фрагменту секрета. Они запускают короткий протокол, и в сети появляется действительная подпись. Суть в том, что они никогда не восстанавливают единый закрытый ключ.
- Приглашение: Организатор создаёт группу, указывает число необходимых подтверждений и добавляет устройства.
- Разделение: Секрет разбивается на доли и распределяется так, чтобы только заданный порог долей мог утвердить операцию.
- Вычисление: Когда транзакция требует подтверждения, каждая сторона выполняет короткий раунд обмена сообщениями для создания частичных подписей.
- Проверка: Система проверяет, что частичные подписи действительны и принадлежат нужным людям или устройствам.
- Подписание: Частичные подписи объединяются в одну стандартную подпись, которую принимает блокчейн, при этом ни одно устройство не видит весь секрет.
В этом смысл: контроль без раскрытия секрета.
Почему Secure Multiparty Computation (MPC) важна
Что вы получаете благодаря этому?
- Плюс: Меньше сбоев, связанных с единственным хранителем, и меньше историй с фразами восстановления, при этом сохраняется самостоятельное хранение средств.
- Перспектива: Это соответствует текущему подходу к безопасности: распределять ответственность, уменьшать зону поражения и сохранять возможность восстановления.
- Актуальность: MPC встречается в кошельках, на биржах и в DAO. Она также сочетается со слоями приватности для обеспечения Приватных транзакций без отказа от стандартных подписей.
Когда вы тестируете кошелёк Secure Multiparty Computation (MPC), разместите доли на разных устройствах и в разных сетях, установите разумный порог и проведите несколько пробных запусков с небольшими суммами. Желательно, чтобы практика подтверждений была скучной.
Ключевые характеристики Secure Multiparty Computation (MPC)
Что выделяет эту технологию:
- Секретность: Ни одна сторона никогда не видит весь секрет, но группа всё равно производит действительный результат.
- Пороговые схемы: Можно требовать любую комбинацию, например два из трёх или три из пяти для гибких утверждений.
- Устойчивость: Потеря одного устройства не приводит к блокировке, если порог остаётся достижимым.
- Портативность: Окончательный результат стандартная подпись, которую блокчейны уже принимают.
- Масштабируемость: Важна эффективность. Смотрите Масштабируемость, чтобы понять, как пакетная обработка и защищённые энклавы снижают задержки.
- Политика: Можно добавить правила вроде лимитов расходов, временных блокировок или дополнительных подтверждений для крупных операций.
Вариации
MPC бывает в нескольких вариантах, с которыми вы можете столкнуться:
- TSS: Пороговые схемы подписей, которые создают одну обычную подпись из множества частичных.
- Shamir: Схема разделения секрета Шамира, которая разбивает секрет на множество частей с выбранным порогом для восстановления.
- Garbled: MPC на основе схем логических цепей для общих приватных вычислений, не только для подписей.
- Hybrid: MPC в сочетании с аппаратными энклавами или защищёнными элементами для дополнительной защиты.
- Network: Мультиорганизационные настройки, где доли хранятся у разных команд или кастодианов.
Secure Multiparty Computation (MPC) снижает риск единственного хранителя, но не делает действия в блокчейне невидимыми. Если вы управляете сервисом, приведите правила утверждения в соответствие с требованиями аудита и регулирования.
Пример
Биржа назначает три независимые команды для утверждения выводов; как только любые две одобрят, MPC формирует действительную подпись и транзакция проходит.
Интересный факт
MPC выросла из задачи миллионеров Эндрю Яо в восьмидесятых годах, мысленного эксперимента о двух людях, которые узнают, кто богаче, не раскрывая свои состояния.
Итог
Главное: распределяйте доверие, полагайтесь на математику и не допускайте, чтобы одно устройство становилось единственной точкой отказа.
