You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
arnaucube e98a97e9fe add wasm for Groth16 proof generation & verification 4 years ago
..
utils add wasm for Groth16 proof generation & verification 4 years ago
.gitignore wasm proof generation from browser working. Added cli wasm exporters, html&js browser example, wasm wrapper from go 4 years ago
README.md add wasm for Groth16 proof generation & verification 4 years ago
go-snark-wasm-wrapper.go add wasm for Groth16 proof generation & verification 4 years ago
go-snark.wasm add wasm for Groth16 proof generation & verification 4 years ago
index.html add wasm snark proof verification function (Pinocchio) 4 years ago
index.js add wasm snark proof verification function (Pinocchio) 4 years ago
package.json wasm proof generation from browser working. Added cli wasm exporters, html&js browser example, wasm wrapper from go 4 years ago
server.js wasm proof generation from browser working. Added cli wasm exporters, html&js browser example, wasm wrapper from go 4 years ago

README.md

go-snark wasm

Warning: this is an ongoing experimentation

WASM wrappers for zkSNARK Pinocchio & Groth16 protocols.

Wasm usage

To compile to wasm, inside the wasm directory, execute:

GOARCH=wasm GOOS=js go build -o go-snark.wasm go-snark-wasm-wrapper.go

Add the file wasm_exec.js in the directory:

cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" .

To see the usage from javascript, check index.js file.

Run the http server that allows to load the .wasm file:

node server.js