-
Podrรญa ayudar a limitar la confianza en los cรณdigos descargados del sistema operativo Ubuntu.
-
Guix contiene paquetes de aplicaciones, herramientas de sistemas, documentos y mรกs.
Sin importar a quien le guste, hay algo de confianza involucrada en el proceso de configurar o compilar el protocolo en el corazรณn de Bitcoin, pero un reciente cambio en el cรณdigo podrรญa ayudar.
Con el paquete de software de Guix, el cรณdigo recientemente se fusionรณ con el cliente mรกs popular de Bitcoin, Bitcoin Core, lo que significa que ahora estรก listo para ser probado en el mundo real. Este cambio podrรญa ayudar a limitar la confianza en los cรณdigos descargados del sistema operativo Ubuntu durante el proceso de construcciรณn.
El mes pasado, Carl Dong, el principal desarrollador detrรกs del proyecto, comentรณ en su cuenta de Twitter: โha sido todo un viaje, pero hemos logrado la maestrรญa en el soporte de #Guix, en la construcciรณn de Bitcoin Core para versiones deterministas y compatibles con bootstap.โ
Para este proceso de construcciรณn, ya hay algunas protecciones incorporadas. Cuando se descarga Bitcoin Core desde Bitcoin.org, hay muchos desarrolladores que utilizan un proceso llamado Gitian para hacer lo que se denomina construcciones โreproduciblesโ. Esto les permite a los programadores comprobar que los datos binarios que estรกn siendo compartidos con ellos son la versiรณn correcta de lo que quieren descargar, y no una rรฉplica con una puerta trasera secreta construida dentro del software, que digamos, sea para robar bitcoins.
Pero Dong aclara que esto no es suficiente en tรฉrminos de seguridad en el proceso de construcciรณn, tal como detallรณ en una presentaciรณn sobre este tema en la conferencia Breaking Bitcoin, celebrada en Amsterdam.
Por medio del proceso de Gitian, el cรณdigo se transforma en algo que una computadora puede entender. Por medio de esto, los usuarios podrรญan no darse cuenta de que estรกn descargando cรณdigos del sistema operativo Ubuntu y de hecho confiar en ellos.
Dong le comentรณ a un medio:
Actualmente, Ubuntu, o cualquiera que obtenga acceso a las llaves de acceso de Ubuntu, influye tanto en la disponibilidad como en la seguridad de los datos binarios liberados de Bitcoin Core. A largo plazo, colocar la confianza en descargas de binarios, opacas y no auditables de terceras partes, como Ubuntu, parece la receta para el desastre.
No mรกs desilusiones
Debido a esto, hace unos aรฑos, al repasar todo el proceso de edificaciรณn reproducible, segรบn comentรณ Dong a un medio, se desilusionรณ con el proceso de construcciรณn de bitcoin.
Descubriรณ que no fue el รบnico, y una vez que se uniรณ a Chaincode Labs, un centro de desarrollo de protocolos de Bitcoin establecido en la ciudad de Nueva York, el proyecto tomรณ vuelo, con la ayuda de los desarrolladores Russ Yanofsky y Cory Fields, entre otros contribuyentes activos del software de Bitcoin Core.
En รบltima instancia, decidiรณ que la soluciรณn era minimizar lo mรกs posible la confianza en estos datos binarios. Ademรกs de hacer que sea fรกcil rastrear de dรณnde vienen los binarios que estรกn siendo descargados.
โCuando utilizamos Guix para construir nuestra cadena de herramientas (tool chain), podemos auditar cรณmo fue construida cada una de las herramientas disponibles, y fรกcilmente enmarcarlas para un conjunto mรญnimo de binarios confiablesโ, comentaba Dong durante su charla en Breaking Bitcoin.
Esto no quiere decir que erradica por completo la confianza. Segรบn Dong, โdesafortunadamente es de alguna manera una tarea imposible remover por completo del proceso de construcciรณn a las terceras partes de confianzaโ, pero, segรบn argumenta, esto ciertamente ayuda. Continuรณ diciendo:
Lo que hemos logrado es mucho mรกs auditable que la cadena de herramientas provista por nuestra tercera parte. Este uso de Guix en los proyectos, nos permite tener una visibilidad sin precedente de lo que es nuestro conjunto de binarios confiados, y de cรณmo derivamos de รฉl, el entorno de construcciรณn de Bitcoin Core.
ยฟQuรฉ sigue para Guix y Bitcoin Core?
Por ahora, este cambio estรก disponible para los usuarios del sistema operativo Linux. Don y otros estรกn trabajando en el proceso de hacer que el cambio tambiรฉn funcione para los usuarios de Windows y de Mac.
โEste fue un gran primer paso, y deberรญa ser una buena alternativa a la construcciรณn Gitian. Muchas mejoras relacionadas a Guix ya se encuentran en el canal. Soy optimista de que jugarรก un papel en el lanzamiento de la versiรณn 0.19.0โ, tuiteรณ Michael Ford, un desarollador de Bitcoin Core, quien recientemente fue nombrado conserje o encargado de mantenimiento del software.
Dong tiene planes para hacer que estas construcciones reproducibles a travรฉs del tiempo. Comentรณ:
Si esto funciona, significa que los futuros desarrolladores de Bitcoin Core serรกn capaces de construir versiones anteriores de Bitcoin Core y producir datos binarios que sean idรฉnticos en cada bit a como lo eran cuando fueron lanzados. Esta reproductibilidad a travรฉs del tiempo nos permite recrear el comportamiento exacto de versiones anteriores, lo cual tiene valor para propรณsitos de prueba y depuraciรณn.
A pesar de que es mรกs un cambio tรฉcnico que podrรญa sonar arcaico, los desarrolladores estรกn elogiando a Dong por su trabajo de hacer a Bitcoin mรกs seguro.
โLas innovaciones como estas usualmente son invisibles para los consumidores y las comunidades de inversionistas, pero sin duda alguna es la razรณn por la que bitcoin estรก tan adelantadoโ, tuiteรณ el cofundador y jefe de desarrollo de Sia, David Vorick.
Versiรณn traducida del artรญculo de Alyssa Herting, publicado en CoinDesk.