Skip to main content

Chave Pública | Bitcoin Glossary | Mapping Bitcoin

Chave Pública

Criptografia

Also known as: pubkey

Chave derivada da privada via curva elíptica, usada para gerar endereços e verificar assinaturas Bitcoin sem comprometer o sigilo da chave privada.

Visão geral

Uma chave pública no Bitcoin é um ponto na curva elíptica secp256k1, derivado de uma chave privada por meio de multiplicação de ponto de curva elíptica. Essa operação matemática é uma função unidirecional: dada uma chave privada, qualquer um pode calcular a chave pública correspondente, mas derivar a chave privada de uma chave pública é computacionalmente inviável. As chaves públicas servem como base para os endereços Bitcoin e as assinaturas digitais.

Como as chaves públicas são derivadas

Derivação de chave:

  Chave Privada (número de 256 bits)
        │
        ▼
  Multiplicação de Curva Elíptica
  (multiplicação de ponto em secp256k1)
        │
        ▼
  Chave Pública (ponto na curva)
        │
        ├──> Comprimida:    33 bytes (prefixo 02 ou 03 + coordenada x)
        │    Exemplo: 02b4632d08485ff1...
        │
        └──> Não comprimida: 65 bytes (prefixo 04 + coord. x e y)
             Exemplo: 04b4632d08485ff1...
        │
        ▼
  Hash (HASH160 = RIPEMD160(SHA256(chavepub)))
        │
        ▼
  Endereço Bitcoin

Comprimida vs. não comprimida

O software Bitcoin moderno usa exclusivamente chaves públicas comprimidas (33 bytes) em vez de chaves não comprimidas (65 bytes). Como a coordenada y de um ponto na curva elíptica pode ser calculada a partir da coordenada x (com um bit de paridade), o formato comprimido armazena apenas a coordenada x com um byte de prefixo indicando se y é par (02) ou ímpar (03). Isso economiza espaço nas transações e reduz as taxas.

Papel na verificação de transações

Quando alguém gasta bitcoin, fornece uma assinatura e sua chave pública. Cada nó na rede usa a chave pública para verificar se a assinatura é válida e se a chave pública faz hash para o endereço ao qual os fundos foram bloqueados. Esse processo de verificação garante que apenas o titular da chave privada correspondente poderia ter autorizado o gasto.

Exposição da chave pública

Em transações P2PKH e P2WPKH, a chave pública é hasheada para criar o endereço. A chave pública real só é revelada quando a saída é gasta. Isso fornece uma camada teórica de resistência quântica para saídas não gastas, já que um invasor com um computador quântico precisaria derivar a chave privada da chave pública, que só é exposta no momento do gasto.

Conceito errôneo comum

Uma chave pública não é a mesma coisa que um endereço Bitcoin. O endereço é derivado da chave pública por meio de um ou mais passos de hashing. Embora uma chave pública possa ser compartilhada com segurança, a melhor prática do Bitcoin é compartilhar endereços, pois os endereços são mais curtos, incluem checksums de detecção de erros e mantêm a chave pública oculta até o momento do gasto.