-
Esta iniciativa es impulsada por Braiins, la empresa que fundó Slush Pool.
-
El desarrollo es de código libre y consta de 3 partes: Braiins OS, BOSminer y Stratum V2
Luego de conversar sobre Stratum V2, el protocolo que gestiona la forma en que los mineros ASICs se comunican con el operador del pool de minería. En esta segunda parte, Jan Capek, cofundador de Braiins, nos da detalles sobre los otros dos elementos que conforman un nuevo estándar para minería (minning stack): BOSminer y Braiins OS.
Antes de meternos de lleno en los detalles, aprovechamos para preguntarle si están pensando en desarrollar sus propios mineros ASIC. Han estado trabajando con Hardware por años-por ejemplo, facilitando el acceso a ASIC Boost en los Ant Miners S9 que hasta entonces solo estaba disponible para el fabricante- pero nunca han desarrollado equipos propios.
Hemos estado jugando con esta idea desde 2017. Pero si tú no eres el fabricante de los chips estás en desventaja, pues compites contra tu propio proveedor que también fabrica ASIC. Además, nos fuimos dando cuenta de que, aunque hiciéramos el diseño del hardware, íbamos a necesitar escribir los programas de todas formas. Entonces entendimos que tenía más sentido empezar por el Software.
Jan Capek
BOSMiner, la evolución necesaria
BOSMiner es el software que se encarga del minado propiamente dicho. A través de este componente se gestiona tanto la generación de los hashes como las instrucciones a los componentes de hardware (ventiladores, chips, etc). También se gestiona la autenticación con el operador del pool del lado cliente.
Para entender BOSMiner debemos remitirnos a su predecesor, CGMiner. Este software viene integrado por defecto en los ASIC hasta el día de hoy. Jan nos cuenta que Braiins ideó BOSMiner como la evolución necesaria de dicho software que ya tiene más de una década en la industria. Luego nos enumera lo que su equipo consideró los principales motivos para reescribirlo por completo:
- El desarrollo de CGMIner ha sido caótico, ni siquiera puede decirse que sea un estándar. Es difícil entender cuál es el “código base” que las diferentes versiones tienen en común.
- La base de la que parten las personalizaciones ya tiene errores de código.
- Los fabricantes de ASIC hacen sus propias modificaciones y rara vez las documentan. Esto aplica tanto para las personalizaciones necesarias para el hardware especifico, así como también la forma en la que abordan (o bien no abordan) los errores del código base.
- El lenguaje de programación C, en el que fue escrito, es muy fácil de romper.
- CGMiner no ha ido evolucionando como otros proyectos de código libre que se nutren de la pluralidad de las diferentes implementaciones. En cambio, cada versión es como una gran bola de nieve de errores e ineficiencias que no paran de crecer.
El entrevistado resalta la importancia de haber contado con la colaboración del creador de CGMiner, Khan Colibans, a la hora de estudiar en código original. Juntos estudiaron y depuraron el código fuente que tienen en común las implementaciones que mencionamos anteriormente. Así fue cómo Braiins, utilizando ese código base escrito en Lenguaje C como punto de partida, lo reinterpretó en otro lenguaje de programación llamado “Rust”. Éste se caracteriza por ser versátil, potente y seguro.
Braiins OS, un firmware de código abierto
El último componente que conforma este ‘Mining Stack’ es el firmware; su nombre es “Braiins OS”. Su función es controlar, al más bajo nivel, los componentes de hardware. Anteriormente mencionamos que con BOSMiner puede darle instrucciones al hardware, dichas instrucciones son posibles gracias a que el firmware las habilita.
En este sentido, Capek señala una importante diferencia de Braiins OS respecto a los otros firmwares de la industria, que es código abierto. Esto permite una mejor detección de bugs y transparencia. Episodios como el de Antbleed, una puerta trasera que permite secuestrar el hash rate, son totalmente evitables de esta forma.
Al preguntarle al entrevistado por la financiación del proyecto, nos comenta que si bien reciben donaciones, la idea es no depender únicamente de ellas para seguir aportando a la comunidad. Por ello Braiins OS no es el único firmware disponible en el que están trabajando. Braiins OS+ es una variante con la misma base de código libre más una extensión propietaria llamada “Autoajuste”.
La diferencia es que con la versión plus es posible manejar las frecuencias de los chips y las revoluciones de los ventiladores de los ASICs de forma automática, con el objetivo de maximizar la tasa de Hashes, sin descuidar la salud de los mineros. El firmware es compatible con cualquier pool, pero si se mina en Slush Pool (el primer pool de minería de Bitcoin) que es administrado por la compañía Braiins, entonces se paga la mitad.
Capek nos cuenta que para poder escribir estos programas fue necesario montar un laboratorio de Hardware en sus oficinas. Razón por la cual le preguntamos si pensaron en ingresar al mercado de diseño y fabricación de ASIC.
Esta colección de programas para minería de código libre es actualmente compatible con varios modelos de Bitmain, los S9, S9i y S9j (próximamente los S17 y T17); también con el modelo T1 de Dragon Mint. Cualquier fabricante puede ahora diseñar nuevos ASIC y utilizar Braiins OS como estándar; de este modo, se ahorra en el desarrollo de Software.
La introducción de Stratum V2, BOSMiner y Braiins OS da una nueva dinámica al ecosistema minero, una dinámica propia del movimiento Open Source del cual Bitcoin forma parte. El repositorio de código fuente se encuentra en su GitHub. Desde CriptoNoticias seguiremos de cerca futuras actualizaciones del proyecto como así también el impacto en la industria