29 / 691BIP39

BIP 39

estándar de frase mnemónica

BIP39 convierte 128–256 bits de entropía generada por ordenador en 12–24 palabras y deriva un seed de 512 bits. Es un transporte de copia de seguridad, no consenso, lista de claves ni descripción completa de la cartera.

BIP39 añade ENT/32 bits de checksum SHA-256, divide en índices de 11 bits de una lista de 2.048 palabras y ejecuta PBKDF2-HMAC-SHA512, 2.048 iteraciones, sobre frase y passphrase normalizadas NFKD. Produce 64 bytes para BIP32; rutas, cuentas y scripts quedan fuera.

Palatinus, Rusnak, Voisine y Bowe firmaron BIP39, asignado el 10-09-2013 y hoy Deployed. Transporta azar informático legible; la especificación rechaza frases inventadas o citas como brainwallet. Ningún nodo valida BIP39 ni una transacción contiene el mnemonic. [BIP 39 — Mnemonic code for generating deterministic keys]

ENT solo puede ser 128/160/192/224/256. Se añade CS=ENT/32 del inicio de SHA256(entropía) y MS=(ENT+CS)/11 da 12/15/18/21/24 palabras. Doce palabras son 128 bits de azar+4 de control, 24 son 256+8; la seguridad depende del RNG, no de palabras exóticas. [BIP 39 — Mnemonic code for generating deterministic keys]

Cada grupo de 11 bits selecciona una de 2.048 palabras ordenadas. Las palabras codifican un flujo: no son claves individuales y un sinónimo cambia bits. Cuatro letras identifican cada entrada dentro de la lista. Ordenar, traducir o adivinar altera los datos y puede incluso formar otro mnemonic válido. [BIP 39 — Mnemonic code for generating deterministic keys] [BIP 39 official wordlists]

Frase y passphrase se codifican UTF-8 y normalizan NFKD. Acentos y caracteres compatibles pueden descomponerse; espacios, orden, caja y cada símbolo importan. Los vectores japoneses prueban casos extremos. Otra normalización deriva una cartera distinta aunque la pantalla parezca similar. [BIP 39 — Mnemonic code for generating deterministic keys] [Trezor python-mnemonic reference implementation] [BIP 39 official test vectors]

PBKDF2 usa el mnemonic como password y ‘mnemonic’+passphrase como salt, HMAC-SHA512, 2.048 iteraciones y 64 bytes. Sin passphrase hay sufijo vacío. No descifra ni es reversible. 2.048 rondas son modestas hoy: una passphrase corta puede probarse offline si se filtran las palabras. [BIP 39 — Mnemonic code for generating deterministic keys] [RFC 8018 — PBKDF2]

BIP39 termina en seed. BIP32 usa HMAC-SHA512 con ‘Bitcoin seed’ para master key y chain code; BIP44/49/84/86 definen rutas y scripts. Palabras correctas pueden mostrar cero con account, change, gap o tipo equivocados. Descriptor y datos de la cartera completan lo que BIP39 omite. [BIP 32 — Hierarchical deterministic wallets] [BIP 44 — Multi-account hierarchy] [BIP 84 — Native SegWit derivation] [BIP 86 — Single-key Taproot derivation] [BIP 380 — Output script descriptors] [Bitcoin Core — Output descriptors]

Toda passphrase genera un seed válido: no existe aviso de contraseña errónea. Un typo abre una cartera vacía. Con mnemonic robado se prueban candidatos offline contra actividad pública. La passphrase necesita entropía, entrada confiable y backup separado sin convertirse en secreto olvidable. [BIP 39 — Mnemonic code for generating deterministic keys] [Trezor — passphrases and hidden wallets]

El checksum es 4 bits en 12 palabras y 8 en 24: una secuencia aleatoria pasa 1/16 o 1/256. Detecta accidentes, no corrige ni autentica; un atacante crea checksum válido. El software debe advertir, y jamás se introducen palabras en un verificador web. [BIP 39 — Mnemonic code for generating deterministic keys]

Ensaye restauración offline antes de depositar valor. Conserve orden, passphrase exacta, cartera de origen, derivación/script y política multisig/descriptor. Fotos, nube, impresora o portapapeles filtran capacidad de gasto. Papel no resiste fuego/agua; metal no evita robo. [BIP 380 — Output script descriptors] [Trezor — passphrases and hidden wallets] [Bitcoin Core — Output descriptors]

Se desaconsejan listas no inglesas por interoperabilidad; traducir cambia el seed. Las semillas nativas de Electrum no son BIP39. BIP39 carece de versión y formato de dirección. SLIP39 es un esquema threshold incompatible de 1.024 palabras; repartir palabras BIP39 no es Shamir. [BIP 39 — Mnemonic code for generating deterministic keys] [Electrum documentation — seed version system] [SLIP 39 — Shamir's Secret-Sharing for Mnemonic Codes]

Para obtener la imagen más completa, lee esta entrada junto con Seed Phrase, HD Wallet, Frase de contraseña BIP39, Trezor, Bitcoin, Suma de comprobación BIP39. También enlazan con esta entrada Seed Phrase, HD Wallet, Cold Storage, Trezor.

DOC · 001BIP 39 — Mnemonic code for generating deterministic keysEspecificaciónDOC · 002BIP 39 official wordlistsEspecificaciónDOC · 003Trezor python-mnemonic reference implementationFuente primariaDOC · 004BIP 39 official test vectorsFuente primariaDOC · 005BIP 32 — Hierarchical deterministic walletsEspecificaciónDOC · 006BIP 44 — Multi-account hierarchyEspecificaciónDOC · 007BIP 84 — Native SegWit derivationEspecificaciónDOC · 008BIP 86 — Single-key Taproot derivationEspecificaciónDOC · 009BIP 380 — Output script descriptorsEspecificaciónDOC · 010RFC 8018 — PBKDF2EspecificaciónDOC · 011Electrum documentation — seed version systemDocumentaciónDOC · 012SLIP 39 — Shamir's Secret-Sharing for Mnemonic CodesEspecificaciónDOC · 013Trezor — passphrases and hidden walletsDocumentaciónDOC · 014Bitcoin Core — Output descriptorsDocumentación
Revisado el 1 de agosto de 2026Fuentes primero · No es asesoramiento financiero