| 
				
					 | 
			3 years ago | |
|---|---|---|
| .github/workflows | 3 years ago | |
| circuits | 3 years ago | |
| go-keccak256-bits-impl | 3 years ago | |
| test | 3 years ago | |
| .gitignore | 4 years ago | |
| LICENSE | 4 years ago | |
| README.md | 3 years ago | |
| package.json | 4 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);