在 WASM 文件中存储秘密的安全性

Safety of storing secrets in WASM file

我对 WebAssembly 还很陌生,正在努力了解它的工作原理。

据我了解,在 javascript 中调用 WASM 模块并提供参数。我知道客户可以公开查看此类参数,因为调用发生在 javascript.

攻击者是否有可能对 WASM 文件(例如从 Rust 编译)进行逆向工程并查看 (a) 函数逻辑和 (2) 声明的任何私有常量?如果是这样,是否意味着将秘密存储在 WASM 文件中是不安全的?

谢谢

是的,可以对 WASM 文件的代码进行逆向工程,就像对其他二进制文件一样。可以提取包含的逻辑和data/constants。 因此,假设攻击者可以访问 WASM 二进制文件,将秘密存储在 WASM 文件中是不安全的。

可以使用的工具是 wasm2wat,它将 wasm 二进制格式转换为 human-readable 文本格式。