Ethereum и смарт-контракты

Что такое Ethereum, как в нём работают смарт-контракты, зачем нужен эфир и какие риски несёт код, который трудно изменить.

4 мин · 639 словОбновлено: #основы#ethereum#смарт-контракты

Биткоин показал, что ценность можно передавать через интернет без банка-посредника. Ethereum пошёл дальше: а что, если блокчейн будет выполнять не только платежи, но и любые программы? Сеть запустилась в 2015 году и стала самой известной платформой для смарт-контрактов — программ, которые живут в блокчейне и выполняются ровно так, как написаны.

Что такое Ethereum

Ethereum — публичный блокчейн, который поддерживают множество независимых компьютеров по всему миру. Как и Bitcoin, он хранит общую запись балансов и транзакций. Но в отличие от Bitcoin, в нём хранятся ещё код и данные программ, и каждый узел может выполнить этот код и получить тот же самый результат.

Собственная валюта сети — эфир (ETH). У неё две главные задачи:

  • оплата комиссий за транзакции и выполнение смарт-контрактов — так называемого газа;
  • защита сети через стейкинг, поскольку Ethereum работает на Proof of Stake.

Что такое смарт-контракт

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

Проще всего представить торговый автомат. Вы даёте нужный ввод — автомат выдаёт заранее определённый результат, и никакой продавец не решает, обслужить вас или нет. Слово «контракт» немного сбивает с толку: смарт-контракт — не юридический договор, а просто код с предсказуемым поведением.

Как они выполняются

Смарт-контракты Ethereum работают внутри виртуальной машины Ethereum (EVM) — стандартной среды, которую реализует каждый узел. Разработчики обычно пишут контракты на языке вроде Solidity и компилируют их в код для EVM. Все узлы выполняют один и тот же код с одними и теми же входными данными и приходят к одному состоянию.

Каждая операция в EVM стоит определённое количество газа. Это защищает сеть от бесконечных или чрезмерно тяжёлых программ: тот, кто запускает транзакцию, платит за вычисления, которые она использует.

Чем они отличаются от обычных программ

  • Прозрачность: код контракта и его операции видны в блокчейне.
  • Неизменность: размещённый код, как правило, нельзя отредактировать. Некоторые контракты делают обновляемыми — значит, у кого-то есть право их менять.
  • Нет центрального оператора: контракт продолжает работать, пока работает сеть.
  • Совместимость: контракты могут вызывать друг друга, поэтому новые сервисы строят поверх уже существующих.

Что строят на смарт-контрактах

  • Токены: многие криптовалюты и стейблкоины — это смарт-контракты по общим стандартам, например ERC-20 для взаимозаменяемых токенов.
  • Децентрализованные биржи и протоколы кредитования, которые объединяют под названием DeFi.
  • NFT — уникальные токены, подтверждающие владение конкретным объектом, по стандартам вроде ERC-721.
  • DAO — организации, где участники через контракты голосуют, как распоряжаться общими средствами.

Важные вехи

Ethereum меняется через обновления сети, которые принимают операторы узлов. Несколько ключевых:

  • 2015 год — запуск основной сети Ethereum на Proof of Work.
  • Август 2021 года — обновление London и EIP-1559: изменился механизм комиссий, часть каждой комиссии начала сжигаться.
  • Сентябрь 2022 года — The Merge: переход с Proof of Work на Proof of Stake.

Более поздние обновления продолжают менять детали работы сети, а предстоящие появляются в календаре событий.

Какие риски важно понимать

То, что код выполняется ровно так, как написан, — одновременно и сила, и опасность.

  • Ошибки в коде: если в контракте есть уязвимость, ею могут воспользоваться, а украденные средства обычно не вернуть.
  • Ключи обновления: если команда может менять контракт, пользователи зависят от её честности и от того, насколько надёжно она хранит ключи.
  • Вредоносные контракты: мошенники размещают контракты, которые выглядят легитимно, но опустошают кошельки тех, кто выдал им разрешения.
  • Необратимость: транзакцию на неверный адрес или во вредоносный контракт нельзя отменить.

Аудит от специализированной компании снижает риск, но не устраняет его: взламывали и проверенные контракты.

Масштабирование и второй уровень

Поскольку каждый узел выполняет каждую транзакцию, пропускная способность основной сети Ethereum ограничена, а при высоком спросе комиссии растут. Чтобы обрабатывать больше операций, многие проекты используют сети второго уровня (L2): они обрабатывают транзакции отдельно, а итоги записывают обратно в Ethereum.

Главное

  • Ethereum — блокчейн, который выполняет программы, называемые смарт-контрактами.
  • Эфир нужен для оплаты газа и защиты сети через стейкинг.
  • Смарт-контракты прозрачны и трудно изменяемы: это помогает доверию, но делает ошибки дорогими.
  • Токены, DeFi, NFT и DAO построены на смарт-контрактах.