Aprender

|

¿Qué son las claves privadas y las claves públicas?

¿Qué son las claves privadas y las claves públicas?

Las claves para asegurar y gestionar tu bitcoin

Bitcoin utiliza claves públicas y privadas para asegurar las transacciones de bitcoin y garantizar que tu bitcoin sea accesible solo para ti.

Bitcoin no es un activo físico; más bien, existe como registros digitales de transacciones en la blockchain. Ser propietario de una cantidad de bitcoin simplemente significa que hay una transacción en la blockchain a una dirección en la cual controlas la capacidad de gastar.

Si puedes gastarlo, lo posees.

Gastar bitcoin solo puede hacerse utilizando la clave privada que corresponde a la clave pública correcta para el bitcoin en cuestión. Puedes pensar en las claves privadas y públicas como un buzón cerrado. La clave privada es como la llave maestra que abre el buzón, dando acceso exclusivo y control sobre su contenido. La clave pública es como el buzón cerrado en sí, que cualquiera puede ver y en el que cualquiera puede depositar correo, pero que nadie excepto el titular de la llave maestra puede abrir.

  • Clave privada: La clave secreta para “desbloquear” tu bitcoin y autorizar el gasto.
  • Clave pública: El código público que se puede compartir con otros para que te envíen bitcoin.

Cuando usas una billetera Bitcoin custodial, como Strike, las claves privadas se mantienen por ti en tu nombre, dándote un control indirecto sobre el gasto de tu bitcoin. Tomar la autocustodia de tu bitcoin significa que estás enviando tu bitcoin a una dirección en la cual controlas directamente las claves privadas, un proceso que conlleva beneficios y responsabilidades adicionales. La autocustodia se trata de la soberanía personal: tomar el control exclusivo sobre tu dinero.

¿Qué es una clave privada?

Una clave privada es simplemente un número muy grande y secreto que se utiliza para autorizar transacciones.

Específicamente, una clave privada es un número único de 256 bits, lo que significa que es un número entre 0 y 2²⁵⁶ o 1.1579 X 10⁷⁷ (es decir, aproximadamente 115 quattuorvigintillones). En Bitcoin, este número se representa típicamente en formato hexadecimal: 64 caracteres con números del 0 al 9 y letras mayúsculas de la A a la F, resultando en una clave privada que podría verse algo así:

E8C5F60C6CCCD437D71597401C6A808F96C5EE74AEA6C4BCD8F24883A0DFC858

Muchas billeteras Bitcoin autocustodiales modernas generarán y gestionarán tus claves privadas dentro de la billetera. El proceso para generar claves privadas comienza usando aleatoriedad (también conocida como “entropía”) para crear una frase semilla: una secuencia de 12 a 24 palabras seleccionadas de una lista estandarizada. La frase semilla única se utiliza luego para crear una semilla, luego una clave maestra, y posteriormente, claves privadas para ser utilizadas en transacciones. Para resumir:

  • Frase semilla: La secuencia única de 12 a 24 palabras aleatorias que es la fuente a partir de la cual se pueden generar o recuperar las claves si tu billetera se pierde o es destruida.
  • Semilla: La secuencia única de caracteres derivada de la frase semilla, que se utiliza para generar la clave maestra.
  • Clave maestra: Una clave única derivada de la semilla, que se utiliza para generar una o más claves privadas.
  • Claves privadas: Números únicos de 256 bits almacenados en el software de tu billetera, derivados de la clave maestra, y que se utilizan para crear claves públicas y autorizar transacciones.

Todo este proceso se conoce como billeteras determinísticas jerárquicas o “HD” (“Hierarchical Deterministic”). Permite crear múltiples jerarquías de claves privadas a partir de una única fuente, incluidas claves privadas generadas a partir de otras claves privadas, y asegura que las mismas claves siempre puedan ser recreadas con el mismo input (es decir, de manera “determinista”). Esto simplifica el respaldo y la recuperación de la billetera, mientras ofrece una mayor flexibilidad en la gestión de claves.

Cuando configuras una billetera Bitcoin autocustodial, el software de la billetera típicamente generará tu frase semilla y te pedirá que la anotes. Luego, tu billetera generará y gestionará tus claves privadas a partir de tu frase semilla única, permitiéndote autorizar transacciones fácilmente en la app de la billetera sin necesidad de ver o gestionar directamente tus claves privadas.

Controlar el acceso a tu app de billetera y tu frase semilla es cómo afirmas el control sobre tus claves privadas al tomar la autocustodia. Lo más importante que debes recordar sobre tus claves privadas y tu frase semilla es que deben mantenerse en secreto y seguras, ya que se utilizan para gastar tu bitcoin.

¿Qué es una clave pública?

Una clave pública es un código único generado a partir de una clave privada, que puede compartirse públicamente sin comprometer el secreto de la clave privada. Las claves públicas se generan utilizando “funciones criptográficas unidireccionales” estándar de la industria (llamadas criptografía de curva elíptica), lo que significa que, aunque es fácil generar una clave pública a partir de una clave privada, no existe una forma conocida de hacer lo contrario.

Las claves públicas se utilizan para recibir bitcoin y son fundamentales en la creación de direcciones de Bitcoin. Una dirección de Bitcoin es simplemente una versión más corta, eficiente y legible para los humanos de una clave pública. Cuando deseas recibir bitcoin, el software de tu billetera puede generar fácilmente una dirección de Bitcoin a partir de una de tus claves públicas, la cual puedes dar a tu amigo para que te envíe bitcoin.

Cuando llega el momento de gastar tu bitcoin, el software de tu billetera utiliza la clave privada que corresponde a la clave pública que se usó para recibir los fondos y genera una firma digital para autorizar la transacción. Esta firma digital combina la unicidad de la clave privada y un resumen criptográfico de la transacción en sí. Lo más importante es que las firmas pueden verificarse utilizando solo la clave pública sin exponer la clave privada en sí.

La combinación de la clave pública y la clave privada es lo que te permite gastar tu bitcoin.

¿Cómo se utilizan las claves públicas y privadas en las transacciones de bitcoin?

Las transacciones de Bitcoin siguen el modelo UTXO (Unspent Transaction Outputs), lo que significa que cada transacción entre pares tiene entradas (la fuente) y salidas (el destino).

Cada cantidad de bitcoin que posees es la salida de una transacción anterior, que fue enviada a una dirección de Bitcoin generada a partir de una de tus claves públicas. Para gastar ese bitcoin, debes firmar la transacción utilizando la clave privada asociada con la clave pública utilizada para recibirlo. Por eso es crucial mantener tus claves privadas en secreto y seguras cuando autocustodias bitcoin.

Aquí tienes un ejemplo paso a paso de cómo Alice envía 1 bitcoin a Bob:

  1. Solicitar una dirección: Alice solicita la dirección de Bitcoin de Bob. La dirección se genera a partir de una de las claves públicas de Bob, que se deriva de una de sus claves privadas.
  2. Crear la transacción: Usando su billetera Bitcoin, Alice crea una transacción ingresando la dirección de Bitcoin de Bob, la cantidad a enviar y la comision deseada.
  3. Gestionar UTXOs: El software de la billetera de Alice selecciona las entradas y salidas.
    • Entradas: Un UTXO de 0.5 bitcoin y un UTXO de 0.75 bitcoin
    • Salidas: Un UTXO de 1.0 bitcoin a la dirección de Bitcoin de Bob y un UTXO de 0.249 bitcoin a una de las direcciones de Bitcoin de Alice (también conocida como dirección de “cambio”)
    • Diferencia: La diferencia de 0.001 bitcoin se destina al minero como comisión
  4. Firmar la transacción: El software de la billetera de Alice crea una firma digital y firma la transacción utilizando los datos de la transacción y las claves privadas que coinciden con las claves públicas de los UTXOs que está gastando.
  5. Transmitir a la red: La transacción firmada se transmite a la red Bitcoin.
  6. Verificar la transacción: Los mineros en la red verifican la transacción comprobando la firma digital contra la clave pública de Alice (derivada de la dirección), asegurando así que el propietario legítimo del bitcoin ha autorizado el gasto.
  7. Minería: Cuando un minero encuentra un hash ganador, agrupa la transacción con otras transacciones válidas en un bloque, que se transmite a la red Bitcoin.
  8. Añadir la transacción: Los nodos reciben el nuevo bloque de transacciones y confirman su validez antes de añadir ese bloque a su copia de la blockchain.

Lee más

Lightning

¿Qué es la red Lightning?

La red global de pagos bitcoin que es instantánea, privada y de bajo o sin costo