Carteira Bitcoin líder

Serialização de Transação Estendida em Electrum 2.0

Electrum 2.0 introduz uma maneira melhorada de serializar transações. Este novo método permite aos utilizadores partilhar transacções não assinadas ou parcialmente assinadas com outros signatários ou armazená-las em dispositivos de armazenamento a frio.

A principal mudança neste formato de serialização é encontrada na entrada da transação. Especificamente, Electrum expande o pubkey para incluir informações adicionais. Esta expansão permite que a carteira lide com transacções que ainda não estão totalmente assinadas, facilitando a gestão de configurações de várias assinaturas e operações de armazenamento a frio.

Chaves públicas alargadas

As chaves públicas padrão do Bitcoin começam com 0x02, 0x03, ou 0x04. Estas são as chaves públicas normais comprimidas ou não comprimidas utilizadas nas transacções Bitcoin.

As chaves públicas alargadas começam por 0xFF, 0xFE, ou 0xFD. Electrum usa-os para fornecer mais informações sobre a origem da chave e o caminho de derivação.

Existem três tipos de chaves públicas alargadas:

  1. Chaves que começam por 0xFF são chaves públicas alargadas (xpubs) BIP32 com o seu percurso de derivação.
  2. Chaves que começam por 0xFE utilizam o método de derivação herdado da Electrum, combinando uma chave pública mestra e o seu caminho de derivação.
  3. Chaves que começam por 0xFD representam chaves públicas desconhecidas onde apenas o endereço Bitcoin é conhecido.

Tipos

  1. Derivação BIP32 (começa com 0xFF): Este formato consiste numa chave pública alargada (xpub) com 78 bytes de comprimento, seguida do percurso de derivação BIP32. O caminho de derivação é representado como uma série de números inteiros de 4 bytes, sendo o comprimento total o dobro do número de etapas de derivação.
  2. Derivação de Electrum Legado (começa com 0xFE): Este formato mais antigo usa uma chave pública mestre (mpk) com 64 bytes de comprimento, seguida por um valor de derivação de 4 bytes. Este método é específico para versões anteriores do Electrum.
  3. Apenas endereço Bitcoin (começa com 0xFD): Este formato é utilizado quando a chave pública completa não está disponível, mas sabemos o endereço Bitcoin ou o seu script hash correspondente. Armazena o hash160 de 20 bytes do script de saída. Este formato pressupõe que o cossignatário pode fornecer a chave pública efectiva quando necessário.

Estes formatos alargados permitem à Electrum lidar com vários tipos de carteiras e métodos de derivação, suportando tanto carteiras hierárquicas modernas baseadas em BIP32 como estruturas de carteiras Electrum mais antigas. O formato 0xFD também proporciona flexibilidade quando se trabalha com dados de transação parcialmente conhecidos.

Chaves públicas padrão

O Bitcoin usa formatos específicos para representar chaves públicas. Esses formatos são reconhecidos como padrão em toda a rede Bitcoin:

Chaves públicas comprimidas: Estes começam por 0x02 ou 0x03, seguido de 32 bytes de dados. O byte inicial indica se o y-A coordenada do ponto da chave pública na curva elíptica é par (0x02) ou ímpares (0x03).

Chaves públicas não comprimidas: Estes começam por 0x04, seguido de 64 bytes de dados. Este formato inclui tanto o x e y coordenadas do ponto da chave pública na curva elíptica.

Índice