Что такое смарт-контракт
Что такое смарт-контракт
Смарт-контракт — это программа, хранящаяся и исполняемая в блокчейне. После развёртывания он запускается автоматически при выполнении заданных условий — обеспечивая соблюдение соглашений, управляя активами или координируя операции без необходимости в человеке-посреднике на каждом шаге. Несмотря на название, смарт-контракт не является «умным» в смысле искусственного интеллекта и не является «контрактом» в юридическом смысле. Это детерминированный код: при одних и тех же входных данных он всегда выдаёт одни и те же результаты, следуя точно той логике, которую написал разработчик.
Представьте смарт-контракт как вендинговый автомат. Вы вставляете монету, выбираете товар — и автомат выдаёт его. Без кассира, без переговоров, без права усмотрения. Автомат следует запрограммированным правилам. Смарт-контракт делает то же самое в блокчейне: он хранит активы или логику, получает входные данные (транзакции) и выполняет заранее определённые операции автоматически и прозрачно.
Коротко: смарт-контракт — это самоисполняемый код в блокчейне, обеспечивающий правила без посредников. В крипто-ИИ проектах он обрабатывает экономическую и управленческую логику, тогда как ИИ-вычисления обычно происходят офчейн.
Как работает смарт-контракт
Написание и развёртывание
Смарт-контракт начинается как исходный код, написанный на языке программирования, предназначенном для конкретного блокчейна. Наиболее распространённый язык — Solidity, используемый на Ethereum и всех EVM-совместимых сетях (BNB Smart Chain, Arbitrum, Base, Polygon, Avalanche C-Chain). Solana использует Rust и собственный фреймворк. Другие сети имеют свои языки: Move (Sui, Aptos), Cairo (Starknet) и другие.
Разработчик пишет логику — что контракт делает, какие данные хранит, какие условия вызывают какие действия — затем компилирует исходный код в байткод (низкоуровневые инструкции, которые может исполнять виртуальная машина блокчейна). Этот байткод отправляется в блокчейн в транзакции развёртывания. После подтверждения контракт существует по определённому адресу в сети и доступен для взаимодействия любому.
Исполнение
Когда пользователь или другой контракт вызывает функцию смарт-контракта, происходит следующее:
- Вызывающая сторона отправляет транзакцию, указывающую адрес контракта, вызываемую функцию и входные параметры.
- Каждая нода-валидатор в сети независимо исполняет функцию, обрабатывая те же входные данные через тот же байткод.
- Результат — любые изменения состояния, переводы токенов, генерируемые события или записываемые данные — фиксируется в блоке и становится частью постоянного реестра.
- Вызывающая сторона платит газ за вычисления. Более сложные операции стоят больше газа.
Эта модель исполнения обладает важными свойствами: она детерминированна (каждая нода получает одинаковый результат), прозрачна (любой может проверить байткод и историю транзакций) и пермиссионлесс (любой может вызвать публичную функцию).
Газ и стоимость
Каждый вычислительный шаг внутри смарт-контракта стоит газ — единицу, измеряющую требуемые вычислительные усилия. Газ служит двум целям: компенсирует валидаторам исполнение кода и предотвращает злоупотребления (без комиссий злоумышленники могли бы отправлять бесконечно сложные вычисления, замедляя сеть).
Стоимость газа варьируется по сетям. На Ethereum mainnet сложные операции могут стоить десятки или сотни долларов в периоды высокого спроса. На L2-сетях вроде Arbitrum или Base те же операции могут стоить центы. На Solana комиссии за транзакции обычно составляют доли цента. Эти различия в стоимости напрямую влияют на то, где крипто-ИИ проекты решают развернуть свои ончейн-компоненты.
Неизменяемость и обновляемость
После развёртывания байткод смарт-контракта постоянно хранится в блокчейне. Его нельзя отредактировать, удалить или перезаписать. Эта неизменяемость — функция безопасности: пользователи могут точно проверить, какой код будет исполнен, и доверять тому, что он не изменится, — но это также означает, что баги, развёрнутые в блокчейне, нельзя исправить как обычное ПО.
Для решения этой проблемы разработчики создали паттерны обновляемых контрактов с использованием прокси-контрактов. В этом дизайне пользователи взаимодействуют с прокси-контрактом, который делегирует вызовы контракту реализации. Команда может развернуть новую реализацию и перенаправить прокси на неё — фактически «обновив» контракт. Это решает проблему исправления багов, но вводит компромисс доверия: тот, кто контролирует механизм обновления прокси, может изменить поведение контракта. Обновляемые контракты не плохи сами по себе, но переносят доверие с «код неизменен» на «команда с доступом к обновлению будет действовать ответственно».
Что смарт-контракты могут и чего не могут
Могут:
- Хранить и переводить токены и другие цифровые активы
- Обеспечивать условную логику (если X, то Y)
- Взаимодействовать с другими смарт-контрактами в той же сети
- Генерировать события, которые могут отслеживать внешние системы
- Управлять контролем доступа (кто может вызывать какую функцию)
Не могут:
- Получать данные извне блокчейна (для этого нужны оракулы)
- Выполнять вычислительно интенсивные операции вроде ИИ-инференса (стоимость газа делает это невозможным)
- Запускаться автономно по расписанию (для запуска им нужны внешние триггеры — транзакции)
- Хранить большие файлы (ончейн-хранение дорого; проекты используют IPFS или Arweave для объёмных данных)
- Делать субъективные суждения (они исполняют детерминированную логику, а не рассуждения)
Последнее ограничение особенно актуально для крипто-ИИ. Смарт-контракт не может «думать» или «решать» в смысле ИИ. Он может маршрутизировать, проводить расчёты и обеспечивать правила, но фактические ИИ-вычисления должны происходить офчейн, а результаты — передаваться обратно контракту.
Почему это важно для крипто-ИИ проектов
Смарт-контракты — связующая ткань между блокчейн-инфраструктурой и ИИ-функциональностью в большинстве крипто-ИИ проектов. Понимание их роли — и ограничений — необходимо для точного прочтения карточек проектов.
Экономический слой
Во многих крипто-ИИ архитектурах смарт-контракты обеспечивают экономическую сторону: платежи за вычисления, распределение вознаграждений контрибьюторам данных, стейкинг для валидаторов и сбор комиссий за инференс-сервисы. ИИ-модель работает офчейн, но смарт-контракт гарантирует, что все получают оплату по правилам, без центрального органа, управляющего бухгалтерией.
Управление (governance)
Смарт-контракты могут реализовать механизмы управления: подачу предложений, голосование, требования кворума и исполнение одобренных изменений. Для ИИ-проектов это может означать управление параметрами модели, выбором датасетов или распределением ресурсов — прозрачно ончейн, а не по решению команды основателей за закрытыми дверями.
Контрольные точки верификации
Некоторые проекты используют смарт-контракты для хранения верификационных данных: хешей весов модели, доказательств результатов инференса или аттестаций выполнения определённых вычислений. Хотя смарт-контракт не верифицирует выход ИИ сам (ему не хватает вычислительных мощностей), он предоставляет неизменяемую запись, которую можно проверить позже.
Контроль доступа и разрешения
Смарт-контракты управляют тем, кто к чему имеет доступ. ИИ-инференс-API, построенный на блокчейне, может использовать смарт-контракт для проверки, владеет ли вызывающий необходимым токеном, имеет ли достаточно кредитов или соответствует ли другим условиям, прежде чем разрешить доступ. Это заменяет централизованные системы аутентификации ончейн-прозрачным контролем доступа.
Отличие «smart» в смысле ИИ от «smart» в смарт-контрактах
Постоянный источник путаницы: «смарт-контракты» не имеют отношения к искусственному интеллекту. Слово «смарт» здесь означает самоисполняемый — контракт обеспечивает свою логику автоматически, — а не то, что он рассуждает, обучается или адаптируется. ИИ-система учится на данных и делает прогнозы. Смарт-контракт следует фиксированным правилам и выдаёт детерминированные результаты. Крипто-ИИ проекты обычно сочетают оба: смарт-контракт обеспечивает ончейн-логику (платежи, управление, контроль доступа), а ИИ-модель — офчейн-интеллект (инференс, прогнозирование, анализ).
Где это появляется в карточках проектов DecAIHub
Смарт-контракты проявляются в карточках проектов через несколько полей и индикаторов доказательств:
- Main chain — указывает, на каком блокчейне развёрнуты смарт-контракты проекта. Проект на Ethereum использует контракты на Solidity; проект на Solana — программы на Rust. Выбор сети влияет на возможности контрактов, стоимость газа и совместимость с другими протоколами.
- Token standard — значения вроде
ERC-20,BEP-20иSPLуказывают на стандарты смарт-контрактов, определяющие поведение токена проекта. ERC-20 токен — это смарт-контракт на Ethereum, реализующий определённый интерфейс. - Type и Category — проекты, использующие смарт-контракты как основной ончейн-компонент, обычно имеют
Type: EVMилиnon-EVM(в зависимости от сети), а Category отражает их роль (например,DeFi,AI/Agents | DeFi). DeFi-протокол по сути — это набор смарт-контрактов, управляющих ликвидностью, торговлей или кредитованием. - Evidence (Tier-1) — верифицированные адреса смарт-контрактов, отчёты об аудите и развёрнутый код контрактов на блокчейн-эксплорерах — одни из самых сильных форм доказательств Tier-1. Если проект заявляет об ончейн-функциональности, его адреса контрактов должны быть верифицируемы.
- Token model — значения вроде
fee-mechanism,governance,stakingиutilityописывают, как токен взаимодействует со смарт-контрактами проекта. Governance-токен обычно предоставляет право голоса в системе управления на базе смарт-контрактов.
При чтении карточки проекта проверяйте, подкреплены ли ончейн-заявления проекта реально развёрнутыми контрактами. Проект, заявляющий об управлении на базе смарт-контрактов, но не имеющий верифицируемых адресов контрактов, вызывает вопросы о содержательности его ончейн-присутствия.
Что смарт-контракт сам по себе не доказывает
Наличие развёрнутых смарт-контрактов говорит о том, что код живёт в блокчейне, но не доказывает:
- ИИ-возможности — смарт-контракт не может запустить ИИ-модель. Наличие хорошо спроектированных контрактов доказывает ончейн-экономическую или управленческую логику, а не AI reality. AI reality оценивается через отдельный набор доказательств (флаги AI_0 — AI_4).
- Безопасность — код смарт-контракта может содержать баги, уязвимости или бэкдоры. Развёртывание не равно безопасности. Проаудированный контракт надёжнее непроаудированного, но даже проаудированные контракты подвергались эксплуатации. Проверяйте, были ли контракты проекта проверены авторитетными аудиторскими фирмами.
- Децентрализация — смарт-контракт, развёрнутый в децентрализованном блокчейне, наследует консенсусную безопасность сети, но сам контракт может иметь механизмы централизованного контроля: админ-ключи для приостановки или обновления контракта, функции только для владельца или зависимость от централизованных оракулов.
- Неизменяемость — если проект использует обновляемые прокси-паттерны, поведение контракта может быть изменено тем, кто владеет ключами обновления. «Ончейн» не автоматически означает «постоянный», когда задействованы прокси.
- Польза для пользователя — смарт-контракт может быть технически безупречным и при этом совершенно бесполезным. Качество кода и ценность продукта — разные вопросы.
Не путать с
- ИИ-модель — ИИ-модель обучается на данных, делает прогнозы и генерирует выходные данные. Смарт-контракт исполняет детерминированную логику. Они выполняют принципиально разные роли в крипто-ИИ проектах. ИИ-модель — это интеллект; смарт-контракт — механизм обеспечения.
- dApp (децентрализованное приложение) — dApp — это пользовательское приложение, взаимодействующее со смарт-контрактами в блокчейне. Смарт-контракт — это бэкенд-логика; dApp — полноценный продукт, часто включающий фронтенд, офчейн-сервисы и взаимодействие со смарт-контрактами.
- API — традиционный API работает на централизованном сервере и может быть изменён, отключён или подвергнут цензуре оператором. Смарт-контракт доступен любому в блокчейне, работает по неизменным правилам (если не обновляемый) и не может быть отключён одной стороной. Некоторые крипто-проекты предоставляют доступ к своим смарт-контрактам через стандартные API-интерфейсы для удобства разработчиков.
- Юридический контракт — юридический контракт обеспечивается судами и правовыми институтами. Смарт-контракт обеспечивается кодом и блокчейн-консенсусом. Это разные системы с разными механизмами обеспечения. Смарт-контракт не является юридическим соглашением, если законодательство юрисдикции не признаёт его таковым явным образом.
- Скрипт — Bitcoin использует ограниченный скриптовый язык, позволяющий базовые условия (вроде мультисиг-требований), но не богатую программируемость смарт-контрактов в стиле Ethereum. Когда в контексте крипто-ИИ говорят «смарт-контракт», почти всегда имеются в виду контракты в стиле Ethereum с полной программируемостью.
Часто задаваемые вопросы
Можно ли взломать смарт-контракты?
Да. Смарт-контракты — это программное обеспечение, а ПО может содержать баги. Распространённые категории уязвимостей: атаки повторного входа (reentrancy), целочисленное переполнение, ошибки контроля доступа и манипуляции с оракулами. После развёртывания код с багами постоянно находится ончейн и может быть эксплуатирован. Поэтому аудиты безопасности важны, и DecAIHub отслеживает статус аудита в рамках оценки проектов. Неизменяемость, делающая смарт-контракты надёжными, также означает, что развёрнутые баги невозможно исправить, если проект не использует обновляемые паттерны.
Действительно ли смарт-контракты неизменяемы?
Стандартные смарт-контракты неизменяемы после развёртывания — байткод по адресу контракта не может быть изменён. Однако многие современные проекты используют обновляемые прокси-паттерны, позволяющие заменять логику реализации. В этих случаях адрес прокси остаётся тем же, но базовое поведение может измениться. Является ли контракт обновляемым и кто контролирует механизм обновления — важный фактор при оценке децентрализации и модели доверия проекта.
Нужен ли газ для смарт-контрактов в каждом блокчейне?
Большинство блокчейнов взимают ту или иную форму комиссии за исполнение, хотя терминология и ценообразование различаются. Ethereum называет это «газом». Solana взимает «compute units» и «rent». Концепция универсальна: валидаторы должны получать компенсацию за исполнение кода, а комиссии предотвращают спам. Уровень затрат варьируется значительно — от долларов за транзакцию на Ethereum L1 при пиковом спросе до долей цента на L2-сетях и Solana.
Можно ли хранить ИИ-модель в смарт-контракте?
Хранение полных весов современной ИИ-модели внутри смарт-контракта непрактично. Большая языковая модель может иметь миллиарды параметров, занимающих гигабайты. Стоимость ончейн-хранения на Ethereum — примерно 20 000 газа за 32-байтовый слот, что делает хранение весов модели ончейн непомерно дорогим. На практике проекты хранят хеши моделей или указатели (вроде идентификаторов контента IPFS) ончейн для верификации, а сами файлы моделей находятся офчейн.
Какова роль смарт-контрактов в крипто-ИИ проектах?
В большинстве крипто-ИИ архитектур смарт-контракты обеспечивают координационный и экономический слой: управление платежами на маркетплейсе вычислений, распределение вознаграждений контрибьюторам данных, обеспечение правил стейкинга и слэшинга, контроль доступа к ИИ-сервисам и управление параметрами протокола. Сами ИИ-вычисления происходят офчейн, а смарт-контракты служат слоем расчётов и верификации с минимизацией доверия.
Как можно проверить смарт-контракты проекта?
Найдите адреса контрактов в блокчейн-эксплорере (Etherscan для Ethereum, Solscan для Solana или соответствующий эксплорер для других сетей). Верифицированные контракты показывают исходный код прямо в эксплорере, позволяя любому прочитать фактическую логику. Проверьте, соответствует ли код документации проекта, был ли контракт проаудирован и доступен ли отчёт об аудите публично. В карточках проектов DecAIHub адреса развёрнутых контрактов и отчёты об аудите отслеживаются как доказательства Tier-1.
Внешние ссылки
- Ethereum.org — Introduction to Smart Contracts — официальная документация Ethereum, объясняющая концепции и разработку смарт-контрактов.
- Smart contract (Wikipedia) — исторический и технический обзор смарт-контрактов от концепции до реализации.
- Solana Documentation — Programs — как работают смарт-контракты (называемые «программами») в блокчейне Solana.
- OpenZeppelin — Smart Contract Security — широко используемая библиотека и лучшие практики написания безопасных смарт-контрактов.
No comments to display
No comments to display