Kitobni o'qish: «Настольная книга криптоинвестора. Руководство для начинающих и продолжающих», sahifa 3

Shrift:
Смарт-контракты

Первые смарт-контракты появились еще на биткоине, но это была примитивная функция, которую полноценными смарт-контрактами нельзя называть.

30 июля 2015 года состоялся запуск эфириума и стали доступны первые смарт-контракты традиционного типа. С тех пор началось планомерное развитие этой технологии.

Смысл ее работы: программист записывает в ячейку блокчейна код, там устанавливается программа, к которой другие пользователи могут обращаться. Эта программа будет выполнять ту функцию, которую в нее прописал программист. А дальше смарт-контракт работает как показано на рис. 7.

Рис. 7. Принцип работы смарт-контракта.


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

Вот почему и существуют две сети: эфириум классик и эфириум. В протоколе Maker DAO программисты допустили ошибку, которая позволила хакерам, используя уязвимость смарт-контракта, похитить значительную сумму в эфириуме. Сейчас подобное, скорее всего, не произойдет, но тогда эфириум был молодым проектом. Сообщество решило, что они сделают откат до момента этого действия, чтобы спасти деньги, которые были украдены. Часть пользователей согласилась с этим решением, а часть нет. И последние стали пользователями системы эфириум классик.

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

Смарт-контракты бывают уязвимы, особенно когда вы пользуетесь мостом. И первая уязвимость – логика, прописанная в смарт-контракте, может содержать математические изъяны.

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

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

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

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

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

Вспоминайте рис. 1: есть сеть блокчейна, где блок идет за блоком. И есть разные механизмы создания нового блока. Самый примитивный и надежный я уже обозначал – это подтверждение работы (Proof of Work, PoW). Раньше и у эфириума был этот механизм, но сейчас они перешли на другой.

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

Второй механизм – подтверждение ставки (Proof of Stake, PoS). Это тоже децентрализованный механизм, но теперь подтверждение происходит с помощью специальных нод – тех, кто заблокировал 32 ETH для этих целей. Проще говоря, открыл специальный вклад с минимальным депозитом в 32 ETH и теперь получает прибыль. Они же получают комиссии за создание блока и за транзакции.

Но есть проблема, которая заключается в том, что чем больше нод, тем меньше скорость транзакций. Поэтому многие используют упрощенную версию: делегированный Proof of Stake. Здесь вы голосуете за валидаторов – ограниченное количество крупных узлов, которые создают новый блок и подтверждают транзакции. При этом снижается децентрализация сети.

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

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

1.4. Развитие Ethereum

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

Монета второго поколения – это эфириум, который работал по принципу Proof of Work. Сейчас эфириум в подвешенном состоянии: он еще в принципе остается во втором поколении и не попадет никогда в третье, но он развивается, чтобы стать монетой четвертого поколения. То есть он стремится сохранить децентрализацию и безопасность, но при этом повысить пропускную способность, поэтому технологически он сейчас отстает от многих монет третьего поколения. Правда, пока ему не удается значительно повысить пропускную способность.

Монеты третьего поколения – это переходное звено между вторым, в котором появились смарт-контракты, и четвертым, где сохраняется высокая скорость исполнения при сохранении децентрализации. В чем разница? Есть масса других вариантов протоколов, но в основном это различные версии делегированного Proof of Stake (DPoS), именно на них создается высокая пропускная способность в третьем поколении.

Условно говоря, вы хорошо понимаете, как проходят выборы государственной думы. Граждане выбрали депутата, проголосовали за него, и затем он принимает за них решение. Так же и здесь: есть ограниченный круг валидаторов, допустим, 1000 или даже 10 000. Валидаторов выгодно отличает от депутатов ответственность: они отвечают за свои действия собственными финансами. Как это происходит? Чтобы стать валидатором, они кладут крупную сумму в обеспечение своей ноды и отвечают этим капиталом за свои неправомерные действия. Если они будут действовать во вред сети, и это обнаружится, они будут оштрафованы сетью вплоть до потери всей суммы.

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

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

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

Чтобы эфириум стал валютой четвертого поколения, ему нужно перейти на эфириум 2.0. Для этого запустили новую цепочку beacon chain, у которой множество ответвлений, одним из которых стала старая первоначальная сеть с Proof of Work, работа на которой сейчас уже экономически нерентабельна. Была создана такая сеть-скелет, на которую потом будут настраиваться другие сети, называемые шардами (рис. 8).

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

Чтобы люди прекратили майнинг после окончания вычисления, в старой сети встроено увеличение сложности, которое называется «бомба сложности». Как только она запущена в действие, сложность майнинга возрастает до огромных значений, и вычисления нового блока становятся нерентабельны в производстве. Поэтому все дальнейшие операции проходят в beacon chain.


Рис. 8. Схема развития сети эфириума.


Шардинг стремится сохранить децентрализацию. Как это работает?

Из текущих решений, которые актуальны, можно назвать два типа: Optimistic Rollup и Zk-Rollup. Это не мегакрутые решения, которые позволят сделать эфириум такой же платежной сетью, как Visa или Mastercard, но движение в эту сторону положено.

Rollup в простом переводе – это рулон. Чтобы вы лучше поняли суть работы этого решения, приведу простую аналогию.

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

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

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

Есть два способа проверки: Zk-Rollup и Optimistic Rollup. Они анализируют транзакции пользователей и проверяют, достоверные ли они. Разница между ними в типе проверки, который они используют.

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

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

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

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

Zk означает доказательство с нулевым разглашением, то есть вы не показываете всех пассажиров автобуса, но у вас есть доказательства, что все пассажиры в нем верные. Эту проверку можно произвести быстро, и в этом смысл Zk-Rollup.

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


Рис. 9. Схема выполнения транзакций в Zk-Rollup.


Допустим, вы 50 человек посадили, значит, увеличили скорость эфириума в 50–100 раз. Поговаривают, что Zk-Rollup смогут увеличивать эту скорость до 1000 транзакций в секунду.

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

1.5. Базовые сервисы по крипте

Существует несколько базовых сервисов для анализа блокчейна криптовалют. Кратко расскажу о двух основных.

blockchain.com

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


Здесь показывается общая информация:

• рыночная цена биткоина, причем можно выбрать как за все время его существования, так и за определенный интервал;

• сколько всего биткоинов в обращении, тоже с возможностью заглянуть в историю с момента возникновения криптовалют;

• рыночная капитализация9 биткоина;

• текущая цена и объем биржевой торговли покажет, насколько активно торгуют этим активом (например, если активность падает, значит к нему теряется интерес);

• движение двухсотдевной скользящей линии биткоина – интересный параметр: если линия быстро растет вверх и достигает красных отметок, значит рынок перегрет и перекуплен;

• текущий размер блокчейна (на конец февраля 2024-го он был равен 552 Гб);

• среднее время подтверждения транзакции (как долго она будет выполняться);

• динамика и распределение хешрейта10 (здесь можно заметить, что ни один майнер не хочет занимать более 50 %, потому что возникнет подозрение на двойную трату или атаку 51; поэтому когда они сильно вырастают в объеме, то закрывают прием новых майнеров);

• сложность сети тоже интересный параметр, который показывает: если майнеров становится меньше, то сложность сети уменьшается;

• комиссия за транзакцию (тоже можно посмотреть в целом за все время: раньше можно было сделать транзакцию на биткоине за доллар, с последними обновлениями комиссия поднялась – порядка четырех долларов; но там же на графике вы можете увидеть, что в пике был аж по 30–40 долларов, но сейчас эта эйфория снижается и, скорее всего, комиссия вернется в норму – около одного-двух долларов за транзакцию).

В целом, как вы понимаете, на blockchain.com можно посмотреть общие базовые параметры.

8.Одна из крупнейших криптовалютных бирж по объему торгов.
9.Капитализация – это текущее рыночное предложение валют, помноженное на текущую рыночную стоимость.
10.Хешрейт – здесь имеется в виду совокупная вычислительная мощность всех майнеров, подключенных к сети.
87 181,76 s`om