Смарт-контракт


Смарт-контракт (англ. smart contract — умный контракт) — компьютерный алгоритм, содержащий условия договора и предназначенный для автоматического контроля и исполнения договорных отношений. Для работы смарт-контракта все условия и обязательства договора описываются на языке программирования, программа запускается на доверенной вычислительной системе. В настоящее время возможности исполнения смартконтрактов встречаются на платформах криптовалют.

Первой страной, на государственном уровне подтвердившей юридическую силу смарт-контрактов, стала Белоруссия[1].

Концепцию и термин «умный контракт» придумал Ник Сабо: в 1994 году появилась его концептуальная статья «Smart Contracts»[2]. Целью было реализовать коммерческую операцию через компьютерную сеть без участия посредников. В качестве простейшего примера Сабо писал, что «торговый автомат является контрактом на предъявителя: любой, у кого есть монеты, может участвовать в обмене с продавцом», причём это происходит в автоматическом режиме без непосредственного участия продавца, роль которого сводится к настройке автомата, загрузке товаров и инкассации денег, но от продавца не требуется непосредственного общения с покупателем. Смарт-контракт также самостоятельно выполняет описанные действия (например, предоставляет цифровой товар, отправляет деньги, открыто или закрыто публикует информацию), если выполнены заложенные в нём условия, точно так же, как это реализовано в торговом автомате.

В другой статье 1996 года он более подробно исследовал потенциальные возможности применения умных контрактов и более лаконично изложил саму суть: «Смарт-контракты — это набор обещаний в цифровом формате, включая протоколы, по которым стороны выполняют эти обещания»[3]. Уже к 1997 году был разработан ряд алгоритмов и протоколов, пригодных для базовой реализации идеи[4].

Но узким местом оставались системы платежей, которые на тот момент всегда имели доверенных посредников (администраторов), что не позволяло сделать систему абсолютно автоматической, действующей лишь согласно выполненным условиям вне зависимости от воли какого-либо исполнителя. Практические реализации концепции Ника Сабо стали возможными благодаря появлению в 2008 году технологии блокчейн[5], что обеспечило контрактам полную автономность и позволило отказаться от стороннего администратора, который выполнял роль контролёра и арбитра. Уже в первых версиях Биткойна через использование языка программирования скриптов стало возможным реализовать базовые функции умных контрактов. Но из соображений безопасности биткойн-скрипты не обладают полнотой по Тьюрингу и широкого применения для реализации умных контрактов не получили. Однако стали появляться разработки протоколов более высокого уровня (включая универсальные умные контракты) поверх протокола биткойна[6], по аналогии с тем, как поверх TCP/IP существует множество прикладных протоколов.