NIP-06: Derivação de chaves a partir de mnemônico
A NIP-06 descreve como derivar um par de chaves Nostr a partir de uma frase-semente mnemônica. O texto oficial atual da NIP-06 está marcado como rascunho e opcional e traz este aviso:
Aviso
unrecommended: prefira uma única nsec
Esta página aborda a NIP-06 por compatibilidade histórica. Ela não recomenda adotar a derivação por semente.
Como funciona
De acordo com a especificação atual, o BIP39 é usado para gerar as palavras mnemônicas e derivar delas uma semente binária. Em seguida, o BIP32 deriva as chaves pelo caminho m/44'/1237'/<account>'/0/0, em que 1237 é a entrada do Nostr na SLIP44. Um cliente básico pode usar a conta 0. Ao incrementar o valor da conta, obtêm-se outras chaves a partir da mesma semente. Duas implementações só reproduzem a mesma identidade quando concordam nas etapas de derivação e usam as codificações corretas para o resultado.
Vetores de teste
Um commit de 12 de outubro de 2023 adicionou dois vetores de teste: um construído a partir de um mnemônico de 12 palavras e outro a partir de um mnemônico de 24 palavras. Cada um lista a chave privada e a chave pública esperadas em hex, junto com as codificações nsec e npub correspondentes. Os desenvolvedores podem usar os vetores para fazer a verificação cruzada de implementações. Os vetores nada dizem sobre a custódia de chaves. Eles também não certificam segurança nem garantem interoperabilidade universal.
Veja também
Fontes primárias:
Mencionado em: