Commit Graph
47 Commits
Author SHA1 Message Date
Sean Bowe 48c2d3c8da Get parameter hashes from the user, rather than supplying it ourselves. 2018-08-02 12:11:32 -06:00
Sean Bowe d4ee94c692 cargo fmt 2018-08-01 19:01:54 -06:00
Sean Bowe 98a006e0c4 Hash checks of parameter files during initialization. 2018-08-01 18:57:10 -06:00
Sean Bowe 22486b8269 Make librustzcash_sapling_binding_sig take context as a const pointer. 2018-07-18 15:33:19 -06:00
Sean Bowe 41ca6e8473 cargo fmt 2018-07-17 17:02:10 -06:00
Sean Bowe bcba4924ca Fix negation bug in librustzcash_sapling_check_output 2018-07-17 17:01:04 -06:00
Sean Bowe 0800976a57 Add implementation of Sapling proof API 2018-07-17 16:46:10 -06:00
Sean Bowe 3b05f8f201 Apply rustfmt. 2018-06-12 15:32:57 -06:00
Sean Bowe 065154cdd1 Implementation of Sapling key agreement. 2018-06-12 15:32:20 -06:00
str4d 0af1ce8bf1 Merge pull request #19 from bitcartel/add_note_nullifier_computation
Add interface and computation of Sapling note nullifier
2018-06-09 10:26:02 +12:00
Simon 11552c1579 Add test for librustzcash_sapling_compute_nf.
Rename test: commitments -> notes.
2018-06-08 14:04:02 -07:00
Simon 8ec096bdeb Add function librustzcash_sapling_compute_nf.
Also add function priv_get_note to refactor common code from librustzcash_sapling_compute_cm.
2018-06-07 10:36:52 -07:00
Simon 72e81ce8a4 Remove redundant functon librustzcash_xor 2018-06-05 11:46:42 -07:00
Simon 44e2a53856 Add test of librustzcash_sapling_compute_cm against test vectors. 2018-06-04 14:24:24 -07:00
Simon eb3d8aa12c Add test for generating commitment randomness. 2018-06-04 14:24:14 -07:00
Simon 4ef2e9ae68 Add ffi and computation for Sapling note commitment. 2018-06-04 14:24:06 -07:00
str4d b54e028bb2 Test librustzcash key component APIs against test vectors 2018-05-31 11:10:12 +12:00
Jay Graber be1b307446 Add check_diversifier and ivk_to_pkd 2018-05-31 11:07:43 +12:00
Jay Graber 23c2f0e527 Add crh_ivk 2018-05-31 11:07:42 +12:00
Jay Graber c44d70299b Add ask_to_ak and nsk_to_nk 2018-05-31 11:07:39 +12:00
Jay Graber 128af9fc82 Add to_scalar call 2018-05-31 11:05:55 +12:00
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
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
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
Sean Bowe 63730f3846 Check epk/rk/cv are not small order. 2018-05-14 16:23:34 -06:00
Sean Bowe fefa46b4c4 Implementation of Sprout proving and verifying 2018-05-10 14:29:02 -06:00
Sean Bowe 313e45cc01 Implementation of Sapling transaction verification. 2018-05-07 19:22:07 -06:00
Sean Bowe e9f8c88c95 Use little endian encoding for Pedersen hash digest output. 2018-05-07 18:06:53 -06:00
Sean Bowe 5f233ef989 Initialize Jubjub parameters up front 2018-05-07 17:41:49 -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
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 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 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 d7085b90c8 Initial commit. 2017-03-17 11:07:23 -06:00