Las cadenas de bloques solamente son capaces de manejar un determinado número de transacciones por segundo.
Hablando de las dos redes más grandes que existen actualmente, en el caso de Bitcoin se pueden gestionar hasta siete transacciones por segundo, y en el caso de Ethereum se gestionan unas 13 transacciones cada segundo.
Como podéis comprobar, si la tecnología Blockchain tuviera una adopción masiva en todo el mundo tendría que poder manejar muchos más datos y a más velocidades para que realmente todo el mundo se pudiera beneficiar de esta tecnología y no tuviera que esperar mucho tiempo en transmitir datos o transacciones y que tampoco tuviera que pagar tasas demasiado costosas.
Para esto tendría que aumentar la escalabilidad, pero el problema es que el diseño de muchas redes descentralizadas implica que este aumento de escalabilidad tienden a debilitar tanto la descentralización como la seguridad y estos son dos pilares fundamentales de la tecnología Blockchain.
Esto es precisamente lo que se conoce como el Trilema de la cadena de bloques o el Trilema de la Blockchain, y es precisamente lo que vamos a abordar en el vídeo de hoy.
En resumidas cuentas, la Blockchain es una gran base de datos que almacena información en forma de bloques, de forma descentralizada y distribuida. Esta información está protegida por algoritmos criptográficos para darle todavía más seguridad a la cadena.
La idea principal de esta tecnología es conseguir un sistema mundial en el que no necesitemos depender de terceros para que funcionen las redes o los mercados.
Pero el problema de esto como hemos dicho antes, es que al adoptar esa tecnología masivamente, nos encontramos con el Trilema Blockchain.
Este término fue acuñado por fundador de la Blockchain de Ethereum, Vitalik Buterin, Y la clave para entenderlo es comprender que cuando las cadenas de bloques alcanzan niveles y volúmenes muy grandes, es muy difícil mantener en valores aceptables la calidad de nuestros tres pilares fundamentales: descentralización, seguridad y escalabilidad. El aumento de uno generalmente produce que otro se debilite.
Para entender todo esto más en profundidad, vamos a explicar en profundidad cada uno de estos tres pilares.
La descentralización
Las redes Blockchain como Bitcoin y Ethereum están completamente descentralizadas por diseño. No hay ninguna persona u organización central que se encargue del funcionamiento de toda la red. De hecho esta red es abierta y cualquiera que lo decida puede participar en ella.
Esto tiene una consecuencia directa y es que todo el control de la red está distribuido en todos sus participantes, en lugar de estar en manos de una sola entidad. Cada participante tiene acceso a los mismos datos, y de hecho si alguno de esos participantes intenta dañar o alterarlos, estos datos serán rechazados por el resto de participantes.
La ventaja es que la administración y el manejo de la información es equitativo y mucho más democrático. Pero también existe aquí un gran inconveniente y es que a medida que los participantes van aumentando, también se extiende mucho el tiempo necesario para que estos participante se pongan de acuerdo en la validez de los datos. Por lo tanto, es mucho más lento hacer transacciones.
La seguridad
Y este punto diría que es casi el más importante de todos. Porque si lo pensáis, da igual la cantidad de descentralización que logremos alcanzar si no tenemos una red segura.
Aquí entran en juego dos cosas fundamentales: la criptografía y los algoritmos de consenso.
Cada Blockchain usa unos algoritmos determinados, pero si hacemos referencia a Bitcoin que es la blockchain más conocida tenemos lo siguiente:
En términos de criptografía, se utilizan las funciones de hash. Estas funciones de hash tienen varios cometidos. Para empezar, cada bloque tiene su propio hash, que se calcula con la información que almacena ese bloque.
Además, cada bloque almacena también el hash del bloque anterior, y esto es lo que le da la propiedad de cadena a la red.
Pero la utilidad realmente no se queda sólo aquí, porque las funciones de hash tienen la propiedad de que al calcularlas, si se cambia un solo bit de la información con la que se calculan, cambia absolutamente todo el hash. Así que, si algún participante intenta de forma maliciosa cambiar cualquier dato, gracias a la función de hash, el resto de participantes identificarían esta alteración rápidamente y este bloque de información sería rechazado.
Hablando ya en términos de algoritmos de consenso, en el caso de Bitcoin tenemos la famosa Prueba de Trabajo o Proof of Work. Este mecanismo sirve para verificar las nuevas transacciones que se van realizando, en un proceso que popularmente se conoce como minería. Este proceso requiere que los mineros resuelvan problemas matemáticos relacionados con funciones de hash.
El problema aquí sería un aumento significativo de las transacciones que se realizan, porque esto afectaría directamente a la escalabilidad. Para empezar, el Proof of Work es un algoritmo lento y costoso. Y además un aumento de las transacciones también requeriría un aumento del poder de cómputo que necesitan los mineros para resolver estos problemas matemáticos.
La escalabilidad
La escalabilidad es el objetivo final del que venimos hablando en todo el artículo. Es el objetivo de construir una blockchain que pueda abordar más transacciones por segundo, más volumen de operaciones.
Y esto va a ser necesario si queremos que la blockchain realmente pueda tener un alcance mundial, pero es cierto que todavía podríamos decir que es como ‘su talón de Aquiles’.
Al final desde los inicios de esta tecnología, los principales objetivos han sido siempre los dos que hemos comentado antes: la seguridad y la descentralización. Estas dos cosas siempre han sido el alma de la tecnología blockchain, pero ahora que cada vez está tomando más relevancia, nos estamos encontrando con que es una tecnología que no es fácil de escalar.
¿Y cómo podemos solucionar este problema?
Lo inmediato que seguro que estás pensando es en reducir la cantidad de participantes que confirman y agregan datos a la red. Esto aumentaría la escalabilidad y también la velocidad, pero también se debilitaría considerablemente la descentralización. Y lógicamente también reduciría bastante la seguridad, porque cuantos menos participantes haya en una red, más probabilidad de éxito tendrán los atacantes.
Por suerte, los mayores expertos de esta tecnología están trabajando en ello, y vamos a comentar dos ideas para solucionar este problema que son muy interesantes.
Cambio en el mecanismo de consenso
Bitcoin usa el Proof of Work, y aunque es un algoritmo muy robusto, también hemos visto que dificulta la escalabilidad.
Esta es la razón por la que Ethereum cambió su algoritmo hace unos meses por el Proof of Stake. En estas blockchain, los participantes involucrados en la validación de las transacciones deben únicamente bloquear sus tokens, así que nos ahorramos toda la maquinaria que necesitan los mineros.
Soluciones de capa 2
Esta solución, dicho de forma coloquial, consiste en añadir a la red principal una segunda capa. Y aquí es donde nacen las cadenas laterales o sidechains.
Estas cadenas son blockchain separadas que se conectan a la blockchain principal, y están diseñadas de tal manera que los activos pueden interoperarse entre las dos. Lo bueno, es que están programadas con diferentes reglas que la cadena de bloques original así que podemos tener una mayor velocidad y escalabilidad.
Master de Desarrollo Blockchain y Full-Stack de Conquer Blocks
Un futuro en el que todo esté digitalizado de forma descentralizada está cada vez más cerca, pero para eso hace falta que existan profesionales que se dediquen a desarrollar la tecnología Blockchain.
Precisamente por eso, y como creemos que la Blockchain es la tecnología del futuro, en Conquer Blocks hemos creado un Máster de Desarrollo Blockchainy Full-Stack. Queremos formar los mejores profesionales de todo el sector y por eso no solo nos limitamos a enseñar desarrollo Blockchain, sino que también enseñamos desde el más absoluto cero, lenguajes de programación como Python y JavaScript. Por eso esta formación es apta para todos los públicos, tanto si eres una persona técnica, como si no lo eres.
Además, no solo saldrás del máster siendo un desarrollador Back-end, sino que también vamos a enseñarte a programar en Front-ent para que seas un desarrollador todo terreno, un desarrollador Full-Stack.
➡️ Si quieres formarte en Desarrollo Blockchain y Full-Stack, para poder acceder a grandes oportunidades laborales, accede a nuestro master PULSANDO AQUÍ.
Si quieres ver el artículo en formato vídeo... por aquí te lo dejo :)