Содержание статьи
Когда в 2009 году появился Bitcoin, многим казалось, что этот необычный эксперимент так и останется уникальным. Децентрализованная электронная валюта, использующая в своей основе криптографию, выглядела настолько необычно, что само ее существование уже воспринималось как технологическое чудо. Но вскоре разработчики по всему миру начали задаваться вопросами: можно ли подтверждать транзакции быстрее, как повысить конфиденциальность, есть ли способы превратить крипту в универсальную платформу, на которой работают сложные приложения для автоматизации сделок? Так появились десятки, затем сотни, а потом и тысячи новых проектов, а сам биткоин стал не конечной целью, а отправной точкой принципиально новой цифровой индустрии. Многие из подобных проектов вполне успешно решают задачи, о которых создатели первой криптовалюты даже не задумывались.
Цикл «Крипта с нуля»
- Крипта с нуля. Разбираемся с алгоритмами в основе криптовалют
- Крипта с нуля. Выясняем, как устроен блокчейн
- Крипта с нуля. Выясняем, как работает майнинг
- Крипта с нуля. Разбираемся в архитектуре Bitcoin
- Крипта с нуля. Изучаем экосистему криптовалют (эта статья)
Сегодня словом «криптовалюта» называют совершенно разные технологии, причем зачастую безосновательно. Litecoin отличается от Bitcoin вовсе не тем, чем Monero от Ethereum, а токен USDT и вовсе не является самостоятельной криптовалютой, хотя большинство пользователей хранит его в том же кошельке и переводит точно так же, как биткоины или эфир. Новички называют криптовалютой любой цифровой актив, а биржи торгуют тысячами монет и токенов, хотя за ними скрываются принципиально разные технические решения. Давай разберемся, какие идеи появились после Bitcoin, почему возникли альткоины, чем они отличаются друг от друга, зачем понадобились токены, а заодно обсудим, почему далеко не каждая громкая идея переживает проверку временем.
Форки Bitcoin
Почти любая зрелая технология рано или поздно сталкивается с одной и той же проблемой: пока пользователей мало, все довольны, но стоит нагрузке вырасти — и сразу выясняется, что часть архитектурных решений уже не отвечает возросшим требованиям. Именно это произошло с Bitcoin. Сеть изначально была задумана максимально консервативной, изменить правила работы блокчейна крайне сложно: для этого необходимо, чтобы обновление приняло большинство участников системы. Это защищает блокчейн от поспешных экспериментов, но, если сообщество не сможет договориться о развитии протокола, у разработчиков останется один‑единственный путь: отделиться.
Изменения правил работы блокчейна называют форком (fork, «развилка»). Если новые правила совместимы со старыми, сеть продолжает существовать как единое целое (такие обновления называют soft fork), если же совместимости нет, после определенного блока история блокчейна расходится на две независимые цепочки. Такой сценарий называется hard fork, и именно он приводит к появлению новой криптовалюты.
Самым известным примером хардфорка стал Bitcoin Cash, который появился на свет в августе 2017 года. К тому моменту Bitcoin переживал серьезные проблемы с масштабируемостью: размер блока был ограничен одним мегабайтом, а количество транзакций росло, мемпул переполнялся, поэтому комиссии временами достигали десятков долларов, а подтверждения транзакций приходилось ждать очень долго. Сообщество предложило несколько вариантов решения: одна группа разработчиков выступала за сохранение небольших блоков и внедрение технологий второго уровня, прежде всего Lightning Network, другая считала, что проблему можно решить проще — всего лишь увеличить размер блока и тем самым повысить пропускную способность сети. Компромисс найти не удалось.
В результате часть участников сети запустила собственную версию блокчейна с увеличенным лимитом размера блока — Bitcoin Cash. До момента разделения обе сети имели абсолютно одинаковую историю: все транзакции и балансы совпадали, но после форка эти две ветви блокчейна начали жить независимо друг от друга. Пример Bitcoin Cash наглядно показывает, что, если достаточное число участников соглашается с изменением правил, возникает новая сеть с независимой экономикой, собственными разработчиками и собственным сообществом.
У Litecoin совсем другая история: хотя эту криптовалюту тоже называют форком Bitcoin, она родилась не в результате раскола. Проект был создан в 2011 году бывшим инженером Google Чарли Ли как самостоятельная криптовалюта на основе открытого исходного кода Bitcoin. Чарли не ставил своей целью заменить Bitcoin, он хотел выяснить на практике, как будет работать блокчейн при изменении его параметров. В Litecoin время создания блока сократили с десяти минут до двух с половиной, благодаря чему новые подтверждения поступают примерно в четыре раза быстрее. Максимальная эмиссия также увеличилась в четыре раза — до 84 миллионов монет вместо 21 миллиона у Bitcoin.
Имелись и другие отличия: например, в алгоритме proof of work вместо SHA-256 использовался Scrypt, который в первые годы считался менее удобным для специализированных устройств вроде ASIC-майнеров, из‑за чего монеты Litecoin довольно эффективно добывались на обычных видеокартах. Но со временем для Scrypt также появились ASIC-устройства, и это преимущество постепенно исчезло. Блокчейн Litecoin первым примерил на себя важные изменения протокола: так, обновление SegWit, которое вынесло часть данных транзакции (прежде всего подписи) за пределы основной структуры, активировали в сети Litecoin раньше, чем в Bitcoin. Здесь же появились первые атомарные свопы (atomic swaps) — это механизм прямого обмена криптовалютами между двумя сторонами без участия биржи и других посредников. Лайткоин быстро обрел своих верных поклонников: если биткоин часто называют «цифровым золотом», то лайткоин — «цифровым серебром».
К слову, в 2013 году появился уже «форк форка» — вторая производная от Litecoin, которую создали программисты Билли Маркус и Джексон Пэлмер в качестве шуточного проекта, высмеивающего царившую тогда криптовалютную лихорадку с бесконечными форками и спекуляциями. Этот блокчейн создатели назвали Dogecoin (догкоин), а в качестве маскота выбрали собаку породы сиба‑ину с популярного тогда мема. Dogecoin унаследовал от прародителя алгоритм Scrypt и общую архитектуру. С 2014 года в этой сети начал действовать merge-mining — то есть майнеры получили возможность одновременно добывать обе монеты одним и тем же вычислительным усилием, что решило проблему низкой хешрейт‑безопасности, с которой Dogecoin столкнулся в первые годы своего существования. Во всей этой истории удивительна культурная живучесть проекта, наглядно показывающая, что успех криптовалюты не всегда определяется одними лишь техническими преимуществами, — рыночная капитализация Dogecoin годами держалась в топ-10 без сколько‑нибудь значимых обновлений протокола. Даже несмотря на то, что сама криптовалюта появилась на свет в качестве прикола.
Как видишь, эти два форка — явления совершенно разного порядка: один проект возник из‑за принципиального спора о будущем существующей сети, другой — как самостоятельный эксперимент на основе свободно распространяемых исходников. Но в обоих случаях открытость протокола сыграла ключевую роль: любой разработчик может взять существующий код, изменить правила работы системы и предложить миру собственное видение того, каким должен быть блокчейн.
Ethereum: блокчейн с программируемостью
В Bitcoin каждая транзакция подчиняется довольно жестким правилам: она может разрешить потратить ранее полученные выходы, передать их другому адресату, а также в некоторых случаях заблокировать средства до наступления определенных условий или до предъявления нужной подписи. Практически с самого начала в этом блокчейне существует специальный скриптовый язык, но он намеренно ограничен: в нем нет циклов, а набор операций строго контролируется. Такое решение было принято сознательно — чем проще логика, тем легче анализировать безопасность сети.
В 2013 году российско‑канадский программист Виталик Бутерин решил сделать следующий шаг. Он попытался создать на основе блокчейна универсальную распределенную вычислительную платформу, в которой можно было бы широко применять автоматизацию. Так появилась сеть Ethereum (в русскоязычном варианте — «эфир»), которая начала работу 30 июля 2015 года.
Главным новшеством стала встроенная виртуальная машина — Ethereum Virtual Machine (EVM). С виртуальными машинами знаком, наверное, каждый, кто хотя бы раз в жизни пытался запустить «Линукс» под виндой, но EVM работает несколько иначе. Эта виртуалка рассчитана на другую задачу — выполнение специальных компьютерных программ, записанных в блокчейне. Такие программы, называемые смарт‑контрактами, автоматически запускаются при наступлении заранее определенных условий, а результат их работы становится частью общего состояния сети.
Работает это так: программист пишет код контракта на Solidity или похожем языке, а затем компилирует его в понятный EVM байт‑код. Когда пользователь отправляет транзакцию к этому контракту, его код запускается сразу на всех узлах сети локально и независимо, а результат исполнения программы должен совпасть у всех узлов. Если результат совпал, транзакция выполняется. Именно на этом основана автоматизация: смарт‑контракты чем‑то похожи на торговые автоматы — если внесена нужная сумма и товар есть в наличии, автомат выдает покупку, если денег недостаточно или товар закончился — возвращает монеты. Торговый автомат не обсуждает с покупателем условия сделки и не принимает решения. Смарт‑контракт работает примерно по тому же принципу, только вместо того, чтобы продавать напитки и шоколадки, он может управлять цифровыми активами, выдавать кредиты, проводить аукционы или обменивать криптовалюты.

Разумеется, для обработки смарт‑контрактов требуется потратить определенную вычислительную мощность, поэтому в блокчейне Ethereum существует так называемый газ (gas), которым каждый пользователь платит за проведение своих операций. Газ позволяет ограничить вычисления, не допустить бесконечного выполнения приложений и снизить нагрузку на сеть. Проще говоря, если виртуальная машина EVM подобна двигателю автомобиля, то газ — это бензин для такого двигателя. Каждая операция виртуальной машины имеет заранее определенную стоимость в условных единицах газа. Простое сложение чисел требует совсем немного ресурсов, а запись данных в блокчейн или выполнение сложных вычислений обходятся значительно дороже.
Важно понимать, что газ не является отдельной валютой, однако пользователи оплачивают его с помощью ETH — собственной криптовалюты сети Ethereum. Перед отправкой транзакции указывается максимальное количество газа, которое разрешено потратить, а также цена, которую пользователь готов заплатить за каждую его единицу. Если во время выполнения программы газ заканчивается, вычисления прекращаются, изменения состояния сети отменяются, но уже потраченные ресурсы не возвращаются. Этот механизм одновременно защищает сеть от бесконечных циклов, стимулирует разработчиков смарт‑контрактов максимально оптимизировать код и служит экономическим стимулом для валидаторов обрабатывать транзакции.
Еще одно важное отличие Ethereum от Bitcoin связано с моделью хранения данных. В Bitcoin основой учета служит модель UTXO, о которой мы говорили в предыдущей статье. В Ethereum используется модель аккаунтов (account model): у каждого адреса есть баланс, а при необходимости — собственное внутреннее состояние. Благодаря этому смарт‑контракты могут хранить данные между вызовами, вести учет пользователей, запоминать результаты вычислений и взаимодействовать друг с другом как полноценные программные модули.
Конечно, такая гибкость имеет и обратную сторону: чем сложнее программа, тем выше вероятность ошибки. История Ethereum знает немало случаев, когда уязвимость всего в нескольких строках кода приводила к потере миллионов долларов. Самым известным примером стал взлом проекта The DAO в 2016 году, после которого сообщество приняло решение провести хардфорк сети. Именно тогда появились две независимые цепочки: современный Ethereum и сохранивший исходную историю Ethereum Classic.
Появление программируемого блокчейна полностью изменило представление о возможностях криптотехнологий. Если Bitcoin стал первым успешным примером децентрализованных цифровых денег, то Ethereum превратил блокчейн в инфраструктуру для создания целых экосистем. Именно на Ethereum выросли децентрализованные биржи (DEX), сервисы кредитования (DeFi), различные игровые проекты, NFT-платформы и тысячи других приложений.
Альтернативные консенсусы
Самым спорным элементом Bitcoin всегда считался механизм достижения консенсуса — способ, с помощью которого тысячи независимых узлов договариваются, какая версия блокчейна правильная. Bitcoin решил эту задачу с помощью proof of work: майнеры тратят вычислительные ресурсы, соревнуясь за право добавить очередной блок, а безопасность сети обеспечивается тем, что атака требует колоссальных затрат на оборудование и электроэнергию. Этот подход доказал свою надежность, но одновременно породил вопросы о масштабируемости и скорости подтверждения операций, поэтому новые проекты начали искать альтернативные решения.
Одним из наиболее необычных примеров стала сеть Ripple, а точнее, блокчейн XRP Ledger, в котором имеет хождение нативная криптовалюта XRP. В отличие от Bitcoin, здесь нет ни майнинга, ни соревнования за создание новых блоков: вместо этого сеть использует собственный механизм консенсуса, который называется Ripple Protocol Consensus Algorithm (RPCA). Суть его заключается в следующем: каждый узел сети формирует список транзакций, которые считает корректными, и обменивается этой информацией с другими участниками. Решение принимается не всеми узлами подряд, а на основе так называемого Unique Node List (UNL) — списка доверенных валидаторов, выбранных оператором конкретного узла. Если необходимое большинство валидаторов приходит к одинаковому мнению, транзакции считаются подтвержденными и записываются в блокчейн.
Продолжение доступно только участникам
Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».
Присоединяйся к сообществу «Xakep.ru»!
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее
