Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн?

ПродвинутыйAug 23, 2024
Эта статья утверждает, что конфиденциальность в блокчейн-сетях является необходимой для более широкого принятия, а не просто желательной функцией. Она подчеркивает вызовы, с которыми сталкиваются в настоящее время блокчейны прозрачности и подчеркивает, что различные пользователи и сценарии использования потребуют разных уровней конфиденциальности, предлагая, что универсальный подход не является достаточным.
Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн?

Взгляды и предположения, лежащие в основе этого куска:

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

Интересуются ли отдельные пользователи конфиденциальностью?

Да, но некоторые больше, чем другие.

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

Корпорации имеют дополнительные причины беспокоиться о конфиденциальности (конкурентоспособность, безопасность и регулирование), и, как правило, более готовы платить за нее по сравнению с отдельными пользователями.

Еще один важный вопрос: От кого пользователи хотят скрытности?

  1. Другие пользователи сети и внешние наблюдатели
  2. Третьи стороны и посредники, облегчающие услугу
  3. Правительства, государственные органы и массовый надзор

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

Как мы определяем "Конфиденциальность"?

Конфиденциальность - это не секретность. Частное дело - это то, что человек не хочет, чтобы знал весь мир, а секретное дело - это то, что человек не хочет, чтобы знал кто-либо. Конфиденциальность - это возможность выборочно раскрывать себя миру - Манифест Киферпанка

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

Некоторые ключевые вопросы, касающиеся конфиденциальности, включают:

  • Что может быть раскрыто и кому, если желаете?
  • Кто имеет власть раскрыть информацию?
  • Что должно быть раскрыто и кому для функционирования системы?
  • Какие гарантии есть, что то, что является частным сегодня, останется таковым завтра?

Исходя из этих вопросов, мы можем сформулировать это в одном предложении:

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

Нужна ли нам новая терминология?

Учитывая вышеизложенное - является ли «конфиденциальность» плохим термином для того, что мы пытаемся достичь? Может быть, может быть и нет. Это зависит от того, как вы к этому подходите.

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

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

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

Однако в этом посте мы будем придерживаться термина 'приватность', чтобы избежать излишней путаницы.

Как конфиденциальность в Web2 отличается от сетей блокчейнов?

Большинство интернет-пользователей знакомы с «конфиденциальностью» web2. Наши данные шифруются во время передачи (до 95% всего трафика сегодня) и защищены от других пользователей, но разделяются с доверенными посредниками и поставщиками услуг. Другими словами, "конфиденциальность" (от других пользователей) обеспечивается доверием посреднику.

Этот подход дает пользователю некоторый контроль над тем, с кем делиться своими данными помимо поставщика услуг. Однако это ставит перед сервис-провайдером много доверия (прямого или косвенного) в сохранении безопасности данных и их правильной обработке. Кроме того, ограниченные гарантии и мало прозрачности вокруг того, как используются данные, означает, что пользователи могут только надеяться, что сервис-провайдеры будут вести себя так, как они заявляют (модель на основе репутации).

Сети блокчейн стремятся уменьшить зависимость от посредников и обеспечить более надежные гарантии, переходя от модели, основанной на репутации, к экономическим или криптографическим гарантиям. Однако распределенная модель также предъявляет новые вызовы, особенно в области конфиденциальности. Узлам необходимо синхронизироваться и достигать согласия относительно текущего состояния сети, что относительно легко, когда все данные прозрачны и распространяются между всеми узлами (статус кво). Это становится значительно сложнее, когда мы начинаем шифровать данные - основная причина того, почему большинство сетей блокчейн прозрачны сегодня.

Почему сложно достичь конфиденциальности в блокчейн-сетях?

Существует два способа обеспечения конфиденциальности сетей блокчейн: доверенная (посредническая) или минимизированная доверие (непосредственная) конфиденциальность.

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

Доверенная конфиденциальность в сетях блокчейн

Доверенный подход выглядит довольно похожим на конфиденциальность в стиле веб2, поскольку он может обеспечивать конфиденциальность от других пользователей, но требует доверия к третьей стороне или посреднику для облегчения этого процесса. Это не так технически сложно, что делает его прагматичным выбором для проектов, которые сегодня требуют некоторых гарантий конфиденциальности, но чувствительны к затратам и имеют транзакции меньшей стоимости. Примером этого являются веб3 социальные протоколы (такие как Сеть Lens) , которые больше подчеркивают производительность и практичность, чем жесткость гарантий конфиденциальности.

Простым подходом является использование validiumгде комитет доступности данных (DAC) удерживает текущее состояние, и пользователи доверяют операторам DAC, чтобы сохранить это состояние в тайне и обновлять его по мере необходимости. Другой пример Расширение токена Solana, который обеспечивает конфиденциальность платежей (скрытие балансов счетов и транзакций) с использованием ZKPs, но позволяет назначать доверенное третье лицо с правом аудита для обеспечения соблюдения регулирования.

Мы бы сказали, что эту модель можно расширить нынешним веб-парадигмом web2, где вы полностью доверяете посреднику, чтобы он соблюдал правила. С блокчейнами можно объединить чистую доверительную модель с дополнительными гарантиями (экономическими или криптографическими), что посредники будут вести себя ожидаемым образом или по крайней мере увеличат стимулы для этого.

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

(Мы включаем разрешенные блокчейны в надежную категорию, но все другие решения относятся к неразрешенным блокчейнам).

Доверительность, минимизированная в области конфиденциальности в сетях блокчейнов

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

Существующие решения в основном ориентированы на специализированные случаи использования, такие как:

  • Финансовые: Частные переводы, платежи и свопы направлены на скрытие идентичности, входных и/или выходных данных (кто отправил что, сколько и кому). Компромиссы между разными решениями включают одно- или многоактивные защищенные пулы и уровень конфиденциальности. Примеры здесь включают Zcash, Намада, и Пенумбра.
  • Идентичность: Конфиденциальность является неотъемлемой частью любого решения, требующего связи нашей внеблокчейновой и блокчейновой идентичности или попыток хранения документов, удостоверяющих личность, на блокчейне. Несколько попыток были предприняты частным сектором (напримерДоказательство паспортаиГолоним) вместе с растущий интерес со стороны правительствдля поддержки решений, обеспечивающих конфиденциальность цифровой идентичности.
  • Управление: Идея частного онлайн-голосования заключается в том, чтобы скрыть, кто за что проголосовал, и сохранить общий итог голосования в тайне до конца голосования, чтобы это не влияло на решение голосующего.

  • Обзор некоторых существующих решений (источник)

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

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

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

Как мы можем оценить различные решения?

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

  1. Что такое Частное - Различные типы конфиденциальности, связанные с блокчейнами:
  1. Частные входы (сообщения)
  2. Приватные выходы (изменения состояния)
  3. Частные контрагенты
    1. Пользователи
    2. Функция
    3. Программа

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

Важно отметить, что у пользователя есть возможность выборочно раскрывать некоторые (или все) из них determinante к определенным сторонам, но если по умолчанию ни одно из них не является частным, то у пользователя нет такой опции.

  1. Programmability - Для чего можно использовать конфиденциальность?

Эта категория сосредоточена на программировании частного вычисления и его ограничениях:

  • Вы можете вычислять зашифрованные данные? Существует ли какая-либо компонентность между частными программами?
  • Могут ли частные и общедоступные состояния взаимодействовать каким-либо образом? Каковы ограничения и компромиссы в этом случае?
  • Какие ограничения существуют на сложность программ, которую вы можете иметь (лимит газа, экспрессивность и т. д.)?

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

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

  1. Надежность гарантий конфиденциальности - Насколько надежна конфиденциальность?

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

Это включает в себя такие вещи, как:

  • Какую информацию (если вообще какую-либо) пользователь должен предоставить доверенной третьей стороне или посреднику? Какие гарантии есть, что посредник будет вести себя ожидаемым образом?
  • Каков размер защищенного набора? (Multichain > Сеть (L1/L2) > Приложение > Одноактивный)
  • Каковы риски цензуры? (Приложение против конфиденциальности базового уровня)
  • Система доказательства является квантово-стойкой?
  • Требует ли система доказательств доверенной установки? Если да, сколько участников в ней участвовало?
  • Система имеет конфиденциальность по умолчанию или есть другие стимулы для максимизации количества взаимодействий в защищенном наборе?

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

Как это соглашение отображается на четыре вопроса, представленные в начале поста?

  • Какая информация может быть раскрыта и кому, если это необходимо? Этот вопрос связан с тем, что является личным и программированием. Если все информация по умолчанию является публичной, то единственный выбор, который у пользователей есть в отношении конфиденциальности, это участие в сети или нет. Нам нужна конфиденциальность по умолчанию, чтобы была возможность раскрыть (как минимум от других пользователей/внешних наблюдателей). Программируемость может быть представлена как детализированные правила раскрытия, т.е. кому, когда, что и какая информация раскрывается (и отзывается).
  • Кто имеет власть раскрывать информацию? Это в основном связано со степенью гарантий конфиденциальности и является наиболее сильным, когда только пользователь имеет власть делиться информацией (приватность с минимальным доверием).
  • Что необходимо раскрыть и кому для нормальной работы системы? Это в первую очередь связано с программируемостью. В идеале вам нужно раскрывать как можно меньше информации, при этом сохраняя возможность вычисления общего состояния, компонуемость между разными программами и возможность создания новых доверительных отношений. На практике это не так (по крайней мере, сегодня) и некоторые компромиссы приходится заключать.
    • Если на секунду отвлечься от блокчейнов, ZKP может привести к перелому в этом аспекте конфиденциальности, поскольку они позволяют нам доказывать, что что-то является истиной, не раскрывая избыточной информации. Например, при аренде квартиры нам нужно доказать потенциальному арендодателю, что у нас достаточный доход для оплаты аренды. Сегодня для этого требуется отправить наш полный банковский отчет, который раскрывает много дополнительной информации. В будущем эта доверительная связь может быть построена на основе краткого ZKP.
  • Какие гарантии существуют, что то, что является приватным сегодня, останется таковым завтра? Понятие "прогрессивной конфиденциальности" в основном связано с надежностью гарантий конфиденциальности. Большие защищенные наборы помогут в этом и сделают сложнее извлечение информации для внешних наблюдателей. Уменьшение доверия к посредникам может помочь, но не обязательно, так как даже если пользователи полностью контролируют свои данные, их ключи могут утекать, данные могут быть непреднамеренно раскрыты или раскрытые данные могут быть скопированы. Эта область остается относительно неизученной и недостаточно изученной, но она будет иметь все большее значение по мере распространения конфиденциальности в блокчейн-сетях.

Резюме

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

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

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

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

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

  1. Эта статья взята из [равновесие], Оригинальное название [Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн (и почему это трудно достичь)?], Все авторские права принадлежат оригинальному автору [Hannes Huitula]. Если есть возражения к этому повторному изданию, пожалуйста, свяжитесь с Gate Learn команды, и они оперативно с этим справятся.
  2. Ограничение ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно мнением автора и не являются инвестиционным советом.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. За исключением указанных случаев, копирование, распространение или плагиат переведенных статей запрещены.

Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн?

ПродвинутыйAug 23, 2024
Эта статья утверждает, что конфиденциальность в блокчейн-сетях является необходимой для более широкого принятия, а не просто желательной функцией. Она подчеркивает вызовы, с которыми сталкиваются в настоящее время блокчейны прозрачности и подчеркивает, что различные пользователи и сценарии использования потребуют разных уровней конфиденциальности, предлагая, что универсальный подход не является достаточным.
Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн?

Взгляды и предположения, лежащие в основе этого куска:

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

Интересуются ли отдельные пользователи конфиденциальностью?

Да, но некоторые больше, чем другие.

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

Корпорации имеют дополнительные причины беспокоиться о конфиденциальности (конкурентоспособность, безопасность и регулирование), и, как правило, более готовы платить за нее по сравнению с отдельными пользователями.

Еще один важный вопрос: От кого пользователи хотят скрытности?

  1. Другие пользователи сети и внешние наблюдатели
  2. Третьи стороны и посредники, облегчающие услугу
  3. Правительства, государственные органы и массовый надзор

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

Как мы определяем "Конфиденциальность"?

Конфиденциальность - это не секретность. Частное дело - это то, что человек не хочет, чтобы знал весь мир, а секретное дело - это то, что человек не хочет, чтобы знал кто-либо. Конфиденциальность - это возможность выборочно раскрывать себя миру - Манифест Киферпанка

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

Некоторые ключевые вопросы, касающиеся конфиденциальности, включают:

  • Что может быть раскрыто и кому, если желаете?
  • Кто имеет власть раскрыть информацию?
  • Что должно быть раскрыто и кому для функционирования системы?
  • Какие гарантии есть, что то, что является частным сегодня, останется таковым завтра?

Исходя из этих вопросов, мы можем сформулировать это в одном предложении:

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

Нужна ли нам новая терминология?

Учитывая вышеизложенное - является ли «конфиденциальность» плохим термином для того, что мы пытаемся достичь? Может быть, может быть и нет. Это зависит от того, как вы к этому подходите.

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

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

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

Однако в этом посте мы будем придерживаться термина 'приватность', чтобы избежать излишней путаницы.

Как конфиденциальность в Web2 отличается от сетей блокчейнов?

Большинство интернет-пользователей знакомы с «конфиденциальностью» web2. Наши данные шифруются во время передачи (до 95% всего трафика сегодня) и защищены от других пользователей, но разделяются с доверенными посредниками и поставщиками услуг. Другими словами, "конфиденциальность" (от других пользователей) обеспечивается доверием посреднику.

Этот подход дает пользователю некоторый контроль над тем, с кем делиться своими данными помимо поставщика услуг. Однако это ставит перед сервис-провайдером много доверия (прямого или косвенного) в сохранении безопасности данных и их правильной обработке. Кроме того, ограниченные гарантии и мало прозрачности вокруг того, как используются данные, означает, что пользователи могут только надеяться, что сервис-провайдеры будут вести себя так, как они заявляют (модель на основе репутации).

Сети блокчейн стремятся уменьшить зависимость от посредников и обеспечить более надежные гарантии, переходя от модели, основанной на репутации, к экономическим или криптографическим гарантиям. Однако распределенная модель также предъявляет новые вызовы, особенно в области конфиденциальности. Узлам необходимо синхронизироваться и достигать согласия относительно текущего состояния сети, что относительно легко, когда все данные прозрачны и распространяются между всеми узлами (статус кво). Это становится значительно сложнее, когда мы начинаем шифровать данные - основная причина того, почему большинство сетей блокчейн прозрачны сегодня.

Почему сложно достичь конфиденциальности в блокчейн-сетях?

Существует два способа обеспечения конфиденциальности сетей блокчейн: доверенная (посредническая) или минимизированная доверие (непосредственная) конфиденциальность.

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

Доверенная конфиденциальность в сетях блокчейн

Доверенный подход выглядит довольно похожим на конфиденциальность в стиле веб2, поскольку он может обеспечивать конфиденциальность от других пользователей, но требует доверия к третьей стороне или посреднику для облегчения этого процесса. Это не так технически сложно, что делает его прагматичным выбором для проектов, которые сегодня требуют некоторых гарантий конфиденциальности, но чувствительны к затратам и имеют транзакции меньшей стоимости. Примером этого являются веб3 социальные протоколы (такие как Сеть Lens) , которые больше подчеркивают производительность и практичность, чем жесткость гарантий конфиденциальности.

Простым подходом является использование validiumгде комитет доступности данных (DAC) удерживает текущее состояние, и пользователи доверяют операторам DAC, чтобы сохранить это состояние в тайне и обновлять его по мере необходимости. Другой пример Расширение токена Solana, который обеспечивает конфиденциальность платежей (скрытие балансов счетов и транзакций) с использованием ZKPs, но позволяет назначать доверенное третье лицо с правом аудита для обеспечения соблюдения регулирования.

Мы бы сказали, что эту модель можно расширить нынешним веб-парадигмом web2, где вы полностью доверяете посреднику, чтобы он соблюдал правила. С блокчейнами можно объединить чистую доверительную модель с дополнительными гарантиями (экономическими или криптографическими), что посредники будут вести себя ожидаемым образом или по крайней мере увеличат стимулы для этого.

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

(Мы включаем разрешенные блокчейны в надежную категорию, но все другие решения относятся к неразрешенным блокчейнам).

Доверительность, минимизированная в области конфиденциальности в сетях блокчейнов

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

Существующие решения в основном ориентированы на специализированные случаи использования, такие как:

  • Финансовые: Частные переводы, платежи и свопы направлены на скрытие идентичности, входных и/или выходных данных (кто отправил что, сколько и кому). Компромиссы между разными решениями включают одно- или многоактивные защищенные пулы и уровень конфиденциальности. Примеры здесь включают Zcash, Намада, и Пенумбра.
  • Идентичность: Конфиденциальность является неотъемлемой частью любого решения, требующего связи нашей внеблокчейновой и блокчейновой идентичности или попыток хранения документов, удостоверяющих личность, на блокчейне. Несколько попыток были предприняты частным сектором (напримерДоказательство паспортаиГолоним) вместе с растущий интерес со стороны правительствдля поддержки решений, обеспечивающих конфиденциальность цифровой идентичности.
  • Управление: Идея частного онлайн-голосования заключается в том, чтобы скрыть, кто за что проголосовал, и сохранить общий итог голосования в тайне до конца голосования, чтобы это не влияло на решение голосующего.

  • Обзор некоторых существующих решений (источник)

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

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

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

Как мы можем оценить различные решения?

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

  1. Что такое Частное - Различные типы конфиденциальности, связанные с блокчейнами:
  1. Частные входы (сообщения)
  2. Приватные выходы (изменения состояния)
  3. Частные контрагенты
    1. Пользователи
    2. Функция
    3. Программа

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

Важно отметить, что у пользователя есть возможность выборочно раскрывать некоторые (или все) из них determinante к определенным сторонам, но если по умолчанию ни одно из них не является частным, то у пользователя нет такой опции.

  1. Programmability - Для чего можно использовать конфиденциальность?

Эта категория сосредоточена на программировании частного вычисления и его ограничениях:

  • Вы можете вычислять зашифрованные данные? Существует ли какая-либо компонентность между частными программами?
  • Могут ли частные и общедоступные состояния взаимодействовать каким-либо образом? Каковы ограничения и компромиссы в этом случае?
  • Какие ограничения существуют на сложность программ, которую вы можете иметь (лимит газа, экспрессивность и т. д.)?

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

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

  1. Надежность гарантий конфиденциальности - Насколько надежна конфиденциальность?

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

Это включает в себя такие вещи, как:

  • Какую информацию (если вообще какую-либо) пользователь должен предоставить доверенной третьей стороне или посреднику? Какие гарантии есть, что посредник будет вести себя ожидаемым образом?
  • Каков размер защищенного набора? (Multichain > Сеть (L1/L2) > Приложение > Одноактивный)
  • Каковы риски цензуры? (Приложение против конфиденциальности базового уровня)
  • Система доказательства является квантово-стойкой?
  • Требует ли система доказательств доверенной установки? Если да, сколько участников в ней участвовало?
  • Система имеет конфиденциальность по умолчанию или есть другие стимулы для максимизации количества взаимодействий в защищенном наборе?

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

Как это соглашение отображается на четыре вопроса, представленные в начале поста?

  • Какая информация может быть раскрыта и кому, если это необходимо? Этот вопрос связан с тем, что является личным и программированием. Если все информация по умолчанию является публичной, то единственный выбор, который у пользователей есть в отношении конфиденциальности, это участие в сети или нет. Нам нужна конфиденциальность по умолчанию, чтобы была возможность раскрыть (как минимум от других пользователей/внешних наблюдателей). Программируемость может быть представлена как детализированные правила раскрытия, т.е. кому, когда, что и какая информация раскрывается (и отзывается).
  • Кто имеет власть раскрывать информацию? Это в основном связано со степенью гарантий конфиденциальности и является наиболее сильным, когда только пользователь имеет власть делиться информацией (приватность с минимальным доверием).
  • Что необходимо раскрыть и кому для нормальной работы системы? Это в первую очередь связано с программируемостью. В идеале вам нужно раскрывать как можно меньше информации, при этом сохраняя возможность вычисления общего состояния, компонуемость между разными программами и возможность создания новых доверительных отношений. На практике это не так (по крайней мере, сегодня) и некоторые компромиссы приходится заключать.
    • Если на секунду отвлечься от блокчейнов, ZKP может привести к перелому в этом аспекте конфиденциальности, поскольку они позволяют нам доказывать, что что-то является истиной, не раскрывая избыточной информации. Например, при аренде квартиры нам нужно доказать потенциальному арендодателю, что у нас достаточный доход для оплаты аренды. Сегодня для этого требуется отправить наш полный банковский отчет, который раскрывает много дополнительной информации. В будущем эта доверительная связь может быть построена на основе краткого ZKP.
  • Какие гарантии существуют, что то, что является приватным сегодня, останется таковым завтра? Понятие "прогрессивной конфиденциальности" в основном связано с надежностью гарантий конфиденциальности. Большие защищенные наборы помогут в этом и сделают сложнее извлечение информации для внешних наблюдателей. Уменьшение доверия к посредникам может помочь, но не обязательно, так как даже если пользователи полностью контролируют свои данные, их ключи могут утекать, данные могут быть непреднамеренно раскрыты или раскрытые данные могут быть скопированы. Эта область остается относительно неизученной и недостаточно изученной, но она будет иметь все большее значение по мере распространения конфиденциальности в блокчейн-сетях.

Резюме

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

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

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

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

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

  1. Эта статья взята из [равновесие], Оригинальное название [Что мы на самом деле имеем в виду, когда говорим о конфиденциальности в сетях блокчейн (и почему это трудно достичь)?], Все авторские права принадлежат оригинальному автору [Hannes Huitula]. Если есть возражения к этому повторному изданию, пожалуйста, свяжитесь с Gate Learn команды, и они оперативно с этим справятся.
  2. Ограничение ответственности: Взгляды и мнения, высказанные в этой статье, являются исключительно мнением автора и не являются инвестиционным советом.
  3. Переводы статьи на другие языки выполняются командой Gate Learn. За исключением указанных случаев, копирование, распространение или плагиат переведенных статей запрещены.
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!