¿La clave privada tiene propiedades matemáticas especiales?

[Leí que hay claves privadas con longitudes distintas a 256 bits. Aquí solo hablo de claves privadas de 256 bits. ¿Son otras longitudes comunes y compatibles con billeteras populares como Electrum?]

Digamos que genero una clave privada privateKey0usando un generador de claves. Luego elijo algún número n∈ [1, 10^10]. Dado que privateKey0+ n< 2^256, ¿será privateKey1:= privateKey0+ nuna buena clave privada?

Por supuesto, una buena clave privada debe ser válida y tan sólida como la generada por un generador de claves privadas . Esto no tiene en cuenta que el hecho de que uno de ellos esté disponible públicamente puede llevar a que el otro esté disponible públicamente. Sin embargo, el uso productivo de ambos no debe debilitar su secreto para que el segundo sea considerado una buena clave privada. Así que supongamos que se generan sus claves públicas correspondientes y las direcciones para estos y ambos reciben una cierta cantidad de dinero.

No sé nada sobre las claves privadas de Bitcoin (pero soy consciente de que una instancia del formato de importación de billetera es solo el resultado de una operación fácil de hacer en un gran número como se describe aquí ). ¿Tienen que tener propiedades matemáticas especiales o puedo elegir cualquier número ∈ [2^255, 2^256 - 1] y usarlo como clave privada?

Algunos sitios web dicen que solo puede usar un número aleatorio. ¿Hay alguna desventaja en esto en comparación con el uso de un generador de claves?

Respuestas (1)

En Bitcoin, una clave privada es solo un número aleatorio entre 1 y 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141. Este número se deriva del orden de la curva elíptica que utiliza Bitcoin, secp256k1 .

Tenga en cuenta que no es necesario que tenga configurado el bit más significativo 2^255 para que sea una clave privada de Bitcoin válida, cualquier número mayor o igual que 1 funcionará. De hecho, saber que el bit más significativo está configurado en realidad disminuye la seguridad de esa clave privada, porque revela cierta información sobre la clave. No tienes que usar ningún generador de claves especial, de hecho, incluso hay tutoriales sobre cómo generar una clave privada con lanzamientos de monedas. El único requisito de una clave privada (aparte de estar en el rango descrito anteriormente) es que sea aleatoria (difícil de adivinar).