Ir al contenido

ECDSA

De BitcoinWiki

Algoritmo de firma digital de curva elíptica

El algoritmo de firma digital de curva elíptica (ECDSA) es un sistema de firma de clave pública. El firmante usa una clave privada para firmar el resumen de un mensaje; cualquiera con la clave pública puede verificarlo. ECDSA aporta autenticación e integridad, no cifrado: no oculta el mensaje.[1]

Bitcoin utiliza ECDSA con secp256k1 para muchas salidas anteriores a Taproot y SegWit. Taproot utiliza firmas Schnorr BIP 340 sobre la misma curva.[2]

Funcionamiento

El dominio define un punto base G de orden n. La clave privada es d y la pública Q = dG. Para firmar el resumen z, se elige un nonce secreto único k, se calcula R = kG, se obtiene r de su coordenada x y s = k⁻¹(z + rd) mod n. La firma es (r,s).

La verificación controla rangos y calcula un punto desde z, s y Q. Confirma la relación entre firma, mensaje y clave, pero no revela la clave privada ni demuestra la identidad civil de su titular.[1] Una clave privada de 256 bits suele ocupar 32 bytes; una clave pública secp256k1 ocupa 33 bytes comprimida o 65 sin comprimir.

Seguridad del nonce

El k no debe repetirse para mensajes distintos con la misma clave ni ser predecible. Reutilización o sesgo puede revelar la clave. Esta clase de fallo permitió recuperar una clave de PlayStation 3 y afectó a algunas carteras Bitcoin de Android en 2013.

RFC 6979 define ECDSA determinista: deriva k de la clave y el resumen, sin cambiar la verificación.[3] No protege de una clave expuesta, canales laterales, aritmética defectuosa o un dispositivo comprometido. Son necesarias operaciones en tiempo constante, validación y bibliotecas probadas.

Uso en Bitcoin

Bitcoin usa Secp256k1. Las firmas tradicionales codifican los dos enteros en DER y añaden un tipo sighash. BIP 66 convirtió DER estricto en regla de consenso. La forma low-S reduce maleabilidad porque (r,n-s) también podría verificar.[4]

Se firma un resumen dependiente de la transacción; el modo sighash determina qué entradas y salidas cubre. Taproot no eliminó ECDSA: las salidas antiguas lo conservan y Taproot comprueba firmas Schnorr BIP 340 de 64 bytes.[5]

Investigación cuántica

Un ordenador cuántico tolerante a fallos suficientemente grande podría recuperar una clave privada desde la pública mediante Shor. No es una capacidad del hardware actual.

Un preprint de septiembre de 2026 optimizó circuitos reversibles de suma de puntos secp256k1. En el corte declarado, el mejor usó 1.151 cúbits lógicos y unos 1,30 millones de puertas Toffoli ejecutadas por suma, con una puntuación anchura-por-puertas más de 50 % inferior a una comparación publicada. Los autores advierten que las convenciones difieren y que no es una estimación completa del éxito de Shor. Faltan corrección de errores físicos, muchas llamadas, tiempo y hardware.[6][7]

El trabajo mejora una estimación; no demuestra un ataque actual. Las claves públicas ya reveladas serían objetivos directos si existiera el hardware. Ese riesgo futuro es distinto del robo de claves y el phishing actuales.

Véase también

Referencias

  1. 1,0 1,1 SECG, “SEC 1: Elliptic Curve Cryptography”, versión 2.0, 2009.
  2. BIP 340, desplegado.
  3. RFC 6979, 2013.
  4. Biblioteca secp256k1 de Bitcoin Core, consultada el 16 de septiembre de 2026.
  5. BIP 341, desplegado.
  6. Long et al., “ECDSA.Fail”, 9 de septiembre de 2026.
  7. CoinDesk, informe sobre la estimación cuántica, 10 de septiembre de 2026.