Я немного времени потратил на то, чтобы разобраться в стороне VM у Dusk, и честно говоря, именно там проект становится по-настоящему интересным.

Все говорят о Dusk из-за приватности. Но я снова и снова возвращался к тому, что лежит в основе: как именно цепочка выполняет код, не позволяя этому коду стать проблемой?

Вот тут и появляется Piecrust. Это среда исполнения для WASM, построенная вокруг одной простой идеи: смарт-контракты должны жить внутри очень контролируемого «ящика».

Звучит скучно. Пока не вспомнишь, что каждый контракт — это код, которому ты до конца не доверяешь. Он может быть с ошибками, злонамеренным или сделать то, чего разработчик никогда не ожидал.

Значит, виртуальная машина должна быть строгой. Границы памяти имеют значение. Вызовы имеют значение. То, к чему контракт вообще может обращаться, имеет значение.

Со временем Dusk тоже пришлось ужесточать эти вещи: исправления в части выхода за границы памяти, песочницы, алиасинга, повторного входа (reentrancy) и других глубоких проблем уровня выполнения.

Не то, что становится хорошим заголовком для крипто-новостей. Но именно то, на что я реально обращаю внимание.

Потому что приватность сильна лишь настолько, насколько сильна техника «под капотом».

Мне нравится в Dusk то, что среда исполнения не была спроектирована отдельно от уровня приватности. Контракты исполняются в WASM: виртуальная машина управляет окружением, а остальная часть стека занимается конфиденциальными транзакциями и доказательствами.

Разные компоненты, но они должны вести себя как единая система.

Dusk не ощущается как просто пересборка Ethereum с приватностью «поверх». Модель исполнения другая, а то, как устроены память контрактов и состояние, выглядит более целенаправленно, чем в привычной EVM-модели.

Вот почему меня заинтересовал Piecrust.

Не потому, что WASM звучит круто.

Потому что скучная часть обычно и есть там, где живет реальная инженерия.

Если Dusk станет серьезной финансовой сетью, в первую очередь заметят приватные транзакции. Очень немногие обратят внимание на то, как VM тихо и незаметно гарантирует, что все нижележащие компоненты ведут себя ровно так, как должны.

@Dusk #dusk $DUSK