Commit Graph

1019 Commits

Author SHA1 Message Date
Sean Bowe
88bdff6ce9
Pedersen hashes with full optimization 2018-02-20 17:22:00 -07:00
Sean Bowe
4fa73efc1e
Remove conditional negation implementation from AllocatedNum. 2018-02-20 16:41:33 -07:00
Sean Bowe
c89d47bb07
Remove Montgomery point doubling implementation in the circuit. 2018-02-20 16:38:44 -07:00
Sean Bowe
1610bcfbcf
Perform the y-coordinate conditional negation and lookup simultaneously. 2018-02-20 16:31:27 -07:00
Sean Bowe
6f66fd3f9d
Express x and y coordinates from lookup as linear combinations. 2018-02-20 16:11:48 -07:00
Sean Bowe
b37d9b11cb
More efficient implementation of Edwards doubling in the circuit. 2018-02-20 15:38:28 -07:00
Sean Bowe
6e80c12365
Add TODO 2018-02-20 15:11:29 -07:00
Sean Bowe
d779f31ccd
Force personalization of Pedersen hashes. 2018-02-20 15:11:29 -07:00
Sean Bowe
39175a0c2a
Remove unneeded imports 2018-02-20 15:11:29 -07:00
Sean Bowe
5118fd5008
Add new fixed generators for the output circuit 2018-02-20 15:11:29 -07:00
Sean Bowe
ec7323159c
Booleanize u64 objects. 2018-02-20 15:11:29 -07:00
Sean Bowe
1df7fbeeff
Refactor "booleanization" of objects. 2018-02-20 15:11:29 -07:00
ebfull
8d633db82b
Merge pull request #29 from ebfull/pedersen-chunks
63 chunks per pedersen hash segment
2018-02-20 15:09:59 -07:00
ebfull
c091e274ee
Merge pull request #32 from ebfull/bellman-update
Bellman update
2018-02-16 09:09:27 -07:00
Sean Bowe
2f95a9094a
Refactor to handle changes to ConstraintSystem API (no more Variable associated type, one is now static method). 2018-02-16 08:45:18 -07:00
Sean Bowe
814cfef769
Use more descriptive synthesis errors now available in bellman. 2018-02-16 08:45:17 -07:00
Sean Bowe
683aa93b44
Account for change in bellman's API for enforcement to use closures. 2018-02-16 08:44:27 -07:00
Sean Bowe
749d6ceed4 Bump version 2018-02-15 22:22:50 -07:00
Sean Bowe
cb53708767 New implementation of library API. 2018-02-14 12:31:43 -07:00
Sean Bowe
541fda7580
Fix misleading comments on write_be and read_be. 2018-02-13 17:14:17 -07:00
Sean Bowe
b971bdedda
Rename divn/muln to shr/shl. 2018-02-13 17:07:10 -07:00
bmerge
7b6e13bcb9 Auto merge of #74 - plutomonkey:clippy, r=ebfull
Update clippy and fix code indentation.

(The code indentation issue was not caught by clippy -- I noticed it by chance!)
2018-02-14 00:03:26 +00:00
Sean Bowe
a0fcf717c8
add_nocarry and sub_noborrow should no longer return anything. 2018-02-13 16:41:10 -07:00
Jason Davies
bce9f5d639 Update clippy and fix code indentation.
(The code indentation issue was not caught by clippy -- I noticed it by
chance!)
2018-02-13 16:02:30 +00:00
Jason Davies
2338174244 Update "rand" dependency to 0.4. 2018-02-13 15:51:16 +00:00
Jason Davies
137b410196
Update "rand" dependency to 0.4. 2018-02-13 15:43:35 +00:00
Sean Bowe
821d22261e
Raise the number of chunks in Pedersen hashes to 63. 2018-02-11 12:59:57 -07:00
Sean Bowe
52829af6d8
Fix test for pedersen hash chunks per generator. 2018-02-11 12:59:49 -07:00
ebfull
c8cc190781
Merge pull request #21 from ebfull/gh-revisions
Edwards scalar multiplication inside the circuit
2018-02-10 11:24:11 -07:00
Sean Bowe
73e73d7c8c
Remove TODOs by creating tickets. 2018-02-07 13:55:34 -07:00
Sean Bowe
edc4adc32c
Implementation of fixed-base Edwards scalar multiplication in the circuit. 2018-02-07 13:33:09 -07:00
Sean Bowe
69833e5162
Start initializing generators for various components in the protocol. 2018-02-06 11:08:17 -07:00
Sean Bowe
55b8f7a575
Dynamic base twisted Edwards scalar multiplication in the circuit. 2018-02-02 14:24:18 -07:00
Sean Bowe
f2c74a4b98
Implement conditional reversal of two allocated numbers. 2018-02-02 11:57:49 -07:00
Sean Bowe
d49c0b0b0d
Implement Edwards doubling in the circuit. 2018-02-02 10:01:33 -07:00
Sean Bowe
67f2cea200
Move window table lookup logic into its own module. 2018-02-02 09:50:59 -07:00
Sean Bowe
ba3ef9c84c
Implementation of 3-bit window table lookups. 2018-02-02 09:41:44 -07:00
Sean Bowe
9d49a60f48
Replace Montgomery point interpretation with twisted Edwards. 2018-01-29 10:38:18 -07:00
Sean Bowe
f00e8a8292
Change group_hash to output points in the twisted Edwards form. 2018-01-29 08:56:58 -07:00
Sean Bowe
55598e4d4f
Define get_for_y for twisted Edwards points. 2018-01-29 08:32:06 -07:00
Sean Bowe
bfda59f80b
Remove group hash implementation from inside the circuit, as it is no longer necessary. 2018-01-29 07:24:59 -07:00
ebfull
7d590491bd
Merge pull request #15 from ebfull/pedersen-hashes
Pedersen hashes inside and outside the circuit
2018-01-29 06:06:52 -07:00
Sean Bowe
42514e7c47
Remove TODO's in favor of github issues. 2018-01-29 06:06:10 -07:00
Sean Bowe
7211d98c1e Implement linear combination addition with coefficient. 2018-01-07 11:31:35 -07:00
Sean Bowe
6841763ae7
Add TODO for improving lookup performance. 2017-12-28 16:10:19 -07:00
Sean Bowe
849f330441
Add test to monitor the number of constraints consumed by the pedersen hash (in the context of a merkle tree). 2017-12-28 12:00:22 -07:00
Sean Bowe
e9c9618ef4
Implement pedersen hashes inside and outside of the circuit. 2017-12-28 11:06:05 -07:00
Sean Bowe
07f2e553a7
Implement twisted Edwards point conversion and addition in the circuit. 2017-12-22 11:52:13 -07:00
Sean Bowe
8e3bef80a4
Bump version of bellman. 2017-12-22 11:52:13 -07:00
Sean Bowe
e1ab3be3cc
Implementation of conditional negation for AllocatedNum. 2017-12-22 11:52:13 -07:00