Por Uriel Herrera
En la primera edición de AgoraChain, escribí sobre la criptoeconomía y su papel en el paradigma de la organización descentralizada. Definí criptoeconomía (apoyándome en la definición que da Vlad Zamfir) como «una disciplina que estudia los protocolos que rigen la producción, distribución y consumo de bienes y servicios en una economía digital descentralizada». También hablé sobre el nuevo paradigma organizacional y de cómo es un paso lógico la descentralización de las organizaciones y el empoderamiento del usuario para convertirlo en un prosumidor, es decir, una persona que vele por la seguridad y la producción de valor en el interior de una organización descentralizada.
En esta edición, para continuar sobre la misma línea de pensamiento, voy a iniciar una serie de artículos para dar a conocer los diferentes componentes que hasta el momento se han establecido y forman la naciente rama de la criptoeconomía, iniciando por lo que muchos detallan es el más relevante, o al menos uno de los más importantes: los algoritmos de consenso.
Algoritmos de consenso
Los algoritmos de consenso juegan un papel fundamental en el interior de estos sistemas o protocolos descentralizados, ya que son el mecanismo por el cual los integrantes de la red llegan a acuerdos (dicho sea de paso, a decisiones consensuadas) de tal forma que se mantenga la integridad, seguridad y fidelidad del valor transmitido. Es además el mecanismo de defensa frente a ataques maliciosos, con el cual se busca que los mismos usuarios, en defensa de su interés, desplieguen poder computacional, de tiempo, monetario, etc.; y con ello defender el sistema en sí. Es importante recordar que en los sistemas descentralizados cualquier miembro teóricamente puede agregar información o crear valor. Por ende, resulta de vital importancia garantizar que, aunque exista desconfianza entre los integrantes, la información y el valor presentados cumplirán con los parámetros preestablecidos por el protocolo.
Este nuevo paradigma tiene como gran referente (para desgracia de unos y dicha de otros) a Bitcoin. Muchos ya conocen la historia del nacimiento de esta blockchain, que algunos llaman de primera generación, y de cómo Satoshi Nakamoto ideó el primer protocolo que resolvía el famoso problema de los generales bizantinos, el cual a su vez permitía el trasiego de valor por Internet, resolviendo el problema del doble gasto de un activo digital. Esto se logra gracias a su sistema de prueba de trabajo o Proof of Work, pieza fundamental en el armado del protocolo de Bitcoin, el cual es el encargado de regular la producción, distribución y hasta el consumo de las unidades monetarias que dan funcionamiento a esta red. Es decir, PoW es el primer componente o primer algoritmo de consenso por excelencia de este nuevo mundo de la criptoeconomía. Esto nos lleva a iniciar los análisis en este sistema, y en próximas ediciones abordaremos otros, como PoS, PBFT y DPoS.
Proof of Work o prueba de trabajo
La prueba de trabajo consiste en la resolución o búsqueda de un hash criptográfico que cumpla con un formato definido en el protocolo. Este formato consiste en que el hash cuente con una determinada cantidad de ceros iniciales, los cuales varían dependiendo de la dificultad establecida. Esta dificultad es variable y autoajustable. Con esto se busca que, a pesar de que muchos trabajen tratando de ingresar información a la cadena de bloques, solo uno pueda hacerlo en un lapso determinado de tiempo. Este proceso conlleva la utilización de poder computacional, lo que garantiza que las personas que están compitiendo por encontrar un hash válido tienen interés en agregar solo información que cumpla con los parámetros establecidos en el protocolo por un tema de eficiencia económica. Es decir, si intentas atacar a la red suministrando información no válida y no consigues el respaldo necesario o consenso para que la información malversada se convierta en información aceptada en el interior del protocolo, habrás desperdiciado una gran cantidad de tiempo y recurso computacional que automáticamente se convierte en un coste monetario, por lo cual es muy poco probable que las personas deseen tirar recursos tratando de engañar a los demás si fácilmente pueden ser detectadas.
En este proceso existe una figura clave dentro de la estructura del consenso y es la del minero, quien destina poder computacional para resolver los hash criptográficos. Se le llama minero pues su trabajo es comparable con la minería, ya que no existe un mecanismo que permita determinar un método más eficiente para encontrar el hash válido, más que el azar y la fuerza bruta, muy similar a lo que ocurría en California en 1848 con la búsqueda de los mejores puntos para la extracción de oro. Esta figura por lo general se ve motivada a aportar este poder computacional mediante un incentivo económico, en muchos casos variable en el tiempo (esto dependerá de las especificaciones del protocolo y las políticas monetarias establecidas), y su función, además de encontrar un hash válido que permita agregar un bloque a la cadena, es asegurarse de que le sea más caro a un atacante adquirir el poder computacional necesario para atacar al sistema. Por ejemplo, y tomando el modelo de la cadena de bloques con PoW más grande o con mayor éxito hasta la fecha, Bitcoin cuenta con una estructura de incentivos que garantiza a los usuarios que aportan poder computacional (es decir, los mineros) una recompensa por su trabajo. Así, cuando el valor del Bitcoin aumenta, y por lo tanto atacar al sistema se torna más rentable, también se torna más rentable para los usuarios honestos añadir recursos computacionales a la red.
En este sistema, el azar juega también un papel fundamental. Dado que no se puede determinar una entrada X para obtener un hash válido, y que cada bloque que se encuentra debe hacer referencia al bloque anterior, los mineros deben aceptar lo más rápido posible el bloque descubierto para iniciar el minado o búsqueda del próximo bloque válido. Esto incentiva la existencia de una sola cadena, a pesar de que en determinados casos pueden existir varias cadenas al mismo tiempo. Este factor es fundamental a la hora de mantener el consenso, debido a que si un atacante no logra consolidar el poder computacional necesario para agregar los suficientes bloques, de manera que todos reconozcan la cadena que se está construyendo como válida, sufrirá una pérdida económica asociada al coste de computación y electricidad invertidas en el ataque no fructuoso.
Básicamente y a grandes rasgos, podemos aseverar que la estructura y función del algoritmo de consenso PoW son básicamente: 1) proteger la red y 2) garantizar la información contenida, ambas de una manera consensuada mediante incentivos económicos.
Enlazado desde el blog de AgoraChain con SteemPress: https://agorachain.org/2018/06/cryptoeconomics-2/
Great post. It doesn't seem like you are getting the likes it deserves though. Have you checked out the upvote communities? You should check out steemengine. or steemfollower.com.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit