Технология блокчейн может решать многие проблемы, но собственных проблем у неё тоже хватает. Чем сложнее круг решаемых блокчейном задач, тем более заметными становятся его собственные изъяны. Конечно, принято считать, что смарт-контракты стали огромным прорывом для решения различных задач. Но идеально ли они были спроектированы? В настоящее время проблемы существующих смарт-контрактов широко обсуждаются в криптовалютном сообществе.
Где лучше хранить смарт-контракты?
Одна из этих проблем заключается в том, что при распределённом реестре неэффективно вести вычисления большого объёма, которые иногда необходимы для удовлетворения условий контракта. Об этом говорит разработчик Bitcoin Core Грегори Максвелл:
«Смарт-контракты в системе публичных распределённых реестров, по сути, представляют собой функцию возврата логического условия, и создатель биткоина это понимал. Их работа заключается в приёме входных данных о транзакциии о блокчейн цепочке.А ещё им приходится принимать или отклонять обновлениявсей системы. Сеть из тысяч узлов по всему миру сопротивляется таким «заплаткам», а смарт-контракты заботятся только о том, чтобы эти изменения были приняты и зафиксированы. Транзакция также может нести с собой и произвольно выбранную дополнительную информацию – опять же для того, чтобы транзакция была скорейшим образом завершена.
В существующих блокчейн системах, чтобы решить, выполнилось такое дополнительное условие, или нет, не требуется полноты формулировки [по Тьюрингу]».
Таким образом, подход Bitcoin Core для обеспечения безопасности заключается в размещении всех условий транзакций вне основной цепочки — при помощи скриптов, при помощи полных формулировок (вышеназванных, по Тьюрингу). Следовательно, здесь речь идёт и о необходимости обеспечения гибкости для виртуальной машины Ethereum.
«Выполнение тяжелых вычислений на блокчейн — действительно безумие. Вот для чего нужны услуги, представленные на рынке вычислений эфира», — прокомментировал ситуацию Виталик Бутерин в Reddit.
Но внедрение сторонних вычислений может привести и к проблемам доверия, т.к. придётся иметь дело со сторонними владельцами вычислительных мощностей, и встанет вопрос о благонадёжности того или иного поставщика услуг. В результате, пользователям криптовалют придётся иметь дело с частично централизованной системой.
Таддеус Дрийя (LN):
«Хоть мы и утверждаем, что всеобщий консенсус по блокчейн важен, он по-прежнему смехотворно неэффективен и даже во многих случаях не нужен, т.к. каждый раз приходится согласовывать всё. Достижение многостороннего децентрализованного глобального консенсуса ради безопасности ведёт к резкому снижению быстродействия сети».
Каналы состояний Aeternity
Более элегантным решением для масштабируемости блокчейн является инициатива под названием Aeternity. Янислав Малахов, один из первых блокчейн энтузиастов, и его команда нашли способ увеличения эффективности смарт-контрактов, введя новое блокчейн расширение под названием «каналы состояний».
Подобно платёжным каналам Lightning Network, каналы состояний могут конфиденциально управлять информацией между контрагентами вне основной цепочки. Отличие каналов состояний Aeternity от платёжных каналов Lightning Network состоит в том, что каналы состояний могут принимать не только транзакции, но и информацию о текущем состоянии контракта. Каналы состояний позволяют проводить мгновенные параллельные условные транзакции без их объединения, что повышает общую производительность системы.
Таким образом, блокчейн в основном работает как коллективная власть и децентрализованный судья, разрешая разногласия между контрагентами.
Трент МакКонахи, соучредитель и главный технический директор BigchainDB говорит:
«Подход Малахова к децентрализованной обработке данных отлично решает проблемы масштабируемости, взяв на вооружение концепцию канала состояния до n-ой степени».