Skip to content

Latest commit

 

History

History
36 lines (27 loc) · 1.89 KB

README.md

File metadata and controls

36 lines (27 loc) · 1.89 KB

GitHub top language GitHub tag (latest SemVer) GitHub issues GitHub pull requests License

Noah: A Cryptographic Library for Privacy Assets

Noah is a Rust library that implements various cryptographic primitives for privacy assets. It implements two constructions:

  • Maxwell construction. In 2015, a renowned blockchain developer Gregory Maxwell presented a construction of confidential transactions (CT) for a UTXO chain. We implemented it with:

    • Secp256k1 or Ed25519 for digital signatures
    • The Ristretto group over Curve25519 for Pedersen commitments
    • Bulletproofs over Curve25519
  • Zerocash construction. Improved over a prior protocol Zerocoin, the Zerocash construction, firstly proposed by Ben-Sasson, Chiesa, Garman, Green, Miers, Tromer, and Virza and improved subsequently by the Zcash Foundation and Electric Coin Company (ECC), is another privacy-preserving transfer protocol over a UTXO chain. We implemented it with:

    • Secp256k1 or Ed25519 (incoming) for digital signatures
    • An inhouse variant of TurboPlonk with various optimization tricks
    • The European technique for efficient memory in zk-SNARK, using the Anemoi-Jive hashes

Thanks to all the people who already contributed!

Licensing

The primary license for Noah is the Business Source License 1.1 (BUSL-1.1), see LICENSE.