488 / 691BIP39-P

BIP39 passphrase

Frase adicional para derivação do seed

BIP39 passphrase é uma entrada opcional que, com a cópia mnemónica, determina o seed da carteira. Pode proteger palavras divulgadas, mas acrescenta outro segredo cuja perda pode impedir a recuperação.

Na derivação do seed BIP39, a frase mnemónica é a entrada de PBKDF2-HMAC-SHA512, enquanto mnemonic concatenado com a passphrase forma o sal. Não é o PIN do dispositivo nem outra palavra obrigatória da lista; sem passphrase usa-se uma cadeia vazia.

A frase mnemónica e o sal mnemonic + passphrase são processados como UTF-8 com normalização NFKD. PBKDF2-HMAC-SHA512 executa 2048 iterações e devolve 512 bits, ou 64 bytes de seed. O comprimento da saída não significa 512 bits de aleatoriedade secreta original. [BIP39 — Mnemonic generation and seed conversion]

Maiúsculas e espaços podem alterar o resultado. Ao mesmo tempo, escritas Unicode diferentes podem produzir a mesma entrada após NFKD: por exemplo, é e e seguido de um acento agudo combinante. É, portanto, inexato afirmar que qualquer texto escrito de forma diferente tem de gerar outra carteira. [BIP39 — Mnemonic generation and seed conversion]

BIP39 não inclui checksum da passphrase. Um erro pode derivar um seed válido e mostrar outra carteira, geralmente vazia; não significa que os fundos originais foram apagados. A aplicação pode pedir uma segunda introdução ou comparar dados conhecidos. Um PIN que apenas desbloqueia o dispositivo não substitui a passphrase. [BIP39 — Mnemonic generation and seed conversion] [Trezor — What is a passphrase]

Com a cópia mnemónica, um atacante pode experimentar candidatas de passphrase offline e comparar os dados derivados com a carteira conhecida. Uma passphrase suficientemente imprevisível e não divulgada pode dificultar o ataque. Uma citação curta, uma palavra-passe reutilizada ou apenas 2048 iterações não garantem proteção. [BIP39 — Mnemonic generation and seed conversion]

Se a alteração da passphrase derivar outro seed, isso não muda as condições de assinatura das saídas existentes. Mudar para uma carteira nova exige uma transação real. Da mesma forma, um saldo vazio, por si só, não prova perda: confirme primeiro a entrada correta e os parâmetros de recuperação. [Trezor — What is a passphrase] [BIP380 — Output Script Descriptors]

Guarde uma cópia segura da passphrase e teste a recuperação com um procedimento fiável. Guardá-la separada das palavras reduz a exposição conjunta, mas deve permitir recuperação autorizada e herança. Recuperar uma passphrase forte esquecida sem cópia pode ser impossível. Além das palavras e da passphrase, podem ser necessários caminhos de derivação e descrições de scripts; um Output Descriptor ajuda a preservar estes dados. [Trezor — What is a passphrase] [BIP380 — Output Script Descriptors]

Outra passphrase pode servir para uma carteira separada ou de engodo. Isso não garante que o atacante acredite no saldo apresentado nem elimina vestígios de pagamentos e cópias. Separação de carteiras, resistência a tentativas e segurança sob coação são propriedades diferentes. [BIP39 — Mnemonic generation and seed conversion]

Exemplo · BIP39-P

Maiúsculas podem mudar a carteira

As mesmas palavras mnemónicas com as passphrases «alpha» e «Alpha» derivam seeds diferentes segundo BIP 39. São exemplos curtos, não palavras-passe seguras. A especificação não tem soma de verificação da passphrase; um erro pode abrir outra carteira, geralmente vazia. Uma aplicação pode acrescentar a sua própria verificação.

Para ter uma visão mais completa, leia este verbete junto com BIP 39, PBKDF2, BIP39 checksum, Autocustódia. Também há referências a este verbete em Seed Phrase, BIP 39, Cold Storage, BIP85.

01A passphrase é o mesmo que as palavras mnemónicas ou o PIN?

Não. As palavras e a passphrase opcional são duas entradas da derivação do seed BIP 39, ambas com normalização NFKD. Se foi usada uma passphrase, as palavras sozinhas não bastam. O PIN do dispositivo não a substitui. A recuperação completa pode também exigir caminhos de derivação e dados do script.

02Uma passphrase protege palavras mnemónicas divulgadas?

Uma passphrase suficientemente imprevisível, que não tenha sido divulgada com as palavras, pode dificultar a derivação do seed correto. Porém, um atacante com as palavras pode testar candidatos offline; uma passphrase curta ou previsível não é proteção fiável. Perder uma passphrase forte sem cópia de segurança pode significar perda irrecuperável de acesso.

DOC · 001BIP39 — Mnemonic generation and seed conversionEspecificação ↗DOC · 002Trezor — What is a passphraseDocumentação ↗DOC · 003BIP380 — Output Script DescriptorsEspecificação ↗
Fontes em primeiro lugar · Não é recomendação de investimento