Page 41 - Revista FIUDE 2017
P. 41

bloque y el nodo se lleva su premio. A continuación, se muestra un ejemplo de un hash con la cantidad
          requerida de ceros obtenido de https://blockchain.info

                     0000000000000000541488b406225c3b62cb4af7a3e70321bd994171265c8261


          Pero si el hash no contiene la cantidad requerida de ceros, se modifica el bloque y se prueba de nuevo,
          billones de veces si es necesario. Aproximadamente en 10 minutos un minero ganará el bloque y el
          proceso se repite.

          ¿Qué es lo que puedo cambiar de un bloque para resolver el reto matemático? Cualquier cambio
          en los datos del bloque cambiaría el hash. Pero el minero puede cambiar solo un campo de 32
          bits, el “Nonce”. El truco consiste en incrementar el valor en el campo Nonce y probar generar el
          hash cada vez hasta resolver el reto. Se supone que es la única forma ya que no se puede calcular
          el valor justo. Para el ejemplo anterior, el valor necesario para Nonce fue 3288633075.
          Cada bloque contiene entre otras cosas el hash del bloque anterior. Por lo que para adulterar un blo-
          que, un atacante debería rehacer el proof-of-work de ése bloque y todos los bloques subsiguientes que
          fueron agregados. Esa competencia contra toda la red de mineros “honestos” hace estadísticamente
          improbable el ataque a menos que se reúna un poder de cómputo comparable al resto de la red.

          Como se mencionó antes, la cantidad de ceros en el hash está dado por la dificultad de minado. Esto
          es un parámetro cuyo valor se ajusta periódicamente. La ecuación que calcula el valor, mide el tiempo
          en que demoró en encontrar los últimos 2016 bloques para que los siguientes bloques demoren lo
          más parecido posible a 10 minutos en validarse. Por lo cual, cada 2016 bloques los nodos cambian la
          dificultad del reto matemático.



          ¿Qué se necesita para ser minero?

          Con la aplicación necesaria, cualquiera puede ser minero. Incluso algunas aplicaciones corren en An-
          droid. También existe hardware especializado para optimizar el rendimiento del minado y hasta hay
          sitios donde se puede alquilar máquinas en la nube con éste propósito. Adicionalmente se forman
          pools de minería a los cuales cualquiera se puede afiliar. Éstos pools son agrupaciones de mineros que
          combinan el poder de cómputo para aumentar la probabilidad de ganar el bloque. La ganancia de 12.5
          bitcoins que es lo que se gana hoy por bloque se distribuye de acuerdo al trabajo que realiza cada uno
          de los miembros del pool.

          La minería tiene su propia unidad de medida, TH/s (Tera hashes por segundo). Y la capacidad para
          producir los tera hashes se llama hash rate. Al momento de escribir éste artículo, la red Bitcoin tiene un
          hash rate de 5500 TH/s.

          Existen cuatro técnicas para minar. A continuación se mencionan en orden (de más lento a más rápido):
          CPU (Central Processing Unit), GPU (Graphics Process Unit), FPGA (Field Programmable Gate Array) y
          ASIC (Aplication Specific Integrated Circuit).

          En la técnica de CPU se utiliza ciclos de procesador y en la de GPU se utiliza la tarjeta gráfica. Entre éstas
          dos, la segunda es la más rápida por lejos. Pero el ascenso imparable del nivel de dificultad hace que
          minar sólo (sin ser parte de un pool) con un hardware multipropósito sea inútil.

          FPGA’s son dispositivos programables que ofrecen un rendimiento similar a los GPU’s pero que consu-
          men bastante menos energía, lo que incrementa el margen de rentabilidad.

          La técnica con ASIC’s significó un avance importante en la velocidad del hardware dedicado para mi-
          nería. En vez de estar lógicamente programados para ésta tarea como es el caso de los FPGA’s, están
          físicamente diseñados para ella. Los ASIC’s son bastante más rápidos que los FPGA’s y usa menos ener-



          40      Revista de la Facultad de Ingeniería
   36   37   38   39   40   41   42   43   44   45   46