Тем не менее значение Ethereum для web3 сложно переоценить. Ведь именно он стал первой полноценной платформой для создания децентрализованных приложений. Bitcoin стал цифровым золотом, активом для передачи ценности. Ethereum же расширил область применения до других сфер бизнеса: например, сферы финансовых инструментов, логистики и даже цифрового искусства.
Стало это возможным благодаря тому, что создатели Ethereum заложили в него архитектуру и создали ряд инструментов для написания смарт-контрактов. Чего не сделали создатели Bitcoin, но у них и не было такой цели.
Этот раздел посвящён тому, что такое смарт-контракты. Но нам бы хотелось, чтобы вы погрузились в эту тему глубже, настолько насколько это возможно, чтобы понять, какие возможности и ограничения есть у смарт-контрактов.
Ключевые элементы, которые вы изучите:
- Суть смарт-контрактовВ общем виде это просто код, который позволяет разработчикам писать бизнес-логику и записывать в блокчейне результат её исполнения. Это позволяет избавляться от всех посреднических функций и делать все взаимоотношения доверительными, прозрачными и безопасными.
- Отличия Ethereum от BitcoinВам предстоит узнать, что такое полнота по Тьюрингу и почему для Bitcoin нельзя писать сложные Dapps, а для Ethereum — можно. Как хранится информация о балансах в обоих блокчейнах и какие это даёт преимущества для Ethereum. Для чего добавили хранилище данных и многие другие вопросы.
- Ограничения смарт-контрактовХоть смарт-контракты — это код программистов, они не могут использовать все те же возможности из мира веб2. Например, нельзя взять и послать запрос из смарт-контракта в какой-нибудь сервис посредством API. Или как вам такое: нельзя взять и поменять написанный код в смарт-контракте. Это имеет свои причины, и, хоть вы и не программист, вам это очень важно знать.
- КомиссииЛюбое исполнение контракта и добавление транзакции в блок стоит денег. Комиссия — это мотивация для тех, кто работает с вашей транзакцией. В этом вопросе довольно много интересных вещей. Например, кто эту комиссию платит, как вычисляется размер, что нужно сделать, чтобы твою транзакцию обработали быстрее других.
- Ethereum Virtual MachineЭто среда исполнения смарт-контрактов. Каждый, кто исполняет код смарт-контракта, должен получать один и тот же результат. Это одно из обязательных условий децентрализации.
- Примеры приложенийНамеренно не хотим вас погружать с ходу в сложные финансовые инструменты и начнём с довольно простых примеров, которые продемонстрируют всю красоту и пользу смарт-контрактов.