首页 > 解决方案 > 占用空间小的 WebAssembly 语言

问题描述

我正在寻找一种编译为 wasm 的语言(或其他非人类可读并通过 web 程序集运行的语言,如 dll),占用空间小。我需要能够通过 javascript 与之交互。

我需要它以一种用户无法轻易弄清楚的方式执行字符串的散列。我知道在客户端上运行的任何东西都不安全,但它是一种威慑,而不是一种安全功能(如验证码)。

我已经用 Blazor 完成了这个,但是下载大小太大,所以我正在寻找占用空间更小的东西。

谢谢!

标签: webassembly

解决方案


一种针对 WebAssebmly 的轻量级方法是https://github.com/AssemblyScript/assemblyscript。它是低级的,但更容易编写原始 WebAssembly。如果您小心避免依赖于 libc 的较大部分,那么 emscripten 也可以生成非常小的二进制文件。

但是,如果您的目标是混淆,那么 WebAssebmly 确实不比 JavaScript 好。WebAssembly 不是为此目的而设计的。与 JVM 字节码之类的东西一样,有一些工具可以很好地反编译 WebAssembly 二进制文件。请参阅作为https://github.com/WebAssembly/wabt一部分的 wasm-deompile 。这些工具只会随着时间的推移变得更好。


推荐阅读