Shamir Secret Sharing Scheme
No será la primera vez que oigo que alguien me dice “para guardar bien una seed lo ideal es partirla en varias partes y separarlas”. Esto no se recomienda.
Si alguna vez has pensando esto simplemente te redirijo a este video del maestro. Miralo con atención, y ahora ya piensas como yo. Por hacerlo rapido, alguien propone hacer esto con una semilla:
Esto no es una forma segura de conservar tu seed.
SHAMIR39
Para eso es mejor usar el Shamir Secret Sharing Scheme, y te lo explico como si fueras un niño de 5 años:
El Shamir Secret Sharing Scheme es como ese juego de compartir un mapa del tesoro. En lugar de un tesoro, es un secreto que se divide en partes. Para descubrir el secreto, un número específico de amigos debe juntar sus partes del mapa. Así, si uno de tus amigos pierde su parte, no hay problema, porque otros amigos pueden unir sus partes y encontrar el secreto.
De esta manera, el secreto está seguro y protegido, y solo tus amigos pueden descubrirlo si trabajan juntos.
Pero aquí cada parte ve una parte real del mapa. Cosa que no pasa con el SSSS.
Lo bueno del SSSS es que vamos a generar varias partes, las cuales incluyen palabras, ninguna de las cuales forma parte de la seed original. Un ejemplo que hemos realizado usando esta herramienta:
Partimos de una semilla de 24 palabras: mes mérito tenaz castor rama opuesto tejer ojo divino chacal jabalí careta novela parte plata cazo bruja monarca audaz ahogo catorce vacío museo guía
Y obtenemos tres partes, de las cuales solo con dos de ellas recuperamos esa seed original:
shamir39-p1 álbum ábaco goloso ayer malo persona hebilla huir gemir acudir perder igual agosto melón toga cal cocina puñal clamor pétalo cacao refrán impar manta laico pichón trote
shamir39-p1 alcalde ábaco riesgo oreja nevar esfera odio nutria candil brote mamut centro latir luto pecho tono nutria onda área abuelo vigor percha tirón gota titán supremo grueso
shamir39-p1 aldea ábaco patria chupar molde baba tienda clave trozo recaer mundo barba evento león hocico estufa ágil ozono aplicar miseria entrar gente ocho rancho gripe viernes talla
Hemos obtenido 3 listados de 27 palabras de cada uno, y usando dos, obtenemos la seed original:
Te habrás dado cuenta que partes de una seed de tan solo 24 palabras, pero acabas con 3 partes, de las cuales solo necesitas dos, pero tienen 27 palabras cada una. La razón principal de esto es que las partes de Shamir necesitan llevar metadatos adicionales y también tienen un checksum más sólido.
¿Te has fijado en las palabras? En cada parte estás repitiendo algunas palabras. Esto supone un problema:
El SSSS es como un rompecabezas. Cada parte del rompecabezas es igual a las demás. Si quieres dar más responsabilidad o confianza a algunas personas, entonces les das más de una parte del rompecabezas.
Además, podrías querer controlar quiénes pueden armar el rompecabezas completo (es decir, descubrir el secreto). Para hacer esto, puedes elegir qué combinaciones de personas pueden unir sus partes y completar el rompecabezas. Así, puedes evitar que grupos de personas que puedan trabajar en tu contra tengan la posibilidad de descubrir el secreto.
Aquí entra la implementación de Satoshi Labs, llamada SLIP39
SLIP39
SLIP39 (Shamir's Secret-Sharing for Mnemonic Codes) es una mejora del SSSS que se utiliza específicamente para códigos mnemónicos, como las palabras de recuperación de una billetera de criptomonedas. SLIP39 aborda algunas de las limitaciones del SSSS original, permitiendo un mayor control y flexibilidad en cómo se distribuyen y se pueden reconstruir los secretos.
SLIP39 introduce un concepto llamado "grupos de partes" que permite a los usuarios crear diferentes conjuntos de partes y asignar niveles de confianza o responsabilidad específicos a cada grupo. Esto significa que puedes decidir qué combinaciones de partes y grupos son necesarias para reconstruir la seed
Por ejemplo, podrías configurar SLIP39 para que se requieran dos grupos específicos de partes para reconstruir la seed, en lugar de que cualquier combinación de partes lo haga. Esto añade una capa adicional de seguridad y control sobre quién puede acceder al secreto y en qué circunstancias.
En resumen, SLIP39 mejora SSSS al permitir una distribución más controlada y flexible de las partes y al establecer requisitos más específicos para la reconstrucción del secreto.
SLIP39 es bastante interesante, ya que permite un esquema de dos niveles en el que se tienen group-shares y, dentro de cada grupo, se definen los member-shares, donde se establece un umbral general para el grupo y, dentro de cada grupo, un umbral separado para los miembros. Se ve mejor con un ejemplo.
Por ejemplo, puedo dividir un secreto maestro en cuatro grupos de la siguiente manera:
Parte/Share 1: 1-de-1 para mí = Con una sola parte generada, que yo uso, puedo recuperar la semilla original.
Parte/Share 2: 2-de-5 para familia = cinco partes repartidas entre cinco personas y el umbral para cumplir el requisito es que solo dos miembros de la familia pueden recuperar la semilla original.
Parte/Share 3: 3-de-6 para amigos = seis partes repartidas entre seis personas (Alicia, Bob, Carlos, David, Eva, Francisco) y el umbral para cumplir el requisito es que cualquier grupo de tres amigos recuperen la semilla original.
Actualmente hay muy pocos dispositivos que permitan generar un SLIP39 y estos son:
Trezor Model T
Keystone PRO & Keystone Essential
Electrum (software wallet).
Resumen:
SHAMIR39 y SLIP39 es lo mismo, pero es diferente. Es difícil decirte que opción es la mejor, ya que depende de los casos de uso. Ahora ya conoces los dos y es cosa tuya elegir uno.
La semana que viene te vamos a enseñar una herramienta espectacular para almacenar una seed SLIP39, ya que esta incluye la peculiaridad de tener un conversor de palabras en cifras de cuatro dígitos. Es un util sencillamente espectacular.
Pero hoy no
Hoy te voy a hablar de una cosa que no he probado y me gustaría probar en detalle y hacer una review en condiciones. Usaremos un martillo, letras y arandelas. Permite enseñarte el Seedor Safe. Por tan solo 149€, gastos de envío incluidos recibirás todo lo necesario para hacer una copia de seguridad de tu seed, y cuando digo todo, digo todo, desde el martillo para golpear, hasta unos tapones para proteger tus oídos de los ruidos.
Una vez marcadas las arandelas las vas a almacenar en cilindro ultra resistente, como este:
Y si, Seedor pone a tu disposición la posibilidad de adquirir un pack preparado para hacer una copia de seguridad en SSSS
Con esta mención le doy las gracias a Christian de Seedor, que me ayudó mucho en entender el SSSS y su funcionamiento, proporcionando algún link muy interesante para su estudio.
Gracias Christian, hago público mi interés en hacer una review completa de tu Seedor Safe. 🙏
Gracias!!!!