January 29, 2022

"Ваши NFT вам не принадлежат" перевод by theVSЁ

theVSЁ для вас | Telegram | Instagram | YouTube | Chat
Основатель приватного мессенджера Signal, криптограф и исследователь компьютерной безопасности – Мокси Марлинспайк недавно написал в своем блоге о том, что с крипто миром все не так радужно как многим кажется. Автор высказывает несколько действительно важных для понимания моментов, поэтому я сделал свой авторский перевод его статьи.

Про Web 1.0,Web 2.0 и Web 3.0


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

Web 3.0 – немного двусмысленный термин, но общий тезис таков: Web 1.0 был децентрализованным, потом Web 2.0 централизовал все в платформы, а теперь Web 3.0 включает в себя все преимущества второй версии, но снова всё децентрализует.

Для начала давайте разберёмся, почему вообще возникли централизованные платформы. На мой взгляд, объяснение довольно простое.

1. Люди не хотят управлять собственными серверами и никогда не захотят.

Предпосылкой для Web 1.0 было то, что каждый в интернете будет одновременно и создателем, и потребителем контента и веб-инфраструктуры.

У каждого был бы свой собственный сервер с собственным сайтом, свой почтовый сервер для емейлов и т.д. Но это точно не то, чего хотят люди. Люди не хотят управлять собственными серверами.

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

2. Протоколы развиваются гораздо медленнее, чем платформы.

Спустя 30 с лишним лет электронная почта всё ещё остаётся незашифрованной! В то же время WhatsApp за год внедрил полное e2ee шифрование. Люди все еще пытаются стандартизировать надежную передачу видео через IRC. Тем временем Slack позволяет вам создавать кастомные эмодзи на основе вашего лица.

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

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

Но в Web 3.0 предполагается, что все будет иначе. И чтобы почувствовать этот мир и лучше его понять, я решил построить пару dApp и создать NFT.

Про dApps

Чтобы прочувствовать мир Web 3.0, я создал dApp под названием Autonomous Art, который позволяет любому получить NFT-токен, делая визуальный вклад в изображение. Стоимость вклада увеличивается со временем, а средства, которые вкладчик платит за токен, распределяются между всеми предыдущими художниками (визуализация этой финансовой структуры напоминает нечто похожее на пирамиду).

Ещё я создал dApp под названием First Derivative, который позволяет создавать, находить и обменивать производные NFT, отслеживающие базовый NFT, подобно финансовым деривативам, отслеживающим базовый актив.

И то, и другое дало мне представление о том, как устроен этот мир.

Для ясности – в самих приложениях нет ничего особенно «распределенного»: это обычные веб-сайты, написанные на react. «Распределенность» относится к тому, где хранится состояние и логика/разрешения для обновления состояния: на блокчейне, а не в «централизованной» базе данных.

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

С переходом на мобильные устройства мы теперь живем в мире клиентов и серверов – причем первые совершенно не могут действовать как вторые – и сейчас это особенно важно. Между тем, Ethereum приравнивает серверы к «клиентам», но никто не говорит, что в случае успеха в конечном итоге клиентов будет на миллиарды больше, чем серверов.

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

Но, как мы знаем, люди не хотят управлять собственными серверами. Сейчас появились компании, которые продают API-доступ к Ethereum-ноде как услугу и на данный момент существует, по сути, две компании – Infura и Alchemy. Почти все dApp используют Infura или Alchemy для взаимодействия с блокчейном. На самом деле, когда вы подключаете к dApp к примеру MetaMask, и dApp взаимодействует с блокчейном через ваш кошелек, MetaMask просто выполняет вызовы Infura.

Клиентские API не используют ничего для проверки состояния блокчейна или подлинности ответов. Результаты даже не подписаны. Такое приложение, как Autonomous Art делает запрос, а Alchemy или Infura отправляют JSON-ответ, который уже и отображает приложение.

Для меня это было удивительно. Столько труда, энергии и времени было потрачено на создание механизма распределенного консенсуса без доверия, но практически все клиенты, желающие получить к нему доступ, делают это, просто доверяя ответам этих двух компаний без какой-либо дополнительной проверки. Это также создает проблемы и с конфиденциальностью. Представьте, что каждый раз, когда вы взаимодействуете с веб-сайтом в Chrome, ваш запрос сначала отправляется в Google, а затем направляется к месту назначения и обратно. Такова ситуация с Ethereum сегодня. Понятно, что все записи публично доступны на блокчейне, но эти компании также видят почти все запросы на чтение от почти всех пользователей почти всех dApp.

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

Приведу пример...

Про NFT

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

Вместо этого, NFT содержат URL-адрес, указывающий на данные. И что меня удивило, так это отсутствие хэш-шифрования для данных, расположенных по URL.

Если посмотреть на NFT на популярных маркетплейсах, которые продаются за сотни тысяч и даже миллионы долларов, этот URL часто просто указывает на какой-то VPS (виртуальный сервер), на котором работает обычный Apache. Любой человек, имеющий доступ к этому серверу, или кто купит этот домен в будущем, или кто взломает этот сервер, может в любой момент изменить изображение, заголовок, описание NFT на то, что он захочет (независимо от того, «владеет» он токеном или нет). В спецификации NFT нет ничего, что говорило бы о том, каким «должно быть» изображение, или даже позволяло бы вам подтвердить, является ли что-то «правильным» изображением.

Поэтому в качестве эксперимента я сделал NFT, который меняется в зависимости от того, кто на него смотрит, поскольку веб-сервер, обслуживающий изображение, может выбирать разные изображения в зависимости от IP или User Agent запрашивающего. Например, на OpenSea она выглядит по-одному, на Rarible – по-другому, но когда вы покупаете ее и просматриваете из своего крипто-кошелька, она всегда будет отображаться как большой 💩 эмодзи. То, что вы покупаете, не является тем, что вы получаете. В этом NFT нет ничего необычного, там используется обычная спецификация NFT. Многие из самых дорогих NFT могут превратиться в картинку члена в любое время!

Забавно, что через несколько дней, NFT, который я сделал, был удален из OpenSea без какого-либо предупреждения:

В сообщении говорится, что я нарушил условия предоставления услуг. Но, прочитав условия, я не вижу ничего, что запрещало бы NFT, который меняется в зависимости от того, откуда на него смотрят.

Но наиболее интересно, что после того, как OpenSea удалил мой NFT, он также пропал из всех крипто-кошельков на моих устройствах. Это же web3, как такое возможно?

Крипто-кошелек, такой как MetaMask, Rainbow и т.д., является "non-custodial" (ключи хранятся на стороне клиента), но у него есть та же проблема, что и у моих dApps выше: кошелек должен работать на мобильном устройстве или в браузере. Между тем, Ethereum и другие блокчейны были разработаны с идеей, что это сеть равных, но не разработаны таким образом, чтобы было возможно, чтобы ваше мобильное устройство или ваш браузер были одним из этих равных.

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

  • Например, вот так MetaMask отображает ваши последние транзакции, совершая API-вызов к Etherscan:
  • Вот так он отображает баланс вашего счета, совершая API-вызов к Infura:
  • А вот так отображает ваши NFT, делая вызов API к OpenSea:

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

MetaMask на самом деле не делает ничего особенного, это просто просмотр данных, предоставляемых этими централизованными API. Это не проблема конкретно MetaMask – Rainbow и другие устроены точно так же.

Интересно, что Rainbow имеет свои собственные данные для социальных функций, которые они встроили в свой кошелек – социальный граф, витрины и т.д. И они решили построить все это на Firebase, а не на блокчейне.

Всё это означает, что если ваш NFT будет удален из OpenSea, он также исчезнет из вашего кошелька. Функционально не имеет значения, что мой NFT находится где-то на блокчейне, потому что кошелек (и все больше и больше всего остального в экосистеме) просто использует API OpenSea для отображения NFT, который начал возвращать 304 No Content для запроса NFT, принадлежащих моему адресу!

Про новый мир

Учитывая историю превращения Web 1.0 в Web 2.0 , мне кажется странным, что такие технологии, как Ethereum, были построены с теми же скрытыми проблемами, что и Web 1.0. Чтобы сделать эти технологии пригодными для использования, пространство консолидируется вокруг платформ. Опять. Платформы, которые будут запускать для вас серверы и предоставлять сервисы на их базе. Infura, OpenSea, Coinbase, Etherscan.

Аналогично, протоколы Web 3.0 развиваются медленно. При создании First Derivative было бы здорово установить цену майнинга деривативов как процент от стоимости базового актива. Этих данных нет в блокчейне, но они есть в API, который OpenSea предоставит вам. Люди в восторге от роялти NFT, поскольку это поможет зарабатывать креаторам, но роялти не указаны в ERC-721, и менять это уже поздно, поэтому у OpenSea есть свой способ настройки роялти, который существует в Web 2.0-пространстве. Быстрые итерационные улучшения на централизованных платформах уже опережают распределенные протоколы, и это консолидирует контроль на платформах.

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

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

Я не обвиняю OpenSea! Наоборот, они пытаются сделать что-то, что работает. Я думаю, стоит ожидать, что такая консолидация платформ произойдет, и, учитывая ее неизбежность, создавать системы, которые дают нам то, что мы хотим, когда все так устроено. Однако мне кажется, что фанатики Web 3.0 ожидают какого-то иного результата, чем тот, который мы уже видим.

Это только начало

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

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

Но золотую лихорадку не остановить

Если подумать, OpenSea был бы намного «лучше», если бы все фишки Web 3.0 исчезли. Он был бы быстрее, дешевле и проще в использовании. Например, чтобы принять ставку на мой NFT, мне пришлось бы заплатить более $80-150 комиссионых за газ. Это устанавливает искусственный порог для всех предложений, поскольку в противном случае вы потеряете деньги, приняв предложение за меньшую сумму, чем плата за газ. Комиссии за платежи кредитными картами, которые обычно кажутся грабительскими, выглядит куда дешевле по сравнению с этим. OpenSea мог бы даже публиковать простой журнал прозрачности, если бы люди хотели иметь публичную запись транзакций, предложений, заявок и т.д. для проверки своей отчетности.

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

Людей в конце очереди, которые обменивают NFT, в принципе не волнуют модели распределенного доверия или механика платежей. Их волнует, где находятся деньги. Поэтому деньги привлекают людей в OpenSea, они улучшают пользовательский опыт, создавая платформу, которая использует базовые протоколы Web 3.0 в пространстве Web 2.0, в конечном итоге они предлагают возможность «создавать» NFT через сам OpenSea, а не через ваш собственный смарт-контракт, и в конечном итоге все это открывает дверь для Coinbase, который предлагает доступ к проверенному рынку NFT с помощью своей собственной платформы через вашу дебетовую карту. Это открывает возможность для Coinbase управлять самими токенами через дарк-пулы, которыми владеет Coinbase, что позволяет отказаться от комиссий за транзакции и вообще не взаимодействовать со смарт-контрактами. В конце концов, все части Web 3.0 исчезают, и у вас есть веб-сайт для покупки и продажи JPEG с помощью вашей дебетовой карты. Вот такая вот цепочка.

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

Я думаю, что эта рыночная ситуация сохранится, и вопрос лишь в том, как долго это будет продолжаться и окажется ли огромное количество накопленной криптовалюты в конечном итоге двигателем прогресса или дырявым ведром. Если деньги, приходящие в NFT, в конечном итоге возвращаются в криптовалютное пространство, то оно может продолжать ускоряться вечно (независимо от повяления Web 3.0 или продолжении жизни Web 2.0). А если бабки будут оттекать, то всё сдуется так же независимо ни от чего. Лично я думаю, что на данный момент было влито уже достаточно денег, чтобы всё продолжалось, и это не окажется просто пузырем.

Креатива может быть недостаточно

Глядя на Web 3.0 через призму проектов, я могу легко понять, почему так много людей находят экосистему Web 3.0 такой изящной. Я не думаю, что мы избавимся от централизованных платформ. Я не думаю, что это фундаментально изменит наше отношение к технологии. И я думаю, что "история конфиденциальности" уже для интернета окончена (привет Facebook). Но я также понимаю, почему айтишники хотят создавать что-то в этом мире. Это, по крайней мере, что-то новое и это создает пространство для творчества/исследований, которое в некоторой степени напоминает ранние дни Интернета. По иронии судьбы, часть этого творчества, вероятно, проистекает из ограничений, которые делают Web 3.0 таким неуклюжим. И если мы действительно хотим изменить наше отношение к технологиям, я думаю, мы должны делать это целенаправленно.

Мои итоговые мысли таковы:

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

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

2. Нужно упростить создание программного обеспечения.

На данный момент проекты по созданию программного обеспечения требуют огромных человеческих затрат. Даже относительно простые приложения требуют, чтобы группа людей сидела перед компьютером по восемь часов в день, каждый день, бесконечно. Так было не всегда, и было время, когда 50 человек, работающих над программным проектом, не считались «маленькой командой». Пока программное обеспечение требует такой согласованной энергии и такого большого количества узкоспециализированных человеческих усилий, я думаю, оно будет служить интересам людей, сидящих в этой комнате каждый день, а не нашим более широким целям. Я думаю, что изменение нашего отношения к технологиям, вероятно, потребует упрощения создания программного обеспечения. Но к сожалению, я думаю, что распределенные системы будут усугублять эту тенденцию, делая вещи более сложными и более трудными, а не наоборот.

На этом vsё. Спасибо за прочтение!

больше контента на theVSЁ | Telegram | Instagram | YouTube | Chat