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

Почему это не договор

Название вводит в заблуждение: юридической силы у кода нет, и толковать его намерения некому. Контракт делает ровно то, что написано, включая ошибки. «Код есть закон» на практике означает, что при уязвимости средства уходят законно с точки зрения сети — разбор в статье про уязвимость смарт-контракта.

Как исполняется

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

Что важно проверять

Подтверждён ли исходный код в обозревателе сети — иначе вы доверяете скомпилированному коду вслепую. Кто может обновить контракт: возможность подмены логики сводит на нет любые гарантии. И есть ли задержка перед вступлением изменений в силу.