Ценность Piecrust — это не только «поддержка WASM»
Если считать «поддержку WASM» единственной ценностью Piecrust, то это похоже на то, как понимать автомобиль как «просто платформу, в которую можно поставить колёса». Когда я сверял белую книгу и официальные статьи об архитектуре Dusk, увидел два ограничения: контракт должен выполняться в воспроизводимой, изолированной среде, при этом криптографические вычисления нельзя полностью и медленно «перекладывать» на обычный WASM.

Piecrust написан на Rust, собран вокруг WASM runtime Wasmer и предоставляет лёгкую модульную среду исполнения контрактов. WASM даёт переносимость, песочницу-изоляцию и модульное расширение; crate piecrust отвечает за VM, а piecrust-uplink помогает с компиляцией, развёртыванием, тестированием и управлением контрактами.

Но криптографическую «тяжёлую работу» нельзя отдавать целиком WASM. В белой книге такие задачи, как Blake2b, Poseidon, проверка Plonk, проверка Groth16 BN254, а также проверка подписи Schnorr и BLS, помещены в host functions — их обработка осуществляется нативной реализацией извне VM. Логика управления потоком выполнения контракта остаётся за контрактом, а вычислительно дорогие части берёт на себя нативная библиотека. Такой подход даёт преимущества и с точки зрения производительности, и с точки зрения границ безопасности, но при этом требует строго зафиксированных интерфейсов, форматов ввода/вывода, обработки ошибок и детерминизма — иначе разные узлы могут получить разные результаты.

@Dusk $DUSK #dusk

Данные тоже нужно читать внимательно. На диаграммах из белой книги видно, что в сложных сценариях выполнение в WASM может быть примерно на 45%—255% медленнее, чем нативный код. Это не означает, что все WASM-контракты будут настолько же медленными; и нельзя напрямую пересчитать это в рост пропускной способности основной сети Dusk. Белая книга также признаёт, что тогда выгода по энергопотреблению от host functions ещё не была конкретно измерена.

Кроме того, в текущей официальной документации среду для прямого запуска Rust/WASM-контрактов называют DuskVM и описывают её как основанную на Wasmtime; Piecrust больше соответствует терминологии из белой книги и материалов ранней архитектуры. В итоге: ценность Piecrust — это не просто «поддержка WASM», а то, что он управляет воспроизводимым исполнением и высокозатратными криптографическими вычислениями, разделяя эти части и распределяя ответственность между компонентами.