Gerando Chaves Privadas BIP32 a partir de Frases Mnemônicas BIP39 com Python
Sempre crie uma frase de segurança única para jogos, testnets ou airdrops e evite usar sua carteira principal.
Gerando Chaves Privadas BIP32 a partir de Frases Mnemônicas BIP39 com Python
Neste artigo, você aprenderá a utilizar Python para gerar chaves privadas BIP32 a partir de frases mnemônicas no padrão BIP39. Essa técnica é fundamental no universo das criptomoedas para derivar chaves seguras e determinísticas a partir de uma sequência de palavras fáceis de lembrar.
O que são BIP39 e BIP32?
BIP39 é o padrão para criação de frases mnemônicas — listas de palavras — usadas para criar seeds criptográficas que geram carteiras seguras. Já o BIP32 especifica a geração hierárquica determinística de chaves privadas e públicas, facilitando o gerenciamento de múltiplas carteiras a partir de uma única seed.
Ambos são padrões amplamente adotados por carteiras de criptomoedas como Ledger, Trezor, Trust Wallet, entre outras.
Bibliotecas Python utilizadas
- python-mnemonic: para manipulação de frases BIP39 e geração de seeds;
- bip32utils: para derivar chaves privadas e públicas segundo BIP32.
Como funciona o código
O script abaixo faz o seguinte:
- Define uma frase mnemônica BIP39 de 24 palavras (exemplo com a palavra final “diesel”)
- Utiliza a biblioteca
mnemonicpara gerar a seed binária associada - Deriva a chave privada raiz BIP32 a partir dessa seed usando
bip32utils - Exibe a chave privada em formato hexadecimal
Script completo para gerar chave privada BIP32
from mnemonic import Mnemonic
from bip32utils import BIP32Key
# Frase mnemônica de 24 palavras, exemplo com 23 'abandon' e a última 'diesel'
mnemonic_phrase = "abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon diesel"
# Criar objeto Mnemonic para idioma inglês
mnemo = Mnemonic("english")
# Gerar seed a partir da frase mnemônica (sem passphrase)
seed = mnemo.to_seed(mnemonic_phrase, passphrase="")
# Derivar a chave privada raiz BIP32 usando a seed
bip32_root_key = BIP32Key.fromEntropy(seed)
# Obter chave privada em bytes
private_key = bip32_root_key.PrivateKey()
# Exibir chave privada em hexadecimal
print(private_key.hex())
Observações importantes
O exemplo acima utiliza uma frase de exemplo, NÃO use essa frase para guardar criptomoedas reais, pois é pública e insegura. Sempre gere frases mnemônicas únicas e seguras para proteção de ativos.
A derivação de chaves BIP32 permite criar carteiras determinísticas que podem gerar múltiplos endereços de forma segura e organizada, essencial para gestão de criptomoedas em ambientes profissionais e pessoais.
Referências oficiais
- BIP39 - Bitcoin Improvement Proposal
- BIP32 - Bitcoin Improvement Proposal
- python-mnemonic GitHub
- bip32utils GitHub
Conclusão
Gerar chaves privadas a partir de frases mnemônicas BIP39 é uma habilidade essencial para desenvolvedores e entusiastas de criptomoedas. O uso correto das bibliotecas Python apresentadas facilita a criação de carteiras seguras e a manipulação determinística das chaves, alinhada aos padrões mais adotados do mercado.
Atenção: sempre avalie cuidadosamente seus investimentos e segurança digital. Invista apenas o que compreende e utilize ferramentas reconhecidas para proteger seus ativos.

Comentários
Comente só assim vamos crescer juntos!