arnaucube af3e89816b | 3 years ago | |
---|---|---|
.github/workflows | 3 years ago | |
circuits | 3 years ago | |
go-keccak256-bits-impl | 3 years ago | |
test | 3 years ago | |
.gitignore | 3 years ago | |
LICENSE | 3 years ago | |
README.md | 3 years ago | |
package.json | 3 years ago |
Keccak256 hash function (ethereum version) implemented in circom. Spec: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf
Warning: WIP, this is an experimental repo.
Initial version works, compatible with Ethereum version of Keccak256.
It needs around 150848
(151k
) constraints.
For context: Rapidsnark proof generation time:
- 1.1M constraints -> 7 seconds (8 CPU)
- 128M constraints -> <2min (64 CPU)
package.json
:"dependencies": {
"keccak256-circom": "git+https://github.com/vocdoni/keccak256-circom"
}
pragma circom 2.0.0;
include "../node_modules/keccak256-circom/circuits/keccak.circom";
// for a input & output of 32 bytes:
component main = Keccak(32*8, 32*8);