ZKPayments: Достижение конфиденциальности и масштабируемости

СреднийDec 24, 2023
Эта статья посвящена роли доказательств нулевого знания (ZK) в повышении масштабируемости блокчейна и защите конфиденциальности, иллюстрируя область их применения и реализацию в процессах транзакций с помощью анализа практических примеров. В конечном итоге, в тексте также рассматриваются необходимые компромиссы и решения, которые необходимо принимать между соблюдением нормативных требований и защитой частной жизни.
ZKPayments: Достижение конфиденциальности и масштабируемости

Введение

В быстро развивающемся мире Web3 возникли две важнейшие проблемы: конфиденциальность и масштабируемость. Неизменяемая природа блокчейна вызывает опасения по поводу конфиденциальности данных для пользователей и предприятий, а растущая популярность цифровых валют центральных банков (CBDC) добавляет беспокойства по поводу слежки.

В то же время, достижение масштабируемости в сетях блокчейн стало жизненно важным для обработки растущих объемов транзакций. На фоне этих проблем платежи с нулевым знанием (ZK) предлагают многообещающее решение, которое решает проблемы конфиденциальности и масштабируемости. В этом блоге рассматривается, как платежи ZK устраняют разрыв между конфиденциальностью и прозрачностью в транзакциях Web3, обеспечивая пользователям необходимую конфиденциальность без ущерба для фундаментальных возможностей блокчейна. Более того, в ней рассматривается потенциал протоколов на основе ZK для улучшения масштабируемости, что делает децентрализованные приложения более практичными и доступными.

Понимание проблемы конфиденциальности в транзакциях Web3

Web3 позволил создать множество децентрализованных приложений, платформ DeFi и рыночных площадок NFT. Однако прозрачность транзакций в блокчейне означает, что адреса кошельков и истории транзакций видны любому, кто имеет доступ к сети.

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

Несколько причин подчеркивают важность конфиденциальности в транзакциях Web3:

  1. Безопасность и защита: Конфиденциальность жизненно важна для защиты пользователей от возможных попыток взлома, фишинговых атак и других вредоносных действий, таких как доксинг. Защита финансовых данных гарантирует, что пользователи будут менее восприимчивы к целенаправленным угрозам.
  2. Бизнес-конфиденциальность: Для компаний, работающих в пространстве Web3, сохранение конфиденциальности деталей транзакций очень важно для поддержания конкурентных преимуществ и защиты конфиденциальной деловой информации.
  3. Индивидуальные права: Как и в традиционной финансовой сфере, люди имеют право на финансовую конфиденциальность. Web3 должна уважать и поддерживать эти права, предоставляя пользователям возможность контролировать свои данные.

Возвышение платежей с нулевыми знаниями

Доказательства с нулевым знанием можно проследить до оригинальной статьи Zero-Knowledge Proofs [GMR85] в 1985 году. Впоследствии, в 1992 году было представлено упрощенное доказательство ZK [K92]. К 2013 году доказательство с нулевым знанием можно было использовать в реальной жизни, но более медленными темпами. В 2016 году Грот предложил алгоритм Groth 16, который значительно снизил вычислительную сложность. С тех пор доказательства с нулевым знанием постепенно стали использоваться в реальных коммерческих целях.

В контексте криптовалют, Monero и Zcash были пионерами в приоритете конфиденциальности в транзакциях на основе блокчейна. В 2014 году компания Monero (XMR) представила кольцевые подписи и стелс-адреса, обеспечив более высокий уровень конфиденциальности по сравнению с традиционными блокчейнами. Zcash (ZEC) появился в 2016 году благодаря zk-SNARKs, предлагая пользователям выбор между прозрачными и экранированными транзакциями для баланса между приватностью и прозрачностью.

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

Как ZK обеспечивает масштабируемость и конфиденциальность?

Представьте, что у Вас есть волшебная шкатулка, которая может тайно выполнять вычисления. Эта коробка может доказать любому, что определенное утверждение истинно, не раскрывая никаких подробностей о том, как она пришла к такому выводу. В этом и заключается основная идея доказательств с нулевым знанием.

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

В базовой форме доказательство с нулевым знанием состоит из трех элементов: свидетель (конфиденциальная информация), вызов и ответ.

  • Свидетель: В доказательстве с нулевым знанием доказывающий хочет доказать знание некоторой скрытой информации. Секретная информация является "свидетелем" доказательства, а предполагаемое знание свидетеля проверяющим определяет набор вопросов, на которые может ответить только тот, кто знает эту информацию. Таким образом, проверяющий начинает процесс доказательства со случайного выбора вопроса, вычисления ответа и отправки его проверяющему.
  • Вызов: проверяющий случайным образом выбирает другой вопрос из набора и просит доказуемого ответить на него.
  • Ответ: Проверяющий принимает вопрос, вычисляет ответ и возвращает его проверяющему. Ответ провера позволяет верификатору проверить, действительно ли у первого есть доступ к свидетелю. Чтобы убедиться, что проверяющий не угадывает вслепую и не получает правильные ответы случайно, проверяющий выбирает больше вопросов, которые нужно задать. Повторяя это взаимодействие много раз, вероятность того, что проверяющий подделает знания свидетеля, значительно снижается, пока проверяющий не будет удовлетворен.

В настоящее время существует несколько популярных протоколов на основе ZK, включая zk-SNARKs (Zero-Knowledge Succinct Non-Interactive Arguments of Knowledge), zk-STARKs (Zero-Knowledge Scalable Transparent Argument of Knowledge) и Bulletproofs.

В контексте блокчейна они позволяют пользователям подтверждать действительность транзакции, не раскрывая реального адреса отправителя. Эта функция позволяет объединять несколько транзакций в одно доказательство, снижая вычислительные затраты и значительно улучшая масштабируемость. Объединяя несколько транзакций в одно доказательство, платежи ZK могут снизить нагрузку на сеть блокчейн и увеличить пропускную способность транзакций. Такая повышенная масштабируемость может привести к ускорению времени подтверждения и снижению комиссии за транзакции, делая децентрализованные приложения более практичными и доступными для пользователей.

Что такое доказательства с нулевым знанием (ZKP)? https://ethereum.org/en/zero-knowledge-proofs/

Роллы с нулевыми знаниями? https://ethereum.org/en/developers/docs/scaling/zk-rollups/

Пример из практики - ZkBob

zkBob - это приложение, ориентированное на конфиденциальность, которое использует доказательства с нулевым знанием (zkSNARKs) и стабильные монеты для конфиденциальных транзакций. Его основные части включают контракт zkBob для обработки транзакций, токены BOB с функциями конфиденциальности, ретранслятор для безопасной передачи данных и абстрагирования платы за газ, AccessManager для контроля доступа и пользовательский интерфейс для взаимодействия с пользователем. Он обеспечивает частные транзакции и нейтральность базового уровня.

Давайте рассмотрим сценарий, в котором Алиса и Карл используют zkBob для частной транзакции.

Ситуация: Алиса хочет отправить транзакцию Карлу, не раскрывая деталей транзакции, таких как сумма, информация об отправителе и получателе. Они решили использовать zkBob для достижения этой конфиденциальности.

Процесс транзакции

  1. Создание учетных записей:
    • Алиса и Карл создают свои учетные записи zkBob, используя свои закрытые ключи.
    • Эти закрытые ключи используются для генерации доказательств, доступа к балансу и выполнения транзакций.
  2. Генерация адресов:
    • Алиса генерирует новый частный адрес zkBob через пользовательский интерфейс приложения для получения входящей транзакции.
    • Этот адрес уникален для данной транзакции и не может быть связан с основным счетом Алисы.
  3. Депозиты:
    • Алиса инициирует транзакцию по внесению средств со своего обычного кошелька Ethereum на контракт zkBob Pool.
    • Она утверждает контракт на доступ к своим средствам, а затем завершает внесение депозита.
  4. Запрос на перевод:
    • Алиса хочет отправить приватную транзакцию Карлу.
    • Она генерирует zk-доказательство для этой транзакции, используя свой закрытый ключ и приложение zkBob.
  5. Взаимодействие с ретранслятором:
    • Алиса анонимно отправляет zk-доказательство ретранслятору, доверенному посреднику.
    • Ретранслятор получает это доказательство и обрабатывает его, не зная деталей транзакции.
  6. Transaction Publication:
    • Ретранслятор публикует транзакцию в контракте zkBob, не раскрывая специфики транзакции.
    • Контракт zkBob проверяет zk-доказательство и обновляет детали транзакции, не раскрывая ни суммы, ни участников.
  7. Получение транзакции:
    • Карл, принимающий транзакцию, генерирует новый частный адрес zkBob через пользовательский интерфейс приложения для получения входящей транзакции.
    • Это гарантирует, что его адрес получения не будет связан с его основным счетом.
  8. Завершение транзакции:
    • Контракт zkBob обновляет балансы Алисы и Карла, не раскрывая деталей транзакции.
    • Теперь Карл может видеть, что он получил транзакцию, но детали транзакции остаются конфиденциальными.
  9. Вариант вывода средств:
    • Если Карл хочет использовать полученную транзакцию в публичной обстановке, он может инициировать транзакцию вывода средств.
    • В результате этого снятия будет сгенерировано zk-доказательство, подтверждающее право собственности на транзакцию, что позволит ему преобразовать её в общедоступную форму.

На протяжении всего этого процесса детали транзакции, информация об отправителе и получателе остаются конфиденциальными благодаря использованию доказательств с нулевым знанием (zkSNARK). Релевер обеспечивает обработку транзакций без раскрытия конфиденциальных деталей, а контракт zkBob поддерживает целостность транзакции, сохраняя конфиденциальность для участвующих пользователей.

Пример из практики - WaaS Pay

WaaS Pay - это платформа для развертывания счетов смарт-контрактов, использующая набор протоколов Safe{Core} и Safe{Core} Account Abstraction SDK, разработанная для организаций, стремящихся к мгновенным платежам с помощью блокчейна, при этом уделяя первостепенное внимание конфиденциальности. Он предлагает удобный интерфейс без кодов для настройки функций учетной записи смарт-контракта, таких как социальные логины, фиатные входы/выходы и безгазовые транзакции для получателей. Благодаря тому, что zkBob обеспечивает анонимные транзакции с помощью Zero-Knowledge Proofs (ZKPs), WaaS Pay гарантирует сохранность и конфиденциальность конфиденциальных финансовых данных. Работающая на базе Polygon zkEVM, платформа гарантирует масштабируемость и эффективность, а самодостаточный узел IPFS с Helia защищает конфиденциальные метаданные.

Дополнительная информация: https://ethglobal.com/showcase/waas-pay-br0qs

Преимущества ZKPayments

  1. Повышенная конфиденциальность: ZKPayments обеспечивает высокий уровень конфиденциальности, сохраняя в тайне детали транзакций, защищая пользователей от возможных нарушений конфиденциальности и использования данных.
  2. Повышенная безопасность: Скрывая конфиденциальные данные о транзакциях, пользователи меньше подвержены целенаправленным атакам, что обеспечивает более безопасную и надежную среду для проведения транзакций Web3. Например. ZKPayments может помочь смягчить проблемы опережения и максимизации извлекаемой стоимости (MEV), которые широко распространены в web3.
  3. Прозрачность и соответствие нормам: ZKPayments соблюдает баланс, обеспечивая прозрачность транзакций для соответствующих сторон и сохраняя при этом конфиденциальность пользователей. Это помогает компаниям соответствовать нормативным требованиям, не жертвуя конфиденциальностью.
  4. Улучшенный пользовательский опыт: Снижение требований к вычислительным ресурсам ZKPayments приводит к снижению комиссии за транзакции и увеличению масштабируемости. Эти сценарии использования в сочетании с ERC4337, как показано в приведенном выше примере, обеспечивают пользователям и предприятиям более плавный опыт, способствуя повышению уровня принятия и использования.

Основные случаи использования

  1. Конфиденциальные личные сделки: Эти протоколы обеспечивают частные покупки и платежи без раскрытия финансовых данных третьим лицам, гарантируя максимальную конфиденциальность.
  2. Обмен токенами с сохранением конфиденциальности: Эти протоколы позволяют осуществлять частные обмены токенами, сохраняя историю торговли и владения для повышения уровня финансовой конфиденциальности.
  3. Частные краудфандинговые кампании: Благодаря этим протоколам краудфандинговые кампании сохраняют анонимность вкладчиков, прозрачно распределяя средства, обеспечивая надежный и приватный процесс сбора средств.
  4. Частные платежные ведомости: Эти протоколы позволяют предприятиям осуществлять скрытые платежи подрядчикам или сотрудникам, защищая суммы платежей и данные о получателях.
  5. Проверенные вознаграждения для вкладчиков: Эти протоколы упрощают частные мультипередачи, обеспечивая конфиденциальность и проверяя вклады.
  6. Фандрайзинг и гранты с открытым исходным кодом: Эти протоколы обеспечивают безопасные и приватные запросы токенов от инвесторов, проверяя сохранность средств с помощью доказательств платежеспособности, сохраняя при этом конфиденциальность транзакций, способствуя укреплению доверия в сфере сбора средств и управления грантами.

Вызов

Платежи Zero-Knowledge (ZK) предлагают частные транзакции Web3, но создают проблемы с соблюдением нормативных требований. Выполнение требований AML/KYC, соблюдение налогового законодательства, проверка на санкции, хранение данных, трансграничные правила и борьба с преступным использованием - все это имеет решающее значение. Сотрудничество с регулирующими органами, динамичное соблюдение норм и надежная защита могут обеспечить ответственное использование. ZKPayments меняет представление о цифровых финансах, обеспечивая при этом конфиденциальность пользователей и соблюдая закон.

Как решить проблему соответствия? Исследование конкретного случая (zk.money)

Чтобы обеспечить юридическое соответствие законам и нормам Великобритании, компания Aztec Network применила комплексный подход, обеспечивающий баланс между конфиденциальностью и сдерживанием незаконной деятельности в своем DeFi dApp, zk.money, ориентированном на конфиденциальность.

Практический подход к сдерживанию:

  • Обеспечьте пользователям доступ к конфиденциальности в сети, одновременно препятствуя отмыванию денег и незаконной деятельности.
  • Текущие усилия: Ограничения на депозит на каждую сделку на сайте http://zk.money.

Инициативы:

  • Общесистемные лимиты ежедневных вкладов в активы.
  • Ограничение скорости депозита для конкретного IP-адреса.
  • Одноадресатные отложенные депозиты.
  • Ограничения на окно аварийного люка.
  • Медленное пополнение и снятие средств.
  • Легко определяйте адреса, находящиеся в зоне риска.
  • Не позволяйте нелегальным пользователям обходить Falafel, сворачивание Aztec.

Заключение

В заключение хочу сказать, что ZKPayments предлагает революционное решение для удовлетворения растущего спроса на конфиденциальные и масштабируемые возможности в сфере Web3-финансов. Легко сочетая конфиденциальность и прозрачность с помощью доказательств нулевого знания, пользователи могут проводить безопасные и эффективные транзакции, сохраняя свою конфиденциальную информацию. Придерживаясь принципов соответствия и ориентируясь на пользователя, ZKPayments прокладывает путь к децентрализованному будущему, которое ставит во главу угла конфиденциальность, укрепляет доверие и ответственно перестраивает ландшафт цифровых финансов. Принятие ZKPayments открывает дверь в более безопасную и удобную экосистему web3, обещая более светлое и инклюзивное финансовое будущее для всех.

Отказ от ответственности:

  1. Эта статья перепечатана с сайта[fetcch]. Все авторские права принадлежат оригинальному автору[Satyam Kulkarni]. Если у Вас есть возражения против этой перепечатки, пожалуйста, свяжитесь с командой GateLearn(gatelearn@gate.io), и они оперативно рассмотрят их.
  2. Предупреждение об ответственности: Мнения и взгляды, выраженные в этой статье, принадлежат исключительно автору и не являются инвестиционным советом.
  3. Перевод статьи на другие языки осуществляется командой Gate Learn. Если не указано, копирование, распространение или плагиат переведенных статей запрещены.
Bắt đầu giao dịch
Đăng ký và giao dịch để nhận phần thưởng USDTEST trị giá
$100
$5500
Tạo tài khoản