Виталик: Цифровая идентификация с использованием технологии ZK не несет никаких рисков?

Когда zk-SNARKs становятся «защитой» цифровой идентификации, мы можем потерять право на анонимность из-за «один человек - одна идентификация» — это и есть конечная игра, стоящая за технологией.

Автор: Виталик Бутерин

Перевод: Саорше, Foresight News

Сегодня использование zk-SNARKs для защиты конфиденциальности в системах цифровой идентификации в определенной степени стало мейнстримом. Различные проекты zk-passport разрабатывают очень удобные для пользователей программные пакеты, которые, благодаря zk-SNARKs, позволяют пользователям подтверждать наличие действительных удостоверений личности, не раскрывая никаких деталей своей идентификации. World ID (предшественник Worldcoin), который использует биометрическую верификацию и защищает конфиденциальность с помощью zk-SNARKs, недавно преодолел отметку в 10 миллионов пользователей. Один из государственных проектов цифровой идентификации в Тайване использует zk-SNARKs, а работа Европейского Союза в области цифровой идентификации также все больше сосредоточена на zk-SNARKs.

На первый взгляд, цифровая идентификация на основе технологий zk-SNARKs широко применяется и, похоже, станет большой победой для d/acc* (примечание: концепция, предложенная Виталиком в 2023 году, выступающая за продвижение децентрализованных технологий через технические инструменты (такие как криптография, блокчейн и т. д.), ускоряя при этом технологический прогресс, защищая от потенциальных рисков и находя баланс между инновациями в технологиях и безопасностью, конфиденциальностью и человеческой автономией.)*. Она может защитить наши социальные сети, системы голосования и различные интернет-сервисы от атак ведьм и манипуляций ботами, не жертвуя конфиденциальностью. Но действительно ли всё так просто? Существуют ли риски для идентификации на основе zk-SNARKs? В этой статье будут изложены следующие мнения:

  • zk-SNARKs упаковка (ZK-wrapping) решает множество важных проблем.
  • Упаковка идентификации с использованием zk-SNARKs все еще несет риски. Эти риски, похоже, не сильно связаны с биометрией или паспортами, большинство рисков (утечка конфиденциальной информации, легкость подверженности принуждению, системные ошибки и т.д.) в основном исходят от жесткого соблюдения атрибута «один человек — одна идентификация».
  • Другой крайностью является использование «доказательства богатства (Proof of wealth)» для противодействия атакам ведьм, что в большинстве случаев недостаточно, поэтому нам нужно какое-то решение «похожей идентификации».
  • Теоретически идеальное состояние находится между двумя крайностями, то есть стоимость получения N идентификаций составляет N².
  • Это идеальное состояние трудно реализовать на практике, но подходящая «многообразная идентификация» приближает нас к нему, поэтому это наиболее реальное решение. Многообразная идентификация может быть явной (например, идентификация на основе социальных графов) или неявной (существуют различные типы идентификаций с использованием zk-SNARKs, и ни один из типов не занимает долю рынка близкую к 100%).

Как работает идентификация, упакованная в zk-SNARKs?

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

На вашем телефоне есть секретное значение s. В глобальном реестре на блокчейне есть публичный хэш-значение H(s). При входе в приложение вы создадите уникальный идентификатор пользователя для этого приложения, то есть H(s, app_name), и подтвердите это с помощью zk-SNARKs: этот идентификатор соответствует какому-то публичному хэш-значению в реестре и происходит из одного и того же секретного значения s. Таким образом, для каждого публичного хэш-значения для каждого приложения может быть сгенерирован только один идентификатор, но никогда не будет раскрыто, какой идентификатор принадлежит какому публичному хэш-значению.

!

На самом деле, дизайн может быть немного сложнее. В World ID специальный ID приложения на самом деле является хэш-значением, состоящим из ID приложения и ID сессии, поэтому разные действия внутри одного и того же приложения также могут быть взаимно отвязаны. Дизайн паспорта на основе zk-SNARKs также может быть построен аналогичным образом.

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

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

Однако с помощью технологии упаковки на основе zk-SNARKs (ZK-wrapping, метод, использующий zk-SNARKs для защиты конфиденциальности идентификации пользователей, позволяющий пользователям подтверждать свою идентификацию без раскрытия конфиденциальной информации) вышеупомянутая проблема в значительной степени решена. Но далее необходимо обсудить менее упоминаемый момент: по-прежнему существуют некоторые вопросы, которые не только не были решены, но могут стать еще более серьезными из-за строгого ограничения «один человек — одна идентификация» в таких схемах.

zk-SNARKs сами по себе не могут обеспечить анонимность

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

В таких сценариях приложения социальных сетей не будут использовать сложные конструкции, такие как частая смена сеансовых ключей, а вместо этого будут назначать уникальный специализированный ID приложения для каждого пользователя. Поскольку система идентификации следует правилу «один человек — одна идентификация», пользователи могут иметь только одну учетную запись (это контрастирует с текущей концепцией «слабой идентификации» (weak ID), например, учетной записью Google, где обычный человек может легко зарегистрировать около 5 учетных записей). В реальном мире анонимность обычно требует наличия нескольких учетных записей: одна для «обычной идентификации», а другие для различных анонимных идентификаций (смотрите «finsta и rinsta»). Таким образом, в этой модели анонимность, доступная пользователю, вероятно, будет ниже текущего уровня. Таким образом, даже система «один человек — одна идентификация», упакованная с использованием zk-SNARKs, может постепенно привести нас к миру, где все действия должны привязываться к единственной открытой идентификации. В эпоху, когда риски растут (например, мониторинг с помощью дронов), лишение людей возможности защитить себя через анонимность принесет серьезные негативные последствия.

zk-SNARKs сам по себе не может защитить вас от принуждения

Даже если вы не раскрываете свое секретное значение s, никто не может увидеть открытые связи между вашими счетами. Но что если кто-то заставит вас раскрыть это? Государство может заставить вас раскрыть ваше секретное значение, чтобы просмотреть вашу активность. Это не пустые слова: правительство США уже начало требовать от заявителей на визу раскрытия своих аккаунтов в социальных сетях. Кроме того, работодатели могут легко установить раскрытие полной открытой информации как условие для найма. Даже отдельные приложения на техническом уровне могут требовать от пользователей раскрытия своей идентификации в других приложениях, прежде чем разрешить регистрацию (использование входа в приложение по умолчанию выполняет это действие).

!

Тем не менее, в этих случаях ценность атрибута zk-SNARKs полностью теряется, но недостатки нового атрибута «один человек — один аккаунт» по-прежнему сохраняются.

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

zk-SNARKs сами по себе не могут решить риски, не связанные с конфиденциальностью

Все формы идентификации имеют пограничные случаи:

  • Основываясь на правительственно выданной идентификации (Government-rooted ID), включая паспорта, не охватывает лиц без гражданства и не включает людей, которые еще не получили такие документы.
  • С другой стороны, такие государственные системы идентификации предоставят уникальные привилегии держателям множественного гражданства.
  • Учреждения, выдающие паспорта, могут стать жертвой хакерских атак, а разведывательные службы враждебных стран могут даже подделать миллионы ложных идентификаций (например, если «партизанские выборы» в русском стиле будут постепенно распространяться, то могут использоваться ложные идентификации для манипуляции выборами).
  • Для тех, кто имеет повреждения биометрических признаков из-за травм или заболеваний, биометрическая идентификация будет полностью недействительна.
  • Биометрическая идентификация, вероятно, может быть обманута подделками. Если ценность биометрической идентификации станет чрезвычайно высокой, мы даже можем увидеть людей, которые специально выращивают человеческие органы, только для того чтобы «массово производить» такие идентификаторы.

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

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

В纯粹的密码朋克群体中,一个常见的替代方案是:完全依赖 «财富证明» для предотвращения女巫攻击, а не строить какие-либо формы идентификации. Позволяя каждому аккаунту создавать определённые затраты, можно предотвратить легкое создание множества аккаунтов. Этот подход уже имел прецеденты в интернете, например, форум Somethingawful требует от зарегистрированных пользователей уплатить одноразовый сбор в 10 долларов, если аккаунт будет заблокирован, эта сумма не будет возвращена. Однако на практике это не является настоящей криптоэкономической моделью, потому что главное препятствие для создания нового аккаунта — это не повторная оплата 10 долларов, а получение новой кредитной карты.

Теоретически, даже можно сделать так, чтобы платежи имели условия: при регистрации аккаунта вам нужно только заложить сумму, и вы потеряете эти средства только в случае, если аккаунт будет заблокирован, что является крайне редким случаем. С теоретической точки зрения, это может значительно увеличить стоимость атак.

Этот подход значительно эффективен во многих сценариях, но в некоторых типах сценариев он совершенно не работает. Я сосредоточусь на двух классах сценариев, которые условно назову «сценарии, похожие на универсальный базовый доход (UBI-like)», и «сценарии, похожие на управление (governance-like)».

необходимость в идентификации в сценариях, аналогичных универсальному базовому доходу (UBI-like)

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

Что касается меня, я не думаю, что ценность таких токенов может достичь уровня, достаточного для поддержания личного существования. В экономике, управляемой искусственным интеллектом, с величиной богатства, достигшей текущего тысячекратного масштаба, такие токены, возможно, смогут иметь ценность для поддержания жизни; но даже тогда правительственные проекты, обеспеченные природными ресурсами, будут по-прежнему занимать более важное место в экономическом плане. Тем не менее, я считаю, что такие «мини-основные доходы для всех (mini-UBIs)» могут реально решить проблему: предоставить людям достаточное количество криптовалюты для выполнения некоторых основных транзакций в цепочке и онлайн-покупок. Конкретно это может включать:

  • Получить ENS имя
  • Опубликуйте хеш в цепочке для инициализации определенной zk-SNARKs идентификации
  • Оплата услуг социальных медиа платформ

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

Кроме того, существует еще один способ достижения аналогичного эффекта, а именно «универсальные основные услуги» (universal basic services): предоставление каждому человеку с идентификацией права на отправку ограниченного количества бесплатных транзакций в конкретном приложении. Этот подход может лучше соответствовать механизму стимулов и иметь более высокую капиталоемкость, поскольку каждое приложение, извлекающее выгоду из такого внедрения, может это сделать, не требуя оплаты от не пользователей; однако это также связано с определенными компромиссами, так как универсальность будет снижаться (пользователи могут гарантировать доступ только к приложениям, участвующим в данной программе). Но даже в этом случае необходима система идентификации, чтобы защитить систему от атак спама и избежать создания исключительности, которая возникает из-за требования от пользователей производить оплату определенным способом, который может быть недоступен для всех.

Последняя важная категория, на которую следует обратить внимание, — это «всеобщее базовое обеспечение» (universal basic security deposit). Одна из функций идентификации состоит в том, чтобы предоставить объект для ответственности без необходимости, чтобы пользователи вносили средства, эквивалентные масштабам стимулов. Это также помогает достичь цели: снизить зависимость порога участия от объема личного капитала (даже полностью избежать необходимости в каком-либо капитале).

В сценариях, подобных治理(governance-like), существует потребность в идентификации.

Представьте себе систему голосования (например, систему лайков и репостов на платформе социальных медиа): если ресурсы пользователя A в 10 раз больше ресурсов пользователя B, то и его право голоса будет в 10 раз больше, чем у B. Но с экономической точки зрения, каждая единица права голоса приносит A в 10 раз больше дохода, чем B (поскольку размер A больше, любое решение будет иметь более значительное влияние на его экономическую сторону). Таким образом, в целом, голос A приносит ему в 100 раз больше пользы, чем голос B приносит B. Именно поэтому мы обнаруживаем, что A будет вкладывать гораздо больше усилий в участие в голосовании, исследовать, как голосовать, чтобы максимизировать свои собственные цели, и даже может стратегически манипулировать алгоритмами. Это и есть основная причина, по которой «киты» могут оказывать чрезмерное влияние в механизме голосования токенов.

!

Более универсальная и глубокая причина заключается в том, что система управления не должна придавать одинаковую ценность ситуации, когда «один человек контролирует 100 000 долларов», и ситуации, когда «1000 человек совместно владеют 100 000 долларов». Последняя ситуация представляет собой 1000 независимых индивидуумов, и, следовательно, будет содержать более богатую и ценную информацию, а не высокую степень повторения информации небольшого объема. Сигналы от 1000 человек также часто более «умеренные», поскольку мнение разных индивидуумов часто компенсирует друг друга.

!

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

Это указывает на то, что системы управления на самом деле не будут удовлетворены практикой «независимо от источника финансирования, одинаковые объемы средств рассматриваются одинаково». Системе на самом деле необходимо понимать степень внутренней координации этих объемов средств.

Важно отметить, что если вы согласны с моим описательным框架 для вышеуказанных двух типов сцен (сцена с универсальным базовым доходом и сцена управления), то с технической точки зрения потребность в такой четкой правилах как «один человек — один голос» больше не существует.

  • Для приложений, подобных универсальному базовому доходу (UBI-like), действительно необходима следующая схема идентификации: первая идентификация бесплатна, а количество доступных идентификаций ограничено. Когда стоимость получения большего количества идентификаций становится такой высокой, что действия по атаке на систему теряют смысл, достигается эффект ограничения.
  • Для приложений, похожих на управление (governance-like), основной потребностью является: возможность через некий косвенный показатель определить, является ли ресурс, с которым вы имеете дело, под контролем единого субъекта или представляет собой некую «естественно сформировавшуюся» группу с низким уровнем координации.

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

Теоретически идеальное состояние: стоимость получения N идентификаций составляет N²

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

Во-первых, нельзя устанавливать четкое и явное жесткое ограничение на «количество идентификаций, которые можно легко получить». Если у человека может быть только одна идентификация, то о анонимности не может быть и речи, и его могут заставить раскрыть свою идентификацию. На самом деле, даже фиксированное количество, большее 1, несет риски: если все знают, что у каждого человека 5 идентификаций, то вас могут заставить раскрыть все 5.

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

Во-вторых, идентификация не должна полностью связываться с финансами (то есть стоимость получения N идентификаций составляет N), поскольку это позволит крупным субъектам легко получить чрезмерное влияние (в результате чего мелкие субъекты полностью лишатся голоса). Новая механика Twitter Blue это наглядно демонстрирует: ежемесячная плата за сертификацию в 8 долларов США слишком мала и не может эффективно ограничивать злоупотребления, в настоящее время пользователи в основном игнорируют этот сертификационный знак.

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

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

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

!

Старые читатели этого блога могут заметить, что это полностью совпадает с графиком из предыдущей статьи о «квадратном финансировании», и это не случайно.

Плюралистическая идентичность (Pluralistic identity) может реализовать это идеальное состояние

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

  • Явная множественная идентификация (Explicit pluralistic identity, также известная как «идентификация на основе социальных графов social-graph-based identity»). Вы можете подтвердить свою идентификацию (или другие утверждения, например, подтвердить, что вы являетесь членом определенной группы) через доказательства других людей в вашем сообществе, при этом идентификация этих доказателей также проверяется тем же механизмом. В статье «Децентрализованное общество» дано более подробное объяснение такого дизайна, Circles же является текущим примером.
  • Неявная множественная идентичность (Implicit pluralistic identity). Это текущая реальность, существует множество различных поставщиков идентификации, включая Google, Twitter, аналогичные платформы в разных странах и различные удостоверения личности, выданные государством. Очень немногие приложения принимают только один вид идентификации; большинство приложений совместимы с несколькими, так как только так можно достичь потенциальных пользователей.

!

Последний снимок графа идентификации Circles. Circles является одним из крупнейших проектов идентификации на основе социальных графов.

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

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

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

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

Важно отметить, что если рыночная доля какой-либо формы идентификации приближается к 100% и становится единственным вариантом входа, то вышеупомянутые характеристики утратят свою силу. На мой взгляд, это является наиболее серьезным риском для тех систем идентификации, которые чрезмерно стремятся к «универсальности»: как только их рыночная доля приближается к 100%, это приведет мир от многообразия идентификаций к модели «один человек — одна идентификация», а, как упоминается в данной статье, эта модель имеет множество недостатков.

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

Посмотреть Оригинал
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Награда
  • комментарий
  • Поделиться
комментарий
0/400
Нет комментариев
  • Закрепить