Найти тему
Крипто Энтузиаст

Что такое конфиденциальность в Web3?Исследование различных концепций и подходов к конфиденциальности в Web3

Оглавление

Для Web3 конфиденциальность - это слон в комнате. Это одновременно и самая большая точка продажи криптовалюты, идущая рука об руку с принципами децентрализации, анонимности и отсутствия доверия, и ее самая большая болевая точка, с мучительными КИК, легко отслеживаемыми PII и постоянно подозрительными взглядами со стороны внешнего мира.

К сожалению, это также тема, которая в значительной степени неправильно понимается, поскольку многие люди рассматривают криптовалютную “конфиденциальность” просто как предлог для финансирования террористов и отмывания денег. Тот факт, что crypto Twitter гордится своей “культурой анонимности” и что основные СМИ часто (намеренно или непреднамеренно) усиливают эти предубеждения, не помогает делу разрушить эти стереотипы.

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

Конфиденциальность на сетевом уровне

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

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

Одним из ведущих проектов по обеспечению конфиденциальности на сетевом уровне является Monero, блокчейн, основанный в 2014 году. В отличие от Биткоина, Monero скрывает как кошельки пользователей, так и транзакции за “Кольцевыми подписями”, при которых пользователи внутри данного ”кольца" имеют доступ к определенной групповой подписи и используют эту групповую подпись для подписания транзакций. Таким образом, для любой данной транзакции в сети Monero вы можете сказать только, что она исходит от определенной группы, но вы не знаете, какой пользователь в этой группе на самом деле подписал транзакцию. По сути, это форма "приватности в толпе”, при которой пользователи объединяются в группы, чтобы обеспечить каждому конфиденциальность.

-2

Другой проект, который занимается тем же пространством, - это ZCash, пионер формы доказательств с нулевым разглашением под названием zk-SNARKs, которая недавно стала популярной. Фундаментальная концепция, лежащая в основе доказательств с нулевым разглашением, заключается в том, что это способ доказать истинность чего-либо без раскрытия какой-либо дополнительной информации (которая может поставить под угрозу безопасность и конфиденциальность).

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

В случае с ZCash, хотя транзакции по умолчанию прозрачны, пользователи могут использовать эти ”Доказательства с нулевым разглашением" для создания частных транзакций. Когда пользователь хочет отправить транзакцию, он создает сообщение о транзакции, которое включает публичный адрес отправителя, публичный адрес получателя и сумму транзакции, а затем преобразует это в доказательство zk-SNARK, которое является единственным, что отправляется в сеть. Это доказательство zk-SNARK содержит всю необходимую информацию для подтверждения действительности транзакции, но не раскрывает никаких деталей самой транзакции. Это означает, что сеть может подтвердить транзакцию, не зная, кто ее отправил, кто ее получил или какая сумма была задействована.

Несмотря на различия в дизайне и реализации, как для Monero, так и для ZCash конфиденциальность транзакций гарантируется на уровне блокчейна, так что все транзакции, происходящие в сети, автоматически гарантируются как приватные. Этой гарантией конфиденциальности могут легко злоупотребить злоумышленники для отмывания денег, террористической деятельности и незаконного оборота наркотиков, а Monero особенно известна своей популярностью в Темной Сети. Более того, поскольку Monero и другие “монеты конфиденциальности” становятся синонимами незаконной финансовой деятельности, это отталкивает пользователей, использующих эти “монеты конфиденциальности” из законных соображений конфиденциальности, подпитывая цикл отрицательной обратной связи, который приводит только к еще более пагубной теневой экономике.

Это самый большой недостаток гарантии конфиденциальности на сетевом уровне: это подход “все или ничего” в дизайне, при котором существует компромисс с нулевой суммой между прозрачностью транзакции и конфиденциальностью этой транзакции. Именно из-за этого отсутствия прозрачности “конфиденциальность на сетевом уровне” вызывает наибольший гнев регулирующих органов, и это причина, по которой несколько крупных централизованных криптовалютных бирж, таких как Coinbase, Kraken и Huobi, исключили Monero, ZCash и другие приватные монеты в нескольких юрисдикциях.

Конфиденциальность на уровне протокола

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

Поскольку ранние блокчейн-сети, такие как Биткоин, имели ограниченную программируемость, создать “конфиденциальность на уровне протокола” было невероятно сложно, и было намного проще разветвить сеть Биткоин и внедрить конфиденциальность с нуля в виде нового блокчейна и “монеты конфиденциальности”. Но с появлением Ethereum и появлением ”умных контрактов" это открыло совершенно новые возможности для протоколов, сохраняющих конфиденциальность.

Одним из наиболее заметных примеров “конфиденциальности на уровне протокола” является Tornado Cash, представляющее собой децентрализованное приложение (DApp) на Ethereum, которое “объединяет” транзакции в пул, чтобы гарантировать конфиденциальность транзакций, концептуально чем—то похожее на подход Monero “слиться с толпой”.

-3

Грубо говоря, протокол Tornado Cash состоит из трех основных этапов:

  1. Депозит: Пользователи переводят свои средства на смарт-контракт Tornado Cash. Это инициирует частную транзакцию с случайно сгенерированным "набором анонимности”, который представляет собой группу пользователей, которые также совершают транзакции одновременно.
  2. Смешивание: Tornado Cash смешивает внесенные средства со средствами других пользователей в режиме анонимности, что затрудняет отслеживание первоначального отправителя или получателя. Этот процесс называется “смешиванием” или “анонимизацией”.
  3. Вывод средств: После смешивания средств пользователи могут выводить свои средства на новый адрес по своему выбору, разрывая связь между своим первоначальным адресом и адресом назначения. Затем пользователь может завершить транзакцию, отправив средства непосредственно с “нового” адреса назначения получателю.

К сожалению, в августе 2022 года правительство США ввело санкции против Tornado Cash, поскольку Управление по контролю за иностранными активами (OFAC) утверждало, что северокорейские хакеры использовали протокол для отмывания украденных средств. В результате этих репрессий американские пользователи, компании и сети больше не могут использовать Tornado Cash. Эмитент стабильной монеты USDC Circle пошел еще дальше, заморозив средства на сумму более 75 000 долларов, подключенные к адресам Tornado Cash, а GitHub удалил аккаунты разработчиков Tornado Cash.

Это вызвало бурю споров в криптосфере, поскольку многие утверждали, что подавляющее большинство пользователей используют Tornado Cash для законных транзакций, сохраняющих конфиденциальность, и что пользователи протокола не должны быть наказаны за плохие действия небольшого меньшинства. Но важно отметить, что, поскольку Tornado Cash - это решение для обеспечения конфиденциальности на уровне протокола в Ethereum, а не решение для обеспечения конфиденциальности на уровне сети, разгон и последствия были ограничены только этим одним протоколом в сети Ethereum, а не затронули всю сеть — в отличие от Monero и ZCash, Ethereum не был исключен из Coinbase из-за этих санкций.

Альтернативный подход к “конфиденциальности на уровне протокола”, впервые предложенный Aztec Network, фокусируется на “накопительных пакетах” для защиты средств пользователей и поддержки частных транзакций. Основным продуктом Aztec является zk.money, который использует двухуровневую глубокую рекурсивную проверку с нулевым уровнем знаний как для масштабирования, так и для конфиденциальности. Первый ZKP доказывает корректность защищенной транзакции, гарантируя, что транзакция действительно была частной и утечки информации не было. Второй ZKP используется для самого свертывания, чтобы объединить вычисления пакетов транзакций вместе и гарантировать, что все они были выполнены правильно.

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

Конфиденциальность на уровне пользователя

Третий (и самый последний) подход к концептуализации конфиденциальности в Web3 заключается в изучении “конфиденциальности на уровне пользователя”, когда гарантии конфиденциальности даются для данных отдельного пользователя, а не фокусируются на данных транзакции пользователя. Как на уровне “сети”, так и на уровне “протокола” мы являемся свидетелями повторяющейся проблемы меньшинства злоумышленников (таких как транзакции в темной Сети и схемы отмывания денег), влияющих на использование сети и протокола невинным большинством, которое просто заботится о конфиденциальности своих личных данных.

Ключевым моментом “конфиденциальности на уровне пользователя” является то, что, сосредоточив внимание на отдельных пользователях самой сети, мы проводим “целевую” форму фильтрации, при которой доброкачественные пользователи и адреса могут свободно взаимодействовать с блокчейн-сетью конфиденциально, в то время как плохие пользователи могут быть быстро отфильтрованы. Как вы можете себе представить, это титаническая задача - пройти тонкую грань между прозрачностью и приватностью. Этот ориентированный на пользователя взгляд на конфиденциальность также порождает целую дискуссию (и индустрию) о роли и будущем децентрализованной идентификации (dID), смежную и производную от вопроса о конфиденциальности Web3. Ради краткости я не буду обсуждать этот вопрос KYC и аутентификации в Web3.

Суть понятия “конфиденциальность на уровне пользователя” заключается в разделении и переосмыслении взаимосвязи между самим пользователем и адресами его кошельков в сети, поскольку адреса кошельков являются атомарными идентификаторами в сети блокчейн. Важно отметить, что существует соотношение "один ко многим" от пользователей к цепочкам: пользователи часто контролируют более одного адреса кошелька в каждой блокчейн-сети, с которой они взаимодействуют. В этом заключается идея ”фрагментации идентификационных данных в цепочке". Таким образом, суть “конфиденциальности на уровне пользователя” заключается в поиске безопасного способа сопоставления личной информации пользователей (PII) со всеми этими фрагментированными идентификаторами в сети.

Ключевым проектом в этом отношении является Notebook Labs, который стремится использовать доказательства с нулевым разглашением для связывания фрагментированных идентификационных данных с персональными данными пользователя, предоставляя при этом следующие гарантии:

  1. Пользователи могут доказать свою человечность с помощью любой фрагментированной идентичности в сети
  2. Связать эти идентификаторы вместе невозможно (если только не произошла утечка секретного ключа пользователя)
  3. Ни одна третья сторона или злоумышленник не могут связать фрагментированную идентификацию в сети с идентификацией пользователя в реальном мире
  4. Учетные данные могут быть объединены для разных удостоверений
  5. Каждый человек получает единый набор фрагментированных идентификаций в сети

Хотя криптографические особенности протокола выходят за рамки данного эссе, Notebook Labs демонстрирует два основных принципа ”конфиденциальности на уровне пользователя" — важность рассмотрения переосмысления взаимосвязи между множеством фрагментированных идентификаций в сети и реальными пользователями-людьми, а также важную роль, которую доказательства с нулевым разглашением играют в агрегировании и связывании воедино всех этих идентификаций.

Еще одним появляющимся решением вопроса о “конфиденциальности на уровне пользователя” является идея ”скрытых кошельков". Опять же, идея "скрытых кошельков” основывается на фрагментации идентификационных данных в сети, используя тот факт, что у пользователя обычно есть более одного идентификатора в сети. В отличие от Tornado Cash и других решений для обеспечения конфиденциальности на уровне протокола, которые стремятся скрыть сами данные транзакции, скрытые адреса стремятся скрыть, кто на самом деле стоит за адресами отправителя и получателя. Это реализовано, по сути, путем поиска алгоритма для быстрой и автоматической генерации ”одноразовых кошельков" для транзакции пользователя.

Одно важное концептуальное различие между “скрытыми кошельками” и ранее обсуждавшимися решениями для обеспечения конфиденциальности, такими как Monero и Tornado Cash, заключается в том, что это не форма “приватности в толпе”. Это означает, что в отличие от Tornado Cash, который может гарантировать конфиденциальность только для обычных переводов токенов, таких как ETH, кошельки stealth также могут обеспечивать гарантии безопасности для нишевых токенов и NFT или уникальных сетевых активов, в которых нет “толпы”, с которой можно смешаться. Тем не менее, пока обсуждение ”скрытых кошельков" в Ethereum остается на теоретической стадии, и эффективность внедрения и юридические последствия этого нового технологического решения еще предстоит увидеть.

ZKPS и будущее конфиденциальности в Web3

Как мы можем видеть, конфиденциальность в Web3 усложнена. Различные подходы к проблеме — на сетевом уровне, на уровне протокола и на уровне пользователя — предполагают различные решения и исследуют различные компромиссы между прозрачностью и конфиденциальностью. Тем не менее, любое обсуждение конфиденциальности будет неполным без учета обратной стороны медали: прозрачности и подотчетности.

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

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

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

Таким образом, когда вы думаете о ZKP в сфере конфиденциальности, важным вопросом всегда будет “что” вы собираетесь доказать и “почему”? В конце концов, бесплатных обедов не бывает, и разработка ZKP always всегда сопряжена с затратами. Со стороны технологических евангелистов заявлять, что ZKPs решит все в условиях конфиденциальности, так же безответственно, как со стороны регулирующих органов закрывать все протоколы конфиденциальности.

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

Итак, как должна выглядеть конфиденциальность в Web3? Это самый насущный вопрос, который нам предстоит решить.

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