Commit Graph
100 Commits
Author SHA1 Message Date
ebfull f5d2afb4ea Merge pull request #28 from ebfull/hash-checks-of-params
Hash checks of parameter files during initialization
2018-08-02 12:12:02 -06:00
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
ebfull f55a654901 Merge pull request #26 from ebfull/bump-sapling-crypto
Update sapling-crypto
2018-07-30 21:08:52 -06:00
Sean Bowe bd9b8aabb9 Update sapling-crypto 2018-07-30 18:52:03 -06:00
ebfull 32026ea0a1 Merge pull request #24 from ebfull/sapling_proof_api
Sapling proof API
2018-07-24 18:18:04 -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
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
Sean Bowe f8f8954608 Update sapling-crypto 2018-05-18 12:47:35 -06:00
Sean Bowe d14b12aae4 Switch to little endian encoding for everything. 2018-05-17 16:06:31 -06:00
Sean Bowe da5f1d3e37 Update to latest rustfmt 2018-05-17 11:59:20 -06:00
Sean Bowe e4143a4bbc Apply rustfmt to benchmarks 2018-05-17 10:50:56 -06:00
Sean Bowe 97bdd1655f Update clippy 2018-05-17 10:44:28 -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
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
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
Sean Bowe 5199fdfcb7 Use newer versions of libc and num_cpus 2018-04-10 13:57:33 -06:00
ebfull 10c5010fd9 Merge pull request #22 from ebfull/final-changes
Final changes
2018-04-03 18:56:06 -06:00
Sean Bowe 96b2d3e41a Prevent trivial subversion attack against prover. 2018-04-02 22:21:42 -06:00
Sean Bowe d14f2af8fa Make fields of Parameters/VerifyingKey/Proof public. 2018-04-02 18:15:39 -06:00
Sean Bowe 6e57ef0c4a Bump version 2018-03-31 23:23:37 -06:00
Sean Bowe 6ec7272586 Serialize lengths as 32-bit integers, not 64-bit. 2018-03-31 23:23:08 -06:00
Sean Bowe c4fd8856ae Make multicore module public for now, because Worker is part of the EvaluationDomain API. 2018-03-31 23:16:55 -06:00
Sean Bowe 2d12b9a858 Apply newer rustfmt rules. 2018-03-29 11:18:15 -06:00
Sean Bowe fcaddaa356 Update Clippy to support latest nightly, and fix some lints. 2018-03-29 10:13:00 -06:00
Sean Bowe bcc8379a7f Version bump. 2018-03-29 09:23:20 -06:00
Sean Bowe 4cf5a534ec i128_type feature has been stabilized in Rust. 2018-03-29 09:18:26 -06:00
ebfull 33feb3763f Merge pull request #17 from plutomonkey/update-rand-dependency
Update "rand" dependency to 0.4.
2018-03-04 20:45:28 -07:00
Sean Bowe 92d2c13285 Release of pairing 0.14.0. 2018-03-04 20:01:23 -07:00
Sean Bowe c9cacc7467 Bump version and integrate pairing 0.14. 2018-03-04 19:51:03 -07:00
Sean Bowe f5370057bd Test deserialization of proofs in MiMC test example. 2018-03-04 19:41:59 -07:00
Sean Bowe 5f8747a0f4 Move MiMC example to tests. 2018-03-04 19:33:59 -07:00
Sean Bowe 86f652fa9f Some minor documentation/changes to domain. 2018-03-04 19:27:33 -07:00
Sean Bowe f7815f6e49 Remove unused tests and fix documentation. 2018-03-04 18:49:07 -07:00
Sean Bowe ab1487025f Serialization of parameters and proofs. 2018-03-04 18:49:05 -07:00
Sean Bowe 53083f4290 Apply rustfmt to the codebase. 2018-02-21 11:08:58 -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
Sean Bowe a0fcf717c8 add_nocarry and sub_noborrow should no longer return anything. 2018-02-13 16:41:10 -07:00
Sean Bowe 7211d98c1e Implement linear combination addition with coefficient. 2018-01-07 11:31:35 -07:00
Sean Bowe dc981e6abc Allow linear combinations to be added together. 2017-12-14 16:11:24 -07:00
Sean Bowe fb679470db Bump version. 2017-12-04 21:48:22 -07:00
Sean Bowe 04a32fb443 Introduce expose-arith unstable feature for exposing arithmetic functions downstream. 2017-12-04 21:47:45 -07:00
Sean Bowe 70a588ceee Version bump 2017-12-02 23:31:37 -07:00
ebfull 3163e801b9 Merge pull request #16 from ebfull/recode
Part one of recoding bellman
2017-12-02 23:30:57 -07:00
Sean Bowe 5a88b4f818 Guarantee inheritance of variable type for public constraint system contexts. 2017-12-02 23:30:23 -07:00
Sean Bowe b8394bf14d Fix some comments. 2017-11-26 03:09:06 -07:00
Sean Bowe bb1ced0bd7 Update clippy version. 2017-11-25 21:32:14 -07:00
Sean Bowe 566f100480 Release of 0.13.1. 2017-11-25 21:01:55 -07:00
Sean Bowe aa0cc06e5e Scalar field should be guaranteed to be SqrtField. 2017-11-25 20:57:10 -07:00
Sean Bowe 1fc640e88f Guarantee that we inherit the correct variable type. 2017-11-24 10:14:11 -07:00
Sean Bowe 92029393f6 Guarantee that variables are Copy+Clone. 2017-11-22 22:55:32 -07:00
Sean Bowe 1d394e00f6 Allow linear combination terms to be inspected for downstream evaluation. 2017-11-22 21:11:41 -07:00
Sean Bowe e54c4bc1b3 Rename to namespace_public. 2017-11-21 14:00:00 -07:00
Sean Bowe af91dcda33 Infrastructure for public input namespacing. 2017-11-21 13:44:56 -07:00
Sean Bowe b7f2f9e409 Part one of Bellman being recoded. 2017-11-21 01:59:49 -07:00
Sean Bowe 4a1ac94799 Implement Clone for Bls12. 2017-11-20 23:53:58 -07:00
Sean Bowe 4b366a143d Ensure Engine's are always Clone. 2017-11-20 23:20:11 -07:00
Sean Bowe 6d55a4052a Move everything into oldsrc. 2017-11-20 23:01:15 -07:00
Sean Bowe 945d86fe7d Make the namespacing not introduce too much indirection. 2017-11-20 15:50:41 -07:00
Sean Bowe f32cb40929 Engine should always be 'static, for flexibility in downstream code. 2017-11-20 12:22:51 -07:00
Sean Bowe a1e1aa30b5 More infrastructure for test development. 2017-11-18 20:10:47 -07:00
Sean Bowe 3ee1a576f4 Bump version 2017-11-13 01:36:54 -07:00
Sean Bowe 471db6ab27 Enforce that Fr of Engine is the scalar for curve points, for simpler downstream abstractions. 2017-11-12 16:19:08 -07:00
Sean Bowe 7df272b349 Make license files/copyright identical to pairing crate. 2017-11-12 15:56:03 -07:00
Sean Bowe 13a5cbf9d5 Modify the public api surrounding multiexp. 2017-11-12 15:52:10 -07:00
Sean Bowe e4c62180d7 Use a basic heuristic to choose c for multiexp. 2017-11-12 15:50:34 -07:00
Sean Bowe b15f5f6f43 Fix some warnings and TODO's. 2017-11-12 13:45:13 -07:00
Sean Bowe d616362884 Add TestConstraintSystem 2017-11-12 13:26:03 -07:00
Sean Bowe bc19c76326 Change API to support constraint/variable annotation. 2017-11-11 04:50:30 -07:00
Sean Bowe 3bb6596507 Don't make u128-support a default feature anymore. 2017-11-05 19:35:28 -07:00
Sean Bowe 326996139e Update to use the latest version of pairing library. 2017-10-22 05:45:26 -06:00
Sean Bowe 342b94c76b Use "1" for the byteorder crate's version. 2017-10-12 11:20:57 -06:00
Sean Bowe 39c25cd506 Bump version to 0.13.0 2017-10-10 01:54:53 -06:00
Sean Bowe 12b9606b9c G1/G2 rand() should produce elements of unknown exponent. 2017-10-10 01:13:35 -06:00
Sean Bowe 65e50a9e5a Allow scale_by_cofactor to be dead code temporarily. 2017-10-09 17:14:36 -06:00
Sean Bowe dbac57c27b Further refactoring of get_point_from_x() 2017-10-05 12:35:04 -06:00
Sean Bowe 683f21a4d5 Remove spurious newline. 2017-10-04 14:53:42 -06:00
Sean Bowe 85b95750e2 Fix comment about u128-support. 2017-10-04 14:09:40 -06:00