Estaba tratando de entender las especificaciones sobre la función CKD tanto del estándar bip32 como del libro Mastering Bitcoin, no podía entender cómo se deriva una clave privada del lado izquierdo de la clave extendida.
El libro simplemente dice que el lado derecho se convierte en el código de la cadena y el lado izquierdo se convierte en la clave privada. Después de algunas investigaciones en línea, leí a alguien usando términos como ajustes y módulo n , G , que me confunden porque no se mencionaron en el libro y no tanto en la especificación en sí.
Ayúdenme a aclarar cómo se deriva exactamente una clave privada del lado izquierdo de la salida , y la relación con todas esas partes no mencionadas como el módulo n (¿Cuál n?), Ajustar (??), multiplicar por G (¿Qué es G ?) ya que todos estos términos no están bien documentados.
Una clave privada es un número, un número muy grande de 256 bits. Puede hacer aritmética ordinaria con tales números, por ejemplo, módulo de suma n, donde n es el orden de la curva (alguien más tendrá que ampliar eso si es necesario). n está muy cerca pero es menor que 2^256.
Aquí hay un diagrama de la derivación de la clave privada secundaria:
Los 256 bits de la izquierda del hash de 512 bits se agregan módulo n a la clave privada principal. La suma, que también es un número de 256 bits (debido al módulo n), es la clave privada secundaria. La suma de la clave privada principal y un número aparentemente aleatorio de 256 bits es un número aparentemente aleatorio de 256 bits, por lo que esa suma funcionará bien como clave privada.
mike d
N=115792089237316195423570985008687907852837564279074904382605163141518161494337
yG=(55066263022277343669578718895168534326250603453777594175500187360389116729240, 32670510020758816978083085130507043184471273380659243275938904335757337482424)