Valor de clave secreta para versiones decimales superiores a 127

Después de revisar la página de prefijos de direcciones en la wiki, me di cuenta de que en Bitcoin y otras altcoins la clave secreta/el encabezado de la clave privada volcada siempre es la versión decimal + 128. Entonces, con una versión decimal de 0, obtendrá una dirección de Bitcoin normal. comenzando con 1, mientras agrega 128 a eso, puede encontrar la clave privada que comienza con 5 / L / K dependiendo del estado de compresión.

Otro ejemplo sería la versión decimal de Litecoin, que es 48, mientras que la versión de clave secreta es 48 + 128 (176).

Entonces la pregunta es: ¿qué pasa con las versiones decimales entre 128 y 255? Puedo ver que esto va de dos maneras.

  • En lugar de sumar 128, resta 128. Entonces, para la versión decimal 128, terminará con una clave secreta de 0.
  • Se redondea a 255 en todos los casos de 128 y más.

Miré a través de la wiki y no pude encontrar una razón de por qué el encabezado de la clave secreta es 128 más grande que el encabezado de la clave pública. Un ejemplo que contradice mis dos puntos anteriores sería Unobtanium Coin, cuyo encabezado de clave pública es 130 , mientras que la clave secreta es 224 (94 de diferencia).

¿Tiene algún sentido que la clave secreta y los encabezados de la clave pública estén tan separados? ¿O está bien que los encabezados sean diferentes en primer lugar, no necesariamente separados por 128?

Respuestas (1)

La razón es histórica.

El byte de 'versión' era originalmente realmente solo un número de versión. Satoshi probablemente tenía la intención de introducir más tipos de scripts estándar en las direcciones. Incluso hubo comentarios en el código sobre la actualización de una dirección de una versión a una nueva.

En esa visión, para no restringir las opciones para versiones futuras, opté por hacer que la clave privada solo establezca el bit más alto, dejando aún 127 posibles versiones futuras.

Solo se introdujo una nueva versión (P2SH), y dado que es tan poderosa (puede codificar cualquier script indirectamente), nunca apareció ninguna otra versión.

Así que la respuesta corta es: no importa en absoluto.