Ключевым компонентом DeFi-сервисов является платформа для смарт-контрактов, которая выходит за рамки простой платежной сети, такой как Bitcoin, и расширяет ее возможности. Ярким примером такой платформы является Ethereum. Что же такое смарт-контракт? Это расположенный внутри блокчейна программный код, который может создавать и изменять различные данные или токены поверх этого блокчейна. Что особенно важно, смарт-контракты позволяют пользователю задавать правила для разного типа транзакций, без установки доверия и с возможностью создания дефицитных активов с особым функционалом. Большинство условий традиционных деловых соглашений можно оформить в виде смарт-контракта, который будет не только содержать список этих условий, но и алгоритмически их обрабатывать. Применение смарт-контрактов не ограничивается одними финансами, они используются в играх, в управлении данными, а также в логистических цепочках.
За проведение каждой транзакции в сети Ethereum взимается так называемая плата за газ[24], аналогичная плате за бензин для автомобиля. Ethereum можно воспринимать как гигантский компьютер со множеством приложений (например, смарт-контрактов).
Если кто-то захочет воспользоваться этим компьютером, ему придется оплатить каждую вычислительную операцию на этом «устройстве». Такое простое вычисление, как, например, отправка эфира (ETH), требует минимальных вычислительных затрат для обновления баланса нескольких счетов, поэтому стоить эта работа будет относительно дешево. Сложные вычисления, связанные с чеканкой токенов и проверкой условий множества контрактов, требуют больше ресурсов и, следовательно, стоят дороже. Однако плата за газ может негативно сказываться на пользовательском опыте, поскольку вынуждает агентов постоянно поддерживать баланс эфира для оплаты комиссий и вызывает беспокойство по поводу всяческих переплат, недоплат и возможного неосуществления транзакции. В настоящее время реализуются некоторые инициативы по освобождению конечных пользователей от оплаты данной комиссии. Также существуют конкурирующие сети, в которых полностью отсутствует данная концепция.
Следует отметить, что плата за газ является основным механизмом предотвращения системных атак, генерирующих бесконечный цикл. Обнаружить вредоносность такого кода до его запуска невозможно. В компьютерных науках эта проблема известна как проблема остановки. Предположим, что у беспилотного автомобиля, едущего на полной скорости, отказали тормоза. В данном случае топливо действует как ограничивающий фактор: машина остановится, когда закончится бензин. Точно так же плата за газ защищает блокчейн Ethereum, делая подобные атаки экономически невыгодными. Наличие комиссии стимулирует делать код смарт-контрактов как можно более эффективным, поскольку контракты, которые используют меньше ресурсов и снижают вероятность сбоев, имеют намного больше шансов быть востребованными на рынке.
Довольно быстро возможности платформы для смарт-контрактов вышли за те рамки, внутри которых разработчики могли с легкостью интегрировать различные приложения. Ответом сообщества на эту проблему стало внедрение стандартных интерфейсов для различных типов функциональности. В случае с Ethereum эти стандарты называются ERC (Ethereum Request for Comment, Запрос комментариев от Ethereum). Наиболее известные из них определяют различные типы токенов, обладающих сходным поведением. ERC-20 является стандартом для взаимозаменяемых токенов и определяет интерфейс для токенов, единицы которых идентичны в плане полезности и функциональности[25]. Стандарт определяет правила передачи токенов и одобрения операторов для использования определенной части баланса пользователя. Для невзаимозаменяемых токенов существует стандарт ERC-721. Такие токены уникальны и часто используются в качестве предметов коллекционирования или таких активов, как одноранговые кредиты. Преимущество этих стандартов заключается в том, что разработчики приложений могут написать код для одного интерфейса, а затем просто поддерживать все реализующие этот интерфейс токены. Чуть позже мы вернемся к этой теме и рассмотрим ее более подробно.