ViaBTC, casa de cambio creadora de Bitcoin Cash, suspendió temporalmente los retiros de su plataforma debido a que sufrieron un ataque de maleabilidad de las transacciones.
Esto ocurre porque el código replicado de Bitcoin posee una vulnerabilidad que permite que las transacciones sean modificadas por un tercero, que puede ser un nodo que retransmite la transacción o un minero que incluye la transacción en un bloque con el que alteran el identificador de transacciones. El resultado es que las transacciones que han sido afectadas por el ataque de maleabilidad no puede ser verificada al momento de realizar la transacción, pero esto no implica que se incurrirá en un doble gasto.
La maleabilidad de las transacciones ha afectado en el pasado a la blockchain de Bitcoin. Se trata de una alteración en el hash de una transacción sin que las firmas privadas involucradas tengan conocimiento de la alteración. En principio, los fondos de los usuarios permanecen a salvo y pueden ser recibidos por el destinatario, aunque normalmente bajo estas circunstancias los tiempos de confirmación se dilatan mucho.
El ataque de maleabilidad que ViaBTC confirmó a través de su cuenta de Twitter podría no representar un riesgo para la integridad de los fondos de los clientes, pero podría tratarse de una advertencia relacionada con la posición asumida por el grupo ante los problemas de escalabilidad de la red Bitcoin. Por ahora, aquellos usuarios que se encuentren inmersos en el ataque de maleabilidad deben tomar precauciones debido a que las transacciones pudieron haber sido registradas bajo un hash diferente, con lo cual tampoco se puede tener certeza del número de transacciones.
Una de las razones de esta situación, como se comenta en Reddit, es que ViaBTC no utiliza de manera óptima la red y pudiera estar realizando numerosas transacciones sin completar la confirmación de salida de sus propios retiros, por ejemplo. También se comenta que quizá alguien notó esta situación y aprovechó la vulnerabilidad para afectar el registro de las transacciones de Bitcoin Cash.
ViaBTC, también conocidos por ser un influyente pool de minería, es el principal grupo detrás de la bifurcación de la red principal Bitcoin que dio lugar a Bitcoin Cash. De esta manera, su objetivo era resolver los problemas de escalabilidad de la primera blockchain incrementando el espacio de los bloques, con lo cual dieron la espalda a la actualización del software de Bitcoin denominada Segregated Witness, diseñada precisamente para prevenir este tipo de ataques.
Apenas dos días después de que comenzaran a intercambiarse los primeros BCH y de que los primeros bloques de la nueva cadena fuesen minados, ViaBTC había reportado un ataque DDoS, que corresponde a un tipo de ataque que satura la dirección web con un exceso de información dirigida especialmente hacia determinado servidor que es incapaz de procesar tal volumen.
En este contexto, es preciso comentar que los bloques minados para Bitcoin Cash están tardando en generarse. Por el momento, también el número de las transacciones no parece indicar que Bitcoin Cash esté siendo utilizado con la frecuencia y la capacidad estimada por los grupos y empresas que apoyaron la bifurcación.
El número de transacciones oscila entre 425 y 1886 por bloque (según registros de los últimos bloques minados). Los bloques se crean con intervalos prolongados, aunque se espera que una vez que los pools de minería se adapten a la nueva dificultad disminuida, ese tiempo entre cada bloque también disminuya.
Mientras un ataque de maleabilidad esté en curso, no debería ser un problema para una casa de cambio poder seguir permitiendo la realización de transacciones, debido a que la única parte del proceso afectada es la confirmación de la transacción y no las direcciones privadas involucradas en el envío y la recepción de criptoactivos. Por fortuna para sus usuarios, ViaBTC ya anunció que los retiros fueron reanudados.
Pese a todo, hay que mencionar que Bitcoin Cash no está provisto de un sistema de seguridad que prevenga este tipo de ataques. Es necesario que cualquier usuario que realice intercambio de BCH esté consciente de ello.
Actualización: esta nota fue actualizada para aclarar la confusión que pudo haber creado la afirmación «el ataque de maleabilidad puede replicarse y aparece como doble gasto». La parte afectada por el ataque de maleabilidad es el hash de la transacción, datos que se utilizan como referencia de la transacción. La transacción, sin embargo no es afectada en sí misma como se explica en el artículo.