Bitcoin: experiencia en la minería de datos (I)

 

Hola a todos los lectores que me siguen en esta página.

Recientemente en varios de medios, tanto blogs, noticias de prensa, televisión han salido publicadas noticias acerca del BitCoin y lo mucho que ha subido su precio, superando incluso la onza de oro (1200$) cuando a 1 mes aproximado de este post estaba a 27$ el BitCoin.

Para el que no lo sepa, el BitCoin es un tipo de moneda virtual que no es controlada por ningún Gobierno y que muchas empresas o web’s empiezan a aceptar pagos con esta moneda virtual.

Muchos creen que esto del BitCoin y las monedas virtuales no será otro pelotazo como fue las .com, Terra o el ladrillo, que en algún momento explotará y que tener o comprar BitCoins es comprar humo, que es algo muy inseguro que no se tiene control y que te lo pueden robar sin darte cuenta… otros que como nadie controla el valor del BitCoin (Gobiernos y bancos) siempre será mejor…

Para más info los siguientes enlaces ya que no entraré en definiciones ni historias:

BitCoin – Wikipedia

BitCoin.org

Pues bien, después de ver e informarme sobre este tema en el que llevaba rondando en la cabeza desde 2011 aproximadamente, he decidido lanzarme a modo de experimento a ver que es lo que sale de todo esto. Si simplemente tiraré el dinero o realmente ganaré algo.

Aunque soy un experto en temas informáticos, decir que me he centrado principalmente en serivdores y virtualización. Es decir, sobre temas actuales de placas base, VGA’s para jugar y que den un óptimo rendimiento para muchos fps estoy pez total. Yo era feliz en su día si conseguía el máximo de fps en mi nVidia TNT2 M64 AGP de 32Mb.

Hoy en día hay gente que para jugar a sus juegos favoritos es capaz de meter hasta 4 tarjetas gráficas para tener el máximo detalle, la mejor placa base y las memorias más rápidas… no va a ser nuestro caso a excepción de las tarjetas gráficas. Pero como os contaré ni con VGA’s potentes es requerido trabajar. Tampoco nos van a servir un flamante procesador con 400 nucleos porque no nos va a dar ni para encontrar un centimo de bitcoin. Hoy día la potencia está en las GPU’s y no en la CPU.

Bien, pues empieza la historia.

Aprovechando que tenía un par de piezas por casa (placa base, memoria, disco duro, CPU, DVD, decido adquirir una tarjeta gráfica potente, pero sin dejarme 600€.

Los componentes utilizados son los siguientes:

ASUS P5G41T-M LE
Intel Core2Duo e7500
4Gb DDR3 1333 Kingston
Disco Duro Hitachi 160Gb SATA
VGA Sapphire Vapor-X R9 270X 2Gb GDDR5
Fuente de alimentación BeQuiet PurePower L8 600W

Como he comentado, la CPU es lo de menos, ya que podemos utilizar un simple Sempron o Celeron de los más chuchurrios. Solo arrancará el sistema operativo y la aplicación para minar.

Como tenemos 4Gb de RAM, y según las observaciones que he visto por diferentes webs, lo mejor es instalar un sistema operativo de 64bits y sabiendo que un OS de 32bits no puede gestionar más de 3,2Gb y quería aprovechar toda la RAM, pues instalé Windows 7 Pro 64bits.

Para el que quiera utilizar Linux está en su libre elección, pero también es cierto que mucha gente se queja de que los drivers para Linux no están realmente optimizados, así que tampoco quería pelearme en configuraciones y drivers. Instalar y funcionar. Punto. Ya me pelearé en algún futuro con otras tareas y aparatos para minar.

Un dato importante es que minar monedas virtuales consume mucha electricidad, así pues no nos valdrá una fuente de alimentación cualquiera si tenemos una tarjeta gráfica potente o tenemos más de una. Yo escogí la BeQuiet porque solo tendría una VGA ya que es el máximo que acepta la placa base.

Otro tema a destacar es la gráfica. Actualmente en el mercado hay 2 grandes marcas que abarcan casi todo el tema de tarjetas 3D. ATI-AMD y nVidia. Para minar las mejores sin duda alguna son las tarjetas ATI. Así que nos centraremos en estas por ahora.

nVidia utiliza el sistema CUDA, que sinceramente, hace poco hice la prueba con mi equipo de casa que tiene una simple GT 610 y podemos decir que el equipo se quedó frito, o más bien la tarjeta gráfica. Así que aunque para juegos hoy por hoy lo que mejor vaya sea nVidia, para minar recomiendo ATI sin lugar a dudas.

Después de toda esta información superficial y basándonos en mi configuración como ejemplo empezaremos a entrar en detalles sobre las monedas virtuales.

Como he comentado, la más conocida es BitCoin (BTC) y actualmente minar y conseguir un solo bitcoin es tarea imposible.

Bitcoin SHA-256 274039 707.408.283,05150 25 1. 100,00% 100,00% 100,00% 5596.99 TH/sec 6394.03 TH/sec

A fecha de hoy, la dificultad está a 707.408.283,05150. Para una probabilidad así mejor ni intentar minar BitCoins e invertir mejor en gominolas para endulzarnos la vida.

Pero lo que muchos no saben es que no solo existe el BitCoin, sino que hay montones de monedas más. Vale que no se pagan de igual forma, pero si que es muchísimo más sencillo extraerlas y hay portales que también se compran y se venden. Y otros sitios con los que se puede pagar con estas monedas virtuales.

Un listado de las principales monedas virtuales lo podemos encontrar aquí: CoinChoose

Lo malo de minar es que tiene que ser algo constante y cada pool en el que te das de alta te has de registrar. Es decir, son diferentes servidores y no vale estar en 400 a la vez porque entonces nuestra tarjeta se moriría.

Yo después de ver que hay más monedas y que tienen mayor facilidad de extracción, me decidí escoger DigitalCoin (DGC). No es de las más conocidas pero era bastante sencillo darse de alta en el servicio y conseguir un monedero virtual.

DigitalCoin scrypt 588685 3,63000 15 0.00023923 Cryptsy 2.797,19% 2.464,54% 2.443,05% 381.69 MH/sec 376.63 MH/sec

Si queremos escoger esta moneda, lo primero tendremos que registrarnos en el Pool.

dgc.d2.cc

En el registro nos saldrá una pantalla como la de la captura siguiente. Nos pedirá unos datos personales y un PIN. Este PIN es importante recordarlo ya que sino perderemos todas las monedas o no podremos efectuar cambios en nuestra configuración.

Una vez estemos registrados dentro del panel de control de la web nos dirigiremos a My Acoount. Ahí podremos ver nuestros datos de configuración, trabajadores (mineros) activos, etc…

Un dato importante, es que este portal te auto-obliga a donar una parte de tus beneficios para mantenimiento del servidor. Por defecto está al 1% de lo extraído. El mínimo que se puede donar es un 0,1%. Esto a elección de cada uno. Pero encuentro lógico que si sacamos monedas virtuales que menos que el servidor esté en UP y bien mantenido. Que esté en Internet no significa que salga de la nada.

También podremos activar los autopagos (a nuestro monedero) a partir de ciertas monedas conseguidas. El mínimo es 1.

La interfaz es bastante intuitiva.

Bien, una vez configurado todo, una cosa importante que nos queda es crearnos un monedro virtual, ya que si conseguimos muchas monedas si no tenemos a donde llevarlas es como si no hiciesemos nada. No se convertirán en dinero por arte de magia encima de nuestra mesa de ordenador.

Yo utilicé en este caso DigitalCoin.cc para DigitalCoin.

Descargamos según nuestra plataforma en mi caso Windows e instalamos.

DigitalCoin Windows QT

Descargamos, descomprimimos y ejecutamos.

Es posible que el Firewall de Windows si lo tenemos activado nos pida permiso para enviar datos. Permitimos el acceso.

Nos aparecerá una pantalla como la de la captura siguiente.

 

Si nos dirigimos a la pestaña Recibir monedas, observaremos que nos ha creado una fila sin etiqueta y con una dirección con muchos caracteres raros.

La etiqueta es el alias de nuestro monedero y los caracteres raros el monedero en si donde recibiremos los DigitalCoins.

Este dato tan largo, tendremos que introducirlo en la web del pool  (dgc.d2.cc), en Personal Information y Payment Address. Nos solicitará el PIN para efectuar los cambios. Ese del que nos acordamos.

Otro paso importante con nuestro monedro. Cifrarlo.

¿Qué sucede si no ciframos nuestro monedero? Muy simple, alguien que sepa un poco como funciona, podría transferirse todas nuestras monedas a su monedero virtual, con lo cual perderiamos absolutamente todo.

Para cifrar nuestro monedero solo deberemos ir a Configuración y Cifrar monedero. Nos solicitará una contraseña, de la cual también deberemos acordarnos. Ya que si nos olvidamos perderemos también todas nuestras monedas y no podremos recuperarlas de ninguna forma.

Después de todo este «tostón» esencial llega el último paso.

El software para minar. Existen un montón, pero después de ver montones de videos en youtube intentando ver cual es el más recomendable, yo escogí la opción CGMINER.

Cgminer funciona bajo una consola MS-DOS, si esa, negrita, pero es muy sencillo de utilizar.

Yo recomiendo la versión 3.7.2 que se puede descargar del siguiente URL oficial del programador.

http://ck.kolivas.org/apps/cgminer/3.7/cgminer-3.7.2-windows.zip

Si cargamos el directorio, podremos descargar otras versiones anteriores o para otras plataformas.

Una vez descargado, lo descomprimimos donde queramos dejar la aplicación.

Una vez lo tengamos listo, tendremos que crear un fichero .bat con un comando que ejecutará cgminer con los parámetros de nuestra tarjeta gráfica. Yo daré mis datos de configuración para mi tarjeta gráfica, la Radeon R9 270X Vapor-X.

Para otras configuraciones podemos consultar la siguiente web que aunque es de LiteCoin nos servirá igual: https://litecoin.info/Mining_hardware_comparison

Creamos un fichero .txt en la raiz de cgminer (inicio.txt). Posteriormente lo editamos y agregamos la siguiente linea con nuestro usuario y password de dgc.d2.cc.

cgminer.exe -o stratum+tcp://Pool_de_DigitalCoin:3336 –scrypt -u nuestro_usuario.worker -p nuestra_contraseña –no-submit-stale -I 17 -g 1 –thread-concurrency 12000 –lookup-gap 0 -w 256 –gpu-engine 1120 –gpu-memclock 1500 –gpu-powertune 2

Repito, esta configuración es la más óptima que he encontrado para mi tarjeta gráfica, si alguien decide subir sus parámetros con una tarjeta inferior es bajo su responsabilidad.

Un dato importante de esta linea de comando es lo siguiente: stratum+tcp://Pool_de_DigitalCoin:3336. Este dato es el servidor al que nos conectaremos para minar. Para saber nuestra dirección, tendremos que ir al servidor de DigitalCoin e ir a My Account, Workers. Ahí nos indicará nuestro servidor específico.

Una vez editada nuestra linea para el .bat que queremos generar, guardamos los datos. Posteriormente renombramos la extensión .txt a .bat.

Acto seguido ejecutamos el .bat y se nos abrirá una ventana de MS-DOS y si todo es correcto empezará a minar.

Con la R9 270X y la configuración dada he conseguido 444Kh/s sostenidos, que para una tarjeta gráfica de casi 200€ sabe a poco para las burradas que se mueven en la minería de datos.

Aún así, en un fin de semana, con algún parón por pruebas he llegado a conseguir 101DGC, que al cambio tampoco está nada mal para ser un experimento.

Como se puede observar, la CPU siquiera se despeina, no trabaja para nada.

En el siguiente post seguiré comentando más experiencias y más datos pendientes sobre la mineria de monedas virtuales.