Перейти к основному контенту

Какие проблемы решает Ethereum?

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

3.1 Какие проблемы решает Ethereum?​

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


Ограничения, оставленные Биткойном​

Дизайн Биткойна основан на предельной простоте и безопасности. Чтобы сохранить его надежность как глобальной денежной сети, он имеет множество преднамеренных ограничений. Думайте о нем как о сверхнадежном калькуляторе, идеально подходящем для базовых математических операций (передача ценности), но не способном запускать сложное программное обеспечение.

  • Неполный по Тьюрингу скрипт: Язык сценариев Биткойна (Script) намеренно «неполный по Тьюрингу», что означает, что он не поддерживает циклы, рекурсию и другую сложную программную логику. Это повышает безопасность, но делает практически невозможным прямую реализацию на блокчейне даже слегка сложных финансовых контрактов, таких как кредиты, опционы или страховые соглашения (Источник: cliffsnotes.com).
  • Отсутствие постоянного состояния: Биткойн использует модель UTXO (неизрасходованный выход транзакции), аналогичную физическим наличным деньгам. Когда вы тратите 10 долларов, они «уничтожаются» и превращаются в новую сдачу. Эта модель не может удобно хранить динамически изменяющуюся переменную в блокчейне, например, «сколько осталось на моем кредите» или «результат голосования по предложению в реальном времени» (Источник: kaleido.io).
  • Сложность расширения протокола: Добавление новых функций в Биткойн обычно требует «мягкой вилки» (soft fork) или «жесткой вилки» (hard fork). Это требует широкого консенсуса со стороны мирового сообщества и майнеров, что чрезвычайно затратно в координации, занимает много времени и часто вызывает споры.
  • Фрагментированная экосистема приложений: Из-за ограничений Биткойна разработчикам, желающим создавать новые приложения, приходится либо запускать новый блокчейн (жертвуя безопасностью и ликвидностью Биткойна), либо полагаться на централизованных поставщиков услуг для реализации вне блокчейна, что противоречит децентрализованному этосу.

Три ключевых дизайнерских решения Ethereum​

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

  1. Смарт-контракты EVM Сердцем Ethereum является Виртуальная машина Ethereum (EVM) — глобальный, общий, полный по Тьюрингу вычислительный движок.
  • Полный по Тьюрингу означает, что он теоретически может выполнять любые вычисления, которые может выполнять компьютер, а с помощью механизма комиссии за газ (оценивающего каждый шаг вычисления) он умело избегает паралича сети от вредоносных программ из-за бесконечных циклов.
  • Что наиболее важно, смарт-контракты могут вызывать друг друга как обычные функции, что приводит к огромному эффекту «денежных лего» (Money Legos), позволяя создавать сложные финансовые продукты, как из строительных блоков (Источник: en.wikipedia.org).
  1. Модель учетных записей В отличие от модели UTXO Биткойна, Ethereum использует модель, более похожую на традиционные банковские счета.
  • Каждый адрес напрямую связан с «состоянием» — снимком, который четко записывает баланс Ether адреса, количество транзакций (Nonce) и (если это адрес контракта) его внутреннее постоянное хранилище. Этот дизайн идеально подходит для записи и обновления сложных бизнес-данных, таких как уровень членства пользователя или общая заблокированная стоимость протокола DeFi (Источник: kaleido.io).
  1. Стандартизированный уровень активов Ethereum определяет общие стандарты активов через серию «Предложений по улучшению Ethereum» (EIPs), наиболее известные из которых включают:
  • ERC-20: Стандарт для взаимозаменяемых токенов, позволяющий любому выпускать свои собственные токены с помощью одной строки кода.
  • ERC-721: Стандарт для невзаимозаменяемых токенов (NFT), предоставляющий учетные данные для уникальных активов, таких как цифровое искусство и игровые предметы.
  • ERC-1155: Мультитокеновый стандарт, который позволяет управлять несколькими типами токенов в рамках одного контракта.
  • Эти стандарты значительно способствуют унифицированному взаимодействию и ликвидности активов.

Что именно он решает?​

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

  • Встраивание бизнес-логики в блокчейн: Децентрализованные биржи (DEX), пулы кредитования, алгоритмические стейблкоины, ончейн-игры, децентрализованные автономные организации (DAO) и тысячи других приложений имеют свою основную логику, автоматически выполняемую в блокчейне в форме смарт-контрактов, без каких-либо посредников или хранителей.
  • Значительное снижение барьера для инноваций: Разработчикам больше не нужно создавать консенсусную сеть и экосистему узлов с нуля для новой идеи. Им просто нужно написать и развернуть смарт-контракт на Ethereum, чтобы немедленно получить глобальные гарантии безопасности на том же уровне, что и основная сеть.
  • Беспрецедентная ликвидность и компонуемость: Все активы (ETH, токены ERC-20, NFT) и все приложения (контракты) находятся на одном «глобальном расчетном уровне». Это позволяет средствам беспрепятственно перемещаться между различными приложениями со скоростью миллисекунд, порождая удивительные сценарии использования, присущие блокчейну, такие как «мгновенные займы» (завершение необеспеченного займа, использования и погашения в рамках одной транзакции).
  • Развивающийся протокол: Через процесс EIP сообщество Ethereum может более упорядоченно и плавно итерировать сам протокол, например, внедряя более оптимальный механизм Gas (EIP-1559), исторически переходя от Proof of Work (PoW) к Proof of Stake (PoS) и внедряя шардинг данных (EIP-4844), без частого перестраивания экосистемы через хардфорки, как это было в ранних блокчейнах.

Ethereum ≠ Биткойн 2.0​

Ethereum не предназначен для замены Биткойна, а скорее дополняет его функционально. У них есть фундаментальные различия в философии дизайна и целях.

ПараметрБиткойнEthereum
Основная рольЦифровое золото / Средство сохранения стоимостиДецентрализованный мировой компьютер
Структура данныхUTXO (Наличные без состояния)Учетные записи (Счета с состоянием)
Возможности контрактовМинимальный скрипт (Неполный по Тьюрингу)Полная по Тьюрингу EVM
Модель эмиссииФиксированный лимит 21 млнИнфляция + сжигание базовой комиссии EIP-1559
Основные приложенияТрансграничные платежи, Якорь стоимостиDeFi, NFT, DAO, Роллапы Layer2

Они не находятся в отношениях с нулевой суммой: Биткойн сосредоточен на том, чтобы быть самой стабильной и безопасной «цифровой базой ценности», в то время как Ethereum берет на себя роль «уровня инноваций и приложений без разрешений».


Упражнения для читателя​

  1. Откройте Etherscan.io и найдите любой популярный контракт токена ERC-20 (например, USDC или WETH). Перейдите на вкладку «Contract» и прочитайте его исходный код. Попробуйте найти основные функции transfer и approve и понять, как они определяют логику передачи и авторизации цифровых активов всего несколькими строками кода.
  2. Подумайте, с какими трудностями вы столкнетесь, если попытаетесь реализовать функцию approve (т.е. «Я разрешаю другому адресу использовать 100 токенов с моего счета») в языке сценариев Биткойна. Какими децентрализованными функциями вам пришлось бы пожертвовать, чтобы едва достичь этого?

Дополнительное чтение​

  • «Белая книга Ethereum»: Написанная Виталиком Бутериным, она четко описывает четыре основных ограничения скриптов Биткойна, а также дизайнерские намерения и видение Ethereum.
  • Блог Kaleido «UTXO vs. Account Model for Ethereum and Hyperledger Fabric»: Отличный технический блог, который простым языком сравнивает различия между двумя методами учета с точки зрения удобства для смарт-контрактов и масштабируемости.
  • Запись в Википедии «Ethereum»: Охватывает историю Ethereum, стандарты ERC, DeFi, DAO и другие основные варианты использования приложений и связанные с ними споры, что делает ее хорошей отправной точкой для быстрого построения системы знаний.

В следующем разделе (3.2) мы углубимся в «атомарную единицу» Ethereum — смарт-контракты, и проанализируем стандарт токенов ERC-20, который поджег всю экосистему блокчейн-приложений.