Blockchain Trilemma - Crypto Academy / S5W2 - Homework post for nane15.
Del mismo modo exploraremos el desafío que tienen las blockchian para alcanzar la escalabilidad, seguridad y descentralización al mismo tiempo, algo que generalmente se conoce como el Trilema Blockchain.
1. Explique con sus propias palabras qué es el Trilema de Blockchain.
Teniendo claro el significado de la palabra trilema, tenemos que el trilema de blockchain es simplemente la elección entre 3 aspectos cruciales que debe tener esta tecnología, pero que a su vez parece difícil que estos 3 aspectos puedan estar presentes a la vez. Estamos hablando de la descentralización, la seguridad y la escalabilidad.
Imagen realizada en canvas
Es así que la tecnología blockchain parece estar ante un trilema, donde al conseguir dos de los aspectos que persigue, uno siempre se termina escapando, pero esto no ha detenido a los desarrolladores, por el contrario, ha permitido el surgimiento de nuevas soluciones cada vez más prácticas, que de una u otra forma pueden solucionar el contratiempo.
En conclusión, tenemos que el trilema blockchain este compuesto de la búsqueda de escalabilidad, descentralización y seguridad, sin perder ninguno de estos puntos, algo que parece difícil, pero no imposible, a su vez en la siguiente pregunta exploraremos si es realmente un trilema lo que aqueja a las blockchain, profundizando más sobre este punto y sobre sus posibles soluciones.
2. ¿Es el Trilema de Blockchain realmente un Trilema?
En base a lo anterior, podemos afirmar que no existe ninguna ley o regla que nos diga que es imposible lograr a la vez los 3 aspectos a los que se enfrenta el llamado “trilema de blockchain”, lo que si existe es una dificultad para hacerlo, pero tal como mencione antes, es algo que considero posible, solo que el nivel en el que consiguen alguno de los aspectos, puede variar, pero esto no se traduce en que no se está consiguiendo.
Llegados a este punto, he hablado sobre que es posible lograr los 3 aspectos que buscan alcanzar las blockchains, pero no he dicho como se puede hacer esto, así que a continuación explorare alguna de las soluciones que han surgido hasta el momento:
-
Las soluciones de capa 1 (layer 1)
En este punto podemos encontrar a las blockchain, siendo las soluciones de capa 1, una mejora en el protocolo de la blockchain, para mejora alguno de los aspectos en los que tenga deficiencia, es así que los desarrolladores se encargan de buscar posibles soluciones que se puedan aplicar para mejorar el protocolo de la blockchian y mejorar el aspecto en el que tengan deficiencia. Por ejemplo, el Sharding, es una solución de capa 1 para aumentar la escalabilidad, que implica dividir en conjuntos de datos, el estado de la blockchain, en lo que se ha denominado como “fragmentos”. -
Las soluciones de capa 2 (layer 2)
Aquí las cosas cambian un poco, ya que estas soluciones, buscan aligerar la carga de forma externa, es así que podemos tener una blockchain subyacente, que sirva de apoyo para mejorar la escalabilidad. Teniendo en este apartado distintas formas en las que se ha buscado solucionar los problemas de las blockchain existentes.
3. Defina los siguientes conceptos con sus propias palabras:
A. Descentralización
Cuando hablamos de descentralización, nos referimos generalmente a la distribución o dispensación del poder y de las funciones, de este modo mientras que las plataforma centralizadas tienen una entidad central que tiene el poder sobre la aplicación y se encarga de administrar todo, cuando hablamos de descentralización esto no sucede y lo que se busca es que el poder este distribuido de una forma específica y la administración no recaiga en una sola entidad o persona, si no en un conjunto de personas.
Es así que cuando hablamos de la descentralización en la tecnología blockchain nos referíamos a la capacidad de tener distintos nodos independientes entre sí, capaces de administrar y validar las transacciones. De este modo no existe una entidad central que pueda controlar o censurar los datos, ni que posea un control total. Destacando que existen diversos mecanismos entre los cuales se intenta buscar la descentralización, 2 de los más conocidos son:
La prueba de trabajo (PoW), en la cual existen mineros que a través de poder computacional resuelven problemas matemáticos, para así minar nuevos bloques donde se registraran las nuevas transacciones. Este método tiene un problema y es que, a mayor cantidad de mineros, la capacidad de procesar transacciones se vuelve más lenta, provocando que la blockchain sea menos escalable, aunque gracias a una mayor descentralización conseguimos una mayor seguridad, ya que tenemos un número mayor de nodos validando los datos.
La prueba de participación (PoS), en este caso el nodo validador debe poseer una cantidad alta de activos retenidos, que permitan validar los bloques que van surgiendo en la red. El problema es que puede existir el caso en el que una persona o entidad compre una gran cantidad del activo, para de este modo tener control sobre la validación de los bloques, esto provoca que podamos perder la descentralización, pero las transacciones son procesadas de forma más rápida.
Existen otros protocolos de consenso como la DPoS, LPoS cada uno con una idea un tanto distinta de cómo manejar la descentralización, con sus pros y sus contras, siendo así tenemos un ecosistema de blockchains que manejan la descentralización desde puntos de vistas distintos.
B. Escalabilidad
Cuando hablamos de escalabilidad, nos referimos a la facilidad con la que puede adaptarse algo al crecer. Es así que cuando una aplicación o tecnología es escalable, implica que ha medida que aumentan los usuarios o la complejidad, esta puede adaptarse y a la vez manejarse de forma óptima y fácil.
En la blockchain cuando hacemos referencia a la escalabilidad, nos referimos a la capacidad para procesar transacciones, es decir, cuantas transacciones podemos procesar y en cuanto tiempo podemos hacerlo. De este modo una blockchain es escalable cuando puede procesar un gran número de transacciones en poco tiempo, ya que, de este modo a medida que el ecosistema y la comunidad va creciendo, esta puede administrar las transacciones que se van generando, aun cuando el número de usuario es elevado.
Como observamos anteriormente, cuando se definió la descentralización, se podría creer hasta cierto punto que la escalabilidad y la descentralización, son inversamente proporcionales, es decir, a mediada que aumenta una, disminuye la otra y viceversa. Desde mi punto de vista esto es así solo cuando se lleva alguno de los 2 aspectos hasta un extremo especifico, es así que en la mayoría de los casos cuando hacemos que una aplicación o una blockchain sea muy descentralizada, la velocidad y capacidad de gestionar las transacciones se ve afectada, pero cuando se trabaja en un nivel adecuado de descentralización, se puede obtenerse una escalabilidad considerable.
Añadiendo a lo anterior que existen métodos y soluciones que permiten aumentar la escalabilidad, ya sea con el uso de soluciones de capa 1 que modifiquen el protocolo de la blockchain o con soluciones de capa 2 que nos permitan hacer uso de una herramienta externa.
C. Seguridad de Blockchain
Si algo caracteriza a la tecnología blockchain es su seguridad y es que la mayoría de ellas poseen una seguridad muy robusta, todo esto se debe a dos factores, el código fuente de la blockchain y el protocolo de consenso, siendo así, si existe algún fallo en alguno de estos 2 puntos, entonces la red es vulnerable, pero si por otro lado el código fuente fue desarrollado, probado con cuidado y no posee huecos de seguridad entonces es poco probable que un hacker o un grupo de hackers pueda hacer daño a la red, del mismo modo, si el protocolo de consenso se trabajo de forma correcta y la descentralización se maneja de manera adecuada es prácticamente imposible corromper la red por ataques de fuerza bruta.
Todo la anterior no quiere decir que las blockchains nunca hayan sido vulneradas, tenemos el caso de lo que hoy es Ethereum Classic, donde se aprovecho una vulnerabilidad en el protocolo que hizo posible un hackeo en sus inicios, por supuesto, se utilizo lo que se conoce como un “hard fork” para invalidar el hackeo y crear lo que conocemos hoy en día como Ethereum.
En conclusión, estos 3 aspectos son de suma importancia, por eso considero que los proyectos blockchain deben saber equilibrar el nivel en el que manejaran cada uno, ya que es posible contar con un proyecto que sea capaz de manejar los 3 aspectos siempre y cuando se tenga un nivel adecuado de cada uno de ellos, del mismo modo cada día surgen nuevas soluciones que puede que en un futuro nos permitan ver blockchains más robustas que sean capaces de manejar una alto nivel de descentralización, sin sacrificar escalabilidad y manteniendo una alta seguridad.
Basado en su conocimiento, explique al menos dos soluciones viables a los desafíos planteados en el Trilema Blockchain.
Nested Blockchains
Como su nombre lo indica, una cadena de blocques anidad o Nested Blockchains es una arquitectura donde utilizamos otras cadenas de bloque para aligerar la carga de una cadena de bloques principal. Es así que se establece una red interconectada de cadenas secundarias, las cuales se encargan de las ejecuciones, para reducir la carga de procesamiento de la cadena principal, aumentando así la escalabilidad.
Un ejemplo de esto es la blockchain Plasma, la cual es utilizada para aumentar la escalabilidad de Ethereum y poder obtener transacciones más rápidas.
Captura de pantalla tomda de ethereum.org
Sidechains
Las sidechain, se utilizan para mejorar la escalabilidad de una blockchain, utilizando un mecanismo de consenso diferente para aumentar la velocidad de las transacciones, mientras que la cadena principal mantiene la seguridad, de manera que, aunque exista un hueco de seguridad en la sidechain este no afecta la cadena principal, permitiendo ampliar las características del proyecto original de forma rápida y sencilla
Un ejemplo de sidechain es Liquid Network, una red basada en sidechains que hace posible transacciones bitcoin más rápidas.
Captura de pantalla tomda de liquid
Soluciones de primera capa
En este escalón nos encontramos las soluciones que implican modificar directamente la blockchain, por medio de bifurcaciones, que permitan mejorar alguno de los aspectos en los cuales la blockchain tenga problemas, de este modo se pueden cambiar las reglas del protocolo y hacer cambios que permitan aumentar la capacidad y la velocidad de las transacciones.
Una de las cosas que podemos realizar para mejorar alguno de los aspectos son cambios en el protocolo de consenso.
Conclusión
Es entonces, que durante esta segunda semana de crypto academy he aprendido el tema de trilema, su implicación con las blockchain y como esta tecnología puede seguir avanzando para superar este percance.
Agradezco al profesor @nane15 por esta maravillosa tarea y me despido esperando con ansias las futuras tareas de cryptoacademy.
Sort: Trending
Loading...