Введение
контрактные транзакции на децентрализованной платформе Контрактная транзакция на децентрализованной платформе Умный контракт - это компьютерная программа или протокол транзакций, предназначенный для автоматического выполнения, контроля или документирования событий и действий в соответствии с условиями контракта или соглашения. Цели интеллектуальных контрактов заключаются в сокращении потребности в доверенных посредниках, расходах на арбитраж и потерях от мошенничества, а также в сокращении злонамеренных и случайных исключений. В оригинальной белой книге Ethereum Виталика Бутерина в 2014 году протокол Биткойн описывается как слабая версия концепции умных контрактов, как это было первоначально определено Ником Сабо, и предложил более сильную версию, основанную на языке Solidity, который является Тьюринговым. С момента Биткоина различные криптовалюты поддерживают языки программирования, которые позволяют заключать более продвинутые смарт-контракты между ненадежными сторонами. Умный договор не следует путать с умным юридическим договором, который относится к традиционному, естественному языку, юридически обязывающему соглашению, в котором выбранные условия выражены и реализованы в машиночитаемом коде. В 1998 году термин был использован для описания объектов в сервисном уровне управления правами системы The Stanford Infobus, которая была частью проекта Stanford Digital Library Project. Умные контракты - это не юридические соглашения, а транзакции, которые выполняются автоматически компьютерной программой или протоколом транзакций, например, технологическими средствами для автоматизации платежных обязательств, например, путем передачи криптовалют или других токенов. Некоторые ученые утверждают, что императивная или декларативная природа языков программирования повлияет на юридическую обоснованность смарт-контрактов. С момента запуска блокчейна Ethereum в 2015 году термин "умный контракт" применяется к вычислениям общего назначения, которые происходят на блокчейне. Национальный институт стандартов и технологий США описывает "умный контракт" как "сборник кода и данных (иногда называемых функциями и состоянием), который развертывается с использованием криптографически подписанных транзакций в сети блокчейн". В этой интерпретации умный контракт - это любая компьютерная программа, которая использует блокчейн. Умный контракт также может рассматриваться как защищенная хранимая процедура, поскольку его исполнение и кодифицированные эффекты (например, передача токенов между сторонами) не могут быть изменены без изменения самого блокчейна. В этой интерпретации исполнение контрактов контролируется и проверяется платформой, а не произвольными серверными программами, подключающимися к платформе. В 2018 году в отчете Сената США говорилось: "Хотя смарт-контракты могут показаться новыми, концепция укоренилась в базовом контрактном праве. Обычно судебная система решает договорные споры и обеспечивает соблюдение условий, но также распространен другой арбитражный метод, особенно для международных сделок. С умными контрактами программа выполняет контракт, встроенный в код". В США, в которых приняты законы об использовании смарт-контрактов, находятся Аризона, Айова, Невада, Теннесси и Вайоминг. В апреле 2020 года, в апреле 2021 года, целевая группа по юрисдикции Великобритании (UKJT) опубликовала Правила разрешения цифровых споров (Правила цифровых DR), которые были предназначены для быстрого разрешения юридических споров в Великобритании.
Contractual transaction on a decentralized platform
A smart contract is a computer program or a transaction protocol that is intended to automatically execute, control or document events and actions according to the terms of a contract or an agreement. The objectives of smart contracts are the reduction of need for trusted intermediators, arbitration costs, and fraud losses, as well as the reduction of malicious and accidental exceptions. The original Ethereum white paper by Vitalik Buterin in 2014 describes the Bitcoin protocol as a weak version of the smart contract concept as originally defined by Nick Szabo, and proposed a stronger version based on the Solidity language, which is Turing complete. Since Bitcoin, various cryptocurrencies have supported programming languages which allow for more advanced smart contracts between untrusted parties. A smart contract should not be confused with a smart legal contract, which refers to a traditional, natural language, legally binding agreement that has selected terms expressed and implemented in machine readable code. In 1998, the term was used to describe objects in rights management service layer of the system The Stanford Infobus, which was a part of Stanford Digital Library Project. Smart contracts are not legal agreements, but instead transactions which are executed automatically by a computer program or a transaction protocol, such as technological means for the automation of payment obligations such as by transferring cryptocurrencies or other tokens. Some scholars have argued that the imperative or declarative nature of programming languages would impact the legal validity of smart contracts. Since the 2015 launch of the Ethereum blockchain, the term "smart contract" has been applied to general purpose computation that takes place on a blockchain. The US National Institute of Standards and Technology describes a "smart contract" as a "collection of code and data (sometimes referred to as functions and state) that is deployed using cryptographically signed transactions on the blockchain network". In this interpretation a smart contract is any kind of computer program which uses a blockchain. A smart contract also can be regarded as a secured stored procedure, as its execution and codified effects (like the transfer of tokens between parties) cannot be manipulated without modifying the blockchain itself. In this interpretation, the execution of contracts is controlled and audited by the platform, not by arbitrary server side programs connecting to the platform. In 2018, a US Senate report said: "While smart contracts might sound new, the concept is rooted in basic contract law. Usually, the judicial system adjudicates contractual disputes and enforces terms, but it is also common to have another arbitration method, especially for international transactions. With smart contracts, a program enforces the contract built into the code." States in the US which have passed legislation on the use of smart contracts include Arizona, Iowa, Nevada, Tennessee, and Wyoming. In April 2020,
In April 2021, the UK Jurisdiction Taskforce (UKJT) published the Digital Dispute Resolution Rules (the Digital DR Rules) which was intended to enable the rapid resolution of blockchain and crypto legal disputes in Britain.
Вопросы безопасности
Данные транзакций из смарт-контракта на основе блокчейна видны всем пользователям в блокчейне. Данные обеспечивают криптографическое представление о транзакциях, однако это приводит к ситуации, когда ошибки, включая пробелы в безопасности, видны всем, но могут не быть быстро исправлены. Такая атака, которую трудно быстро исправить, была успешно выполнена на DAO в июне 2016 года, израсходовав примерно миллион эфиров в то время, в то время как разработчики пытались найти решение, которое бы достигло консенсуса. Программа DAO имела временную задержку, прежде чем хакер смог удалить средства; был сделан жесткий вилок программного обеспечения Ethereum, чтобы вернуть средства у атакующего до истечения срока. Другие громкие атаки включают в себя атаки на многоподписывающий кошелек Parity и атаку на подтоки / перетоки целых чисел (2018), в общей сложности более миллиона. Проблемы в смарт-контрактах Ethereum, в частности, включают двусмысленность и простые, но небезопасные конструкции в языке контрактов Solidity, ошибки компилятора, ошибки виртуальной машины Ethereum, атаки на сеть блокчейна, неизменность ошибок и отсутствие центрального источника, документирующего известные уязвимости, атаки и проблемные конструкции. В юридической отрасли нет официального определения умного юридического контракта. Рикардовый договор - это тип умного юридического контракта.