Em BIP39, a entropia inicial vira uma frase; a frase e a passphrase opcional produzem depois um seed binário. BIP32 deriva a chave mestra e o chain code. Estes valores e etapas não são intercambiáveis; outros formatos de cópia podem usar processos diferentes.
BIP39 fornece uma transcrição legível de aleatoriedade gerada por computador, não de frases inventadas por pessoas. Escolher uma citação conhecida ou sequência pessoal de palavras não equivale a gerar entropia pelo processo especificado. [BIP39 — Mnemonic generation and seed conversion]
Linux getrandom() espera a inicialização da fonte na configuração padrão. GRND_NONBLOCK pode devolver EAGAIN em vez de esperar. A implementação deve respeitar o estado e o comprimento devolvido; uma falha de leitura não é uma entrada obtida com sucesso. [Linux getrandom — Initialization and return values]
Web Crypto getRandomValues() fornece bytes criptograficamente seguros a um array de inteiros; acima de 65536 bytes lança QuotaExceededError. Cumprir essa interface não verifica sozinho o código carregado, o processamento seguinte nem a proteção da frase contra exposição. [W3C Web Crypto — getRandomValues contract]
BIP39 acrescenta 4 bits de checksum a 128 bits de entrada para formar 12 palavras; a 256 bits acrescenta 8 bits para formar 24 palavras. Estes bits derivam de SHA256, não de entropia independente adicional. [BIP39 — Mnemonic generation and seed conversion]
BIP39 deriva um seed de 512 bits usando PBKDF2-HMAC-SHA512 com 2048 iterações. Usa a frase e um salt formado pelo texto literal mnemonic mais a passphrase, ambos em UTF-8 NFKD. Sem passphrase, ela é vazia; o comprimento não prova 512 bits de entropia inicial. [BIP39 — Mnemonic generation and seed conversion]
BIP32 processa o seed com HMAC-SHA512 usando Bitcoin seed como chave e divide o resultado em chave privada mestra e chain code. Um valor zero ou fora do intervalo permitido é inválido; o seed inteiro não é usado diretamente como uma chave privada. [BIP32 — Master key generation]
BIP39 publica vetores com entropia, frase e seed, incluindo a passphrase de teste TREZOR. A correspondência comprova a conversão daquela entrada, não a imprevisibilidade do gerador real. Uma entrada pública de teste não deve servir como cópia secreta de fundos reais. [BIP39 — Mnemonic generation and seed conversion]
NIST SP 800-90C conecta fontes de entropia e mecanismos de geração. A avaliação da carteira deve também seguir a versão concreta, o tratamento de erros e a passagem de valores às próximas etapas. Evidência de um componente não comprova a segurança do processo completo nem do armazenamento posterior da cópia. [NIST SP 800-90C — Random bit generator constructions]
Para ter uma visão mais completa, leia este verbete junto com Random Number Generator, BIP 39, HD Wallet, Seed Phrase. Também há referências a este verbete em Random Number Generator, CSPRNG, Deterministic RNG, Entropy Mixing.