HarryR / ethsnarks

A toolkit for viable zk-SNARKS on Ethereum, Web, Mobile and Desktop
GNU Lesser General Public License v3.0
241 stars 57 forks source link

Jubjub Fixes #80

Closed HarryR closed 6 years ago

HarryR commented 6 years ago

This implements the following new gadgets:

Removes the following coordinates systems from jubjub.py:

I've also added a C++ implementation of Point, and made the from_y operation consistent between the C++ and Python implementations by detecting the sign of the X coordinate and inverting it if necessary. This was necessary because the different implementations of modulo square root returns differently signed values.

This also merges in code from: https://github.com/HarryR/ethsnarks/pull/81 with the following gadgets:

I am working on tests.