Ранние блокчейны служили децентрализованными реестрами: создавали доверие, гарантируя, что каждая новая запись надежно построена на предыдущих записях. Системы смарт-контрактов, такие как Эфириум, добавили интеллектуальных функций в операции в сети, позволив запускать простые компьютерные сценарии.

Эти системы второго поколения по-прежнему страдают от узких мест в скорости и проблем с разрешениями. Защищенные операции «в цепочке» должны дублироваться всеми узлами в сети, ограничивая размер данных и вычислений или ограничивая размер сети. Поскольку все узлы имеют доступ к операциям и данным в сети, блокчейн не может обрабатывать конфиденциальные данные и операции. В качестве обходного пути многие приложения используют блокчейны как прозрачную и безопасную систему управления разрешениями, но сохраняют большую часть вычислений и хранения данных вне цепочки. Это неявно требует, чтобы узлам доверяли для точного проведения всех вычислений, а не для подделки или неправильного управления данными (например, путем создания копии разрешенного набора данных).

Чтобы преодолеть эти проблемы, Ethereum Foundation (и другие исследователи блокчейна, такие как команда ZCash) активно изучают использование доказательств с нулевым разглашением для повышения безопасности вычислений вне сети. Эти zk-Snarks позволяют узлу предоставить безопасный сертификат о том, что он точно выполнил предписанное вычисление, не раскрывая основные данные и не требуя дублирования вычисления.

К этому стеку я бы добавил Безопасные многосторонние вычисления в качестве еще одного метода, который откроет множество новых приложений, создав блокчейны нового поколения и распределенные приложения. В протоколах SMPC участники сотрудничают, чтобы ненадежно выполнять общие вычисления, не раскрывая ничего о входных данных.

Это решает две ключевые проблемы с текущими блокчейнами: в настоящее время все сообщения видны по всей сети, что делает невозможным анонимизацию содержимого сообщений при сохранении прозрачности системы. Кроме того, современные блокчейны страдают от подхода к доверию по принципу «все или ничего»: либо узлу полностью доверяют для безопасного выполнения вычислений вне цепочки, либо он служит просто источником данных, а вычисления выполняются в цепочке.

Смешение zk-snarks и SMPC означает, что узел может доказать, что локальные вычисления выполнялись эффективно, а затем анонимно объединить эти обновления с другими узлами, не раскрывая ничего о своих личных данных или ограничениях.

Потенциальные приложения для этого огромны, в том числе:

  • Машинное обучение с сохранением конфиденциальности, при котором оценка может быть отделена от базовых данных.
  • Ненадежные «темные пулы», которые позволяют распределенным рынкам безопасно очищать заявки и предложения, не раскрывая стека заявок или личности каких-либо участников.
  • Автоматизированная условная оплата за услугу без раскрытия характера услуги или личности любой из сторон
  • Ненадежное планирование и диспетчеризация, когда ограничения могут оставаться конфиденциальными (аналогично версии нашего исследования микросетей с сохранением конфиденциальности)
  • Полностью анонимный опрос и принятие решений (или любая операция консенсуса)

Я очень взволнован этой перспективой и планирую опубликовать больше подробностей об этом в будущем!