Hechos clave:
-
Los principales errores encontrados fueron corregidos en poco tiempo.
-
Otro error se relaciona con el mƩtodo para crear transacciones con Bitcoin Core 24.0.
Bitcoin Core, el principal software del ecosistema para implementar Bitcoin, actualizĆ³ la versiĆ³n 24.0 dos semanas despuĆ©s de su lanzamiento. El principal motivo de esta actualizaciĆ³n tiene que ver con un error encontrado en la wallet del software.
De acuerdo con Michael Ford, mantenedor principal del cĆ³digo de Bitcoin Core, Ā«se encontrĆ³ una pequeƱa cantidad de problemas despuĆ©s de que se etiquetara la versiĆ³n 24.0, pero antes de que se anunciara mĆ”s ampliamente. De ahĆ la etiqueta y liberaciĆ³n de 24.0.1Ā». La actualizaciĆ³n se encuentra disponible en el repositorio de GitHub de Bitcoin Core.
Andrew Chow, ingeniero y desarrollador de Bitcoin Core que se encarga del mantenimiento de la wallet de este software, explicĆ³ en quĆ© consistĆa el problema hallado:
Cuando la migraciĆ³n de la wallet falla, hacemos una limpieza automĆ”tica para restablecer todo y que el usuario no experimente ninguna interrupciĆ³n. Sin embargo, esto aparentemente tiene una falla de segmento, causada por los punteros a las wallet de Ā«solo vigilanciaĀ» y Ā«solucionablesĀ», siendo nullptr. Si esas wallets no se crean (ya sea que no se necesitan o fallan desde el principio), accidentalmente intentaremos quitar la referencia a estos nullptrs, lo que provoca una falla de segmento.
Andrew Chow, mantenedor de la wallet de Bitcoin Core.
Una wallet watch-only (solo vigilancia) es un tipo de monedero que no almacena llaves privadas. Por lo tanto, solo se pueden ver las llaves pĆŗblicas. Esto permite a los usuarios ver sus saldos, pero no permiten firmar transacciones o gastar bitcoin.
Chow agrega que la falla aparecĆa cuando se intentaba migrar una wallet encriptada, debido al mĆ©todo que se utiliza actualmente para descargar este tipo de wallets. Ā«Cualquier wallet encriptada fallarĆ”, ingresarĆ” a la limpieza, y debido a que las wallets de Ā«solo vigilanciaĀ» y Ā«solucionablesĀ» aĆŗn no existen, se alcanza la falla de segmentoĀ», explica el desarrollador.
Este PR soluciona esto al no poner esos nullptrs en un lugar en el que terminaremos desreferenciƔndolos mƔs tarde. TambiƩn agrega una prueba que utiliza el problema de la wallet cifrada.
Andrew Chow, mantenedor de la wallet de Bitcoin Core.
Otra falla encontrada en Bitcoin Core 24.0 se relaciona con la forma en que se creaban las transacciones con un mĆ©todo denominado CoinResult, que no reconocĆa cuĆ”ndo habĆa Ā«fondos insuficientesĀ» para hacer una determinada transacciĆ³n.
Ā«Existe una discrepancia entre las salidas que agregamos/borramos y los valores de la cantidad total almacenada en cachĆ©Ā», explica en Matias Furszyfer, otro desarrollador de Bitcoin.
Agrega cobertura de prueba para el error de selecciĆ³n de entrada preestablecida duplicada que tenemos en v24. Donde la wallet selecciona invĆ”lidamente las entradas preestablecidas dos veces durante el proceso de Ā«selecciĆ³n de monedasĀ». Lo que termina con un resultado de selecciĆ³n de monedas Ā«buenoĀ» que no cubre la cantidad objetivo total de transacciĆ³n. Lo cual, solo, bloquea la wallet debido a una tarifa insana. Pero… para empeorar las cosas, agregar la tarifa de resta de la funcionalidad de salida a esta combinaciĆ³n termina con la wallet pasando por alto la afirmaciĆ³n de la tarifa Ā«locaĀ», disminuyendo la cantidad de salida para cumplir con la tarifa loca y, lamentablemente, transmitiendo la transacciĆ³n a la red.
Matias Furszyfer, desarrollador de Bitcoin Core.
Bitcoin Core 24.0 y Full RBF
MĆ”s allĆ” de los errores corregidos en la mĆ”s reciente versiĆ³n del principal software de Bitcoin, Bitcoin Core 24.0 incluyĆ³ la opciĆ³n Full RBF, como reportĆ³ CriptoNoticias hace dos semanas.
Esto permite que las personas que corren nodos completos (computadoras que contribuyen con el almacenamiento y difusiĆ³n del historial de transacciones) puedan cambiar la polĆtica que usarĆ” su nodo individual para retransmitir y extraer transacciones no confirmada.
RBF es una tĆ©cnica que permite cambiar la comisiĆ³n de una transacciĆ³n con el objetivo de que se confirme antes. Sin embargo, su implementaciĆ³n no estaba predeterminada en los softwares de Bitcoin Core. Esta propuesta permitirĆa que el uso de RBF sea predeterminado si la mayorĆa elige activar la opciĆ³n. Como reportĆ³ CriptoNoticias, hay posiciones encontradas entre usuarios y desarrolladores respecto al uso de Full RBF.