Skip to content

0.5-Sigloi

Pre-release
Pre-release
Compare
Choose a tag to compare
@AntoineRondelet AntoineRondelet released this 11 Sep 14:36
· 503 commits to master since this release
07ffdca

Changelog

Features

  • Generalize MPC code to support curves other than bn256

  • Add support for generic serialization of field and group elements

  • Refactor and improve serialization functions in the server code (C++) and in the client code (Python)

  • Change semantics of --keypair flag on prover_server to easily import/export the SRS

  • Extend client to work with Ethereum-like clients (e.g. Autonity, Geth etc.)

  • Add --show-parameters flag to zeth mix command

  • Add support for TLS in the client

Fixes

  • Fix the serialization of the VK

  • Fix JSON output of PGHR13 arguments

  • Fix linking issues with boost when building pot-process

  • Fix tests for the MerkleTreeMiMC7.sol contract

  • Fix the mpc code and documentation (support streaming when sending challenges, fix path to binaries, switched time to UTC)

  • Add extra logging information and extend MPC contribution window in CI script to troubleshoot macOS job failing on the CI:

Security fixes

None

Optimizations

None

Tooling

  • Switched to latest Ubuntu LTS (20.04) in CI

  • Add IS_ZETH_PARENT build option to avoid build rule name collision when Zeth is used as a dependency

  • Add script to process and recover the full SRS from several chunks (useful for the distribution)

  • Extend docker configuration to package the various components of the code base (prover_server, client, mpc) into separate images

Code quality

  • Adopt a consistent naming for types and type-params

  • Support full parameterization in the library and clean the configuration of the snark and curve types

  • Refine the clang-tidy configuration and add cpp_check in the CI checks

  • Refactor and repackage the client

  • Remove useless notestore folder an rename env variables in setup_env.sh

  • Use a single namespace for tests in libzeth

Documentation

  • Add reference to the Zeth protocol specifications

  • Add missing flags to client

  • Include missing documentation to the Doxygen documentation output