SLIP-39 es una especificación de SatoshiLabs para participaciones mnemónicas interoperables basadas en Shamir's Secret Sharing. Estandariza división, metadatos, comprobación de errores y passphrase; las participaciones no son intercambiables con una frase BIP 39.
Al respaldar una cartera BIP 32, el secreto maestro es su semilla de entrada, no su raíz privada extendida. Primero se crea el encrypted master secret (EMS) y después se divide. Los cálculos usan GF(256) byte a byte; la especificación sitúa el secreto en f(255) y, para umbrales de al menos 2, un digest de verificación en f(254). [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes] [BIP 32 — Hierarchical Deterministic Wallets]
Primero debe cumplirse el umbral de miembros de cada grupo necesario y después el de grupos. Ejemplo: 2 de 3 grupos, cada uno con 2 de 3 miembros. Dos participaciones de A y dos de B bastan; tres de A y una de B no, aunque también sean cuatro. Un esquema básico de 2 de 3 usa un solo grupo. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
El diccionario contiene 1024 palabras inglesas y no se traduce con la interfaz. Un secreto de 128 bits produce participaciones de 20 palabras; uno de 256, de 33. Cada participación incluye identificador, indicador extendable, exponente de iteraciones, índices y umbrales. Al combinar se comprueban metadatos coincidentes e índices de miembro únicos; dos copias de una participación no son dos miembros. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
Las últimas tres palabras forman RS1024, que garantiza detectar errores que afecten como máximo a tres palabras. No acreditan origen ni autorización del titular; la especificación desaconseja la corrección automática. Un digest de reconstrucción ayuda a detectar conjuntos incorrectos. Su comprobación de 32 bits impide aplicar sin matices a SLIP-39 la afirmación ideal de filtración nula por debajo del umbral. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
El cifrado utiliza cuatro rondas Feistel con PBKDF2-HMAC-SHA256 y 2500×2^e iteraciones por ronda. Admite ASCII imprimible 32–126 y usa una cadena vacía si no hay passphrase. No se puede verificar directamente una passphrase correcta: otra genera otro secreto maestro. Por tanto, participaciones válidas no confirman la cartera deseada; compruebe sus direcciones conocidas. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes]
BIP 39 tiene otro diccionario, suma de comprobación y conversión de frase a semilla. Repartir sus palabras entre papeles no crea SLIP-39 ni su protección de umbral. Conservar la misma cartera al migrar exigiría mantener la semilla BIP 32 correcta y el contexto de derivación; recodificar la entropía original con otras palabras no lo garantiza. Verifique el procedimiento compatible concreto. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes] [BIP 39 — Mnemonic code for generating deterministic keys]
Un indicador extendable igual a 1 excluye el identificador de la sal de cifrado. Permite volver a dividir el mismo EMS con otro identificador sin conocer la passphrase. Trezor describe ampliar una copia compatible de una participación a varias. El conjunto nuevo no invalida el anterior: quien conserva una combinación original suficiente aún recupera el mismo secreto. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes] [Trezor — Multi-share Backup]
SLIP-39 reconstruye un secreto al recuperar; no crea Multisig ni aprobación on-chain de cada transacción. La distribución debe limitar tanto pérdidas correlacionadas como que un atacante consiga una combinación suficiente. Pruebe la recuperación en un dispositivo confiable, conserve passphrase y contexto de cartera, y verifique compatibilidad con la implementación de referencia y vectores de prueba. Contar participaciones no basta. [SLIP-0039 — Shamir Secret-Sharing for Mnemonic Codes] [Trezor — python-shamir-mnemonic reference implementation]
Para obtener la imagen más completa, lee esta entrada junto con Shamir Secret Sharing, BIP 39, Trezor, Multisig, HD Wallet. También enlazan con esta entrada BIP 39, Pavol «Stick» Rusnák, Shamir Secret Sharing.