Alex Emidio on Nostr: aqui está um exemplo de como um endereço público pode ser derivado a partir de uma ...
aqui está um exemplo de como um endereço público pode ser derivado a partir de uma chave privada de bitcoin usando as operações matemáticas.
1. Comece com a chave privada, que é um número aleatório de 256 bits, representado por "D"
Vamos supor que a sua chave privada seja: "d = 0x18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725". Aviso essa não e chave privada é prova de conceito descontração que é possíve.
2. P = d * G = 0x18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725 * G (onde G é o ponto base da curva secp256k1)
3. H(H(P)) = H(H(d * G))
4. Adicione o prefixo de versão de rede (00 para Bitcoin mainnet)e aplique a função Hash SHA-256 sobre o resultado anterior
5. Aplique outra função Hash SHA-256 sobre o resultado anterior e pegue os 4 primeiros bytes.
6. Concatene os 4 bytes com os resultados do passo 5.
7. Converter os bytes em base 58 para obter o endereço público. Endereço Público derivado: 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2
1. Comece com a chave privada, que é um número aleatório de 256 bits, representado por "D"
Vamos supor que a sua chave privada seja: "d = 0x18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725". Aviso essa não e chave privada é prova de conceito descontração que é possíve.
2. P = d * G = 0x18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725 * G (onde G é o ponto base da curva secp256k1)
3. H(H(P)) = H(H(d * G))
4. Adicione o prefixo de versão de rede (00 para Bitcoin mainnet)e aplique a função Hash SHA-256 sobre o resultado anterior
5. Aplique outra função Hash SHA-256 sobre o resultado anterior e pegue os 4 primeiros bytes.
6. Concatene os 4 bytes com os resultados do passo 5.
7. Converter os bytes em base 58 para obter o endereço público. Endereço Público derivado: 1BvBMSEYstWetqTFn5Au4m4GFg7xJaNVN2