:RU: Kachina: смарт контракты, сохраняющие конфиденциальность

Перевод статьи Kachina: privacy-preserving smart contracts - IOHK Blog

Использование ZK Snarks позволяет обеспечить функциональность смарт контрактов с сохранением конфиденциальности без ущерба для характеристик децентрализации

image

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

В этом сообщении в блоге мы обсуждаем Kachina – решение для смарт контрактов, обеспечивающее конфиденциальность, разработанное компанией Input Output Global (IOG) в сотрудничестве с Эдинбургским университетом. Это позволяет пользователям обеспечивать сохранение конфиденциальности и универсальную функциональность смарт контрактов без ущерба для характеристик децентрализации.

Сохранение конфиденциальности в сделках по смарт контрактам

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

Разработчики могут использовать несколько криптографических методов для обеспечения повышенной конфиденциальности в смарт контрактах. Доказательства с нулевым знанием (ZKP) и безопасные вычисления - вот два примера. На основе таких криптографических методов появилось несколько решений, удовлетворяющих различным определениям конфиденциальности и требующих предположений о доверии. Примерами могут служить Zexe, zkay, Hawk, Zether, Secret Network и другие. Наиболее выразительные из этих решений, Hawk и Secret, основаны на предположениях о доверии, что значительно ограничивает уровень децентрализации, которого они могли бы достичь. Hawk предполагает небольшой фиксированный набор участников в ядре системы, в то время как Secret полагается на доверенные среды выполнения (TEEs), технологию с обширной историей атак, наносящих ущерб конфиденциальности. Эти методы в корне противоречат основным принципам децентрализованной блокчейн платформы.

Kachina: основы приватных смарт контрактов

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

Протокол смарт контрактов полагается только на краткие неинтерактивные аргументы знаний с нулевым знанием (ZK Snarks) для обеспечения конфиденциальности. Гарантии конфиденциальности этого протокола подтверждены в рамках безопасности Universal Composability (UC) с помощью математического моделирования и доказательств. Основная цель протокола состоит в том, чтобы обеспечить достаточно низкоуровневую и универсальную основу для дальнейших систем сохранения конфиденциальности, не требуя обновления базовой системы с каждым новым расширением или изменением.

Kachina позволяет авторам контрактов преодолеть разрыв между блокчейном и локальными машинами пользователей, которые представлены двумя независимыми состояниями, публичным и приватным состоянием, соответственно. Контракт может обновлять как ончейн (и общедоступное) публичное состояние, так и оффчейн (и локальное) приватное состояние вместе. Затем стороны с нулевым знанием доказывают, что они обновляют публичное состояние допустимым образом: они предоставляют подробную информацию о существовании приватного состояния и входы, для которых это обновление имеет смысл.

Контракты Kachina также обеспечивают:

  • Параллелизм с сохранением конфиденциальности. Kachina достигает большего параллелизма благодаря новой концепции расшифровок оракулов состояний. Это записи операций, выполняемых над состоянием контракта, которые взаимодействуют с запросами оракулов. Авторы контрактов могут оптимизировать конфликтующие транзакции, обеспечивая минимальную утечку и в то же время позволяя изменять порядок.
  • Эффективная модульная конструкция. Kachina предназначена для масштабного развертывания. Предыдущие работы, использующие нулевое знание, явно не поддерживают состояние контракта. Kachina же позволяет получить доступ к состоянию косвенно через оракулов, указанных в контракте. Этот косвенный доступ обеспечивает большую масштабируемость, и в результате сложность того, что должно быть доказано, находится под полным контролем автора контракта и может быть оптимизирована.

В исследовательской работе IOG демонстрирует универсальность протокола Kachina на примере частных платежей. Команда формально определяет контракт с приватным токеном с помощью своих функций перехода и утечки. Этот контракт поддерживает переводы частных средств, запросы баланса и создание активов.

Хотя предложенный дизайн в основном теоретический, Kachina доказывает возможность создания смарт контрактов, сохраняющих конфиденциальность, в условиях реальных ограничений:

  • Использование оракулов состояний позволяет перенести большинство вычислительно сложных или ресурсоемких операций за пределы доказательства с нулевым знанием, что снижает их стоимость.
  • В то время как система доказательства с нулевым знанием все еще должна быть универсальной, конструкции ZKP существуют и практичны для использования в предлагаемых условиях.

Для получения более подробной информации, примеров и образцов контрактов читайте “Kachina – Основы приватных смарт контрактов”.

Я хотел бы поблагодарить Томаса Кербера (Thomas Kerber) за его вклад и поддержку в подготовке этого поста в блоге.

// От переводчика: для получения дополнительных переведенных на русский язык статей о Cardano посетите русскоязычный раздел на форуме Cardano. Видеоролики о Cardano на русском можно найти на YouTube канале нашего замечательного амбасадора Тимура Сахабутдинова, а также на канале Чарльз Хоскинсон на русском. Хотите поговорить или задать вопрос о Cardano по-русски? Приглашаем вас в наше уютное сообщество в Telegram. Оставайтесь на связи, все только начинается!