Endereço
Uma codificação amigável de um script de travamento
Um endereço representa um tipo específico de script de travamento a ser colocado sobre alguns bitcoins. É basicamente uma codificação amigável de um hash de chave pública ou de um hash de script.
Então, quando você dá um endereço a alguém, está pedindo para ela travar seus bitcoins a um padrão de script específico usando o hash da chave pública ou o hash do script contido no endereço.
Uso
Como os endereços são usados no Bitcoin?
Os endereços são usados quando você quer enviar bitcoins a alguém usando uma carteira. A carteira decodifica o endereço para determinar o tipo de script de travamento a colocar na saída e extrai o hash para colocar no ScriptPubKey.
Os endereços em si não aparecem nos dados brutos da blockchain — são apenas uma alternativa amigável para trocarmos scripts de travamento.
Tipos
Quais são os tipos de endereço?
Diferentes tipos de endereço correspondem a diferentes padrões de scripts de travamento padrão: P2PKH, P2SH, P2WPKH, P2WSH, P2TR.
Não use nenhum dos endereços de exemplo. Você não tem a chave privada para destravar bitcoins enviados a eles.
P2PKH (Base58)
Um endereço 1 contém um hash da chave pública e corresponde a um script P2PKH. É uma codificação Base58Check do hash, com o byte de versão 00 (que força o primeiro caractere a ser "1").
P2SH (Base58)
Um endereço 3 contém um hash de script e corresponde a um script P2SH. Codificação Base58Check com o byte de versão 05.
Endereço (Base58)
Os endereços Base58 são sensíveis a maiúsculas/minúsculas.
P2WPKH e P2WSH (Bech32)
Endereços bc1q usam a codificação Bech32 com a versão de testemunha 0. Um programa de 20 bytes é P2WPKH; um de 32 bytes é P2WSH.
P2TR (Bech32m)
Endereços bc1p usam a codificação Bech32m com a versão de testemunha 1 e um programa de 32 bytes.