Commit Graph

32 Commits

Author SHA1 Message Date
Eduard S
40b280fc96 Fix mutation of inputs in Verify 2020-04-23 16:03:40 +02:00
arnaucube
bbcbba3113 Fix verifier inputs field check 2020-04-22 18:24:05 +02:00
arnaucube
37e5995f80 Fix verifier mod import path 2020-04-22 17:49:28 +02:00
arnaucube
6256fcc9db Update go mod & usage 2020-04-21 19:22:35 +02:00
arnau
e6fe08e699 Merge pull request #3 from iden3/feature/calculateH-mul
Use fft on calculateH polynomial multiplication
2020-04-21 15:45:38 +02:00
arnaucube
9b93bad028 Use fft on calculateH polynomial multiplication
For a circuit arround 22500 constraints:
- before: the proof was generated aprox in `80 seconds`
- now: the proof is generated aprox in `16 seconds`
2020-04-21 15:38:50 +02:00
arnau
fb3bbedde5 Merge pull request #2 from iden3/feature/polynomials-goff
Add polynomials arithmetic in goff
2020-04-20 12:51:04 +02:00
arnaucube
324c817d42 Add polynomials arithmetic in goff
Polynomials and ifft moved to goff (iden3/go-iden3-crypto/ff) instead of *big.Int.

Benchmarks:

- Before:
BenchmarkArithmetic/polynomialSub-4         	    2774	    441063 ns/op
BenchmarkArithmetic/polynomialMul-4         	       1	1135732757 ns/op
BenchmarkArithmetic/polynomialDiv-4         	     768	   1425192 ns/op
BenchmarkGenerateProof-4                    	       1	2844488975 ns/op

- With this commit:
BenchmarkArithmetic/polynomialSubE-4        	   23097	     54152 ns/op
BenchmarkArithmetic/polynomialMulE-4        	      25	  44914327 ns/op
BenchmarkArithmetic/polynomialDivE-4        	    8703	    132573 ns/op
BenchmarkGenerateProof-4                    	       1	1530398526 ns/op
2020-04-20 12:49:00 +02:00
arnaucube
3f5f8e2318 Add CLI 2020-04-17 21:21:39 +02:00
arnaucube
e1147db72f refactor in sub packages 2020-04-17 20:31:53 +02:00
arnau
96b4b5b308 Merge pull request #1 from iden3/feature/gh-actions
Add Github Actions
2020-04-14 16:45:19 +02:00
arnaucube
8df45c7a91 Update compile-circuits.sh to adapt null from json, update GH Actions to install snarkjs & circom for testdata generation 2020-04-14 16:43:10 +02:00
arnau
c584fc1288 Create main.yml 2020-04-11 20:57:25 +02:00
arnaucube
a439651faf Add benchmarks, Rename repo, update README.md 2020-04-09 11:20:22 +02:00
arnaucube
0e453eb1ff Add Verifier Groth16 compatible with circom 2020-04-08 11:26:01 +02:00
arnaucube
2a18bbd5fe Add Verification Key & Proof parsers from json 2020-04-08 11:06:00 +02:00
arnaucube
7aa69a5b2c Add testdata big&small circuits, update proof parsers, add compile-circuits.sh 2020-04-06 15:03:59 +02:00
arnaucube
c03cb1af00 Add Proof to string in circom/snarkjs format 2020-04-06 11:54:21 +02:00
arnaucube
198eeee493 Fix use H polynomial 2020-04-06 11:52:55 +02:00
arnaucube
d5c971e59a Update exposed methods, update README.md, add godoc & goreport cards 2020-04-03 16:48:04 +02:00
arnaucube
89e71b617a Add README.md 2020-04-02 17:03:30 +02:00
arnaucube
001af791cc Proof generation works, add h pol calculation 2020-04-02 16:59:35 +02:00
arnaucube
f8481a66aa Add ifft 2020-04-01 23:21:16 +02:00
arnaucube
a99f4510da Add zkSNARK Groth16 prover 2020-03-29 23:54:28 +02:00
arnaucube
f942c8c157 Add Witness parser from json 2020-03-29 20:32:22 +02:00
arnaucube
a9a9e78b6e Add ProvingKey parser from json 2020-03-29 20:17:31 +02:00
arnaucube
fc9ce307f8 Add parsers tests 2020-03-29 10:33:47 +02:00
arnaucube
828e3abd61 Add array string parser to G1 & G2 2020-03-29 09:51:24 +02:00
arnaucube
dfdc65fca9 Add bn256.G2 parser 2020-03-29 09:36:02 +02:00
arnaucube
d0219b3a33 Add bn256.G1 parser 2020-03-29 00:42:52 +01:00
arnaucube
1e1267092b Add polynomial operations 2020-03-28 22:27:14 +01:00
arnaucube
36fb41886a Add arithmetic mod operations 2020-03-28 21:48:25 +01:00