Billetera Bitcoin líder

Serialización ampliada de transacciones en Electrum 2.0

Electrum 2.0 introduce una forma mejorada de serializar transacciones. Este nuevo método permite a los usuarios compartir transacciones sin firmar o parcialmente firmadas con otros firmantes o almacenarlas en dispositivos de almacenamiento en frío.

El principal cambio en este formato de serialización se encuentra en la entrada de transacciones. En concreto, Electrum amplía el pubkey para incluir información adicional. Esta ampliación permite al monedero gestionar transacciones que aún no están totalmente firmadas, lo que facilita la gestión de configuraciones multifirma y operaciones de almacenamiento en frío.

Claves públicas ampliadas

Las claves públicas estándar de Bitcoin empiezan por 0x02, 0x03o 0x04. Estas son las claves públicas normales comprimidas o sin comprimir utilizadas en las transacciones de Bitcoin.

Las claves públicas ampliadas empiezan por 0xFF, 0xFEo 0xFD. Electrum los utiliza para proporcionar más información sobre el origen y la ruta de derivación de la clave.

Existen tres tipos de claves públicas ampliadas:

  1. Teclas que empiezan por 0xFF son claves públicas extendidas BIP32 (xpubs) con su ruta de derivación.
  2. Teclas que empiezan por 0xFE utilizan el método de derivación heredado de Electrum, que combina una clave pública maestra y su ruta de derivación.
  3. Teclas que empiezan por 0xFD representan claves públicas desconocidas de las que sólo se conoce la dirección Bitcoin.

Tipos

  1. Derivación BIP32 (comienza con 0xFF): Este formato consiste en una clave pública extendida (xpub) de 78 bytes de longitud, seguida de la ruta de derivación BIP32. La ruta de derivación se representa como una serie de enteros de 4 bytes, siendo la longitud total el doble del número de pasos de derivación.
  2. Legado Electrum Derivación (comienza con 0xFE): Este formato antiguo utiliza una clave pública maestra (mpk) de 64 bytes, seguida de un valor de derivación de 4 bytes. Este método es específico de versiones anteriores de Electrum.
  3. Sólo dirección Bitcoin (comienza con 0xFD): Este formato se utiliza cuando la clave pública completa no está disponible, pero conocemos la dirección Bitcoin o su correspondiente hash de script. Almacena el hash160 de 20 bytes del script de salida. Este formato asume que el cosignatario puede proporcionar la clave pública real cuando sea necesario.

Estos formatos extendidos permiten a Electrum manejar varios tipos de monederos y métodos de derivación, soportando tanto los modernos monederos jerárquicos basados en BIP32 como las antiguas estructuras de monederos de Electrum. El sitio 0xFD también proporciona flexibilidad a la hora de trabajar con datos de transacciones parcialmente conocidos.

Claves públicas estándar

Bitcoin utiliza formatos específicos para representar claves públicas. Estos formatos se reconocen como estándar en toda la red Bitcoin:

Claves públicas comprimidas: Empiezan por 0x02 o 0x03seguido de 32 bytes de datos. El byte inicial indica si el y-la coordenada del punto de la clave pública en la curva elíptica es par (0x02) o impar (0x03).

Claves públicas sin comprimir: Empiezan por 0x04seguido de 64 bytes de datos. Este formato incluye tanto el x y y coordenadas del punto de la clave pública en la curva elíptica.

Índice