Já falamos por aqui o que é uma Proposta de Melhoria do Bitcoin, ou Bitcoin Improvement Proposal (BIP). Trata-se de uma proposta feita por desenvolvedores ou usuários, na qual o restante da comunidade vota para aprovar ou não uma implementação.

Dentre todas as propostas de melhorias do Bitcoin, a BIP39 destaca-se como uma das mais famosas e importantes, principalmente porque a utilizamos diariamente ao configurar nossas carteiras de bitcoin.

Embora seu título formal seja “Código mnemônico para gerar chaves determinísticas”, ela é mais conhecida como BIP39, e é como a chamaremos neste artigo.

Essa inovação ajuda os usuários a protegerem suas chaves privadas e a recuperarem suas carteiras sem dificuldades em outras carteiras compatíveis.

Neste artigo, vamos entender o que é a BIP39, como ela surgiu, como funciona e suas principais características.

O que é BIP39?

O BIP39 é um padrão estabelecido para gerar uma ‘seed’ mnemônica – uma série de palavras – que serve como um backup para recuperar carteiras de Bitcoin.

Assim, o BIP39 é uma melhoria do Bitcoin que facilitou a vida dos bitcoiners na hora de armazenar as chaves privadas, conhecidas com frase de backup.

A partir dessa implementação, as chaves privadas das carteiras passaram a ser apresentadas na forma de uma chave determinística: palavras simples e comuns que podem ser mais facilmente faladas, escritas ou, possivelmente, memorizadas.

Portanto, foi a BIP39 que introduziu o conjunto de 12, 18 ou 24 palavras que aparecem ao configurarmos uma carteira não custodial, as quais somos orientados a anotar na ordem em que surgem e a manter em um local seguro.

Leia também: Como guardar Bitcoin do jeito certo

Bitcoin Bips (Github)

Como surgiu a BIP39?

A BIP39 surgiu em 2013, pelos desenvolvedores Marek Palatinus, Pavol Rusnak, Aaron Voisine e Sean Bowe, devido aos desafios e limitações que os usuários enfrentavam para armazenar e gerenciar suas chaves privadas, visto que as chaves privadas tradicionais são compostas por longas sequências alfanuméricas, cheias de números e letras, obtidas através do número binário — o idioma utilizado pelos computadores, que consiste em 1s e 0s.

Essas chaves estão em uma linguagem difícil para nós, seres humanos, entendermos, reconhecermos e lembrarmos; portanto, podem ser facilmente perdidas.

Na imagem abaixo, conseguimos entender melhor como a sequência de 0s e 1s é “traduzida” para palavras, a partir do BIP39.

Palavras sendo geradas a partir do BIP-39

Agora, imagine quão difícil seria se você tivesse que ler, copiar ou digitar uma sequência de 256 uns e zeros como sua chave privada para comprovar a propriedade do seu Bitcoin!

Além da possibilidade de erro, seria uma barreira para quem não está habituado com a linguagem tecnológica.

Portanto, a principal inovação da BIP39 foi trazer uma forma mais fácil, segura e conveniente de gerar e anotar as chaves privadas, utilizando frases mnemônicas.

As frases mnemônicas frases ajudam o usuário a acessar e recuperar facilmente suas carteiras, caso necessário. Isso porque hoje diversos fabricantes de carteiras suportam a BIP39, o que não só facilita a configuração, mas também a migração de uma carteira para outra.

O que são frases mnemônicas?

As frases mnemônicas, também conhecidas como frase de backup e seeds, são um conjunto de palavras, geralmente em inglês, que servem como a chave privada da sua carteira.

Toda carteira Bitcoin possui dois tipos de chaves: as públicas e as privadas. Ambas são conjuntos alfanuméricos bem grandes.

Assim, para facilitar o armazenamento e o gerenciamento das chaves, surgiu, com a BIP39, as frases mnemônicas, que representam de forma mais “legível” as chaves privadas.

Portanto, ao criar sua carteira Bitcoin, você pode gerar um conjunto de 12, 18 ou 24 palavras, que atuam como um mecanismo crucial para backup e recuperação da sua carteira.

frases mnemônicas

Sua chave privada é uma série específica de 256 bits. Assim, você deve sempre manter esses 256 bits na mesma ordem para acessar os fundos em sua carteira. Portanto, as palavras mnemônicas devem ser sempre anotadas na ordem exata em que foram apresentadas.

Ou seja, se você mudar a ordem dessas palavras, sua chave privada não será reconhecida, pois a carteira não poderá reverter sua frase para a sequência correta de bits.

As palavras da BIP39 vêm de um dicionário pré-definido com 2048 palavras. Elas são selecionadas numa sequência particular baseada em aleatoriedade, garantindo que cada frase seja única e muito segura.

Algumas pessoas até transformaram as 2048 palavras da BIP39 em um pôster para tornar mais fácil a visualização.

Algumas palavras da BIP39 (em inglês)

*Caso queira, você pode acessar todas as palavras do BIP39, no GitHub.

As principais funções de uma frase mnemônica, ou seed, são:

Backup e recuperação

As frases mnemônicas servem como um método seguro para recuperar sua carteira digital.

Portanto, em situações onde sua carteira seja perdida, roubada ou danificada, você pode usar as frases mnemônicas para acessar seus ativos digitais em um novo dispositivo. Isso é possível porque a frase contém todas as informações necessárias para restaurar completamente sua carteira (e seu saldo).

Migração de carteira

Da mesma forma que citamos acima, as frases mnemônicas permitem a migração fácil de sua carteira para diferentes dispositivos.

Ao configurar uma carteira em um novo dispositivo, inserir a frase mnemônica correta irá restaurar o acesso a seus ativos digitais, mantendo todas as informações intactas. Isso é particularmente útil para usuários que trocam de telefone ou computador com frequência ou que desejam manter várias cópias de suas carteiras por motivos de segurança.

Facilidade para humanos

Diferentemente das chaves privadas tradicionais, que são longas sequências alfanuméricas complexas e praticamente impossíveis de memorizar, as frases mnemônicas são compostas de palavras comuns. Isso não só facilita o anotar e guardar de forma segura, mas também possibilita, em alguns casos, que usuários memorizem sua frase mnemônica.

Contudo, é ainda vital manter a ordem correta das palavras e entender que qualquer erro pode impedir o acesso à carteira.

Leia também: o que são passphrases?

Características da BIP39

A BIP39 trouxe diversos recursos importantes para aprimorar a usabilidade e a segurança dos usuários. Essa atualização incorporou um sistema de verificação de erros no processo de geração das chaves, evitando que os usuários cometam erros ao transcrever a frase e percam suas carteiras.

Além disso, a BIP39 também suporta palavras em outros idiomas, como o português. Isso permite que os usuários possam criar uma frase mnemônica (seed) em seu idioma nativo.

Por fim, a principal característica dessa BIP foi a de transformar as chaves privadas alfanuméricas em palavras, como já vimos anteriormente nesse artigo. 

Outras características das palavras da BIP39 são:

  1. Seleção inteligente de palavras: lista de palavras é especialmente projetada para facilitar a identificação. Na maioria dos casos, você só precisa digitar as quatro primeiras letras de uma palavra para reconhecê-la sem confusão. Isso simplifica o processo de encontrar e lembrar das palavras corretas.
  1. Palavras semelhantes evitadas: para reduzir erros e confusões, palavras que são muito parecidas não são usadas juntas. Por exemplo, pares como “construir” e “construção”, “mulher” e “mulheres”, ou “rápido” e “rapidamente” são evitados. Isso torna mais fácil lembrar exatamente da sua frase única sem se confundir com palavras parecidas, aumentando a segurança e diminuindo a chance de erros ao digitar ou anotar sua frase.

Como usar uma ferramenta BIP39 ou um gerador mnemônico Bitcoin?

Existem algumas formas de gerar um mnemônico Bitcoin: você pode usar dados, pode deixar que uma carteira faça isso por você ou pode usar uma ferramenta chamada Ian Coleman.

Neste passo a passo, mostraremos como usar um gerador mnemônico a partir do site Ian Coleman, que é um gerador de senhas bastante conhecido e utilizado, principalmente para fins de teste, para entender e visualizar como as chaves e endereços Bitcoin são gerados.

Vamos lá!

Passo 1

Acesse iancoleman.io e selecione a quantidade de palavras do seu mnemônico. Geralmente, utiliza-se 12, 18 ou 24 palavras.

Escolha o número de palavras no gerador de senhas, Ian Coleman

Passo 2

Depois, você pode selecionar o idioma mnemônico de sua preferência. Aqui, mostraremos em inglês, como é comumente utilizado pelas carteiras.

Após essa escolha, clique em ‘GENERATE’.

Escolha do idioma das seeds no gerador de senhas, Ian Coleman

Observação: Certifique-se de ter selecionado ‘Bitcoin’ na seção Moeda (Coin).

E pronto! Seu mnemônico BIP39 está gerado! Facil, né?!

Agora, ao rolar a página para baixo, você encontrará os endereços, além das chaves pública e privada geradas.

Imagem que mostra o endereço, as chaves publicas e privadas geradas pelo Ian Coleman

Apesar de ser uma ferramenta super legal de mexer e explorar, não recomendamos que você utilize a seed gerada online por esse site, pois suas palavras podem ser expostas a vazamentos.

Portanto, não há necessidade de correr esse risco, uma vez que a maioria das carteiras de Bitcoin geram a seed de forma segura para você.

A, mas eu posso usar essa ferramenta de forma offline! Sim, você pode. No entanto, recomendamos essa função apenas para usuários avançados e que tenham conhecimento técnico para isso.

Banner do Bitcoin Starter

Qual a possibilidade de adivinharem a minha seed?

Como vimos, a BIP39 se utiliza de entropia (aleatoriedade) para a geração das palavras, que estão em um dicionário de 2048 palavras.

Assim, uma seed pode ser gerada com 12, 18 ou 24 palavras, correspondendo, respectivamente, a 128, 192 ou 256 bits de entropia. Em resumo, quanto maior for essa frase, maior será a entropia e, logo, mais difícil será para alguém adivinhar as palavras.

Na BIP39, cada palavra corresponde a um número binário (0 ou 1). Portanto, cada uma das 2048 palavras representa um número decimal (de 0 a 2047) em forma binária.

Por exemplo, o número binário 11111011000 pode ser convertido para o decimal 2008. Assim, a 2008 palavra na lista da BIP39 é “WILD”.

Com 12 palavras, sua seed representa 12 sequências binárias (de 0s e 1s). Cada sequência contém onze bits, portanto, 11 bits de entropia. Matematicamente, considerando 12 palavras das 2048 possíveis, teríamos 2048^12 combinações distintas. Isso equivale a 2ˆ132, já que 11 bits por palavra multiplicado por 12 palavras resulta em 132 bits.

No entanto, uma parte da frase mnemônica não é aleatória; ela pode derivar das outras palavras, o que resultaria em 128 bits de entropia, em vez de 132. Isso proporcionaria 2ˆ128 combinações possíveis.

Para comparação, estima-se que o número de átomos na Terra seja cerca de 2ˆ166. Levando em conta essa matemática, a chance de alguém conseguir adivinhar seu mnemônico é, no mínimo, astronomicamente pequena.

Portanto, fique tranquilo! É mais fácil achar uma agulha no palheiro do que alguém adivinhar a sua seed.

Como faço para proteger minha seed?

Apesar de serem altamente seguras e de ser difícil para alguém simplesmente adivinhar a sua seed, é importante tomar alguns cuidados para que sua carteira não fique vulnerável à ataques.

Aqui estão 5 dicas que te ajudarão a proteger ainda mais as suas palavras:

  1. Não guarde sua seed de forma eletrônica, como em notas no celular ou em uma pasta no seu computador. Isso pode expô-la a roubos, hacks ou perda de dados.
  2. Evite anotá-la em materiais não duráveis, como papel ou materiais corrosivos. Isso evitará a degradação ao longo do tempo. Uma opção segura é gravá-la em uma carteira de metal.
  3. Crie cópias adicionais da sua seed e armazene-as em locais diferentes para garantir que você sempre tenha um backup extra. Mas também seja ultra-criterioso. Criar mais cópias da mesma semente também aumenta as chances de alguém encontrar uma dessas cópias.
  4. Guarde a seed em um local seguro e não óbvio, dificultando assim que alguém entre em sua casa e encontre facilmente essas palavras.
  5. Para maior segurança, você pode optar por usar multisigs, endereços em que vc precisa de mais de uma seed ou chave privada para mover fundos. Mesmo que alguém encontre uma de suas seeds não será possível roubar seus fundos.

Conclusão

Espero que este artigo tenha fornecido uma compreensão de como a BIP39 é fundamental para os usuários e para o desenvolvimento do Bitcoin em termos de usabilidade. Graças a ela, podemos armazenar com facilidade as chaves privadas de nossas carteiras de bitcoin e recuperar saldos em outras carteiras.

Essa melhoria é de extrema importância e foi rapidamente adotada pela maioria do mercado. Como resultado, as principais carteiras, como Jade, Trezor, Ledger, Blue Wallet, BitBox e muitas outras, agora oferecem suporte à BIP39.

Não deixe de compartilhar esse artigo com um amigo e até a próxima!

Compartilhe o artigo:
Escrito por
Imagem do Autor
Kaká Furlan

Kaká é publicitária, apaixonada por tecnologia e mão na massa full time. Já participou das principais conferências de bitcoin como Adopting, Surfin Bitcoin e Bitcoin Conference.

Inscreva-se na Newsletter
Acesse, em primeira mão, artigos, novidades e notícias sobre Bitcoin diretamente em seu email.