El proof of work describe un sistema que requiere a los participantes ejercer una cantidad no insignificante pero tampoco exagerada de “trabajo” para detener usos frívolos o malignos de poder de computo, en el proceso de lograr el objetivo y acreditarse la recompensa por dicho “trabajo”. En el mundo de las criptomonedas, es un mecanismo de consenso descentralizado utilizado para registrar y verificar transacciones de criptomonedas y agregar nuevos bloques a su blockchain.
El proof of work fue por primera vez presentado en el año 1993, como una idea para combatir correos spam. Pero fue en el año 2009 cuando empezó a ser usado ampliamente por el Bitcoin el cual adoptó este algoritmo de forma innovadora como un mecanismo de consenso.
¿Cómo funciona?
En la red de Bitcoin, los llamados “mineros” compiten entre sí, en realizar la verificación de la información que contiene el bloque, así como posteriormente en confirmar el bloque e introducirlo al blockchain, a través de hardware especializado, es decir en ejercer el proof of work.
El proceso empieza cuando los mineros seleccionan un número de transacciones de un grupo de transacciones potenciales transmitidas a la red relacionada al blockchain y proceden a verificarlas. Una vez verificadas son introducidas al bloque.
Una vez introducidas todas las transacciones seleccionadas, se generará un hash final del bloque. Un hash es una función matemática que convierte un ingreso de longitud arbitraria en una salida encriptada de una longitud fija. Sin embargo, el hash final del bloque debe ser menor al hash objetivo para que el bloque sea válido. El hash objetivo marca ciertas condiciones que el hash final del bloque tiene que cumplir para que el bloque sea validado. Por ende, también indica el grado de dificultad del hash objetivo, lo cual, también indica la dificultad que hubo para resolver e identificar el nonce. El hash objetivo va cambiando de acuerdo a la cantidad de mineros activos para que se mantenga un promedio de creación de bloques. Un nonce es un número encriptado que el minero debe resolver para verificar el bloque, cerrarlo y obtener el derecho de introducirlo al blockchain.
Si al introducir las transacciones al bloque, el hash final resultó ser mayor que el hash objetivo, y por ende no válido, entonces el único dato que queda por modificar para generar un hash final válido es el nonce. A través del hardware los mineros buscan poder adivinar dicho nonce, mediante prueba y error, que hará que el bloque sea válido, lo cual requiere de una cantidad substancial de poder de cómputo. A este proceso de cálculo computacional es lo que se refiere el “trabajo” que uno realiza.
Una vez que el nonce ideal es encontrado, se confirma el bloque y es anunciado y enviado a la red para que tanto el bloque como las transacciones contenidas sean verificadas por otros mineros o nodos. Si las verificaciones son conformes en consenso, los nodos agregan el nuevo bloque a su registro de blockchain personal y el minero obtiene su recompensa en forma de criptomonedas. De esta manera se completa la introducción de un nuevo bloque al blockchain.
Así como el nuevo bloque introducido al blockchain, cada bloque anterior tiene su hash final los cuales representan el trabajo realizado por cada minero para cada bloque específico.
Ventajas del proof of work:
Proof of work brinda seguridad y protege la red de numerosos ciberataques ya que, debido a su naturaleza, los ciberdelincuentes para poder tener mayores chances de realizar su ataque necesitarían realizar una mayor cantidad de cálculos y por ende necesitarían de más tiempo, lo cual implicaría que tengan que realizar grandes gastos para obtener mayor poder computacional, los cuales al final, probablemente superen a la recompensa del potencial del ciberataque. Además, para lograr apropiarse del blockchain necesitaría invertir en equipos y energía que permitan que lleguen a representar el 51% de los nodos.
Por otro lado,el proof of work causa que la competencia entre mineros se mantenga justa y evita que se creen monopolios o que los sujetos con mayor poder económico saquen ventajas colosales, dado que la maquinaria y energía necesaria implicarían grandes gastos.
Finalmente, el proof of work asegura que la emisión de la criptomoneda se mantenga a un ritmo estable y se evite la inflación y pérdida de su valor. Esto es gracias al hash objetivo de los bloques el cual se modifica constantemente de acuerdo a la cantidad de mineros activos para siempre mantener un promedio de emisión de la criptomoneda y evitar una producción masiva inmediata. Por ejemplo, en el caso del Bitcoin su emisión se produce cada diez minutos aproximadamente. Si hay una gran cantidad de mineros activos, el hash objetivo disminuye para reducir las chances de encontrar un nonce apropiado. Mientras que, si hay una menor cantidad de mineros activos, el hash objetivo aumenta para incrementar las chances de encontrar un nonce apropiado.