Skip to main content

Смарт-контракт веб-ассамблеи (WASM)

WebAssembly используется в субстрате в качестве цели для компиляции во время выполнения.

Почему именно WebAssembly?

WASM используется как двоичный формат инструкций для стековой виртуальной машины. Он разработан как цель для компиляции языков высокого уровня, таких как C/C++/Rust. Это позволяет развертывать серверные и клиентские приложения в Интернете.

С технической точки зрения, WASM используется как двоичный формат, диагностирующий платформу. Это означает, что он будет выполнять одинаковые инструкции на любой машине, на которой он работает. Блокчейн нуждается в детерминированности, чтобы иметь высоконадежные обновления переходов состояния на всех узлах одноранговой (P2P) сети, не заставляя каждого участника сети использовать одинаковое аппаратное обеспечение. WASM очень быстрый и эффективный. Эффективность иллюстрируется тем, что он может быть загружен в блокчейн как сгусток кода. Это приводит к тому, что он не вызывает раздувания, сохраняя при этом способность выполняться на скоростях, близких к естественным.

Развертывание смарт-контрактов на WASM