Qual é o endereço do Bitcoin?
Um endereço de bitcoin é uma sequência de números e letras que pode ser compartilhada com qualquer pessoa que queira lhe enviar bitcoins. Um endereço de bitcoin gerado por uma chave pública (também uma sequência de números e letras) começa com o número "1". Aqui está um exemplo de um endereço de bitcoin:
1J7mdg5rbQyUHENYdx39WVWK7fsLpEoXZy
Em uma transação, o endereço de bitcoin geralmente aparece como o beneficiário. Se você comparar uma transação de bitcoin a um cheque, o endereço de bitcoin é o beneficiário, que é o que colocaremos no campo de beneficiário. O beneficiário de um cheque pode ser uma conta bancária, uma empresa, uma organização ou até mesmo um cheque em dinheiro. Em vez de especificar uma conta específica, um cheque usa um nome abstrato como beneficiário, o que o torna um instrumento de pagamento bastante flexível. Da mesma forma, os endereços de bitcoin usam uma abstração semelhante, o que também torna as transações de bitcoin flexíveis. Um endereço de bitcoin pode representar o proprietário de um par de chaves pública e privada, ou pode representar outra coisa. Agora, vamos ver um exemplo simples de geração de um endereço de bitcoin a partir de uma chave pública.
Os endereços de bitcoin podem ser obtidos a partir de chaves públicas por meio de um algoritmo de hash criptográfico unidirecional. Um algoritmo de hash é uma função unidirecional que recebe uma entrada de comprimento arbitrário para produzir uma impressão digital ou hash. Funções de hash criptográficas são amplamente utilizadas no Bitcoin: endereços de bitcoin, endereços script e em algoritmos de prova de trabalho na mineração. Os algoritmos usados para gerar endereços de bitcoin a partir de chaves públicas são o Algoritmo de Hash Seguro (SHA) e o Digest de Mensagem de Avaliação de Primitivas de Integridade RACE (RIPEMD), especificamente SHA256 e RIPEMD160.
Usando a chave pública K como entrada, calcule seu hash SHA256 e use o resultado para calcular o hash RIPEMD160 para obter um número de 160 bits (20 bytes) de comprimento.
A = RIPEMD160(SHA256(K))
Na fórmula, K é a chave pública e A é o endereço de bitcoin gerado.
Dica: Endereços de bitcoin são diferentes de chaves públicas. Endereços de bitcoin são gerados por uma função de hash unidirecional da chave pública.
Os endereços de bitcoin que os usuários normalmente veem são codificados com "Base58Check" (consulte a seção "Codificação Base58 e Base58Check"), que usa 58 caracteres (uma codificação Base58 Base58Check também é usada em outros lugares no Bitcoin, como em endereços de bitcoin, chaves privadas, chaves criptografadas e hashes de script, para melhorar a legibilidade e corrigir erros de entrada.