Skip to content
forked from ktmlm/noah

Noah is a library that provide tools to create and verify public transaction with confidential data.

License

Notifications You must be signed in to change notification settings

confuseSUN/noah

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,173 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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.

About

Noah is a library that provide tools to create and verify public transaction with confidential data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%