Mamy Ratsimbazafy 26954f905a
Constant time (#185)
* Implement fully constant-time division closes #2 closes #9

* constant-time hex parsing

* prevent cache timing attacks in toHex() conversion (which is only for test/debug purposes anyway)
2022-02-28 09:23:26 +01:00
..
2022-02-28 09:23:26 +01:00
2022-02-27 01:49:08 +01:00
2022-02-28 09:23:26 +01:00
2022-02-28 09:23:26 +01:00
2022-02-27 01:49:08 +01:00

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_bn128 in Ethereum), address 0x6, spec EIP-196 and pricing EIP-1108
  • ECMUL on BN254_Snarks (called alt_bn128 in Ethereum), address 0x7, spec EIP-196 and pricing EIP-1108
  • ECPAIRING on BN254_Snarks (called alt_bn128 in 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