mirror of
https://github.com/logos-storage/constantine.git
synced 2026-01-02 13:13:07 +00:00
* first jab at Rust bindings * stash C library and header generation * Create a single big library with multiple headers * remove ctt_pure, people will not call crypto proc twice with unchanged parameter and extra noise when reading header * fix MacOS and Windows builds * fix cross-lang ThinLTO, require LLD * Remove NimMain need, cleanup CPU features and detect them on library load
Constantine-backed protocols
This folder stores protocol implemented on top of Constantine.
Ethereum Virtual Machine
Constantine implements precompiles primitives for the Ethereum virtual machine
- ECADD on BN254_Snarks (called
alt_bn128in Ethereum), address 0x6, spec EIP-196 and pricing EIP-1108 - ECMUL on BN254_Snarks (called
alt_bn128in Ethereum), address 0x7, spec EIP-196 and pricing EIP-1108 - ECPAIRING on BN254_Snarks (called
alt_bn128in Ethereum), address 0x8, spec EIP-197 and pricing EIP-1108
Their main use-case is for use zero-knowledge proofs and zkRollups and be compatible with work on Zcash
- Succinct Non-Interactive Zero Knowledge
for a von Neumann Architecture
Eli Ben-Sasson, Alessandro Chiesa, Eran Tromer, Madars Virza
https://eprint.iacr.org/2013/879.pdf