Commit Graph

  • ca202ef304
    Introduce input multipacking abstraction for nullifiers. Sean Bowe 2018-03-15 12:36:05 -0600
  • 52eb59766b
    Optimize UInt32::addmany/BLAKE2s to combine equality constraints. (Closes #5) Sean Bowe 2018-03-15 12:31:10 -0600
  • b906b063a3
    Merge 8cc319f79e into 3c07a2d9b3 ebfull 2018-03-15 18:25:59 +0000
  • 827e85547e
    Public input verification utility for the test framework Sean Bowe 2018-03-15 11:42:22 -0600
  • 8cc319f79e
    Simplify implementation of addmany. Sean Bowe 2018-03-15 11:26:47 -0600
  • b16f4abc75
    Sprout circuit hash. Sean Bowe 2018-03-15 11:18:59 -0600
  • 3c07a2d9b3
    Merge pull request #30 from plutomonkey/boolean_enforce_equal ebfull 2018-03-14 07:28:33 -0600
  • 7b5905d5c6
    Add Sprout JoinSplit benchmarks. Sean Bowe 2018-03-12 23:50:22 -0600
  • 20a842402f
    Make Sprout TREE_DEPTH public. Sean Bowe 2018-03-12 23:49:57 -0600
  • c7ea0b4326
    Combine modular addition constraints in SHA256 Sean Bowe 2018-03-12 18:18:03 -0600
  • 28c86704a3
    Expose public inputs Sean Bowe 2018-03-12 16:13:34 -0600
  • 701252a99f
    Implementation of input multipacking for Sprout circuit Sean Bowe 2018-03-12 16:05:09 -0600
  • 67dda24847
    (Almost) complete implementation of the Sprout circuit. Sean Bowe 2018-03-12 15:23:30 -0600
  • 17789ce1ed
    Test full SHA256 against test vectors. Sean Bowe 2018-03-10 22:04:25 -0700
  • b2b84a3e55
    Defer additions during message schedule so that final accumulations of hash value can reuse the adder. Sean Bowe 2018-03-10 20:21:02 -0700
  • 39ebcfdb6b
    Defer additions for temp1 and temp2. Sean Bowe 2018-03-10 19:51:58 -0700
  • e576a7b5a5
    Optimize ch computation in SHA256. Sean Bowe 2018-03-10 19:41:24 -0700
  • f2ce06b960
    More efficiently handle edge cases in maj computation. Sean Bowe 2018-03-10 15:16:31 -0700
  • fffb22e0e4
    Integrate more efficient `ch` computation into SHA256. Sean Bowe 2018-03-10 14:43:01 -0700
  • d84514f493
    Implementation of optimized ch routine in SHA256. Sean Bowe 2018-03-10 14:19:38 -0700
  • eb91491689
    Integrate maj computation and handle the case that all inputs are constants. Sean Bowe 2018-03-10 13:38:51 -0700
  • c5109a3188
    Implementation of SHA256 maj computation over UInt32. Sean Bowe 2018-03-10 13:17:53 -0700
  • 2128d74151
    Implementation of optimized maj operation in Boolean. Sean Bowe 2018-03-10 13:06:48 -0700
  • 5faeddfb5d
    Implementation of (not optimized) SHA256. Sean Bowe 2018-03-10 12:02:24 -0700
  • b2456973bc
    Implement big-endian UInt32 interpretation. Sean Bowe 2018-03-10 11:42:37 -0700
  • d2fa809163
    Implementation of UInt32::and_not(). Sean Bowe 2018-03-09 23:46:26 -0700
  • 9002d357e7
    Add UInt32::and() by abstracting away binary operations. Sean Bowe 2018-03-09 23:23:17 -0700
  • a806ca0df3
    Implementation of UInt32::shr(). Sean Bowe 2018-03-09 19:17:53 -0700
  • 661f318eb7
    Optimise Boolean::enforce_equal. Jason Davies 2018-02-11 20:38:52 +0000
  • 2c69abe268
    Add Uncommitted^Sapling. Sean Bowe 2018-03-09 14:17:45 -0700
  • c1784f0fdf
    Check g_d is not small order in Spend circuit. Sean Bowe 2018-03-09 14:08:01 -0700
  • 390f2c129b
    Merge pull request #37 from ebfull/circuit-tests ebfull 2018-03-08 19:18:40 -0700
  • b6e1b52a44
    Fix comment about Montgomery curve selection Sean Bowe 2018-03-08 13:03:07 -0700
  • db28ff7ba1
    Simplify the Output witness. Sean Bowe 2018-03-08 01:49:27 -0700
  • 9998400117
    Relocate structs for cleanliness. Sean Bowe 2018-03-08 01:37:55 -0700
  • 512a394b30
    Simplify witness for Spend statement. Sean Bowe 2018-03-08 01:36:16 -0700
  • 3fbbd933cf
    Simplify value commitment abstraction. Sean Bowe 2018-03-08 01:16:21 -0700
  • d6d86737c8
    Remove some code duplication for value commitment witnessing. Sean Bowe 2018-03-08 01:01:00 -0700
  • f61cc88a71
    More comment improvements. Sean Bowe 2018-03-08 00:51:53 -0700
  • b6ef12b077
    General code quality improvements. Sean Bowe 2018-03-08 00:41:47 -0700
  • 896b144a7d
    Move first block of group hash to constants submodule. Sean Bowe 2018-03-08 00:09:34 -0700
  • c7c8d3c039
    Move personalization constants to submodule. Sean Bowe 2018-03-08 00:06:53 -0700
  • 25a8050df8
    Remaining tests for input circuit Sean Bowe 2018-03-07 23:59:04 -0700
  • b998190f9e
    Disable this, for now. Sean Bowe 2018-03-07 23:45:08 -0700
  • 0242ed35ab
    Add some circuit tests for inputs. Sean Bowe 2018-03-07 12:19:56 -0700
  • 7de980e028
    Update clippy. Jason Davies 2018-03-07 10:50:19 +0000
  • 402e48ec9e
    Simplify. Jason Davies 2018-02-11 21:00:38 +0000
  • 47ee21636c
    Fix various lint issues reported by clippy. Jason Davies 2018-02-10 22:55:50 +0000
  • d2a613e54c
    Add clippy. Jason Davies 2018-02-10 23:25:12 +0000
  • 2d4be07560
    Fix group hash comment. Sean Bowe 2018-03-06 22:26:03 -0700
  • ef85173df5
    Fix comments in jubjub code. Sean Bowe 2018-03-06 22:25:15 -0700
  • df01bd9393
    Merge 26dbdb450b into b0b3514fa7 Jason Davies 2018-03-06 17:22:11 +0000
  • b0b3514fa7
    Add bench_50 example. Sean Bowe 2018-03-06 10:21:30 -0700
  • 1f65d4b353
    Change tree depth to 32 in test. Sean Bowe 2018-03-06 10:04:02 -0700
  • 1f2bb62657
    Rename proving key to proof generation key to disambiguate from the SNARK. Sean Bowe 2018-03-06 09:56:29 -0700
  • c31092ce7f
    Remove unnecessary mut binding. Sean Bowe 2018-03-06 09:39:56 -0700
  • c253e51e3d
    Merge pull request #35 from ebfull/primitives ebfull 2018-03-06 09:10:23 -0700
  • 63c6830429
    Cache fewer pedersen hash generators. Sean Bowe 2018-03-06 09:03:29 -0700
  • 7a9879eb54
    Make EdwardsPoint (x, y) not public. Sean Bowe 2018-03-06 08:38:34 -0700
  • f155c01cf5
    Personalize GH for each generator independently. Sean Bowe 2018-03-06 08:30:28 -0700
  • b831942501
    Adopt BLAKE2s personalization throughout protocol. Sean Bowe 2018-03-05 19:21:41 -0700
  • d21ff08176
    Group hash should use a first block containing random data as per spec. Sean Bowe 2018-03-05 18:08:49 -0700
  • 058801bdfc
    Switch to using the blake2-rfc crate instead. Sean Bowe 2018-03-05 17:58:34 -0700
  • 2e846844e7
    Perform ak group order check in Spend circuit. Sean Bowe 2018-03-05 17:46:12 -0700
  • 7bb630a4b1
    Use correct personalization for merkle tree. Sean Bowe 2018-03-05 17:27:55 -0700
  • c6cf0c718c
    Value placed in note contents should be in big endian bit order. Sean Bowe 2018-03-05 16:10:55 -0700
  • b45a37febb
    Add comments and reorder some generators. Sean Bowe 2018-03-05 16:00:04 -0700
  • 69010d1502
    Relocate Pedersen hash personalization enum. Sean Bowe 2018-03-05 15:25:40 -0700
  • 8cbcd7739c
    Rename into_bits and into_bits_strict to signify endianness. Sean Bowe 2018-03-05 15:12:51 -0700
  • 3971ecd375
    Abstract away the boolean conversion of field witnessing. Sean Bowe 2018-03-05 10:52:56 -0700
  • 543f5cd49c
    Change bit-endianness of into_bits/into_bits_strict. Sean Bowe 2018-03-05 10:27:14 -0700
  • 3e15751fd1
    Allocate the note value directly in little-endian bit order. Sean Bowe 2018-03-05 09:37:13 -0700
  • e52befb58e
    Introduce inputize abstractions to simplify circuit code. Sean Bowe 2018-03-04 23:33:05 -0700
  • 51c35a9bcf
    Adopt new versions of pairing and bellman. Sean Bowe 2018-03-04 22:25:04 -0700
  • 294d19c2ed
    Merge c435228aea into 4f4a2d63db Jason Davies 2018-03-02 19:16:40 +0000
  • 57687cf70f
    Creation of the Note primitive. Sean Bowe 2018-02-24 22:53:00 -0700
  • 4f4a2d63db
    Merge pull request #34 from ebfull/output-circuit ebfull 2018-02-24 17:22:42 -0700
  • 27674bf8ff
    Derive Clone for EdwardsPoint. Sean Bowe 2018-02-24 17:11:17 -0700
  • 3346fba915
    Implementation of Jubjub point representation. Sean Bowe 2018-02-24 14:11:01 -0700
  • 4441a0da41
    Hash the constraint systems to check integrity. Sean Bowe 2018-02-24 08:01:16 -0700
  • 23d17b9042
    Minor adjustments. Sean Bowe 2018-02-23 18:09:26 -0700
  • 7a7774d8af
    Remove unused imports in Boolean. Sean Bowe 2018-02-23 11:28:17 -0700
  • 8c37212645
    Remove kary_and from Boolean. Sean Bowe 2018-02-23 11:25:59 -0700
  • a45986ff97
    Remove enforce_nand. Sean Bowe 2018-02-23 11:24:42 -0700
  • 0d56c7a902
    Remove enforce_in_field. Sean Bowe 2018-02-23 11:18:39 -0700
  • 69abd0391f
    Optimize into_bits_strict. Sean Bowe 2018-02-23 11:15:14 -0700
  • 97585a30ad
    Remove from_bits_strict from AllocatedNum. Sean Bowe 2018-02-23 09:26:12 -0700
  • c812805b31
    Slight refactor of representations Sean Bowe 2018-02-22 18:43:07 -0700
  • ba7298de3f
    Crappy mock-up of the circuit. Sean Bowe 2018-02-22 11:36:44 -0700
  • 4b6623cf44
    Add some personalization and a generator. Sean Bowe 2018-02-22 07:29:55 -0700
  • 1a89b3a486
    Merge pull request #33 from ebfull/general-improvements ebfull 2018-02-20 18:39:02 -0700
  • e8480a2b2c
    Utility for witnessing points on the curve. Sean Bowe 2018-02-20 18:36:53 -0700
  • c221bc9126
    Rename `mont` to `ecc` in circuit code. Sean Bowe 2018-02-20 18:18:29 -0700
  • a1c749e6a0
    Change fixed-base exponentiation API to handle scalars better. Sean Bowe 2018-02-20 18:12:27 -0700
  • 88bdff6ce9
    Pedersen hashes with full optimization Sean Bowe 2018-02-20 17:22:00 -0700
  • 4fa73efc1e
    Remove conditional negation implementation from AllocatedNum. Sean Bowe 2018-02-20 16:41:33 -0700
  • c89d47bb07
    Remove Montgomery point doubling implementation in the circuit. Sean Bowe 2018-02-20 16:38:44 -0700
  • 1610bcfbcf
    Perform the y-coordinate conditional negation and lookup simultaneously. Sean Bowe 2018-02-20 16:31:27 -0700
  • 6f66fd3f9d
    Express x and y coordinates from lookup as linear combinations. Sean Bowe 2018-02-20 16:11:48 -0700
  • b37d9b11cb
    More efficient implementation of Edwards doubling in the circuit. Sean Bowe 2018-02-20 15:38:28 -0700