Настоящим открытием в блокчейн-технологиях стали смарт-контракты, наборы механизмов, позволяющие создавать целые бизнес-технологии внутри блокчейна. Впервые идея смарт-контрактов была представлена разработчиком Ником Сабо, однако реализация задумки стала возможна лишь с появлением технологии блокчейн, и уже в 2013 году создатель Ethereum Виталик Бутерин пришел к выводу, что можно использовать блокчейн гораздо шире, чем просто для осуществления транзакций.
Главная особенность смарт-контрактов заключается в том, что все действия записаны математическим языком, в виде особых математических правил: так решается проблема двойственности терминов — в математике ее просто не существует.
На сегодняшний день создано множество платформ, предоставляющих возможность создания смарт-контрактов, каждая из которых обладает и положительными, и отрицательными сторонами. Давайте рассмотрим самые инновационные, оригинальные и удобные платформы.
Ethereum
Нельзя говорить о смарт-контрактах, не упомянув Ethereum — первую блокчейн-систему, поддерживающую возможность создания смарт-контрактов. Это, пожалуй, самая надежная и эталонная система, крупнейшая по своей капитализации.
Преимущества Ethereum:
- Самое широкое распространение.
- Гибкость системы создания контрактов позволяет прописывать максимально сложные смарт-контракты.
- Большое количество пользователей обеспечивает достаточную вычислительную мощность.
- Основан на Тьюринг-полном языке Solidity.
- Масштабируемость.
Недостатки:
- Для осуществления переводов требуется оплата в виде “газа”.
- Использует токен стандарт ERC-20, подверженный ошибке: пользователь, отправивший токены в смарт-контракт с помощью команды transfer(), безвозвратно теряет свои деньги.
Эфириум является самой популярной платформой для создания смарт-контрактов, а ошибку отправки токенов в смарт-контракт нельзя считать ошибкой программы, поскольку во всех случаях ее причиной является человеческий фактор.
Hyperledger Fabric
Проект, созданный Linux Foundation в 2015 году, является основой для создания смарт-контрактов, ориентированных на бизнес. Сами разработчики называют умные контракты в своей системе “чейн-кодом”. Платформа предоставляет пользователям возможность создания многослойных конфигураций блокчейн сети, тем самым создавая новые возможности разработчикам. Разработчики создали и свой особый язык — Go, который отличается быстрой компиляцией, что создает комфортные условия для создания чейн-кодов.
Чейн-код состоит из 4 основных функций:
- PutState — генерация и обновление актива;
- GetState — возвращение актива;
- GetHistoryForKey — получить отчет по истории изменений;
- DelState — удалить актив.
Однако функция удаления не затрагивает цепочку в блокчейне. Таким образом, даже удаленный актив имеет историю и пользователи имеют возможность проследить все действия, совершенные с ним.
Преимущества:
- Ориентирована на корпорации.
- Существование приватных каналов позволяет повысить надежность и пропускную способность.
- Использует язык программирования Go.
- Имеет возможность создания чейн-кодов на Java и JavaScript.
Недостатки:
- Небольшое коммьюнити, что связано с ориентацией на корпоративные нужды.
- Высокий порог вхождения.