Conoce a las Firmas con Umbral o Threshold Signature, un esquema avanzado de firmas criptográficas que permite utilizar un esquema de firmas dividido que permite alcanzar mayores niveles de seguridad que con esquemas de firmas tradicionales.
Conocidas como Threshold Signature Scheme (TSS), Esquemas de Firmas con Umbral, o simplemente Firmas con umbral, nos referimos a un esquemas de firmas digitales criptográficas donde una cantidad de usuarios pueden establecer un grupo de firmantes, y donde sólo algunos de los integrantes de ese grupo de firmantes pueden efectuar firmas en nombre de todo el grupo. Un llamativo sistema que busca mejorar la privacidad y la seguridad del sistema de firmas digitales en ambiente de uso público.
Estos esquemas de firmas se basan en primitivas criptográficas que tiene el potencial de generar claves distribuidas y sus firmas correspondientes. En general, si se cuenta con un esquema de firma con umbral, existe un número de participantes denominados firmantes activos. Estos firmantes activos son los que pueden efectuar las firmas dentro del grupo. Pero este grupo de firmantes activos se desprende de un número total de participantes que reciben el nombre de universo de firmantes. Así nos queda que cualquier cantidad de participantes del universo de firmantes, puede formar un grupo de firmantes activos, que puede firmar en representación total del grupo.
Básicamente todo este proceso puede realizarse sin revelar quiénes de los firmantes del grupo han realizado las firmas. Por lo que los esquemas de firmas con umbral se usan ampliamente para mejorar las características de seguridad y privacidad en varias redes. Por ejemplo dentro de las redes blockchains, donde estos esquemas pueden proporcionar múltiples ventajas y beneficios.
Origen de este sistema
Los sistemas de firmas digitales alcanzaron su máximo auge con la creación del algoritmo RSA; un algoritmo creado en 1977 por los criptógrafos Ron Rivest, Adi Shamir y Leonard Adleman, del Instituto Tecnológico de Massachusetts (MIT). Su creación es un enorme adelanto en seguridad informática y se le considera hoy en día, un estándar de facto en la seguridad informática.
Sin embargo para el año de 1994, y con los avances en computación e informática, los criptografos Alfredo De Santis, Yvo Desmedt, Yair Frankel y Moti Yung, revolucionan nuevamente los sistemas de cifrado y firmas digitales al presentar el primer sistema de Firmas con umbral completas, usando como base RSA. Aunque en su momento, estos sistemas solo se dedicaban al uso en ámbito militar y de alto perfil de seguridad, permaneciendo alejadas del uso civil e informático cotidiano.
Pero en octubre de 2012, después de una serie de sucesos que comprometieron las contraseñas cifradas de sitios web públicos, RSA Security anunció que lanzaría software para poner la tecnología a disposición del público en general.
Tras estos sucesos y de que salieran a la luz, muchos especialistas en criptografía comenzaron a investigar y desarrollar sistemas de firmas con umbral. El trabajo dio origen a un explosivo ecosistema de proyectos que investigaban nuevas formas de lograr esquemas seguros y rápidos. Pero donde tuvo mayor interés fue en la aplicación de la tecnología blockchain, que ya para ese entonces estaba comenzando a ganar relevancia en el mundo.
Finalmente, en marzo de 2019, el Instituto Nacional de Estándares y Tecnología (NIST) realizó un taller sobre criptografía umbral para establecer un consenso sobre las aplicaciones y definir especificaciones. En noviembre, el NIST publicó un borrador de una hoja de ruta «hacia la estandarización de los esquemas de umbral para las primitivas criptográficas» como NISTIR 8214A. Esto marcó el inicio real de esta tecnología como estándar.
¿Cómo funcionan las firmas con umbral?
En los esquemas de firmas con umbral (Threshold Signature), las claves privadas se generan de forma directa y distribuida entre todos los usuarios participantes del esquema.
Las claves privadas nunca son almacenadas en totalidad en ninguna parte, ni son creadas y luego repartida entre los miembros participantes. Sino más bien que cada uno de los miembros tendrá la posesión de una porción única de la clave privada, llamada secret share, la cual es generada de forma única y directa para ese usuario, sin que las demás partes vinculadas al esquema conozcan dicha información.
Por lo que, para efectuar una firma en los esquemas de firmas con umbral, es necesario que las partes vinculadas acuerden realizar dicha firma. Si se acuerda que una cierta cantidad de participantes son quienes realizarán la firma en nombre del conjunto, una porción de participantes menor no podrá generar la firma.
Fases para la creación de una firma con umbral
Suponiendo que usemos cómputo seguro de múltiples partes para hacer una firma digital en un sentido general, procederemos de la siguiente manera:
- Fase de generación de claves: todos los futuros participantes se involucrarán juntos para hacer dos cosas. Primero cada parte involucrada genera una clave privada secreta. Segundo, generan una clave pública usando su clave privada.
- Fase de firma: los participantes que se unen a una determinada firma utilizan sus propias claves privadas como entradas privadas. Mientras usan la información que se firmará como una entrada pública para realizar una operación de firma conjunta para obtener una firma. En este proceso, la privacidad de la informática segura de múltiples partes garantiza la seguridad de las claves privadas. La exactitud y robustez garantizan la no perdida de la firma y todos pueden obtener firmas.
- Fase de verificación: se usa la clave pública correspondiente a la transacción para verificar la firma. No hay «entrada secreta» durante la verificación, esto significa que la verificación se puede realizar sin cómputo de múltiples partes.
El protocolo de firma construido sobre la idea de computación multipartita (MPC) es la firma de umbral. Cabe señalar que hemos omitido algunos detalles, porque la informática segura de múltiples partes es en realidad un nombre colectivo para un tipo de protocolo criptográfico. Para diferentes supuestos de seguridad y configuraciones de umbral, existen diferentes métodos de construcción.
Por lo tanto, las firmas de umbral de diferentes configuraciones también tendrán propiedades distintivas, este artículo no explicará cada configuración, pero el resultado comparativo con otros esquemas de firma se presentará en la siguiente sección.
Ventajas de las firmas de umbral en los sistemas blockchain y redes distribuidas
- Alta tolerancia a ataques y fallos: en las firmas con umbral (Threshold Signature) no existe un único punto de fallo. Estos esquemas cuentan con una estructura de funcionamiento que garantiza un alto nivel de seguridad. Ya que para romper el sistema y que éste sea atacado, la seguridad de muchas de las partes involucradas tiene que estar comprometida. Ya que cada una de las partes cuenta con una porción única de la clave privada. En segundo lugar, en las firmas con umbral se puede escoger un número de firmantes menor al número de integrantes del grupo. Por lo que al disponer de un umbral menor al grupo de participantes, la salida de alguna de estas partes involucradas no afectará la funcionalidad del esquema.
- Esquemas flexibles y altamente privados: en las firmas con umbral es posible integrar a nuevos miembros (participantes) cuando se desee. Ya que gracias a la implementación de la computación multipartita (MPC) es posible extender la clave privada existente a otros miembros que se integren al grupo, sin revelar ni cambiar las claves privada ni pública del esquema de firmas. Manteniendo la privacidad de los datos dentro del esquema en todo momento, sin revelarlos a ninguna de las partes.
- Responsabilidad compartida y distribuida: en los esquemas de firmas con umbral es posible compartir la responsabilidad con varios miembros participantes del esquema, rompiendo los puntos únicos de falla y garantizando una mayor seguridad. La clave privada nunca es almacenada en una sola parte. En su lugar esta se crea de forma separada y luego es distribuida en varias partes que nunca se encuentran. Por lo que en ningún momento se tendrá la totalidad de la clave privada en un sólo lugar.
- Sistema altamente eficiente y seguro: cuando una firma es generada por un esquema de firma umbral, donde varios participantes han generado la firma, ésta actúa de forma similar a una firma única. Por lo que los nodos de la red pueden verificarla de forma fácil y segura a través de la clave pública. Además, no requiere del pago de tarifas adicionales para la verificación de dicha firma. Así mismo, el o los usuarios que hayan generado la firma no serán expuestos ni visibles dentro de la red. El esquema puede usarse con sistemas criptográficos como RSA, ECDSA, EdDSA y Schnorr.
¿Cuánto sabes, criptonauta?
¿Las firmas con umbral son inherentemente más seguras que otros modelos de firmas?¡CIERTO!
Una de las grandes ventajas de las firmas con umbral, es que estas son generadas por la firma de los distintos participantes del sistema, y debido a que multipartitas la seguridad de la misma se ve aumentada con respecto a otros sistemas. Esto asegura que los firmas con umbral sean inherentemente más seguras que sus contrapartes.
Aplicaciones y casos de usos de las firmas con umbral
Blockchain y redes distribuidas
Gracias a las ventajas que ofrecen los esquemas de firmas con umbral (Threshold Signature), éstos pueden utilizarse en las redes blockchains y redes distribuidas para elevar sus niveles de seguridad y privacidad. Por ejemplo, para generar una dirección pública a través de las firmas de umbral es necesario que varias partes computen sus porciones de la clave privada o secret share para generar una clave pública en conjunto.
Y como ya mencionamos, ninguna de las partes tiene necesidad de revelar la porción de la clave privada información que posee. Luego, una vez generada la clave pública, ya se puede proceder a generar la dirección pública como sucede en los sistemas tradicionales.
La diferencia con las firmas de umbral es que no existe un único punto de fallo respecto a la clave privada. Ya que ésta es distribuida entre varios miembros que participan dentro del esquema de firmas.
Wallets
Los monederos de criptomonedas basados en estos esquemas de firmas cuentan con una estructura más compleja y un nivel de seguridad y privacidad mayor a los monederos tradicionales o las wallets multisig. En primer lugar, contrario a las wallets tradicionales HD, en las wallets Threshold cada participante cuenta con una seed o frase semilla propia. Esto impide que las claves privadas asociadas a esa wallet sean derivadas o recuperadas a partir de la seed que posee. En su lugar, se necesita de todas las seed para poder derivar la clave final.
Así mismo, las transacciones que se realizan a través de estas wallets son mucho más económicas. Esto debido a que las firmas de umbral se reflejan como una única firma. Lo que hace innecesario procesar la información de cada uno de los firmantes dentro de la blockchain como ocurre con las wallets tradicionales o multisig. Por lo que los integrantes no necesitan cancelar tarifas de comisión adicionales para la verificación de las firmas.
Por otra parte, las wallets con firmas de umbral pueden operar en varias blockchains a la vez. Lo que reduce el riesgo de errores al operar con smart contracts y dApps.
Entre las wallets que soportan este tipo de funcionamiento están Binance (compatible para Bitcoin, Ethereum y Binance Chain), usando una librería de desarrollo y por medio de intervención avanzada. También ofrece soporte la wallet Amis y ZenGo. Y puede implementarse manualmente en otros monederos usando Threshold Signature Scheme Toolkit (TSSKit)
Gestión de claves
En los sistemas de gestión y administración de claves, los esquemas de firmas con umbral pueden lograr una gestión mucho más flexible. Y es que esta se puede adaptar a las necesidades particulares de los miembros participantes. Por ejemplo, con estos esquemas se puede diseñar modelos de autorización que sean acordes a las prioridades de los usuarios.