El desarrollador conocido en la comunidad Bitcoin como b10c publicΓ³ una investigaciΓ³n el 27 de mayo que amplΓa las herramientas disponibles para que los usuarios verifiquen la autenticidad del software instalado en sus nodos.
Como documento b10c en su blob personal, compilΓ³ el software principal Bitcoin Core v31.0 utilizando Nix, una aparejo de creaciΓ³n de software independiente de los procesos oficiales. Se obtuvieron resultados idΓ©nticos byte por byte con los binarios de divulgaciΓ³n creados por el tesina Bitcoin Core. con yeso
Hasta este resultado, la ΓΊnica forma de fijar que el software oficial no habΓa sido modificado era reproducir el proceso de compilaciΓ³n usando Guix, la misma aparejo utilizada por el equipo de Bitcoin Core. SegΓΊn la descripciΓ³n de b10c.lo que significa que la confianza del favorecido depende de una ΓΊnica dependencia de herramientas. Los ataques de software silenciosos ahora son tΓ©cnicamente mucho mΓ‘s difΓciles de producirse desapercibidos, ya que dos sistemas de compilaciΓ³n completamente independientes alcanzan exactamente los mismos resultados.
Los ataques silenciosos se pueden realizar de diversas formas, en este caso un ataque distribuido. Ayer de que el software llegue al favorecido final, es interceptado y modificado sin que el favorecido final lo detecte. En este caso, el atacante compromete el repositorio de cΓ³digo, las dependencias de software de terceros o el propio compilador (la aparejo que transforma el cΓ³digo). Si el compilador oficial de Bitcoin Core se ve comprometido, se generan archivos binarios maliciosos de forma nativa. Oportuno a que el origen en sΓ estaba comprometido, el equipo oficial termina firmΓ‘ndolo digitalmente sin asimilar que estaba infectado.
Este tipo de violaciones de seguridad pueden provocar la pΓ©rdida total de fondos para cualquiera que opere un nodo o billetera utilizando software comprometido. El trabajo de b10c ataca directamente el ligazΓ³n mΓ‘s importante: el vector de peligro del propio cliente Bitcoin.
b10c es un desarrollador independiente que contribuye periΓ³dicamente a la investigaciΓ³n tΓ©cnica en el ecosistema Bitcoin. Sus esfuerzos son seguidos de cerca por la comunidad, ya que se centran en el rigor de su metodologΓa y la seguridad de sus protocolos. SegΓΊn el propio promotor, el tesina tardΓ³ tres primaveras en completarse.
Guix y Nix: dos cocinas que cocinan los mismos alimentos
Para entender este resultado, vale la pena explicar cuΓ‘les son estas herramientas. Cuando los desarrolladores crean un software como Bitcoin Core, crean cΓ³digo fuente (instrucciones) y lo “compilan” en un archivo ejecutable que los usuarios descargan e instalan. Ese proceso de conversiΓ³n lo realiza la aparejo de compilaciΓ³n. En otras palabras, convierte instrucciones del habla humano al habla de mΓ‘quina.
Guix es la aparejo utilizada oficialmente por el equipo de Bitcoin Core para crear binarios de divulgaciΓ³n. Nix es otra aparejo desarrollada de forma independiente, con construcciΓ³n y funcionamiento ΓΊnicos. Que los dos produzcan exactamente los mismos resultados con el mismo cΓ³digo equivale a que dos chefs en cocinas distintas sigan la misma rΓ©cipe con distintos ingredientes y sirvan el mismo plato hasta el postrero gramo.
Lo que importa es si algΓΊn manipulΓ³ el software en algΓΊn momento del proceso, ya sea en el cΓ³digo, las herramientas de compilaciΓ³n o el servidor de distribuciΓ³n. Los dos resultados no coinciden. La propia coincidencia es prueba de que nadie intervino..
DemostraciΓ³n que nunca existiΓ³
El mecanismo que permite este progreso se ardor construcciΓ³n reproducible: Si dos personas compilan el mismo cΓ³digo fuente utilizando diferentes herramientas y obtienen exactamente los mismos resultados, es prΓ‘cticamente inverosΓmil que una de ellas introduzca un cambio astuto y que la otra lo detecte. b10c afirma lo sucesivo sobre este resultado: Nix serΓ‘ la primera aparejo externa al tesina que pueda compulsar binarios de forma independiente. Personal del nΓΊcleo de Bitcoin.
Sin requisa, b10c seΓ±ala que este logro es personal; AΓΊn no forma parte del tΓpico oficial prohijado por Bitcoin Core. Este tesina no cuenta con un proceso establecido para incorporar mΓΊltiples herramientas de nervio. Esto significa que la nervio mutua entre Guix y Nix actualmente depende de esfuerzos voluntarios como el suyo.
Los desarrolladores concluyen que el sucesivo paso natural es construir un maniquΓ en el que la confianza en el software de Bitcoin se pulvΓnulo en mΓΊltiples verificaciones independientes que se confirmen entre sΓ, en circunscripciΓ³n de una ΓΊnica dependencia de herramientas. Este principio ya es tΓpico en otras Γ‘reas de la seguridad informΓ‘tica, afirmΓ³.


