Author

Topic: Direcciones comprimidas/descomprimidas (Read 972 times)

hero member
Activity: 616
Merit: 501
November 09, 2014, 07:49:16 PM
#2
Muchas gracias por la aclaración dserrano5, ya me imaginaba que con 'comprimir' te referías a coger los 32 bytes de la coordenada X (y agregar el signo de Y), sólo quería saber si ya habías probado que el comando multifirma lo aceptaba sin 'comprimir', pero siendo tan fácil la conversión supongo que ya no importa mucho (o mejor yo lo puedo probar por mi cuenta Tongue).

Para los interesados en profundizar un poco, ésta página muestra los distintos formatos que toma una llave pública y cómo se llega desde una llave privada a lo que conocemos como dirección (a lo que nos referimos aquí es al paso 7).
legendary
Activity: 1974
Merit: 1029
November 08, 2014, 08:17:13 PM
#1
Venimos de aquí.

Pero entonces dserrano5 ¿tu puedes 'comprimirla'? o ¿el comando multifirma la acepta así sin comprimir? (no hemos empezado y entre todos ya estamos aprendiendo varias cosas  Grin Grin).

Una clave privada es un número entero; una clave pública es un par de coordenadas (X,Y). Ahora bien, la curva es simétrica respecto del eje X, por lo que para un determinado valor X hay dos puntos posibles, Y y -Y. Una clave pública descomprimida es (X,Y) pero una comprimida toma ventaja de esto y no especifica más que X y el signo de la Y, por lo que nos ahorramos un montón de bits.

Las claves privadas que empiezan por 04 contienen tanto el valor de X como el de Y; las que empiezan por 02 o 03 no especifican más que la X, el signo de la Y es precisamente el 02 o el 03.

El multisig solo exige M firmas de N posibles, independientemente de si las claves públicas vienen especificadas de una forma o de otra. En el fondo solo son dos representaciones del mismo punto en la curva. Es como decir "69" o "0x45", son la misma cosa.

@alexr_96, las dos son válidas precisamente debido a la simetría de la curva.
Jump to: