June 22, 2022

The Web3 Fraud

К настоящему моменту практически все читатели ;login: слышали, что термины "web3" и "dapps" звучат так, как будто это великая революция. Это не так. Технические основы настолько ужасны, что очевидно, что они существуют только для того, чтобы рекламировать криптовалюты, лежащие в их основе. Фактическая полезность этих "децентрализованных" систем уже доступна в современных распределенных системах, которые на несколько порядков эффективнее.

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

Децентрализованная система, с другой стороны, отказывается от понятия идентифицированных субъектов. Вместо этого каждый может участвовать, и предполагается, что участники взаимно антагонистичны или, по крайней мере, максимизируют свою прибыль. Поскольку децентрализованные системы зависят от той или иной формы голосования, всегда есть опасность вброса. В конце концов, злоумышленник может просто создать кучу sock-puppets*, называемых "sybils", и получить все голоса, какие захочет.

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

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

Децентрализованные системы призваны устранить присутствие "привратников". Но существует проблема, поскольку без таких привратников нет эффективного решения проблемы сибилла. Вместо этого существуют уродливые решения вроде системы "proof of work", где сибилы предотвращаются только за счет необходимости тратить ресурсы, или "proof of stake", где cуть буквально в том, что "у кого есть золото, тот устанавливает правила".

Концепция Web3

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

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

Теперь я настраиваю свой сервер и решение для хранения данных у другого привратника: моего хостинг-провайдера. Хорошим (хотя и недешевым) хостинговым решением является EC2 от Amazon Web Services. Я начинаю с небольшого сайта, поэтому, вероятно, смогу обойтись микро-инстансом, который представляет собой 1 ядро процессора и 1 ГБ памяти и стоит около $8 в месяц, с $.08/ГБ в месяц за постоянное хранилище и $.09/ГБ, отправляемых посетителям моего сайта.

Наконец, я действительно создаю свой сайт. Мой сайт действительно представляет собой распределенные вычисления, разделенные между моим сервером и веб-браузерами моих пользователей. Браузер посетителя запускает JavaScript, который выполняет вычисления и представление на стороне пользователя, в то время как моя сторона состоит из HTTP-сервера, моей собственной пользовательской логики и, возможно, базы данных для эффективного хранения пользовательских данных. Такая конструкция разделяет доверие: браузеру пользователя доверяют только данные идентифицированного пользователя, а логике сервера доверяют доступ к данным всех пользователей. Постоянное хранилище в основном находится на сервере, но я могу кэшировать данные на клиенте для более быстрого доступа. В целом это обходится мне, вероятно, в 20 долларов в месяц.

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

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

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

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

Любой блок блокчейна Ethereum представляет собой максимальный объем вычислений, который в настоящее время составляет 30 миллионов gas. Система добавляет новый блок каждые 15 секунд, что означает, что общий объем вычислений в сети Ethereum составляет 2 миллиона gas/секунду, поскольку именно этот объем вычислений записывается в бухгалтерскую книгу Ethereum.

Оценить стоимость (измеряемую в "газе") произвольного вычисления довольно сложно, но давайте предположим, что нас интересует только самая простая операция: сложение 256-битных целых чисел. Каждое сложение стоит 3 газа. Таким образом, в мировом масштабе скорость этой системы составляет 600 000 сложений в секунду.

Сравните этот объем вычислений с Raspberry Pi 4, одноплатным компьютером стоимостью 45 долларов, который имеет четыре процессора, работающих на частоте 1,5 ГГц. Каждое ядро имеет 2 ALU, и для выполнения 256-битного сложения потребуется 4 инструкции, поскольку базовая единица Raspberry Pi (и большинства других современных компьютеров) - 64 бита. Таким образом, пиковая производительность каждого ядра составляет 750 000 000 сложений в секунду, а общая пиковая производительность - 3 000 000 000 сложений в секунду. Грубо говоря, "мировой компьютер" Ethereum обладает примерно 1/5 000 вычислительной мощности Raspberry Pi 4!

Это могло бы быть приемлемо, если бы вычисления не были также ужасающе дорогими. Текущая плата за транзакцию при потреблении газа в 30М составляет более 1 Эфира. При текущей цене примерно $4000 за Ether это означает, что секунда вычислений Ethereum стоит $250. Таким образом, секунда работы виртуальной машины Ethereum стоит в 25 раз больше, чем месяц работы моего гораздо более мощного экземпляра EC2. Или я мог бы купить несколько Raspberry Pi.

А как насчет хранения данных? Весь блокчейн Ethereum - это всего лишь 1 терабайт данных, и в минуту в него добавляется всего несколько сотен килобайт. Хранение блокчейна Ethereum с помощью надежной коммерческой службы, такой как Amazon S3, стоит всего 20 долларов в месяц.

Даже самая оптимальная стратегия хранения в Ethereum требует 600 газа на байт. Однако общая вычислительная мощность сети составляет всего 2М газа в секунду, поэтому для хранения 1 мегабайта потребуется 300 секунд. Таким образом, блокчейн Ethereum не только может хранить только 3 кБ данных в секунду, но и хранить эти 3 кБ стоит $250! Таким образом, стоимость записи одного сообщения объемом 3 кБ в блокчейн Ethereum равна стоимости года хранения на Amazon всего блокчейна Ethereum объемом 1 ТБ. Или такая же цена, как покупка твердотельного накопителя M.2 емкостью 1 ТБ.

Выводы

Я знаю, что некоторые криптоэнтузиасты будут утверждать, что их любимый блокчейн дешевле Ethereum. И это правда, недоиспользуемые криптовалюты могут быть на один или два порядка дешевле в использовании в видении "web 3" по сравнению с Ethereum. Что все равно означает на 6 порядков хуже, чем обычное распределенное решение.

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

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

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

* Nerd sniping — "охота на ботанов", это сленговый термин, описывающий особенно интересную проблему, которая ставится перед ботаником, часто физиком, техническим гиком или математиком. Ботаник прекращает всякую деятельность, чтобы уделить внимание решению проблемы, часто на свой страх и риск.


Оригинал статьи

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

Мой канал, где пишу, перевожу, делюсь, учусь, учу, ворчу: https://t.me/pseudointellectualshit

Спасибо за то, что читаете и делитесь. Мне это очень приятно.
Ом мани падме хум.