Skip to main content

Clave Pública | Bitcoin Glossary | Mapping Bitcoin

Clave Pública

Criptografía

Also known as: pubkey

Dato criptográfico derivado de la clave privada mediante curva elíptica. Se comparte públicamente para verificar firmas y derivar direcciones Bitcoin.

Visión general

Una clave pública en Bitcoin es un punto en la curva elíptica secp256k1, derivado de una clave privada a través de la multiplicación de puntos de curva elíptica. Esta operación matemática es una función unidireccional: dada una clave privada, cualquiera puede calcular la clave pública correspondiente, pero derivar la clave privada de una clave pública es computacionalmente inviable. Las claves públicas sirven como base para las direcciones Bitcoin y las firmas digitales.

Cómo se derivan las claves públicas

Derivación de clave:

  Clave Privada (número de 256 bits)
        │
        ▼
  Multiplicación de Curva Elíptica
  (multiplicación de punto en secp256k1)
        │
        ▼
  Clave Pública (punto en la curva)
        │
        ├──> Comprimida:    33 bytes (prefijo 02 o 03 + coordenada x)
        │    Ejemplo: 02b4632d08485ff1...
        │
        └──> No comprimida: 65 bytes (prefijo 04 + coordenadas x e y)
             Ejemplo: 04b4632d08485ff1...
        │
        ▼
  Hash (HASH160 = RIPEMD160(SHA256(clavepub)))
        │
        ▼
  Dirección Bitcoin

Comprimida vs. no comprimida

El software Bitcoin moderno usa exclusivamente claves públicas comprimidas (33 bytes) en lugar de claves no comprimidas (65 bytes). Dado que la coordenada y de un punto en la curva elíptica puede calcularse desde la coordenada x (con un bit de paridad), el formato comprimido almacena solo la coordenada x con un byte de prefijo que indica si y es par (02) o impar (03). Esto ahorra espacio en las transacciones y reduce las comisiones.

Rol en la verificación de transacciones

Cuando alguien gasta bitcoin, proporciona una firma y su clave pública. Cada nodo en la red usa la clave pública para verificar que la firma es válida y que la clave pública hace hash a la dirección a la que se bloquearon los fondos. Este proceso de verificación garantiza que solo el titular de la clave privada correspondiente pudo haber autorizado el gasto.

Exposición de la clave pública

En transacciones P2PKH y P2WPKH, la clave pública se hashea para crear la dirección. La clave pública real solo se revela cuando se gasta la salida. Esto proporciona una capa teórica de resistencia cuántica para las salidas no gastadas, ya que un atacante con una computadora cuántica necesitaría derivar la clave privada de la clave pública, que solo se expone en el momento del gasto.

Concepto erróneo común

Una clave pública no es lo mismo que una dirección Bitcoin. La dirección se deriva de la clave pública a través de uno o más pasos de hashing. Aunque una clave pública puede compartirse de forma segura, la mejor práctica de Bitcoin es compartir direcciones en su lugar, ya que las direcciones son más cortas, incluyen sumas de verificación de detección de errores y mantienen oculta la clave pública hasta el momento del gasto.