Commit Graph

751 Commits

Author SHA1 Message Date
Jack Grigg 2067360930
Add ScalarEngine trait
This is extracted from pairing's Engine trait.
2018-07-02 23:08:12 +01:00
Jack Grigg 0eb9f5040b
Remove u128-support feature and arithmetic
Closes #2.
2018-07-02 23:08:11 +01:00
Jack Grigg 69ce66ae6c
Place ff_derive re-exports behind a feature
Part of #3.
2018-07-02 23:08:08 +01:00
Jack Grigg 002173e187
Update README.md
Closes #4.
2018-07-02 23:08:03 +01:00
Jack Grigg 06a152734c
Add missing SqrtField import to benches 2018-07-02 18:41:55 +01:00
Jack Grigg c49590bab7
Change all remaining uses of *Field to reference ff crate 2018-07-02 16:04:52 +01:00
Jack Grigg bb22a167af
Update authors 2018-07-02 15:51:32 +01:00
Jack Grigg defdf8df52
Connect ff u128-support to pairing u128-support 2018-07-02 15:49:47 +01:00
Jack Grigg a9d8079c2a
Replace implementations of Fq and Fr with derives 2018-07-02 15:48:12 +01:00
Jack Grigg d9d711ebb7
Use explicit imports instead of re-exporting the ff crate 2018-07-02 15:48:12 +01:00
Jack Grigg 1db099f1cc
Use ff crate for Field traits 2018-07-02 15:47:52 +01:00
Sean Bowe 44b601b0a9 Adjust versions 2018-07-02 08:34:26 -06:00
ebfull 729138a31e
Merge pull request #1 from str4d/updates
Update dependencies and traits
2018-07-02 08:28:36 -06:00
Sean Bowe f6d9ec8faf
Initial commit 2018-07-02 07:59:33 -06:00
Jack Grigg 91a8dc8284
Update rand crate 2018-07-02 09:18:34 +01:00
Jack Grigg 4c984595e5
Add full paths for some manually-implemented derives
This further reduces the difference between pairing's manual and derived
implementations.
2018-07-02 09:16:42 +01:00
Jack Grigg 623dbd0d74
[MOVEONLY] Move generated code around slightly in ff_derive
This reduces the differences in the generated code between the current
implementations of Fq and Fr in pairing, and their derived versions.
2018-07-02 09:16:42 +01:00
Jack Grigg b0b754ba04
Return constants and sqrt impls separately for individual rendering 2018-07-02 09:16:42 +01:00
Jack Grigg 5a48059a14
Integrate changes to trait impls from pairing into ff_derive 2018-07-02 09:16:42 +01:00
Jack Grigg 29a9161981
Implement changes to traits in ff_derive 2018-07-02 09:16:42 +01:00
Jack Grigg 58cb06ee92
Pull in trait changes from pairing 2018-07-02 09:16:22 +01:00
Jack Grigg 8201a3933f
Pull in arith changes from pairing 2018-06-28 14:31:14 -04:00
Jack Grigg 1a3a2bec74
Update other ff_derive dependencies 2018-06-28 10:18:55 -04:00
Jack Grigg 428f463555
Migrate ff_derive to syn 0.14 and quote 0.6 2018-06-28 10:17:57 -04:00
Jack Grigg 755fc7aba8
cargo fmt 2018-06-27 07:31:53 -04:00
str4d 93e26d1d87
Merge pull request #18 from Eirik0/3061_add_sapling_note_commitment_calculation
Support DH key agreement
2018-06-13 17:06:28 +12: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
str4d 46e0898f63
Merge pull request #17 from bitcartel/remove_xor_fn
Remove redundant functon librustzcash_xor
2018-06-09 10:02:12 +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
str4d 2e8a11a1da
Merge pull request #11 from bitcartel/3061_add_sapling_note_commitment_calculation
Add interface and computation of Sapling note commitment
2018-06-05 15:29:01 +12:00
Simon 943df43a89 Update authors. 2018-06-04 14:24:24 -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 18f4945d94
Merge pull request #9 from arcalinea/wallet-apis
librustzcash APIs for wallet key manipulation
2018-05-31 17:31:47 +12: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
str4d 0b862c9d52
Merge pull request #1 from zcash/eh-is-valid
Equihash validator
2018-05-26 09:19:57 +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