Commit Graph

41 Commits

Author SHA1 Message Date
Eirik Ogilvie-Wigley
9a5fc3c9f6
Refactor: extract common code 2018-05-24 16:31:22 +12:00
str4d
d7a93a03e6
Use a fixed-width stack-allocated array to prepare Equihash indices for hashing 2018-05-24 16:30:56 +12:00
str4d
8b8ece69cd
Use Vec::with_capacity() to allocate new indices vector 2018-05-24 16:30:56 +12:00
str4d
b693e56ead
Remove unused lifetime 2018-05-24 16:30:56 +12:00
str4d
ce87be1688
Add (and use) a faster recursive Equihash validator 2018-05-24 16:30:56 +12:00
str4d
94c38fa853
Oxidise the Equihash validator 2018-05-24 16:30:56 +12:00
str4d
d19c9b5645
Implement Equihash validator
Follows Zcash implementation as closely as possible.
2018-05-24 16:30:56 +12:00
ebfull
36d7acf3f3
Merge pull request #12 from ebfull/little-endian
Switch to little endian encoding for everything
2018-05-18 13:25:41 -06:00
str4d
da31c3388a Test note commitment in key component test vectors 2018-05-19 07:19:33 +12:00
str4d
fdf27743ea Test ivk in key components 2018-05-19 06:50:09 +12:00
Sean Bowe
f8f8954608 Update sapling-crypto 2018-05-18 12:47:35 -06:00
str4d
8be09647b6 Add tests of Sapling key components 2018-05-19 06:31:13 +12:00
str4d
02a898b521 Add test vectors for RedJubjub 2018-05-18 20:37:25 +12:00
str4d
ca66568111 Add test vectors for Sapling generators 2018-05-18 19:59:23 +12:00
Sean Bowe
d14b12aae4 Switch to little endian encoding for everything. 2018-05-17 16:06:31 -06:00
ebfull
a64c850e6d
Merge pull request #10 from ebfull/small-order-checks
Check epk/rk/cv are not small order
2018-05-14 16:26:40 -06:00
Sean Bowe
63730f3846 Check epk/rk/cv are not small order. 2018-05-14 16:23:34 -06:00
str4d
b12276e63c
Merge pull request #6 from ebfull/sprout-proofs
Sprout proofs
2018-05-10 23:40:39 -04:00
Sean Bowe
fefa46b4c4
Implementation of Sprout proving and verifying 2018-05-10 14:29:02 -06:00
ebfull
5e220695e5
Merge pull request #7 from ebfull/sapling-verification
Sapling verification
2018-05-07 23:37:11 -06:00
Sean Bowe
313e45cc01 Implementation of Sapling transaction verification. 2018-05-07 19:22:07 -06:00
ebfull
ef676eff50
Merge pull request #8 from ebfull/minor-changes
Minor changes
2018-05-07 18:50:54 -06:00
Sean Bowe
e9f8c88c95 Use little endian encoding for Pedersen hash digest output. 2018-05-07 18:06:53 -06:00
Sean Bowe
d73044896e Update sapling-crypto dependency. 2018-05-07 17:52:44 -06:00
Sean Bowe
5f233ef989 Initialize Jubjub parameters up front 2018-05-07 17:41:49 -06:00
ebfull
6cc1813ae3
Merge pull request #4 from ebfull/zksnark-param-loading
Support loading zk-SNARK parameters
2018-04-19 10:53:12 -06:00
Sean Bowe
170397b5a5 Apply rustfmt 2018-04-17 14:22:35 -06:00
Sean Bowe
4f9953f18f Support loading zk-SNARK parameters 2018-04-17 14:16:14 -06:00
str4d
2a86c912f6
Merge pull request #3 from ebfull/params-and-merkle-hash
Expose API for merkle hash
2018-04-14 19:29:15 -06:00
Sean Bowe
37f20fb90c Use lazy_static to initialize the Jubjub parameters, to avoid passing parameters around. 2018-04-12 18:38:25 -06:00
Sean Bowe
cb8c9ebbce Make panic abort to avoid FFI problems. 2018-04-12 15:35:20 -06:00
Sean Bowe
96654ee5bd Fix typos 2018-04-12 15:01:48 -06:00
Sean Bowe
f1d35708bc
Expose API for init/free of parameters and, to test, a merkle tree hash invocation. 2018-04-11 21:51:30 -06:00
str4d
7dc69c6893
Merge pull request #2 from str4d/sapling-crypto
Add sapling-crypto to dependencies
2018-04-10 13:57:56 -06:00
Sean Bowe
5199fdfcb7
Use newer versions of libc and num_cpus 2018-04-10 13:57:33 -06:00
str4d
222e0b3515
Add sapling-crypto to dependencies 2018-04-09 18:28:42 -06:00
Sean Bowe
91348647a8 Fix indentation. 2017-03-17 11:36:32 -06:00
Sean Bowe
2c9ee1a8bb Add stdint include. 2017-03-17 11:34:30 -06:00
Sean Bowe
7cf3af7d67 Add includes. 2017-03-17 11:25:08 -06:00
Sean Bowe
ce515886ca Add license files. 2017-03-17 11:09:05 -06:00
Sean Bowe
d7085b90c8 Initial commit. 2017-03-17 11:07:23 -06:00