


Para comprender el Threshold Signature Scheme (TSS), primero es necesario establecer una base sólida en criptografía. Desde los años setenta, un número creciente de sistemas de Internet, como TLS (Transport Layer Security) y PGP (Pretty Good Privacy), han utilizado la criptografía asimétrica, también denominada criptografía de clave pública (PKC). Esta técnica utiliza dos claves distintas: una pública y una privada. La clave pública puede difundirse abiertamente y ser utilizada por cualquiera sin afectar la seguridad, mientras que la clave privada es una información confidencial y representa el núcleo de la arquitectura de seguridad del sistema.
El cifrado y las firmas digitales son las aplicaciones esenciales de la PKC. Ambos sistemas dependen de tres algoritmos principales. El primero genera el par de claves privada y pública, estableciendo la relación criptográfica entre ellas. El segundo crea un texto cifrado (en el caso de cifrado) o una firma (en el caso de firma digital). El tercero se encarga del proceso de descifrado o verificación, asegurando que las operaciones criptográficas puedan ser validadas por los usuarios autorizados.
En las firmas digitales, el algoritmo de firma utiliza la clave privada, que solo conoce su titular, para producir una firma única. Esta firma se asocia matemáticamente a un mensaje concreto, de modo que cualquiera que tenga la clave pública correspondiente puede verificar su autenticidad y exactitud. El proceso garantiza que el mensaje no ha sido manipulado y que proviene realmente del titular de la clave privada, proporcionando integridad y no repudio en las comunicaciones digitales.
Es indiscutible que la tecnología blockchain supone una innovación radical en los sistemas distribuidos. Proporciona una robusta capa de consenso que organiza y registra los eventos de forma transparente e inmutable. Esta infraestructura permite a los usuarios crear economías, sistemas de gobernanza y aplicaciones financieras descentralizadas sin intermediarios centralizados. De manera sorprendente, la criptografía necesaria para una blockchain básica puede basarse únicamente en firmas digitales, siendo una de las aplicaciones más elegantes de la criptografía de clave pública.
En sistemas blockchain, las claves privadas representan identidades únicas o derechos de propiedad, mientras que una firma es una declaración pública de esa identidad. La red blockchain ordena estas declaraciones de manera cronológica y las valida según reglas de consenso predefinidas. Estas reglas aseguran, entre otras propiedades clave, que las firmas sean infalsificables y matemáticamente correctas, proporcionando garantías de seguridad para transacciones sin confianza.
Frente a la criptografía clásica utilizada en las primeras blockchain, el arsenal criptográfico moderno incorpora técnicas avanzadas con capacidades excepcionales. Entre ellas figuran las pruebas de conocimiento cero, que permiten demostrar información sin revelarla; el cifrado homomórfico, que posibilita cálculos sobre datos cifrados; y la computación multipartita, que permite a varios participantes calcular conjuntamente una función manteniendo sus datos en secreto. En la última década, la investigación blockchain ha impulsado la criptografía aplicada, con innovaciones en todas estas áreas y más allá.
Este artículo se centra en un avance de especial relevancia para la seguridad blockchain y la gestión de claves: firmas threshold seguras y eficientes.
La computación multipartita (MPC) es una rama especializada de la criptografía, introducida por Andrew C. Yao hace cerca de cuarenta años. Los protocolos MPC permiten que un grupo de participantes, que no confían necesariamente entre sí, calcule conjuntamente una función sobre sus datos privados sin revelar estos datos a los demás. Así se posibilita la colaboración sin comprometer la confidencialidad.
Por ejemplo, imaginemos que n empleados quieren saber quién tiene el salario más alto sin revelar las cifras a los demás. Las entradas privadas son los salarios individuales y el resultado es el nombre del empleado con mayor salario. Utilizando MPC, aseguramos que ningún dato salarial se filtra durante el cálculo, preservando la privacidad y logrando el objetivo.
Las dos propiedades clave de los protocolos MPC son:
Las técnicas MPC pueden aplicarse para generar firmas digitales de manera distribuida, dando lugar a los esquemas de firma threshold. Veamos cómo estas propiedades intervienen en la generación de firmas. Las firmas digitales tradicionales constan de tres pasos principales, cada uno de los cuales se adapta al entorno distribuido:
Generación de clave: Es el paso más complejo en el entorno distribuido. Hay que generar una clave pública para verificar futuras firmas, pero sin que nadie posea la clave privada completa. En su lugar, se crea una participación secreta individual para cada usuario. La función genera la misma clave pública para todos, pero una participación secreta distinta para cada uno. La privacidad asegura que no se filtren participaciones entre los usuarios y la corrección que la clave pública sea una función adecuada de todas las participaciones secretas combinadas.
Firma: Aquí se ejecuta una función de generación de firma distribuida. Cada usuario aporta su participación secreta, generada en el paso anterior. El mensaje a firmar es un dato público conocido por todos. El resultado es una firma digital idéntica a la que generaría un único usuario con la clave privada completa. La privacidad garantiza que no se filtre información sobre las participaciones, incluso si algunos participantes intentan obtener información de las demás.
Verificación: El algoritmo de verificación no cambia respecto al esquema tradicional. Cualquiera que conozca la clave pública puede verificar las firmas conforme a los métodos estándar. Esto es lo que hacen los nodos validadores de blockchain y no pueden distinguir entre firmas TSS y firmas tradicionales.
Threshold Signature Scheme (TSS) es el nombre que se da a la composición de protocolos distribuidos de generación de claves y firma, formando un sistema completo para la gestión distribuida de claves criptográficas.
La integración natural de TSS en la infraestructura blockchain consiste en modificar el software cliente para que genere claves y firmas mediante protocolos TSS en vez de los métodos tradicionales de clave única. El término "cliente blockchain" se refiere al conjunto de comandos y operaciones ejecutados por un nodo completo en la red. En la práctica, TSS permite sustituir todas las operaciones relacionadas con claves privadas por cálculos distribuidos entre varias partes.
Para entender esta integración, veamos cómo se crean nuevas direcciones en los sistemas blockchain clásicos. Tradicionalmente, se genera primero una clave privada mediante un generador aleatorio seguro. A continuación, se calcula la clave pública aplicando multiplicación de curvas elípticas o alguna operación matemática apropiada. Finalmente, la dirección blockchain se deriva de la clave pública a través de funciones hash y procesos de codificación.
Con TSS, el proceso cambia de forma importante. En vez de que una sola parte genere la clave privada, n participantes calculan conjuntamente la clave pública mediante un protocolo distribuido. Cada uno conserva solo una participación secreta de la clave privada, y estas participaciones nunca se revelan entre sí. A partir de la clave pública generada conjuntamente, la dirección blockchain se obtiene igual que en el sistema tradicional. Así, la red blockchain es ajena al método de generación de la dirección. La ventaja clave es que la clave privada deja de ser un único punto de fallo, pues cada participante solo tiene una parte y ninguno puede firmar por sí solo.
Este enfoque distribuido también se aplica al firmar transacciones. En vez de una única parte firmando con su clave privada completa, se ejecuta un protocolo de firma distribuida entre varios. Cada uno utiliza su participación secreta como entrada y juntos producen una firma válida verificable con la clave pública. La firma es idéntica a la generada por una sola parte, pero requiere cooperación de un número umbral de participantes. Esto supone pasar de una computación local (punto único de fallo) a una computación interactiva distribuida mucho más resistente a ataques.
La generación distribuida de claves puede configurarse para distintas estructuras de acceso. La más común es "t de n": cualquier t de n participantes pueden cooperar para generar una firma válida. Esta configuración resiste hasta t-1 fallos o compromisos en operaciones de clave privada sin afectar la seguridad global. Esta flexibilidad permite ajustar el modelo de seguridad según las necesidades y riesgos de cada organización.
Algunas plataformas blockchain ofrecen funciones similares a TSS como parte integrada o programable de su protocolo. Esta función suele denominarse multisig o multifirma. Para entender las diferencias, podemos considerar multisig como una implementación de funcionalidad tipo TSS en la capa de aplicación blockchain, no en la capa criptográfica.
En otras palabras, multisig y TSS buscan objetivos de seguridad similares (requerir la autorización de varios para una transacción), pero emplean mecanismos distintos. TSS utiliza criptografía fuera de la cadena para generar lo que parece una firma estándar, mientras que multisig opera en la cadena, exigiendo que la blockchain valide varias firmas separadas.
Esta diferencia arquitectónica tiene varias implicaciones relevantes. La red blockchain necesita mecanismos para codificar y procesar transacciones multisig, lo que puede afectar a la privacidad: la estructura de acceso, el número de firmantes y sus identidades quedan expuestos en la cadena para quien quiera analizarlos. Además, el coste de una transacción multisig suele ser mayor porque deben comunicarse y almacenarse en la cadena los datos de todos los firmantes y sus firmas.
En TSS, los detalles sobre los firmantes se agrupan en lo que parece una transacción estándar con una sola firma. Esto reduce el coste de la transacción y la información revelada, preservando mejor la privacidad. Por otro lado, multisig tiene la ventaja de ser no interactivo una vez emitida la transacción, evitando una capa de comunicación compleja entre los firmantes en el proceso de firma.
La diferencia principal es que multisig depende de cada blockchain y debe implementarse individualmente en cada protocolo. En redes blockchain antiguas, la función multisig puede no estar soportada o solo parcialmente. TSS, en cambio, se basa en criptografía independiente del protocolo blockchain y es compatible teóricamente con cualquier blockchain que use esquemas estándar de firma digital.
El Shamir Secret Sharing Scheme (SSSS) plantea una vía diferente para distribuir material de clave privada. SSSS permite almacenar la clave privada dividida en varios lugares mientras está en reposo. Sin embargo, existen dos diferencias clave entre SSSS y TSS que los hacen útiles para aplicaciones distintas:
Generación de clave: En SSSS, una sola parte ("dealer") genera la clave privada completa y la divide en participaciones secretas que distribuye. Esto significa que, al generar la clave, existe íntegra en una ubicación y luego se reparte, lo que implica una vulnerabilidad en esa fase. TSS elimina el dealer y distribuye el propio proceso de generación, por lo que la clave privada completa nunca existe en ningún lugar en ningún momento, ofreciendo garantías de seguridad superiores desde el principio.
Firma: Usando SSSS, al necesitar una firma, las partes deben reconstruir la clave privada completa combinando sus participaciones. Esto crea un punto único de fallo cada vez que se genera una firma, ya que la clave existe aunque sea temporalmente. En TSS, la firma se realiza de manera totalmente distribuida sin reconstruir la clave completa. Cada participante usa solo su parte y colaboran para producir juntos una firma válida, sin que nadie conozca la clave completa.
En TSS, la clave privada —garantía máxima de seguridad del sistema— nunca está presente en un solo lugar en ningún momento (ni en la generación, ni en la firma, ni en ninguna otra operación). Esto supone una mejora esencial de seguridad frente a SSSS para operaciones criptográficas activas.
Una billetera de criptomonedas basada en TSS funciona de manera muy diferente a las tradicionales. Normalmente, una billetera convencional genera una frase semilla (12 o 24 palabras) y la utiliza para derivar todas las direcciones y claves privadas de la billetera. El usuario puede, gracias a esta estructura jerárquica determinista (HD), acceder a las claves privadas para firmar transacciones y recuperar la billetera usando solo la frase semilla si la pierde o se daña.
En una billetera threshold, la arquitectura es mucho más compleja. Aunque es posible generar una estructura HD similar a la tradicional, su generación debe calcularse de manera distribuida con otro protocolo MPC. Las partes participantes deciden conjuntamente cuál es la siguiente clave en la secuencia del camino HD de derivación. Cada parte mantiene una frase semilla propia, pero estas se generan por separado mediante el proceso distribuido y nunca se combinan, asegurando que nadie pueda derivar las claves privadas por sí solo y preservando la seguridad distribuida en la derivación de claves.
Las billeteras TSS ofrecen una función de seguridad adicional: la rotación de clave privada sin cambiar la clave pública ni la dirección blockchain. La rotación de clave privada (o compartición proactiva de secretos) es otro protocolo MPC que utiliza las participaciones secretas existentes y genera un nuevo conjunto. Las antiguas pueden eliminarse y las nuevas utilizarse para firmar, sin cambiar la clave pública ni la dirección.
Esta estructura añade una dimensión temporal al modelo de seguridad: un atacante debe comprometer varias ubicaciones a la vez para atacar con éxito una billetera threshold. Combinar participaciones secretas anteriores con las obtenidas tras la rotación no aporta poder adicional para falsificar firmas, haciendo el sistema resistente a ataques prolongados en el tiempo.
Una desventaja es la ausencia de una frase semilla maestra única, que lo hace incompatible con sistemas tradicionales de billetera de clave única y recuperación. Los usuarios no pueden apuntar 12 palabras y recuperar la billetera en otro sistema. Por tanto, es importante decidir qué partes tendrán las participaciones secretas y cómo se gestionarán el backup y la recuperación.
Las arquitecturas posibles para billeteras threshold incluyen:
Externalización de TSS: El usuario delega la computación TSS en n servidores independientes que ejecutan los protocolos. Esto externaliza la generación, gestión y firma de claves a proveedores que no son los propietarios legales de los activos, pero sí una capa de seguridad a cambio de incentivos o tarifas. Es similar a muchos servicios cloud.
Varias dispositivos: El usuario ejecuta los protocolos TSS en diferentes dispositivos bajo su control (IoT en casa, móvil, portátil, etc.), lo que le da control total pero exige coordinación entre dispositivos.
Enfoque híbrido: Algunos participantes son proveedores externos y otros dispositivos del usuario, combinando elementos de los dos métodos anteriores.
El primer método descarga las operaciones intensivas en cómputo de los dispositivos del usuario, pero con el riesgo de colusión entre proveedores para robar activos. Aunque se supone que no se comprometerá simultáneamente un número suficiente de proveedores, pueden sufrir presión legal o ataques coordinados.
El segundo método ofrece control total y elimina el riesgo de terceros, pero puede complicar las transacciones, ya que varios dispositivos deben estar en línea y participar en el cálculo TSS, lo que no siempre es posible.
La tercera opción es considerada la más equilibrada: permite transacciones cómodas y rápidas, manteniendo la autorización del usuario y dificultando que un atacante pueda falsificar firmas si no compromete también los dispositivos personales del usuario.
La investigación ha descubierto muchos usos sofisticados para las firmas digitales, y algunas aplicaciones resultan especialmente complejas. Como se ha señalado, TSS es un primitivo criptográfico que puede mejorar notablemente la seguridad en sistemas blockchain. En el contexto más amplio de blockchain, muchas funcionalidades antes implementadas con smart contracts podrían sustituirse por protocolos criptográficos basados en TSS.
Aplicaciones descentralizadas, soluciones de escalabilidad de capa 2, swaps atómicos, protocolos de mezcla, mecanismos de herencia y otros pueden construirse sobre TSS. Esto permitiría sustituir operaciones on-chain costosas y arriesgadas por alternativas criptográficas off-chain más baratas, eficientes y fiables. Llevar la lógica compleja de la blockchain a protocolos criptográficos reduce el coste de transacción y mejora la privacidad.
Por ejemplo: Multi-Hop Locks utiliza firmas bipartitas de forma innovadora y puede reemplazar ciertas redes de canales de pago de capa 2, ofreciendo una red de pagos más segura y privada al reducir la información que se publica on-chain. ShareLock es una de las soluciones de mezcla on-chain más rentables para smart contracts, basada en la verificación de una sola firma threshold en vez de lógica contractual compleja. Estos ejemplos muestran cómo TSS permite nuevos diseños antes inviables.
En los últimos años han surgido muchas implementaciones TSS de calidad. Sin embargo, como tecnología relativamente reciente en blockchain, aún presenta limitaciones y retos. Comparados con la criptografía clásica de clave pública, los protocolos TSS pueden ser mucho más complejos de diseñar e implementar.
La complejidad de TSS hace que no hayan recibido el mismo nivel de análisis y "prueba de batalla" que los primitivos criptográficos tradicionales. Los protocolos TSS suelen requerir suposiciones criptográficas adicionales, a menudo más débiles que las firmas digitales simples: pueden depender de esquemas de compromiso, pruebas de conocimiento cero y herramientas auxiliares. Por ello, surgen vectores de ataque que no existían en configuraciones tradicionales, y los investigadores trabajan para descubrirlos y corregirlos.
Los errores de implementación también preocupan, ya que la naturaleza distribuida de TSS multiplica las oportunidades de fallos sutiles en el código. Se recomienda consultar a ingenieros de seguridad y criptógrafos expertos en MPC y TSS para desplegar la tecnología con garantías en sistemas productivos. Auditar y probar adecuadamente es imprescindible.
En el lado positivo, el ecosistema de TSS es cada vez más robusto y maduro, gracias a contribuciones de calidad de la comunidad investigadora, revisiones exhaustivas, auditorías profesionales y mejoras continuas en los algoritmos. Conforme la tecnología se prueba en situaciones reales, la confianza en la seguridad de TSS irá en aumento.
Pese a los retos, los beneficios potenciales de TSS para la seguridad y gestión de claves en blockchain la convierten en una tecnología con gran proyección, merecedora de desarrollo y adopción continuados.
Al implementar TSS en sistemas blockchain, hay consideraciones prácticas clave. La sobrecarga de comunicación puede ser considerable, sobre todo en protocolos que requieren varias rondas de interacción. La latencia y fiabilidad de la red son críticas para el rendimiento de los sistemas TSS. Es fundamental diseñar una arquitectura de red eficiente y fiable para los procesos de generación y firma de claves.
Otra cuestión relevante es la gestión de fallos y recuperación. En sistemas distribuidos es inevitable que algunos participantes se desconecten. Los protocolos TSS deben ser robustos y permitir que el sistema siga funcionando mientras se cumpla el umbral, aunque algunas partes estén temporalmente ausentes. Además, hay que planificar y ejecutar procedimientos para incorporar nuevos participantes o eliminar los comprometidos.
La elección de parámetros de umbral (t y n en un esquema t de n) depende de los requisitos de seguridad y limitaciones operativas. Un umbral alto aporta más seguridad pero requiere más cooperación, lo que puede afectar la disponibilidad y el rendimiento. Es necesario equilibrar seguridad, disponibilidad y eficiencia operativa al diseñar la implementación TSS.
Por último, la experiencia de usuario es importante en billeteras y aplicaciones TSS. La naturaleza distribuida puede introducir latencia y complejidad que los usuarios encuentren confusas. Un diseño de interfaz cuidadoso y una comunicación clara de los beneficios de seguridad pueden ayudar a que los usuarios comprendan y acepten los compromisos. Conforme la tecnología TSS avance y sus implementaciones sean más eficientes, muchos de estos retos se superarán y los sistemas TSS serán más accesibles para el público general.
Las firmas threshold permiten que varios participantes generen conjuntamente una firma sin que ninguno posea la clave privada completa. A diferencia de las firmas digitales convencionales, refuerzan la seguridad y la resiliencia al distribuir la autoridad de firma entre los participantes.
Las firmas threshold reparten la autoridad de firma entre varios participantes, permitiendo autorizaciones conjuntas y reforzando la seguridad. Se emplean en billeteras multifirma, soluciones de custodia descentralizada y mecanismos de gobernanza distribuida para evitar puntos únicos de fallo.
Ambas requieren varias firmas para las transacciones. Las billeteras multifirma emplean smart contracts con varias claves privadas independientes, mientras que las firmas threshold usan compartición criptográfica de secretos para dividir las claves. Las firmas threshold son más privadas y eficientes, ya que la firma se genera fuera de la cadena sin revelar fragmentos de clave individuales.
Las firmas threshold requieren la colaboración de varias partes para firmar transacciones. Aunque se comprometan algunas claves, los activos siguen seguros si se cumple el umbral de firma. Este método refuerza la seguridad y la gobernanza descentralizada, protegiendo frente a puntos únicos de fallo.
Las firmas threshold distribuyen el control de las claves entre varios participantes, eliminando los puntos únicos de fallo. Ningún individuo detenta la autoridad completa de firma, lo que reduce el riesgo de compromiso. Requieren consenso para las transacciones, ofreciendo una protección superior frente al robo de claves y accesos no autorizados respecto a la gestión centralizada.
Las firmas threshold exigen comprender el algoritmo Shamir Secret Sharing, los esquemas multifirma y los fundamentos de la gestión distribuida de claves para dividir y reconstruir claves criptográficas de modo seguro entre varios participantes.











