-
Los métodos actuales para crear wallets multifirma difieren entre sí y tienen fallas de seguridad.
-
El desarrollo involucró a colaboradores de las principales marcas de hardware wallets.
Un método para la creación segura y estandarizada de wallets o monederos multifirma fue incluido entre las propuestas de escalabilidad de Bitcoin (BIP) el pasado 15 de mayo.
El nuevo método busca crear un marco común para la creación de carteras multifirma, donde la coordinación entre las partes firmantes ocurriría de manera más directa y sincronizada, evitando cualquier fuga de información o vulnerabilidades en el proceso. Funciona para todo tipo de monederos de software, pero también está diseñada para monederos de hardware o carteras frías.
En el proyecto participaron especialistas y asociados a las principales marcas de hardware wallets y seguridad de Bitcoin, como Coinkite, Trezor, Ledger y CoboVault, entre otros.
El estándar Bitcoin Secure Multisig Setup (BSMS, por sus siglas), fue desarrollado por Hugo Nguyen, de Nunchuk; Peter Gray y Rodolfo Novak de CoinKite; Marko Bencun de ShiftCrypto y Aaron Chen, de CoboVault.
La BIP 129 ya se encuentra disponible en el repositorio de código GitHub del cliente Bitcoin Core y fue originalmente propuesta el 9 de febrero pasado, en la lista de correos de desarrolladores de Bitcoin de la fundación Linux.
Hugo Nguyen destacó en su Twitter que la propuesta se construyó tres meses después de plantear su conceptualización públicamente. El método, que ahora forma parte de los estándares de Bitcoin, surge a partir de una falla de seguridad en las configuraciones multifirma que afectaba a las hardware wallets de la marca ColdCard y otras, caso que fue estudiado por los equipos de Nunchuk y ShiftCrypto.
La vulnerabilidad fue explicada en un artículo publicado el pasado 9 de febrero de 2021 en el blog de ShiftCrypto: «Remote multisig theft attack on the ColdCard hardware wallet» que traduce a «Ataque remoto de robos de multifirma en la cartera de hardware Coldcard».
Al registrar una wallet multifirma en una Coldcard, la Coldcard no verifica que es parte de esta cartera multifirma. Esto permite que un actor malicioso pueda reemplazar las llaves públicas (xpub) de la víctima por unas propias, desde una wallet de escritorio saltando toda verificación de usuario.
Todas las monedas recibidas en esta cartera multifirma podrían ser transferidas a la cartera del atacante. Las configuraciones de multi-venta donde las Coldcards son utilizadas con los cofirmantes pueden ser afectadas. Se sugiere a los usuarios actualizar antes de crear una wallet multifirma, y verificar la integridad de las carteras multi firma ya existentes.
ShiftCrypto.
Los desarrolladores señalan que el atacante puede enviar monedas hacia otra cartera de su propiedad, pero también puede retener o secuestrar (ransom) las monedas custodiadas en el wallet y pedir un rescate o cumplimiento de alguna exigencia a cambio de estos fondos.
En su declaración de motivos, en el repositorio de código de la BIP-129, los desarrolladores enumeran 5 fallas o vulnerabilidades que podrían conducir a un ataque o robo contra las wallet multifirma creadas mediante la BIP-174 (Transacciones de Bitcoin Parcialmente Firmadas o PSBT), el estándar normalmente utilizado en Bitcoin para este propósito.
En primer lugar, no habría forma de confirmar la autenticidad del Firmante, sus scripts y rutas de derivación (derivation paths), entre otras especificaciones de creación del wallet que deben verificarse.
Como segundo aspecto, no se puede asegurar que no se haya filtrado información sobre las firmas o la configuración del wallet multifirma durante el proceso de creación.
En tercer lugar, no hay manera de comprobar que el Firmante mantiene la misma configuración multifirma en su memoria de almacenamiento, además, qué formato está utilizando. En cuarto lugar, señalan que tampoco se puede verificar si la memoria de almacenamiento del Firmante está blindada contra la sustitución o alteración de datos.
El quinto problema que encuentran en los métodos actuales de creación de carteras multifirma en Bitcoin, es que uno de los Firmantes podría hallar la forma de generar nuevas direcciones de la cartera con estas llaves, pero bajo su control, o que puedan recibir el vuelto (change) del gasto de una UTXO.
En qué consiste el método de creación de wallets multifirma BIP-129
Básicamente, el método involucra la figura de un Coordinador (Coordinator) y un Firmante (Signer), donde mediante la creación de un token temporal se transmite la información concerniente a la creación de la cartera. De esta forma, queda sellado un acuerdo sobre la configuración que la wallet a crear tendría, además de sus parámetros de gasto y operatividad.
A través del token, el Firmante transmitiría de vuelta sus llaves públicas a través de un output descriptor o descriptor de salidas, lenguaje que permite identificar sets de scripts o comandos relacionados a salidas (UTXO u outputs) de una wallet de manera encriptada.
Luego, el Coordinador verifica que los scripts recibidos sean compatibles y que las rutas de derivación, es decir, cómo pueden ejecutarse estas condiciones, estén limitadas a los parámetros acordados por los participantes. Con esta información, el Coordinador crea otro descriptor de salidas (output descriptor) que es transmitido a todas las partes finalizando así el proceso de configuración de una cartera multifirma de Bitcoin bajo la BIP-129.
Los desarrolladores dicen que la BIP-129 se suma a Bitcoin sin entrar en conflicto con implementaciones de wallets multifirma ya existentes. Sin embargo, señalan que, para crear una cartera multifirma BSMS, todos los usuarios participantes de la creación de la wallet deben implementar la BIP-129 en sus clientes.
Del lado de la privacidad, aseguran que el uso de descriptores evita que los usuarios tengan que compartir sus llaves directamente con otros. Asimismo, recomiendan para mayor privacidad desechar el token creado durante el proceso y no utilizarlo más de una vez para crear otros monederos multifirma.
¿Son seguras las carteras multifirma y las hardware wallets de Bitcoin?
Aunque la acepción general es que las hardware wallets son el método más seguro de almacenar bitcoins, no por tener estas fortalezas están necesariamente libres de vulnerabilidades.
Como reportamos en CriptoNoticias, durante el pasado mes de marzo un especialista descubrió una vulnerabilidad en las carteras Coldcard que fue notificada y solucionada en la siguiente versión del software de este wallet.
Si a esto agregamos que la configuración de una wallet en un esquema multifirma abre otras brechas de seguridad, con mayor cuidado deben utilizarse las hardware wallets.
Previamente, en enero, el monedero Coldcard realizó actualizaciones para tener configuraciones multi firma más seguras, sin embargo los desarrolladores de la BIP-129 apuntan a solucionar los problemas que tienen los métodos existentes utilizados en Bitcoin.
Los especialistas de ShiftCrypto piensan que todas las hardware wallets son vulnerables en esquemas multifirma, según aseguran en una publicación, por lo que han desarrollado la BIP-129 para mejorar este aspecto de Bitcoin.