Si analizamos el concepto de multifirma desde sus inicios, podemos ver que este concepto tiene unas raíces muy antiguas, puesto que ya en la Edad Media se utilizaban llaves parciales, como una analogía de fragmentos de la clave, para abrir catacumbas que contenían reliquias. De esta manera, se impedía que una sola persona tuviera el acceso exclusivo, aumentando así, la seguridad del lugar donde descansaban las reliquias. Con el paso de los años, la multifirma ha evolucionado significativamente, y hoy en día es especialmente valorada con el surgimiento de la criptografía de clave pública.
En el artículo de hoy exploramos el funcionamiento técnico de la multifirma, sus ventajas y desventajas, y finalizamos con una explicación detallada de MuSig2, una mejora basada en firmas Schnorr que optimiza las transacciones multifirma en Bitcoin y otras blockchains compatibles.
Introducción a las wallets multifirma o multisig
Las wallets multifirma o multisig requieren que más de una clave privada firme una transacción para autorizarla, lo que añade una capa adicional de seguridad. A diferencia de las wallets de firma única o singlesig, donde una única clave privada es responsable de todo el control, las multifirma dividen este control entre varias claves, reduciendo la posibilidad de que los fondos sean comprometidos por la pérdida o el robo de una clave.
Este tipo de wallets permite configurar la cantidad mínima de firmantes necesarios para aprobar una transacción. El número de partes requeridas puede configurarse al momento de crear la wallet, permitiendo configuraciones como 2-de-3, 3-de-5, o incluso más complejas, dependiendo de las necesidades del usuario o la organización. En una configuración 2-de-3, por ejemplo, de tres claves privadas generadas, solo dos son necesarias para firmar una transacción.
Tipos de las wallets multifirma
Existen dos tipos principales de configuraciones:
- N-de-N: Se requieren todas las claves privadas para aprobar una transacción. Por ejemplo, en una configuración 2-de-2, ambas claves son necesarias para aprobar cualquier movimiento.
- N-de-M: Solo se necesita un número mínimo de claves de un total de claves asignadas. Por ejemplo, en una configuración 2-de-3, cualquier combinación de dos claves es suficiente para aprobar una transacción.
Los diferentes tipos de multifirma permiten personalizar la seguridad según las necesidades del usuario, proporcionando opciones flexibles para entornos individuales, colaborativos y empresariales.
Multifirma y la seguridad on-chain
Uno de los aspectos más relevantes de las wallets multifirma es cómo ofrecen una capa adicional de seguridad en la blockchain. En términos sencillos, funciona como una especie de autenticación de dos factores (2FA) on-chain, donde se requiere la participación de más de una parte para aprobar cualquier transacción. Esto no solo aumenta la seguridad, sino que también distribuye el control, lo que es especialmente útil en situaciones donde se gestionan grandes sumas de dinero o donde se requiere transparencia y colaboración entre múltiples partes.
Es importante destacar la diferencia entre esquemas multifirma on-chain y off-chain
- On-chain: Los esquemas multifirma on-chain registran todas las firmas y transacciones directamente en la blockchain. Esto garantiza transparencia y resistencia a manipulaciones, ya que todas las operaciones están públicamente disponibles y auditables. Ejemplos incluyen los esquemas utilizados en Bitcoin, Ethereum y Litecoin, que aseguran que las transacciones sean validadas y registradas de forma segura y verificable en la cadena de bloques.
- Off-chain: En contraste, los esquemas multifirma off-chain gestionan la validación y almacenamiento de las firmas fuera de la blockchain. Aunque pueden ofrecer seguridad, la falta de visibilidad y el riesgo de centralización en servicios externos pueden reducir la transparencia y aumentar la vulnerabilidad a ciertos ataques o errores. La información de las transacciones y firmas no se registra en la blockchain, lo que puede llevar a problemas de confianza y verificación.
Proceso de una transacción multifirma
El proceso para firmar una transacción sigue estos pasos básicos:
- Creación de la transacción: Un usuario inicia la transacción proporcionando detalles como la cantidad a enviar y la dirección del destinatario.
- Firma de la transacción: La transacción es enviada a los otros participantes para su firma. Cada participante utiliza su clave privada para validar la transacción.
- Recolección de firmas: La wallet recoge las firmas necesarias hasta alcanzar el umbral definido (por ejemplo, 2 de 3). Si no se alcanzan las firmas necesarias, la transacción no se completa.
- Confirmación en la blockchain: Una vez que se han recolectado todas las firmas necesarias, la transacción es transmitida a la blockchain y confirmada.
Este proceso garantiza que las decisiones financieras sean compartidas y supervisadas por múltiples partes, lo que dificulta considerablemente los ataques.
A nivel técnico, el proceso de transacción en una wallet multifirma sigue una estructura que puede ser representada en código en el lenguaje de contratos inteligentes de Bitcoin (Script). A continuación, un fragmento de código simplificado muestra cómo se implementa una transacción multifirma básica:
OP_2 # Se requieren 2 firmas
<PublicKey1> # Clave pública del firmante 1
<PublicKey2> # Clave pública del firmante 2
<PublicKey3> # Clave pública del firmante 3
OP_3 # Total de firmantes posibles
OP_CHECKMULTISIG
Este script define una transacción en la que se necesitan dos de tres firmas posibles para aprobar una operación, lo que incrementa considerablemente la seguridad de los fondos.
Casos de uso, ventajas y desafíos de las wallets multifirma
Estas wallets tienen una amplia variedad de casos de uso y beneficios que las convierten en una opción sólida para la seguridad de los activos digitales. Sin embargo, también presentan ciertos desafíos operativos que deben considerarse.
Casos de uso
- Autenticación de dos factores (2FA): Al crear una wallet que requiere un mínimo de dos claves, se puede establecer un mecanismo de autenticación robusto. Por ejemplo, una clave puede estar almacenada en un dispositivo y la otra en otro lugar seguro, asegurando que solo alguien con acceso a ambos pueda autorizar una transacción.
- Transacciones con escrow: Las wallets multifirma son ideales para acuerdos de escrow, donde los fondos permanecen bloqueados hasta que ambas partes cumplen con las condiciones pactadas. Las configuraciones 2-de-3 permiten incluir a un “árbitro” o mediador en caso de disputa entre comprador y vendedor.
- Custodia compartida en empresas/DAOs: En organizaciones, especialmente empresas o DAOs, es imprescindible que los fondos no dependan de una sola persona. Estas wallets permiten que las decisiones financieras sean aprobadas por múltiples miembros, garantizando transparencia y seguridad.
- Compatibilidad con Lightning Network: En el ecosistema de Bitcoin, las transacciones con multifirma son fundamentales para crear canales de pago en la Lightning Network, lo que permite realizar transacciones rápidas fuera de la cadena, reduciendo costes y mejorando la escalabilidad.
- Finanzas descentralizadas (DeFi): Permiten realizar operaciones de trading, préstamos y depósitos sin necesidad de intermediarios. Esto garantiza que las transacciones se ejecuten solo cuando el umbral mínimo de firmantes esté de acuerdo.
Ventajas
- Eliminación del punto único de fallo: A diferencia de las wallets de firma única, donde una clave comprometida pone en riesgo todos los fondos, el control en una wallet multifirma se distribuye entre varios firmantes. Esto disminuye la posibilidad de que un atacante comprometa los fondos al requerir acceso a varias claves.
- Redundancia: Con configuraciones como 2-de-3 o 3-de-5, la pérdida o el compromiso de una clave no resultaría en la pérdida total de los fondos. Esto brinda una capa adicional de seguridad contra incidentes como robos o extravíos.
- Custodia compartida: Son ideales para grupos o empresas que necesiten compartir el control de los fondos, minimizando el riesgo de fraude interno y asegurando que las decisiones se tomen de manera colectiva.
Desafíos
- Mayor gestión de respaldos: Cada dispositivo o clave tiene su propia frase de recuperación mnemotécnica. Almacenar todas estas frases en un solo lugar anula la seguridad, por lo que es imprescindible contar con ubicaciones seguras para cada respaldo.
- Más dispositivos que asegurar: A medida que se incrementa el número de claves, se requiere mayor seguridad física para protegerlas. La concentración de dispositivos en un mismo lugar podría crear un punto de vulnerabilidad.
- Complejidad en la recuperación: En caso de perder una clave en una configuración 2-de-3, y que el software de la wallet no esté disponible, las dos claves restantes no serán suficientes para recrear la wallet sin un archivo de respaldo de la configuración. Es recomendable almacenar este archivo junto con los respaldos de las claves.
- Herencia de los activos: Aunque se pueda tener una configuración muy segura, si el conocimiento sobre cómo acceder a los fondos no se transmite adecuadamente a los herederos, los activos pueden perderse. El riesgo de que las instrucciones de acceso caigan en manos equivocadas también es un desafío a considerar.
- Inconveniencia para transacciones frecuentes: En configuraciones donde las claves están en ubicaciones separadas (por ejemplo, una en casa y otra a distancia), realizar transacciones frecuentes puede ser engorroso, lo que desincentiva el uso regular de la wallet.
- Falta de estandarización: No existe una implementación estándar para esta tecnología en diferentes blockchains que la soportan. Existen diversas implementaciones realizadas por distintas organizaciones, algunas incluso de código cerrado. Además, hay riesgos asociados con los cambios en los protocolos en la blockchain o DLT subyacente. Las diferencias en la implementación pueden llevar a problemas de compatibilidad y a una curva de aprendizaje adicional para los usuarios que utilizan diferentes sistemas.
- Coste de transacción más alto: Las transacciones multifirma suelen tener un coste más alto en comparación con las transacciones realizadas con una sola firma. Esto se debe a que las transacciones multifirma requieren una mayor cantidad de datos y procesamiento, lo que puede resultar en tarifas más altas, especialmente en blockchains con tarifas basadas en el tamaño de las transacciones.
- Límites en el número de co-firmantes: Existe un límite práctico en la cantidad de co-firmantes posibles en una configuración multifirma. A medida que el número aumenta, la complejidad de la transacción y la gestión de claves también aumenta, lo que puede llevar a problemas operativos.
- Complejidad en el cambio de esquemas: Cambiar esquemas en una configuración multifirma, como al comprometer una de las claves privadas en un esquema 3-de-5, implica generar una nueva dirección multifirma con nuevas claves privadas. Esto requiere obtener al menos 3 de las 5 claves, realizar una transacción a la nueva dirección y luego almacenar las claves nuevamente en ubicaciones remotas. Este proceso puede ser complicado y propenso a errores si no se maneja correctamente.
Importante: Respalda tu semilla
Es necesario planificar cuidadosamente tu sistema multifirma y respaldar/almacenar de forma segura todas tus frases de recuperación, también conocidas como “seed phrases” o contraseña. Estas frases son esenciales para la recuperación de tus fondos en caso de pérdida o daño de tus dispositivos. En las wallets de autocustodia, las frases de recuperación no pueden ser recuperadas por terceros; ningún servicio tiene acceso a ellas ni a tus claves privadas. Esto significa que, si estas frases se pierden, son robadas o destruidas, no habrá forma de restaurar tus fondos. Por lo tanto, asegúrate de almacenar tus frases de recuperación en ubicaciones seguras y separadas para evitar la pérdida total de acceso a tus activos digitales.
MuSig2: La evolución de la multifirma en Bitcoin
MuSig2 es un protocolo que mejora las transacciones multifirma en Bitcoin y en blockchains compatibles, al optimizar tanto la eficiencia como la privacidad. Este esquema está basado en las firmas Schnorr, introducidas en Bitcoin con la actualización Taproot. La principal ventaja de MuSig2 es la capacidad de agregar firmas en una sola, lo que reduce el tamaño de las transacciones y mejora tanto la escalabilidad como la privacidad de los firmantes.
Ventajas técnicas de MuSig2
- Firmas Schnorr: MuSig2 se beneficia de las firmas Schnorr, que fueron implementadas en Bitcoin a través de la actualización Taproot. Las firmas Schnorr permiten agregar varias firmas en una sola, lo que reduce significativamente el tamaño de las transacciones multifirma. Esto no solo disminuye los costes de transacción, sino que también mejora la escalabilidad de la blockchain de Bitcoin.
- Privacidad: En las multifirma tradicionales, las transacciones revelan cuántos participantes están involucrados. MuSig2, al agregar todas las firmas en una sola, hace que sea imposible distinguir una transacción multifirma de una transacción de firma única en la blockchain. Esto mejora significativamente la privacidad de los participantes.
- Mayor eficiencia: MuSig2 optimiza el proceso de firma, lo que reduce la interacción entre los participantes durante la creación de la transacción. Esto resuelve uno de los principales inconvenientes de las multifirma tradicionales, donde todos los firmantes deben interactuar varias veces para generar la transacción final.
- Seguridad mejorada: Aunque la seguridad de las multifirma tradicionales ya es robusta, MuSig2 mejora este aspecto al reducir la cantidad de información que los participantes necesitan compartir entre sí, lo que disminuye todavía más el riesgo de ataques de tipo “Rogue Key”.
Compatibilidad de MuSig2
Si bien MuSig2 ha sido diseñado específicamente para Bitcoin, las firmas Schnorr son un esquema criptográfico ampliamente aceptado y podrían implementarse en otras blockchains que adopten Taproot o mecanismos similares.
Requisitos técnicos: Para implementar MuSig2 en otras blockchains, es necesario que soporten la curva elíptica secp256k1 y que implementen firmas Schnorr.
Conclusión
Las wallets multifirma son una de las herramientas más seguras disponibles para la protección de activos digitales, ya que distribuyen la responsabilidad entre varios firmantes, eliminando así el riesgo de un punto único de fallo. A pesar de los desafíos asociados, como la mayor complejidad y los costes adicionales, estas wallets resultan ser esenciales para empresas y usuarios avanzados que gestionan grandes volúmenes de fondos.
La incorporación de MuSig2 y las firmas Schnorr en Bitcoin representa un avance significativo, prometiendo transacciones aún más eficientes, económicas y privadas, y estableciendo un nuevo estándar de seguridad en el ecosistema de las criptomonedas.
Además, es muy importante para la seguridad que los esquemas multifirma se implementen directamente en la cadena de bloques (on-chain) en lugar de off-chain. Las soluciones on-chain, como los esquemas utilizados en Bitcoin, Ethereum y Litecoin, proporcionan una mayor transparencia y seguridad al registrar todas las transacciones y firmas en la blockchain.
El cofundador de Ethereum, Vitalik Buterin, también ha subrayado la importancia de utilizar billeteras multisig para mejorar la seguridad de los activos digitales. Según Buterin, un esquema “M-of-N” garantiza que los fondos siempre sean accesibles, recomendando que las llaves se distribuyan entre personas de confianza sin revelar sus identidades entre sí, para preservar la seguridad de los activos digitales.
Con todas estas ventajas, las wallets multifirma no solo se destacan por su robustez en términos de seguridad, sino que también se presentan como la opción recomendada para quienes buscan una protección avanzada para sus fondos digitales.
En el próximo artículo, exploraremos las wallets basadas en Multiparty Computation (MPC), una tecnología que lleva la seguridad colaborativa al siguiente nivel, permitiendo una protección aún más fuerte entre los participantes.
Recursos:
[1] CryptoBlogs – Multisig wallets
[2] IQ Wiki – Multi-signature wallet
[3] Bitcoin Magazine – What is a Multisignature wallet
[4] Foundation.xyz – Multisig – Is it for me?
[5] Unchained – Bitcoin Multisig 2-of-3 vs 3-of-5
[6] BIP327 – MuSig2 for BIP340-compatible Multi-Signatures
En Block&Capital, nos esforzamos por crear un entorno donde el crecimiento y el éxito sean accesibles para todos. Si estás listo para impulsar tu carrera profesional, te animamos a unirte a nosotros.
Últimos posts