¿Qué es una clave privada y una clave pública?

¿Qué es exactamente una clave privada y una clave pública en relación con Bitcoin? ¿Qué son, cómo se usan y cómo se sabe cuáles son sus claves privadas y públicas?

Encontré esta respuesta útil: bitcoin.stackexchange.com/a/3057/516

Respuestas (1)

Ambas claves son parte del algoritmo de firma digital de curva elíptica . Una clave privada es solo un número aleatorio, mientras que la clave pública es una coordenada de punto 2D en una curva elíptica derivada de ella. La clave privada se usa para firmar mensajes (en el caso de Bitcoin, las transacciones), y la clave pública se usa para verificar si la firma es correcta. La clave pública puede usarse sin procesar en una transacción o convertirse en una dirección de Bitcoin mediante hash y otras operaciones.

Se puede utilizar cualquier biblioteca que admita la curva ECDSA utilizada por Bitcoin (secp256k1) para generar el par de claves adecuado. Existen algunas soluciones en línea para estas tareas, por ejemplo , el sitio web de mi pequeña suite de pruebas .

Sin embargo, lo más común es dejar la generación de pares de claves al programa Bitcoin. Si es necesario, la clave privada se puede recuperar del programa mediante una llamada a la dumpprivkey API de Bitcoin .

Técnicamente, una clave pública no es un número, sino un par de coordenadas de un punto en la curva EC. Además, en realidad no se codifica en una dirección de Bitcoin; una dirección codifica el hash de una clave pública serializada.
@PieterWuille Editado en consecuencia