Elementos Esenciales de Blockchain
En los artículos anteriores vimos los aspectos conceptuales de Blockchain, que expresado en forma sencilla podemos decir que representa un libro contable que gestiona transacciones, con un aspecto que lo convierte algo poderoso, y es el hecho de que es un libro distribuido incorruptible.
La aplicación más conocida de Blockchain es la de gestión de transacciones de Bitcoin, donde una persona transfiere valores de una a otra sin intermediación, porque el gobierno de la misma está en su protocolo y en el Ethereum con sus mejoras asociadas a contratos inteligentes.
Veamos entonces los términos más utilizados de esta red, lo cual nos permitirá comprender posteriormente su utilización en la Supply Chain.
Bitcoin
La moneda Bitcoin ha estado en movimiento desde el 2008 cuando Satoshi Nakamoto, una persona, o grupo de personas publicó un estudio sobre la moneda electrónica en red de pares (Peer-to-Peer: P2P), donde la mayor innovación que reveló el bitcoin fue la transferencia directa y segura de dinero o valor directo a cualquier parte de la red.
La red de moneda Bitcoin es descentralizada, no hay una autoridad central, y la tecnología que se encuentra debajo se utiliza para almacenar la información la cuál es verificada por una red de mineros que validan la transacción en la red.
Puesto en otros términos, Bitcoin es simplemente un sistema de moneda virtual que rearma el sistema de caja del mundo real, y que cuenta con un grupo de gente de tecnología altamente dedicada a colocar la moneda en el flujo mundial.
Ethereum — Blockchain 2.0
Ethereum es un Sistema de Blockchain basado en los conceptos de Bitcoin, y es considerado la segunda generación de la tecnología de Blockchain que fue diseñada para permitir que cualquier persona con conocimientos de computación, pueda desarrollar e implementar su propia aplicación descentralizada sobre la base de Blockchain.
De la misma manera que el Bitcoin, Ethereum es descentralizado, nadie lo regula y tiene su propia criptomoneda o “FUEL” llamado “Ether” que actúa de la misma manera que lo hace el bitcoin. Sin embargo, Ethereum tiene algunas innovaciones que la hicieron sobresalir. La primera fue contener una infraestructura de blockchain llamada “Contratos Inteligentes (Smart Contract)”, que con su propia máquina virtual con gran poder de memoria y aplicaciones en red llamada “Máquina Virtual Ethereum”, y con su propio lenguaje programable llamado “Solidity”.
Fue desarrollada por Vitalik Buterin, un ruso canadiense de 19 años, en el 2013 como Blockchain 2.0, la tecnología de Blockchain con capacidad para poder programar y ejecutar computación arbitraria y compleja. Más que proveer a los usuarios un conjunto de operaciones predefinidas como en las transacciones de Bitcoin, Ethereum permite a los usuarios desarrollar sus propias operaciones con el grado de complejidad que desee.
Contratos Inteligentes (Smart Contracts)
Estos contratos hay que pensarlos como software robot autoejecutable que contribuye en la realización de negocios en una red descentralizada.
Los contratos inteligentes son sistemas de computación autónomos, escritos en código que gestiona las ejecuciones entre individuos sobre la Blockchain. El código reside en una dirección específica de la Blockchain Ethereum. Estos contratos son potenciados por la Máquina Virtual Ethereum (Ethereum Virtual Machine -EVM) y por Ether. El resulta el motor que guarda todos los contratos inteligentes corriendo en el tiempo y los coordina con el resto de la red.
A fin de crear una capa de personalización y seguridad el Ethereum crea un lenguaje de alto nivel que es utilizado para crear los contratos inteligentes para el EVM, como ser Solidity, Serpent, and LLL.
Mecanismos de Consenso
Cuando se interactúa con múltiples partes, se necesita una suerte de mecanismos de consenso para asegurar que todos han obtenido los registros correctos.
Tanto Bitcoin como Ethereum utilizan un Sistema descentralizado para confirmar las transacciones sin caer en una tercera parte confiable. Por lo tanto el consenso o acuerdo uniforme, ayudan a la red de programas autónomos y computadoras a lograr un estado de acuerdo sin conflicto en la Blockchain.
De hecho, el consenso es la columna vertebral de la Blockchain y de cualquier otra tecnología descentralizada y distribuida.
La Prueba de Trabajo (Proof of Work), la Prueba de Participación (Proof of Stake) y el Consenso Cerrado (Closed Consensus) son los mecanismos comunes utilizados en la tecnología de Blockchain.
Prueba de Trabajo (Proof of work)
Este sistema es utilizado por Bitcoin y es el más común de los mecanismos de consenso.
Cuando se inicia una transacción, la información se almacena en un block candidato el cuál se completa con la información de la transacción. Un bitcoin criptográfico es enviado a la red de mineros que ha sido creado por el block candidato, los mineros realizan el trabajo en la resolución del acertijo que tiene un premio para cualquiera que lo resuelva, en la forma de moneda acuñada nueva.
Los mineros tienen que pensar ayudados por supercomputadoras que son mucho más poderosas que la computadora equipada promedio de una persona, y esto se debe a que se realizan millones de cálculos por segunda. Estas máquinas tienen un “hashrate” o poder de computación que les da una ventaja adicional cuando compiten para resolver los problemas de consenso y determinar si el Blockchain puede ser actualizado o no y obtener el premio de acuerdo al resultado. Los costos son un poco alto dado que los costos de electricidad son altos tanto por el consumo como por la generación de calor que a su vez requiere de refrigeración.
Prueba de Participación (Proof of Stake)
El principal objetivo de este mecanismo es permitir a los interesados (stakeholders) que realizan la mayor inversión o propietarios del ecosistema de Blockchain obtener los más altos incentivos para liderar la provisión de soluciones de consenso para la transacción de Blockchain.
La prueba de participación de consenso permite a los mineros que poseen más dinero o criptomonedas a tener la gran oportunidad de minar bloques y tomar las decisiones en la red.
El proceso comienza por el minero consumiendo sus criptomonedas, normalmente referidas como el kernel, el cuál provee privilegios de actualización del Blockchain, de forma similar a la Prueba de Trabajo.
Sin embargo los cálculos de “hash” en la Prueba de Participación se realizan utilizando un espacio limitado de búsqueda donde los interesados con la mayor participación tienen la habilidad de minar una inconmensurable cuota de la red, y lograr en consecuencia administrar efectivamente el sistema de Blockchain.
Desde cierto punto de vista, cuanto más tiene un minero, más puede lograr, y más puede decidir. Uno de los beneficios de este sistema criptoeconómico es que permitiendo a los interesados contar con un incentivo para hacerse cargo del consenso, el mecanismo reduce el poder de computación requerido para el consenso. No obstante, el principal problema de este mecanismo es que deja en desventaja a los otros mineros de la red, dado que solo los interesados más ricos logran el permiso para tener control de consenso en la Blockchain.
Consenso Cerrado (Closed Consensus)
En un mecanismo de consenso cerrado son requeridos ciertos nodos para proporcionar un depósito de Seguridad con el fin de participar en la actualización del Blockchain.
Estos mecanismos de consenso no requieren de la minería, y están creciendo en popularidad en algunos segmentos de bancos y compañías de seguros.
La gestión de consenso se realiza utilizando un depósito de seguridad, el cual incentiva a los validadores.
Los “mediadores”, son nodos de gestión de conflictos encargados de hacer cumplir las reglas sobre la blockchain y es el árbitro cuando algo no es escrito o cuando un minero no es activamente claro o justo.
El principal objetivo de utilizar un protocolo de mediación es forzar el consenso entre los nodos autónomos de la Blockchain. Si un validador autentica una transacción que fue considerada ilegitima por el mediador, entonces el validador pierde el depósito de seguridad y ellos en el futuro también le retiran sus privilegios de provisión de consenso en la red de Blockchain.
Hasta acá hemos llegado a presentar los elementos básicos esenciales de la tecnología de Blockchain, por lo cual deberíamos poder distinguir que es Blockchain, como trabaja Bitcoin y la representación de bitcoin, Ethereum y sus innovaciones dentro de la Blockchain representados por los contratos inteligentes. En el siguiente artículo entraremos en un mayor detalle de los tipos de consenso y las bases para determinar cuál utilizar.