Aeternity — это новая платформа для создания децентрализованных приложений, тестовая сеть которой была запущена в 2017 году. Также в 2017-м было проведено успешное ICO токена Aeon (AE) этой платформы.
Цель проекта — увеличение масштабируемости смарт-контрактов и DApps. Это достигается за счет того, что смарт-контракты выносятся за границы блокчейна и исполняются в приватных каналах состояний, и доступ к ним имеют только участники этих самых контрактов.
У Aeternity есть и другие особенности, которые отличают эту платформу от других площадок для смарт-контрактов и DApps. Особо следует отметить наличие машины с оракулом, который предоставляет информацию из внешних источников, используемую в смарт-контрактах. Кроме того, для голосования и верификации на платформе используются рынки предсказаний.
Aeternity была основана известным криптоэнтузиастом и бывшим коллегой Виталика Бутерина Яниславом Малаховым и быстро вошла в топ-40 криптовалют мира по размеру рыночной капитализации.
В этой статье мы подробно изучим эту платформу, ее достоинства и возможные способы применения.
Проблема: Масштабирование смарт-контрактов
Платформа Ethereum позволяет использовать блокчейн для заключения смарт-контрактов. В свое время это был технологический прорыв. Благодаря Ethereum стало возможным задействовать блокчейн не только для финансовых транзакций (как в Bitcoin), но и для создания децентрализованных приложений.
Однако недавно мы убедились, что при исполнении смарт-контрактов на основе блокчейна возникают проблемы с масштабированием. Примером служит история с CryptoKitties. Такая простая вещь, как создание и трейдинг уникальных активов, вызвала серьезные проблемы в работе Ethereum, когда возрос объем торгов.
Команда Ethereum считает, что проблема с масштабируемостью является «вероятно, самой важной технической задачей», решение которой даст толчок к повсеместному внедрению блокчейнов. Решить эту проблему можно тремя способами:
1. Увеличить пропускную способность сети за счет использования другого механизма консенсуса
С помощью этого подхода можно увеличить число транзакций в секунду, осуществляемых внутри блокчейна. Именно так, задействовав более эффективный механизм консенсуса, проект NEO собирается масштабировать свою платформу децентрализованных приложений. Однако это не решит проблему масштабируемости в целом, и у такого подхода есть свои ограничения.
2. Увеличить пропускную способность с помощью шардинга
Именно к этому решение склоняется Ethereum, а проект Zilliqa уже его активно внедряет. Шардинг предполагает, что транзакции и запросы на смарт-контракты будут распределены по группам нод, называемым шардами. То есть, скажем, треть нод сети будет подтверждать треть транзакций. Это удобно, потому что таким образом увеличивается пропускная способность. Однако это также означает, что не все ноды будут проверять все транзакции, вследствие чего будет трудно контролировать исполнение смарт-контрактов, условия которых хранятся на других шардах.
3. Вывести смарт-контракты за пределы блокчейна
Этот подход тоже интересен Ethereum, который, возможно, будет использовать его в комбинации с шардингом. Инновационными разработками в этой области и занимается сейчас команда Aeternity, которая хочет увеличить масштабируемость именно за счет вывода смарт-контрактов за пределы блокчейна.
Главная задача Aeternity — масштабирование смарт-контрактов. Команда проекта рассчитывает совершить прорыв в этой области с помощью так называемых каналов состояний.
Каналы состояний — это линии связи между сторонами смарт-контракта. Они задействуют блокчейн только для арбитража или обмена ценностями.
Поскольку каналы состояний не являются частью блокчейна, смарт-контракты могут исполняться намного эффективнее, чем обычно. Участники не должны каждый раз оплачивать работу сети.
Кроме того, с помощью каналов состояний достигается большая конфиденциальность. Об условиях и ходе выполнения контракта могут знать только его участники. Это очень важно особенно для крупных компаний, которые опасаются выкладывать конфиденциальную информацию в публичный доступ. В каналах состояний смарт-контракты доступны только их участникам, и потому их можно использовать в целях, для которых требуется особая приватность.
Разногласия и арбитраж
Если между сторонами смарт-контракта, заключенного в канале состояний, возникли разногласия, то контракт поступает для арбитража в блокчейн. Для арбитража используется протокол доказательств с нулевым разглашением, то есть блокчейн выносит решение, не зная условий контракта. Таким образом, блокчейн выступает в качестве беспристрастного третейского судьи.
Собственно, поскольку поведение блокчейна предсказуемо, оспаривать результаты смарт-контракта, заключенного в канале состояний, бессмысленно. Решение блокчейна почти всегда будет положительным.
Окончательно исполнение контракта подтверждается в блокчейне, и контракт объявляется закрытым. Так как большая часть расчетов происходит вне блокчейна, а на долю блокчейна приходится только финальный этап, пропускная способность сети увеличивается на несколько порядков.
Разработка смарт-контрактов на Aeternity
На Aeternity можно разрабатывать функциональные смарт-контракты. Там нельзя составлять программы с сохранением состояния. Наоборот, за состоянием программы должны следить сами участники контракта. Предоставление и подтверждение состояния служит их вкладом в создание контракта.
Все это полностью противоположно подходу Ethereum, где для разработки блокчейн-приложений используются состояния. Мы не будем вдаваться в тонкости функционального и императивного программирования. Отметим только, что состояние играет важную роль при создании приложений. Ethereum работает над созданием исключительно сложной технологии шардинга состояний, и если команде проекта удастся с этим справиться, популярность Aeternity может сильно упасть.
Впрочем, на данный момент при масштабировании смарт-контрактов принято разделять функциональный и императивный подходы. Функциональные программы легче поддаются масштабированию.
Смарт-контракты на Aeternity написаны на языке Chalang, который соответствует байт-коду. В будущем Aeternity собирается предоставить разработчикам максимальные возможности. Команда проекта планирует создать для разработчиков библиотеки Javascript и интерфейсы JSON.
Машина с оракулом
Для исполнения смарт-контракта или разработки DApps важную роль могут играть внешние данные. Например, вам надо узнать погоду в Лондоне, исход футбольного матча или цену на золото.
Оракул предоставляет доступ к таким данным, находящимся вне блокчейна. В многих блокчейн-проектах оракул является слабым звеном, так как представляет собой централизованный источник информации.
В Aeternity используются децентрализованные оракулы. Благодаря этому внешние данные, попав в блокчейн Aeternity, становятся неизменными и не поддающимися взлому. Разумеется, можно взломать сам источник информации, поэтому на Aeternity действует рынок предсказаний, где пользователи могут делать ставки на точность и достоверность данных, поступающих из различных источников.
Гибридный алгоритм Proof-of-Work & Proof-of-Stake
Консенсус в сети Aeternity достигается путем применения гибридного алгоритма PoW и PoS.
PoW является алгоритмом консенсуса на платформе Aeternity. Майнеры подтверждают новые блокипримерно так же, как это сейчас устроено в биткоине и эфире. Однако для большей масштабируемости в Aeternity используется несколько улучшенная версия PoW.
Новый PoW алгоритм Cuckoo Cycle, созданный на основе теории графов, обеспечивает мгновенное подтверждение блоков и поддерживает устройства с динамической оперативной памятью. Благодаря ему можно заниматься майнингом токенов Aeternity даже со смартфонов.
Алгоритм PoS предназначен для управления экосистемой Aeternity. В зависимости от количества токенов AE их владельцы могут голосовать за предложения по развитию и модернизации Aeternity.
Приложения Aepps с открытым кодом с момента запуска платформы
Aeternity называет свои децентрализованные приложения «aepps». Для демонстрации возможностей платформы такие приложения с открытым кодом разрабатываются еще до запуска основной сети. Наличие готовых приложений с первого дня даст Aeternity преимущество перед многими другими платформами децентрализованных приложений.
Aepps на Aeternity будут в первую очередь ориентированы на смартфоны. Aeternity предоставляет простые инструменты для работы с Javascript и совместимость с фреймворком React, рассчитывая таким образом привлечь разработчиков мобильных и веб-приложений.
Кроме того, команда Aeternity создает фонд, который будет поддерживать разработку новых проектов на этой платформе.
Токен Aeon (AE)
Продажи токена Aeon начались в 2017 году. Пока Aeternity существует только в виде тестовой сети, Aeon является токеном стандарта ERC-20, выпускаемым на Ethereum. Когда будет запущена основная сеть Aeternity, эти токены можно будет обменять на собственные токены Aeternity.
Все комиссии уплачиваются в Aeon, и все смарт-контракты заключаются в Aeon. В этом смысле токены AE напоминают эфир.
Токены AE торгуются на Bittrex и Hitbtc. Пока Aeon является токеном ERC-20, его можно хранить в любом кошельке, поддерживающем этот стандарт. Впрочем, с появлением собственных токенов Aeternity ситуация может измениться.
Будь в курсе! Подписывайся на Криптовалюта.Tech в Telegram.
Обсудить актуальные новости и события на Форуме