Written by Pablo Gómez
Founder & CEO at Metlabs · Reviewed on October 11, 2026
An elliptic curve takes the Weierstrass form y² = x³ + ax + b over a finite field. The central operation is scalar multiplication k·G, adding a base point G to itself k times. The private key is the scalar k and the public key is the resulting point P = k·G. Deriving the public key from the private one is easy, but the reverse path, the elliptic curve discrete logarithm problem (ECDLP), is infeasible. That asymmetry lets ECC use far shorter keys than RSA for equivalent security.
Two specific curves shape the blockchain world. secp256k1, defined by y² = x³ + 7, is the one Bitcoin and Ethereum use to sign transactions through ECDSA: the private key of an EVM wallet is precisely the scalar k of this curve. BN254 (also called alt-bn128) is a pairing-friendly Barreto-Naehrig curve built to verify zk-SNARK proofs on-chain. In Ethereum its addition, multiplication and pairing operations are available as precompiles, introduced in EIP-196 and EIP-197 during the Byzantium hard fork of October 2017.
ECC matters because it is the foundation of on-chain ownership: keys, signatures and addresses all derive from it, and ECDSA is the signature scheme that applies it over secp256k1. At the same time, pairing-friendly curves like BN254 make it possible to verify zero-knowledge proofs inside a contract, linking classical public-key cryptography to the proof family that powers zk-rollups.
Also known as
- ECC





