A toolbox for zkSNARKs on Ethereum
This release contains the following changes:
For a full list of the changes, check out the changelog.
This release contains the following main features:
zokrates profile
!For a full list of the changes, check out the changelog.
The main feature of this release is a reduction in the memory footprint and computing time of the compiler.
For a full list of the changes, check out the changelog.
This new release of ZoKrates introduces experimental assembly blocks.
For a full list of the changes, check out the changelog.
This release fixes one regression introduced by assert error messages which led to some duplicate contraints not being deduplicated.
For a full list of the changes, check out the changelog.
This new release of ZoKrates introduces some new language features:
field a = 42;
bool a = true;
()
. For example, the following is now allowed without a return statement:def main() {
}
cast
from utils/casts
functionu64 a = 42;
u16[4] b = cast(42);
circom
integration was fixedFor a full list of the changes, check out the changelog.
For a full list of the changes, check out the changelog.
This version includes a breaking change in the specification of the ZoKrates domain-specific language:
// 0.7
def main():
return 1
// 0.8
def main() {
return 1;
}
mut
keyword.log
enables printing values at run time:def main(field x) {
log("x is {}", x);
return
}
Other notable changes:
libsnark
backend and the PGHR13
scheme are no longer supportedFor a full list of the changes, check out the changelog.
The main feature in this new release is the inclusion of the curve and the proving scheme in the proof and verification key. This removes the need to pass these parameters when creating a solidity verifier, printing the proof, and verifying it.
In addition, this release features a range of small bug fixes.
For a full list of the changes, check out the changelog.