Commit Graph

  • e1ab3be3cc Implementation of conditional negation for AllocatedNum. Sean Bowe 2017-12-22 03:10:58 -07:00
  • 87548f3d1d Implementation of Montgomery point addition in the circuit. Sean Bowe 2017-12-22 02:57:34 -07:00
  • 041060e5ca Merge pull request #13 from ebfull/tidy-up ebfull 2017-12-18 22:11:05 -07:00
  • 031ae638ce Tidy up the codebase (TODOs into github issues). Sean Bowe 2017-12-18 22:08:57 -07:00
  • 49cc4e05d9 Merge pull request #4 from ebfull/refactor-jubjub ebfull 2017-12-18 21:38:30 -07:00
  • 1e56289f19 Implementation of group hash in the circuit. Sean Bowe 2017-12-18 11:34:15 -07:00
  • d143d3230a Relocate grouphash implementation. Sean Bowe 2017-12-18 11:00:10 -07:00
  • 635bd8104e Add grouphash Jay Graber 2017-12-13 14:49:36 -08:00
  • 7d6a57661b Add Montgomery point interpretation. Sean Bowe 2017-12-17 10:07:00 -07:00
  • eb8803f9eb Implementation of into_bits_strict for Num. Sean Bowe 2017-12-17 09:31:33 -07:00
  • 068fbbc2be Implementation of into_bits for Num. Sean Bowe 2017-12-17 09:12:04 -07:00
  • 6c6a193551 Implementation of from_bits_strict for Num. Sean Bowe 2017-12-16 17:03:40 -07:00
  • d04c5acdb8 Implement enforce_in_field and enforce_nand for Boolean. Sean Bowe 2017-12-16 16:01:13 -07:00
  • dfd82439de Implementation of k-ary AND. Sean Bowe 2017-12-15 14:12:38 -07:00
  • dc981e6abc Allow linear combinations to be added together. Sean Bowe 2017-12-14 16:11:24 -07:00
  • 46cbfb4831 Implementation of Montgomery point doubling in the circuit. Sean Bowe 2017-12-14 15:41:37 -07:00
  • 8c4433ee82 Add 2A precomputation to jubjub parameters. Sean Bowe 2017-12-14 11:34:57 -07:00
  • 6b43a4ed10 Make UInt32::addmany produce constant results when fed constant inputs, to allow for blake2s block precomputation for group hash. Sean Bowe 2017-12-12 14:42:13 -07:00
  • 3a6e8d448f Add get_for_x to Montgomery implementation. Sean Bowe 2017-12-12 10:31:13 -07:00
  • e9d3923829 Refactor jubjub implementation to be abstract over field, parameters. Sean Bowe 2017-12-11 23:06:05 -07:00
  • bba5797e72 Merge pull request #2 from ebfull/mont-to-projective ebfull 2017-12-11 15:44:11 -07:00
  • c0f5645ab4 Do not perform inversions when converting from Montgomery to projective extended twisted Edwards. Sean Bowe 2017-12-06 17:22:35 -07:00
  • 7c48792511 Some test cleanups. Sean Bowe 2017-12-06 10:21:56 -07:00
  • bcb4925c6d Rename "sapling" to "sapling-crypto" in COPYRIGHT. Sean Bowe 2017-12-06 10:15:12 -07:00
  • 96bcc84447 Change library name and add README. Sean Bowe 2017-12-06 10:10:56 -07:00
  • 86619c7334 Implementation of fundamental circuitry and primitive Jubjub curve arithmetic. Sean Bowe 2017-11-22 21:57:00 -07:00
  • a8583dd818 Auto merge of #71 - ebfull:expose-arith, r=ebfull bmerge 2017-12-05 04:43:24 +00:00
  • fb679470db Bump version. Sean Bowe 2017-12-04 21:48:22 -07:00
  • 04a32fb443 Introduce expose-arith unstable feature for exposing arithmetic functions downstream. Sean Bowe 2017-12-04 21:47:45 -07:00
  • 70a588ceee Version bump Sean Bowe 2017-12-02 23:31:37 -07:00
  • 3163e801b9 Merge pull request #16 from ebfull/recode ebfull 2017-12-02 23:30:57 -07:00
  • 5a88b4f818 Guarantee inheritance of variable type for public constraint system contexts. Sean Bowe 2017-12-02 23:30:23 -07:00
  • cc8be5b780 Auto merge of #70 - ebfull:comment-fixes, r=ebfull bmerge 2017-11-26 10:19:09 +00:00
  • b8394bf14d Fix some comments. Sean Bowe 2017-11-26 03:09:06 -07:00
  • ed5a7f31e2 Auto merge of #69 - ebfull:0.13.1-release, r=ebfull bmerge 2017-11-26 04:27:58 +00:00
  • bb1ced0bd7 Update clippy version. Sean Bowe 2017-11-25 21:32:14 -07:00
  • 566f100480 Release of 0.13.1. Sean Bowe 2017-11-25 21:01:55 -07:00
  • df9d2aaa37 Auto merge of #68 - ebfull:scalar-sqrt, r=ebfull bmerge 2017-11-26 03:50:21 +00:00
  • aa0cc06e5e Scalar field should be guaranteed to be SqrtField. Sean Bowe 2017-11-25 20:57:10 -07:00
  • 1fc640e88f Guarantee that we inherit the correct variable type. Sean Bowe 2017-11-24 10:14:11 -07:00
  • 92029393f6 Guarantee that variables are Copy+Clone. Sean Bowe 2017-11-22 22:55:32 -07:00
  • 1d394e00f6 Allow linear combination terms to be inspected for downstream evaluation. Sean Bowe 2017-11-22 21:11:41 -07:00
  • e54c4bc1b3 Rename to namespace_public. Sean Bowe 2017-11-21 14:00:00 -07:00
  • af91dcda33 Infrastructure for public input namespacing. Sean Bowe 2017-11-21 13:44:56 -07:00
  • b7f2f9e409 Part one of Bellman being recoded. Sean Bowe 2017-11-21 00:04:49 -07:00
  • affead11a5 Auto merge of #67 - ebfull:static-engine, r=ebfull bmerge 2017-11-21 06:47:28 +00:00
  • 4a1ac94799 Implement Clone for Bls12. Sean Bowe 2017-11-20 23:53:58 -07:00
  • 4b366a143d Ensure Engine's are always Clone. Sean Bowe 2017-11-20 23:20:11 -07:00
  • 6d55a4052a Move everything into oldsrc. Sean Bowe 2017-11-20 23:01:15 -07:00
  • 945d86fe7d Make the namespacing not introduce too much indirection. Sean Bowe 2017-11-20 15:50:41 -07:00
  • 36ad8b672c Auto merge of #66 - ebfull:scalar-assoc, r=ebfull bmerge 2017-11-20 19:26:16 +00:00
  • f32cb40929 Engine should always be 'static, for flexibility in downstream code. Sean Bowe 2017-11-20 12:22:51 -07:00
  • a1e1aa30b5 More infrastructure for test development. Sean Bowe 2017-11-18 20:10:47 -07:00
  • 35314c8771 Initial commit Sean Bowe 2017-11-13 01:54:13 -07:00
  • 3ee1a576f4 Bump version Sean Bowe 2017-11-13 01:36:54 -07:00
  • 471db6ab27 Enforce that Fr of Engine is the scalar for curve points, for simpler downstream abstractions. Sean Bowe 2017-11-12 16:19:08 -07:00
  • 7df272b349 Make license files/copyright identical to pairing crate. Sean Bowe 2017-11-12 15:56:03 -07:00
  • 13a5cbf9d5 Modify the public api surrounding multiexp. Sean Bowe 2017-11-12 15:52:10 -07:00
  • e4c62180d7 Use a basic heuristic to choose c for multiexp. Sean Bowe 2017-11-12 15:50:34 -07:00
  • b15f5f6f43 Fix some warnings and TODO's. Sean Bowe 2017-11-12 13:45:13 -07:00
  • d616362884 Add TestConstraintSystem Sean Bowe 2017-11-12 13:26:03 -07:00
  • bc19c76326 Change API to support constraint/variable annotation. Sean Bowe 2017-11-11 04:50:30 -07:00
  • 3bb6596507 Don't make u128-support a default feature anymore. Sean Bowe 2017-11-05 19:35:28 -07:00
  • 326996139e Update to use the latest version of pairing library. Sean Bowe 2017-10-22 05:45:26 -06:00
  • 5d9f77f5bf Auto merge of #65 - ebfull:byteorder-version, r=ebfull bmerge 2017-10-12 17:48:25 +00:00
  • 342b94c76b Use "1" for the byteorder crate's version. Sean Bowe 2017-10-12 11:20:57 -06:00
  • 48044a853f Auto merge of #64 - ebfull:bump-13, r=ebfull bmerge 2017-10-12 17:20:04 +00:00
  • 364796d88c Auto merge of #58 - ebfull:derive-clone, r=ebfull bmerge 2017-10-12 16:45:21 +00:00
  • 30ae5d6313 Auto merge of #63 - ebfull:rand-unknown-exponent, r=ebfull bmerge 2017-10-12 16:16:52 +00:00
  • 39c25cd506 Bump version to 0.13.0 Sean Bowe 2017-10-10 01:54:53 -06:00
  • 12b9606b9c G1/G2 rand() should produce elements of unknown exponent. Sean Bowe 2017-10-10 01:13:35 -06:00
  • 044256c2f7 Auto merge of #62 - mmaker:feature/scale_by_cofactor, r=ebfull bmerge 2017-10-09 23:15:59 +00:00
  • 65e50a9e5a Allow scale_by_cofactor to be dead code temporarily. Sean Bowe 2017-10-09 17:14:36 -06:00
  • e5607bb528 Add "scale_by_cofactor". Michele Orrù 2017-10-07 15:09:24 +02:00
  • dfb836170b Auto merge of #61 - ebfull:minor-changes, r=ebfull bmerge 2017-10-05 18:36:27 +00:00
  • dbac57c27b Further refactoring of get_point_from_x() Sean Bowe 2017-10-05 12:35:04 -06:00
  • 683f21a4d5 Remove spurious newline. Sean Bowe 2017-10-04 14:53:42 -06:00
  • 85b95750e2 Fix comment about u128-support. Sean Bowe 2017-10-04 14:09:40 -06:00
  • 931257599d Refactor code for finding affine points from x-coordinates. Sean Bowe 2017-10-04 11:43:42 -06:00
  • f9d4c8b6aa Auto merge of #57 - ebfull:relic-interop, r=ebfull bmerge 2017-10-04 15:51:28 +00:00
  • 60887521b6 Derive Clone for {G1|G2}{Uncompressed|Compressed}. Sean Bowe 2017-10-03 14:35:00 -06:00
  • 18c75f11ab Account for negative curve parameter to be compatible with RELIC. Sean Bowe 2017-10-03 14:13:02 -06:00
  • a8bf8362da Auto merge of #54 - ebfull:version-bump-0.12.0, r=ebfull bmerge 2017-09-28 23:39:17 +00:00
  • 67f5fbc94c More modifications to satisfy clippy. Sean Bowe 2017-09-28 17:37:54 -06:00
  • 05339414cc Update clippy and compensate for new lints. Sean Bowe 2017-09-28 17:10:06 -06:00
  • 927febe4e8 Bump version to 0.12.0. Sean Bowe 2017-09-28 16:52:12 -06:00
  • 3e1562445a Auto merge of #53 - ebfull:assoc-consts, r=ebfull bmerge 2017-09-28 22:10:55 +00:00
  • 4fe3e1d6e3 Use associated constants for simple constants like these. (Closes #39.) Sean Bowe 2017-09-28 16:08:56 -06:00
  • abd48980ee Merge pull request #52 from ebfull/fix-copyright ebfull 2017-09-28 15:53:53 -06:00
  • 8dbee41977 Add COPYRIGHT file to inform of conditions for contributing and license information. Sean Bowe 2017-09-28 15:35:30 -06:00
  • 35bf7f63ea Modify the LICENSE-APACHE and LICENSE-MIT files. Sean Bowe 2017-09-28 15:29:58 -06:00
  • ce875c902b LICENSE-MIT: Remove inaccurate (misattributed) copyright notice Sean Bowe 2017-09-28 15:24:31 -06:00
  • 5bb8e3a841 Auto merge of #51 - ebfull:several-fixups, r=ebfull bmerge 2017-09-28 20:12:59 +00:00
  • 4aa51bd3d4 Add security warnings and some instructions to README.md. Sean Bowe 2017-09-28 13:32:34 -06:00
  • 93e2a132b5 Mask rather than divn, closes #50. Sean Bowe 2017-09-28 13:15:29 -06:00
  • 291fa71914 This coercion doesn't take place on stable yet. Sean Bowe 2017-09-28 13:03:01 -06:00
  • 636a037bb1 Make u128-support feature opt-in rather than default. Sean Bowe 2017-09-28 12:52:14 -06:00
  • 2540ab30fb Auto merge of #47 - ebfull:stable-wnaf, r=ebfull bmerge 2017-09-28 17:58:18 +00:00
  • 6708878f4c Elide these lifetimes. Sean Bowe 2017-09-28 11:39:53 -06:00
  • 68b57b2ce4 Auto merge of #49 - ebfull:simplify-bench, r=ebfull bmerge 2017-09-28 17:33:23 +00:00