La seguridad y criptografía resultan dos de los términos más utilizados desde la creación de la data en internet. Estos han permitido que se establezcan parámetros que brinden seguridad a los usuarios de la web. Ahora, con la nueva revolución tecnológica, estos términos resultan más complejos, ya que los mismos requieren de cierta estructura lógica.
Algoritmos de consenso
La tecnología blockchain requiere de un mecanismo que permita seleccionar el nodo o nodos que generan o validan los bloques que se incluyen en la cadena. Existe una gran variedad de algoritmos de consenso casi tantos como soluciones blockchain. La elección del algoritmo de consenso a utilizar en un blockchain no es una decisión sencilla, ya que hay que tener en cuenta las características, la finalidad y la proyección que se espera del blockchain para poder elegir o idear el algoritmo de consenso que mejor rendimiento pueda ofrecer a la solución blockchain. Todos los algoritmos de consenso cuentan con ventajas e inconvenientes. En el siguiente listado se analizan los algoritmos más representativos:
Proof of work (PoW)
La prueba de trabajo es el primero de los algoritmos de consenso utilizados en blockchain y fue ideado para seleccionar el bloque que se añade a la cadena de bloques en bitcoin ethereum también usa este algoritmo de consenso, aunque está inmerso en un proceso de cambio de algoritmo de consenso a proof of stake que se completará en 2021. El algoritmo plantea un reto que ha de ser resuelto por los participantes, el primer participante en resolver el reto se proclama ganador y recibe las recompensas.
- Las principales ventajas de PoW son:
- Realizar un ataque a este sistema requiere de una gran inversión y plantea una gran complejidad, por lo que se considera un sistema seguro cuando la red de mineros es suficientemente grande.
- No existen limitaciones para participar, todos los nodos mineros participan en la resolución del reto.
- Los inconvenientes de PoW son:
- El excesivo gasto de energía que requiere para generar un bloque.
- Se necesita de una gran capacidad de cómputo para poder resolver el reto planteado en este algoritmo de consenso.
- El número de transacciones procesadas por minuto es limitado. En bitcoin los bloques se generan con una media de 10 minutos.
- Soluciones blockchain que utilizan PoW:
- Bitcoin
- Ethereum (en proceso de cambio a PoS)
Proof of stake (PoS)
El algoritmo de prueba de participación especifica la necesidad de disponer de una determinada criptomoneda para poder formar parte del conjunto de nodos que participan en la creación de un bloque. De este conjunto se seleccionan aleatoriamente un número determinado de nodos que son los encargados de realizar las validaciones del contenido del nuevo bloque.
En muchas implementaciones de este algoritmo, los nodos que disponen de mayor cantidad de criptomonedas tiene más probabilidades de ser elegidos para participar en la generación de un nuevo bloque. Para participar en proceso de generar nuevos bloques, se necesita realizar el depósito de una cantidad de criptomoneda. Esta cantidad se devuelve si la validación es correcta y puede no devolverse si el minero no realiza correctamente la validación del contenido del bloque.
La implementación de este algoritmo de consenso tiene múltiples variantes, pero el concepto es similar al de participar en una rifa, donde los mineros depositan una cantidad de criptomoneda para adquirir las papeletas y luego por medio de un algoritmo aleatorio se determina los nodos seleccionados para crear el nuevo bloque. Este algoritmo contempla la recompensa con criptomonedas a los nodos que validan el contenido de un bloque.
Ventajas y desventajas del PoS
- Las principales ventajas de PoS son:
- El ahorro de energía en comparación con PoW.
- No se requiere inversión en máquinas con un gran poder computacional como ocurre en PoW.
- Los principales inconvenientes de PoS son:
- No se considera un algoritmo completamente descentralizado, ya que se elige un conjunto de nodos limitado para verificar el contenido del nuevo bloque.
- Si se establece una cantidad de criptomoneda muy alta puede hacer que ciertos nodos no tengan acceso a participar en el minado, limitando el acceso a las recompensas únicamente a los nodos que cuentan con una mayor cantidad de criptomonedas.
- Los nodos que poseen una mayor cantidad de criptomonedas tienen mayor probabilidad de minar bloques. Esta regla incita a los nodos a no gastar el beneficio conseguido, generando un escenario donde los que más tienen son los que más ganan.
- Soluciones blockchain que utilizan PoS:
- Stratis (no establece un mínimo para participar en el proceso de validación) (es capaz de procesar entre 33 y 67 transacciones por segundo).
- DASH (requiere un mínimo de 1000 DASH para participar en el minado).
Proof of importancy (PoI)
Es similar a proof of stake, ya que se establece la necesidad de realizar un depósito de la criptomoneda para poder participar en el proceso de crear nuevos bloques. La diferencia radica en el mecanismo utilizado para seleccionar el listado de nodos validadores, ya que no se realiza de forma aleatoria. A cada nodo se le calcula un nivel de importancia con base en las transacciones procesadas, su participación en la red y otros factores, que determinan la selección de los nodos que pueden crear nuevos bloques.
- Las principales ventajas de PoI son:
- No requiere de inversión en aumentar la capacidad computacional.
- Se premia a los nodos que más participación tienen en la red blockchain.
- Los principales inconvenientes de PoI son:
- No se considera un algoritmo completamente descentralizado.
- Requiere mantener una actividad constante en la red para mantener las posibilidades de minado.
- Soluciones blockchain que utilizan PoI:
- NEM (es capaz de procesar hasta 4000 transacciones por segundo).
Practical byzantine fault tolerance (pBFT)
Es una variante del algoritmo a prueba de fallos bizantinos (BFT), en la que se asume la presencia de nodos maliciosos. El proceso comienza estableciendo una numeración a los nodos, de manera que se conoce el número de nodos que forman la red. Este algoritmo establece un criterio de aceptación que debe cumplir la transacción para su consolidación.
El criterio suele ser superar los 2/3 de confirmaciones iguales para consolidar a transacción. El sistema en exonum funciona como una máquina de 4 estados, donde se genera un mensaje con transacciones que pasa por los siguientes estados:
- Propose
- Prevote
- Precommit
- Block Commit
El funcionamiento es el siguiente; se selecciona un nodo que ejerce como líder y el resto son súbditos. El líder envía un mensaje (propose) a los súbditos para que se procese un conjunto de transacciones. Los súbditos comprueban el mensaje (prevote) y si todo es correcto procesan la transacción (precommit) y responden al emisor de la transacción. La transacción se considera consolidada (block commit) si el cliente recibe al menos (2/3)+1 resultado igual.
Este algoritmo establece que los nodos parten del mismo escenario para completar la ejecución de la transacción, o lo que es lo mismo, el saldo inicial de la cuenta origen es el mismo en todos los nodos, para que todos puedan producir la misma respuesta. El líder cambia cada cierto tiempo siguiendo el sistema de round-robin.
- Las principales ventajas de pBFT son:
- Ahorro en energía comparándolo con PoW.
- Las transacciones no requieren confirmación para su consolidación.
- Los principales inconvenientes de pBFT son:
- Requiere de una gran comunicación entre los nodos para verificar que la información recibida es correcta.
- Soluciones blockchain que utilizan pBFT:
Transformación digital
TECH Universidad Tecnológica oferta un amplio portafolio educativo enfocado en los altos estándares educativos. Por ello cada uno de los programas que se encuentran en sus facultades hacen parte de la capacitación de los mejores profesionales del mundo. Claro ejemplo es su Facultad de Informática, donde pueden hallarse especializaciones tales como el Máster en Visual Analytics & Big Data y el Máster en Ingeniería de Software y Sistemas de Información. Sin embargo, para aquel profesional que busque enfocarse en el ámbito de la nueva revolución tecnológica y el área de la seguridad informática, no cabe duda que su mejor opción educativa será el Máster en Industria 4.0 y Transformación Digital.