Contexto matemático: Curvas elípticas
Una curva elíptica se define como el conjunto de puntos que satisfacen la ecuación:
$$y2=x3+ax+by^2 = x^3 + ax + b$$
donde a y b son constantes que definen la curva, y las operaciones sobre estos puntos se realizan dentro de un campo finito \(\mathbb{F}_p\).
En Bitcoin, la curva usada es secp256k1, definida por la ecuación:
$$y2≡x3+7(modp)y^2 \equiv x^3 + 7 \pmod{p}$$
donde p es un número primo muy grande:
$$p=2256−232−977p = 2^{256} - 2^{32} - 977$$
Los puntos en esta curva tienen propiedades que los hacen útiles para criptografía:
- Operaciones cerradas y bien definidas: Las operaciones entre puntos (suma, multiplicación escalar) siempre producen puntos que también están en la curva.
- Dificultad para invertir operaciones: Resolver el problema del logaritmo discreto en esta curva es computacionalmente infeasible, lo que proporciona seguridad criptográfica.