O maior desafio na gestão de Bitcoin: o papel da chave privada e do BIP39

O valor intrínseco do Bitcoin resume-se à forma como geres a tua chave privada. Se perderes esta chave, perdes também o acesso aos teus Bitcoins. A frase frequentemente ouvida de “sem chave, não há moeda” simboliza a soberania do Bitcoin.

Onde existe o Bitcoin

Para quem não é familiarizado com tecnologia, é difícil compreender onde o Bitcoin realmente existe. A perceção comum é que a carteira é como uma caixa onde guardamos o dinheiro. No entanto, a carteira não mantém o próprio Bitcoin. Ela mantém apenas a chave privada.

A realidade do Bitcoin é apenas uma entrada de dados na blockchain, hospedada por todos os participantes da rede. Usar Bitcoin equivale a propor uma atualização de dados na blockchain. A chave privada é uma ferramenta que prova que apenas o proprietário pode aprovar essa atualização de dados.

A verdadeira natureza da chave privada: um número muito grande

A chave privada, em última análise, é um número extremamente grande composto por 256 bits de 1s e 0s gerados aleatoriamente. Em formato binário, fica assim:

1110001011011001011110111100000101000000100010011110101110110101110111001111111111111010101110100101110100111010011100101001 101111010001100001111101011110011010010111100110111010000011011011011100011010001100011110100011000111101101001001111011010101010110011011010

Esta aleatoriedade esmagadora é a base da segurança da carteira. O número de combinações possíveis da chave privada é quase igual ao número de átomos no universo observável. Assim, se for gerada de forma verdadeiramente aleatória, a chave privada é essencialmente segura.

Diferentes formas de representar a chave privada

A mesma chave privada pode ser representada por esquemas de codificação diferentes.

Em hexadecimal: E2D97BC144089EBB5773FFABA5D3A729BD187D79A5E6E836DC68C7A24F6AB36A

No formato de importação de carteira (WIF): 5KYC9aMMSDWGJciYRtwY3mNpeTn91BLagdjzJ4k4RQmdhQvE98G

O formato WIF foi o padrão na fase inicial do Bitcoin para trocar chaves privadas. Na altura, os utilizadores geravam uma chave privada e derivavam a chave pública a partir dela.

Como é gerada a chave pública

O processo de criar uma chave pública a partir de uma chave privada é, basicamente, uma multiplicação de um número muito grande. O algoritmo de criptografia de curva elíptica Secp256k1, usado pelo Bitcoin, possui um ponto especial chamado “ponto gerador”. Este é o ponto base da curva Secp256k1, essencial para a geração de chaves e assinaturas.

O ponto gerador G é: G = 02 79BE667E F9DCBBAC 55A06295 CE870B07 029BFCDB 2DCE28D9 59F2815B 16F81798

Multiplicando a chave privada por este ponto, obtém-se um novo ponto no gráfico. Este ponto é a chave pública, matematicamente relacionada à chave privada que só tu conheces.

Chave pública em formato não comprimido: 04C0E410A572C880D1A2106AFE1C6EA2F67830ABCC8BBDF24729F7BF3AFEA06158F0C04D7335D051A92442330A50B8C37CE0EC5AFC4FFEAB41732DA5108261FFED

Para maior eficiência, a chave pública pode também ser “comprimida”. Isto mantém apenas um byte que indica o sinal das coordenadas x e y.

Como funciona a assinatura de transações

Ao assinar uma transação com a chave privada, o procedimento é, em essência, uma multiplicação. A carteira gera um nonce (número aleatório), usa a chave privada e o hash da transação para calcular a assinatura (dois valores, r e S).

Com esta assinatura, qualquer pessoa pode verificar que a assinatura foi feita com a chave legítima, sem revelar a chave privada. A posse do direito de usar Bitcoin baseia-se, fundamentalmente, numa operação matemática de multiplicação de números grandes.

BIP39: uma solução mais amigável ao utilizador

Tudo até aqui pode parecer avassalador para quem não conhece tecnologia de ativos digitais. Binários, hexadecimais, coordenadas de curvas elípticas — tudo exige compreensão simultânea. Especialmente, a questão prática de como fazer backup de uma chave privada de forma segura é um problema sério para muitos utilizadores.

Para resolver isto, foi desenvolvida uma abordagem mais intuitiva e segura: a frase de recuperação (seed phrase) ou seed mnemónica.

O que é a frase mnemónica BIP39

O problema por trás da seed mnemónica é a dificuldade de copiar e transcrever uma sequência de 256 bits de 1s e 0s. Um erro de apenas um bit pode invalidar completamente o backup:

1110001011011001011110111100000101000000100010011110101110110101110111001111111111111010101110100101110100111010011100101001 101111010001100001111101011110011010010111100110111010000011011011011100011010001100011110100011000111101101001001111011010101010110011011010

Em vez de uma longa sequência de números, era necessário um formato mais acessível para as pessoas.

Exemplo de seed mnemónica: Trilho Atualizar Raiva Burro Memória Laptop Reforma Detalhes Dividir Tristeza Gordura

São apenas 12 palavras. O manuseamento torna-se muito mais fácil. Mas como é que uma coleção aleatória de 1s e 0s se transforma em palavras com significado?

Como funciona o método de codificação BIP39

Semelhante ao binário ou hexadecimal, é utilizado um esquema de codificação. Cada palavra na seed mnemónica corresponde a uma sequência específica de bits de 1s e 0s, mapeada através de um esquema de codificação.

O Bitcoin Improvement Proposal 39 (BIP39) introduziu um método de codificação padronizado. Cada palavra, numa lista especialmente criada, é mapeada para um número binário de 00000000001 a 11111111111, em ordem alfabética.

Exemplo de mapeamento de uma seed de demonstração:

  • Trilho: 11101001001
  • Atualizar: 10110110001
  • Raiva: 01011110011
  • Burro: 01000001001
  • Memória: 10110101110
  • Laptop: 01111101000
  • Reforma: 10110100010
  • Detalhes: 00111100010
  • Dividir: 11010010001
  • Tristeza: 01100110100
  • Gordura: 00010011110
  • Razão: 01010011011

Em formato binário: 11101001001 10110110001 01011110011 01000001001 10110101110 01111101000 10110100010 00111100010 11010010001 01100110100 00010011110 01010011011

2048 palavras e sistema de 11 bits

O esquema BIP39 dispõe de 2048 palavras, cada uma mapeada a um valor de 11 bits. Isto facilita a manipulação de chaves privadas pelos utilizadores.

Quando uma chave privada é gerada aleatoriamente, o sistema divide o número em blocos de 11 bits e mapeia cada bloco na lista de palavras BIP39. Assim, o grande número é convertido numa sequência de palavras legível. O cérebro humano é muito mais eficiente a processar uma sequência de palavras do que uma longa cadeia de bits. Este método reduz significativamente o risco de erros ao fazer backup de Bitcoins.

Mecanismo de checksum

Ao observar o código binário, nota-se que a última “palavra” contém apenas 8 bits. Isto é um checksum, usado para verificar a validade da seed.

Ao gerar a chave, o sistema não consegue mapear exatamente para 12 (ou 24) palavras. Assim, o sistema faz um hash do número existente e adiciona os bits iniciais do hash ao final da chave, garantindo que o último bloco possa ser mapeado corretamente.

Este checksum permite verificar matematicamente se a seed foi copiada corretamente. Se inserir uma seed mnemónica incorreta, o checksum não coincidirá. Cada seed (12 ou 24 palavras) tem múltiplos checksums válidos, mas se o último não corresponder ao checksum correto, a carteira é considerada inválida e gera um aviso.

Ao contrário de copiar números binários longos, esta abordagem é intuitiva e matematicamente segura.

Como escolher as palavras

A lista de 2048 palavras do BIP39 foi cuidadosamente selecionada para que as primeiras quatro letras de cada palavra não se repitam, evitando confusões e erros de transcrição que possam comprometer o backup da chave privada.

De seed mnemónica para múltiplos pares de chaves

O processo de derivar múltiplas chaves privadas e públicas a partir de uma seed mnemónica é surpreendentemente simples.

A seed mnemónica é hashada com SHA512, produzindo 512 bits de hash. Os primeiros bits funcionam como a chave privada, enquanto os últimos são usados como índice e input para SHA512, juntamente com a chave privada ou pública existente, para gerar novos pares de chaves. Repetindo este procedimento, é possível derivar inúmeras chaves privadas e públicas a partir de uma única frase mnemónica.

Inovação trazida pelo BIP39

Graças a estes mecanismos, é possível gerir a chave privada de forma simples e segura, minimizando o risco de perda de ativos por erro. Tudo isto é realizado através de operações matemáticas.

A razão pela qual o Bitcoin é chamado de “dinheiro protegido pela matemática” torna-se agora mais clara. O BIP39 é uma invenção fundamental no ecossistema Bitcoin, implementando a sua robustez matemática de forma acessível ao utilizador.

BTC-0,6%
Ver original
Esta página pode conter conteúdos de terceiros, que são fornecidos apenas para fins informativos (sem representações/garantias) e não devem ser considerados como uma aprovação dos seus pontos de vista pela Gate, nem como aconselhamento financeiro ou profissional. Consulte a Declaração de exoneração de responsabilidade para obter mais informações.
  • Recompensa
  • Comentar
  • Republicar
  • Partilhar
Comentar
0/400
Nenhum comentário
  • Fixar

Negocie cripto em qualquer lugar e a qualquer hora
qrCode
Digitalizar para transferir a aplicação Gate
Novidades
Português (Portugal)
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)