{"id":14279,"url":"\/distributions\/14279\/click?bit=1&hash=4408d97a995353c62a7353088166cda4ded361bf29df096e086ea0bbb9c1b2fc","title":"\u0427\u0442\u043e \u0432\u044b\u0431\u0435\u0440\u0435\u0442\u0435: \u0432\u044b\u0435\u0445\u0430\u0442\u044c \u043f\u043e\u0437\u0436\u0435 \u0438\u043b\u0438 \u0437\u0430\u0435\u0445\u0430\u0442\u044c \u0440\u0430\u043d\u044c\u0448\u0435?","buttonText":"","imageUuid":""}

Эпизод 2: Что такое смарт-контракт?

Представьте, что вы пишете, развертываете и запускаете код не на сервере, контролируемом Amazon или Google, а на открытой, прозрачной платформе, контролируемой сообществом. Вы можете создавать код, который не является частной собственностью, а находится в общем доступе, код, который выступает в качестве настоящего общественного блага. Или представьте себе развертывание кода, который находится под частным контролем, но подлежит общественному аудиту. Такие открытые решения существуют уже сегодня, их обеспечивают блокчейны. Код, развернутый на блокчейне, называется смарт-контрактом и дает разработчикам возможность создавать новые мощные приложения.

В 1990-х годах Ник Сабо, выдающийся ученый-компьютерщик, придумал термин "умный контракт" для обозначения компьютерных протоколов, которые автоматически и автономно выполняли условия контракта. Ник разработал протокол под названием "Bit Gold", который послужил вдохновением для создания блокчейна Биткойна. Однако только в 2013 году концепция смарт-контрактов вернулась к Нику в знаменитом документе по Ethereum.

Блокчейны начала 2010-х годов, такие как биткойн, были "прикладными". Это означает, что блокчейн был создан для конкретного случая использования, например, блокчейн Bitcoin был создан для переводов Bitcoin. Таким образом, разработчикам приходилось создавать и загружать совершенно новый блокчейн только для того, чтобы создать новое приложение. Такие блокчейны, ориентированные на конкретные приложения, можно рассматривать как очень базовую форму смарт-контрактов. Например, блокчейн биткойна автоматически и автономно выполняет код, который перемещает биткойн.

В 2013 году автор Биткойна Виталик Бутерин был воодушевлен преимуществами приложений на основе блокчейна и признал неэффективность создания нового блокчейна для каждого приложения. Чтобы устранить этот недостаток, Виталик выпустил документ, описывающий блокчейн, в котором все узлы работают на виртуальной машине, а не просто ведут учет транзакций. Ссылку на технический документ Ethereum можно найти в описании ниже. Он назвал блокчейн Ethereum, а виртуальную машину - "Ethereum Virtual Machine" или "EVM". Виталик назвал код, хранящийся на Ethereum и выполняемый EVM, смарт-контрактами. Сегодня термин "смарт-контракт" используется почти исключительно для обозначения кода, хранящегося и выполняемого на блокчейне.

Ethereum был запущен в 2015 году и на сегодняшний день остается самым популярным блокчейном со смарт-контрактами. Смарт-контракты на Ethereum в основном написаны на языке программирования Solidity. Solidity - это высокоуровневый, статически типизированный, объектно-ориентированный язык программирования, разработанный специально для нужд EVM. Solidity компилируется в байткод, который EVM может интерпретировать. Сегодня несколько других блокчейнов, таких как Polygon, Avalanche и Arbitrum, поддерживают EVM и, соответственно, смарт-контракты, написанные на Solidity. Однако новые блокчейны, такие как Solana и Terra, начинают использовать совершенно другие виртуальные машины, чем EVM. В настоящее время виртуальные машины для блокчейнов Solana и Terra используют высокоуровневый язык программирования Rust. Эта отрасль еще очень молода и быстро меняется. Блокчейны без EVM набирают популярность среди разработчиков, и пока неясно, будет ли какой-либо один блокчейн или виртуальная машина блокчейна доминировать на рынке смарт-контрактов.

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

На протяжении всей истории контракты эволюционировали от написания и хранения на бумаге до написания и хранения на компьютерах в виде цифровых соглашений. Большинство контрактов сегодня - это цифровые соглашения, а большинство приложений поддерживаются цифровыми соглашениями, известными как соглашения об уровне обслуживания, или SLA. Исполнение этих SLA полностью контролируется компаниями, которые их создают.

Более того, большинство приложений сегодня работают на одном из нескольких облачных сервисов, таких как AWS, Google Cloud и Microsoft Azure. Блокчейн предлагает новый тип платформы для приложений, которую могут использовать разработчики; платформу, которая контролируется не одной организацией, а отдельными людьми, управляющими узлами. Смарт-контракты в сочетании с блокчейн предлагают привлекательную альтернативу приложениям на основе цифровых соглашений, доступным сегодня. Умные контракты позволяют разработчикам писать программное обеспечение, которое возвращает власть пользователям, используя криптографию и теорию игр для гарантии того, что код будет выполнен в соответствии с написанным.

Умные контракты являются движущей силой следующей эволюции как соглашений, так и Интернета.

Телеграм канал про web3 разработку, смарт-контракты и оракулы.

0
Комментарии
-3 комментариев
Раскрывать всегда