Commit Graph

195 Commits

Author SHA1 Message Date
Sean Bowe 4d23a06660 Remove debugging output that is spamming stdout. 2016-09-05 11:58:03 -06:00
Sean Bowe 8d8ae229d2 Ensure that sqrt(0) returns 0. 2016-09-05 11:34:04 -06:00
Daira Hopwood 2600977633 Update AUTHORS.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-09-05 11:30:30 -06:00
Daira Hopwood 213e288174 Add tests for bigint.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-09-05 11:30:24 -06:00
Daira Hopwood 17249c4ee0 Remove unneeded methods from bigint.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-09-05 11:30:16 -06:00
Daira Hopwood dfb460a013 Minor cleanups to bigint.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-09-05 11:29:51 -06:00
Daira Hopwood fd3de2d534 Support for bigint addition, multiplication, quotient+remainder, and comparison.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2016-09-05 11:29:43 -06:00
ebfull cd51cb60a5 Merge pull request #3 from zcash/final-changes
Final libsnark API changes
2016-08-22 01:19:37 -06:00
Sean Bowe 8ae419bb79 assert_except here to avoid remote DoS. 2016-08-18 13:45:56 -06:00
Sean Bowe e813b3a88e [Zcash] Always perform square checking in `sqrt`. 2016-08-18 12:12:53 -06:00
Sean Bowe 9407b5904f [Zcash] Deterministic pk/vk generation routine. 2016-08-18 12:12:50 -06:00
ebfull b9bf0dca4a Merge pull request #1 from zcash/cleanup
More cleanup
2016-08-09 00:31:19 -06:00
Taylor Hornby 11242d8afe [Zcash] Change assertions to exceptions to avoid potential DoS vectors. 2016-07-21 18:33:06 -06:00
Sean Bowe e3779f9049 [Zcash] Remove things we don't need. 2016-07-21 15:39:34 -06:00
Sean Bowe 59adbefcc8 [Zcash] Remove potential DoS vectors from verifier. 2016-07-21 14:21:49 -06:00
Sean Bowe a7031481fd [Zcash] Taylor's compilation patch. 2016-07-15 10:28:19 -06:00
Sean Bowe 403671675a [Zcash] Don't (de)serialize the constraint system in the proving key. 2016-07-15 10:27:02 -06:00
Sean Bowe a6b0ad0c80 [Zcash] Use libsodium's PRNG. 2016-07-15 10:25:38 -06:00
Sean Bowe dcb78b24d9 [Zcash] Modify makefile to stop compiling things we removed. 2016-07-15 10:22:35 -06:00
Sean Bowe 9216072c3b [Zcash] Remove code that we don't use. 2016-07-15 10:17:56 -06:00
Eran Tromer 5c43c25fb5 Merge pull request #40 from maxhowald/master
add a space in "<::" to maintain compatibility with older compilers
2016-06-14 01:45:33 +03:00
Max Howald ee663f7f1d add a space to maintain compatibility with older compilers
<::SomeClass> doesn't compile in older versions of g++ (<4.8).
 < ::SomeClass> compiles with g++ 4.7.3.
2016-06-09 17:55:45 -04:00
Eran Tromer c833e32605 Mark additional intentionally unused arguments as such. 2016-05-22 20:55:16 +03:00
Madars Virza 98feb46e31 Raise an exception of getBit() is used with incompatible field type.
This fixes #23.
2016-05-22 20:55:08 +03:00
Madars Virza 183859120d Add a missing check for linear_combination::is_valid(). 2016-05-22 20:55:03 +03:00
Madars Virza c7177e61fc Fix signed/unsigned integer comparisons in gadgetlib2 tests. 2016-05-22 20:54:57 +03:00
Madars Virza b8a82cb2ca Mark intentionally unused arguments as such. 2016-05-22 20:54:42 +03:00
Madars Virza 7b7d7afc99 Add more debug assertions for multi-exponentiation. 2016-05-22 20:54:35 +03:00
Eran Tromer ea7c5468af Merge pull request #35 from ThisIsNotOfficialCodeItsJustForks/add-iota-header
Include header required for std::iota.
2016-05-22 20:42:01 +03:00
Taylor Hornby c437365ec9 Include header required for std::iota. 2016-05-18 10:49:58 -06:00
Madars Virza 0896e82163 Add static library files to .gitignore 2016-04-06 20:42:02 -04:00
Madars Virza 30dd11ddc5 Add pp-zkSNARK with security proof in the generic group model, based on [Gro16]. 2016-04-06 20:40:51 -04:00
Eran Tromer 0b928a7b36 README.md: comment about OMP_NUM_THREADS 2015-11-23 18:45:31 +02:00
Madars Virza 40fb45d2dd backtrace is glibc-specific extension, so only use it when available.
This fixes building libsnark on musl libc-based Linux systems such as
Alpine Linux.
2015-10-30 20:55:26 -07:00
Eran Tromer 69f312f149 Avoid need for "-lzm" when linking, by including libzm.a into libsnark.a and libsnark.so.
This means users of libsnark no longer need to remember to add -lzm if and only if libsnark was built with CURVE=B128.

'make install' now installs library files selectively (libsnark.* and maybe supercop.a but not libzm.a).
2015-10-17 16:51:20 +03:00
Eran Tromer 12a6214c05 README: avoid # signs that confuse markdown_py 2015-10-17 16:47:48 +03:00
Eran Tromer 5494e838e5 README.md: add explanations about using libsnark as a library 2015-10-15 04:39:03 +03:00
Eran Tromer 4c6d456652 Makefile: minor cleanup 2015-10-15 04:39:03 +03:00
Eran Tromer a19e4f2ff0 Makefile: build libsnark.a once and then reuse it for libsnark.so and all executables
This get much cleaner and shorter g++ commands during build, and removes some possibly-buggy dependencies.
2015-10-15 03:42:04 +03:00
Eran Tromer 3f202f173a Makefile: fix `make install` (issue #15, fixing commit 001b8cbb8d) and other small Makefile fixes. 2015-10-14 02:04:03 +03:00
Eran Tromer 001b8cbb8d Makefile: fix $(LIB_OBJS) in `make install`. This fixed issue #15. 2015-10-13 23:59:04 +03:00
Madars Virza d69bc496e5 Fix a typo in the Makefile. This fixes #14. 2015-10-13 13:16:47 -07:00
Eran Tromer 12c6e21658 Extend profiling code to print parallelism (CPU_time / real_time).
Also tweak formatting formatting of block entry to drop "[0]} and better align with block exit.
Tested only on Linux, might generate compile or (informative) runtime errors on other platforms.
2015-10-13 14:09:38 +03:00
Eran Tromer 8a7512af33 Minor addition to profiling output: annotate whole FFTs (including multiplication by coset, etc.) 2015-10-13 14:09:38 +03:00
Eran Tromer 321a3b687d Use *all* cores for batch/multiexponentiation (was capped at 4).
This speeds up proving by x1.4 to x1.6 on several tested platforms with 6 or 8 cores.
2015-10-13 14:07:41 +03:00
Eran Tromer e2f9fe2949 Makefile fix (*.d cleaning was broken) 2015-10-04 20:26:36 +03:00
Eran Tromer 0c9bd4e205 Makefile fixes
* Use and clean up .d(ependency) files for executables's objects too.
* Rename OBJS and SRCS to LIB_OBJS and LIB_SRCS to clarify these don't include executables.
* Also, add index to libsnark.a and allow it as a target even if doing a non-static build.
2015-10-04 04:26:38 +03:00
Eran Tromer 032f8b1858 Makefile fixes
- Avoid unnecessarily rebuilding executables with unchanged dependencies (bug introduced by commit 998a2373)
- Avoid unnecessarily rebuilding GTest
- Tweak spacing and comments
2015-10-03 18:28:04 +03:00
Eran Tromer fcc4e584a5 "make clean" fix: also delete files that wouldn't be compiled due to NO_{GTEST,SUPERCOP} flags 2015-10-03 06:58:18 +03:00
Eran Tromer e42b38fdae Makefile: use -O3 in PERFORMANCE=1 2015-10-03 04:21:23 +03:00