## rust keccak256,total guest instructions used 12924 ``` 安装wasm pack cargo install wasm-pack cargo install wasm-pack --locked zkwasm 编译 git clone -b host-ops-1.6 https://github.com/ethstorage/zkWasm.git cd zkWasm git submodule update --init rust-keccak256 编译 git clone https://github.com/JustXxx/rust-keccak256 cd rust-keccak256 wasm-pack build --release --out-name rust-sdk-test.wasm --out-dir pkg cd .. zkwasm 验证 cd zkWasm cargo run --release -- --function zkmain --output ./output --param ./param --host default --wasm ../rust-keccak256/pkg/rust-sdk-test.wasm dry-run cd .. ```  ## rust host keccak256,total guest instructions used 8233 ``` host-rust-keccak256编译 git clone https://github.com/JustXxx/rust-host-keccak256.git cd rust-host-keccak256 wasm-pack build --release --out-name rust-sdk-test.wasm --out-dir pkg cd .. zkwasm 验证 cd zkWasm cargo run -- --function zkmain --output ./output --param ./param --host host --wasm ../rust-host-keccak256/pkg/rust-sdk-test.wasm dry-run cd .. ```  ## go keccak256, total guest instructions used 67775184 ``` host-rust-keccak256编译 git clone https://github.com/JustXxx/go-keccak256.git cd go-host-keccak256 sh ./run.sh cd .. zkwasm 验证 cd zkWasm cargo run -- --function zkmain --output ./output --param ./param --host host --wasm ../go-keccak256/keccak256.wasm dry-run cd .. ```  ## go host keccak256, total guest instructions used 67746743 ``` host-rust-keccak256编译 git clone https://github.com/JustXxx/go-host-keccak256.git cd go-host-keccak256 sh ./run.sh cd .. zkwasm 验证 cd zkWasm cargo run -- --function zkmain --output ./output --param ./param --host host --wasm ../go-host-keccak256/keccak256.wasm dry-run cd .. ```  ## optimism host keccak256验证 (由于zkWasm-host-circuits不支持 U8长度非8整除的,所以这里验证未通过) ``` op-program编译 git clone -b keccak https://github.com/JustXxx/optimism.git cd optimism/op-program/ make op-program-host make op-program-client-smoke-test make op-program-client cd ../.. zkgo编译 go version //输出 go version go1.19.13 linux/amd64 go clean -cache git clone -b wasi https://github.com/ethstorage/go cd go/src ./all.bash cd ../.. go path设置 unlink /usr/local/go ln -s /XXXXX/go/go /usr/local/go go version //输出 go version go1.21.0 linux/amd64 op-program wasm git clone https://github.com/ethstorage/EthStorage-Grant.git cd optimism/op-program/ cp ../../EthStorage-Grant/preimages-test.bin bin make op-program-client-wasm-smoke-test make op-program-client-wasm // 由于已经引入了host的keccak相关函数,函数内容在node中没有,下面步骤无法验证通过 node ./zkWasm-emulator/wasi/wasi_exec_node.js ./bin/op-program-client-test.wasm ./bin/preimages-test.bin cd ../.. 编译zkwasm git clone -b keccak256_for_op https://github.com/JustXxx/zkWasm.git keccak256_for_op_zkWasm cd keccak256_for_op_zkWasm git submodule update --init cargo build --release // 由于zkWasm-host-circuits实现和crypto.Keccak256Hash不一致,下面验证不通过 cargo run --release -- --function zkmain --output ./output --wasm ../optimism/op-program/bin/op-program-client-test.wasm dry-run --private_file ../optimism/op-program/bin/preimages-test.bin ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up