En la actualidad, la mayoría de las diferentes redes blockchain existentes aspiran a ser compatibles con Ethereum. En dicho contexto surge Polygon, el cual pretende desarrollar una serie de protocolos y herramientas que permitan entrelazar dichas redes de forma sencilla y escalable.
El problema
Muchas de las dApps, desarrolladas en Ethereum, no han conseguido tener una adopción, masiva y constante en el tiempo, de usuarios, principalmente debido a problemas de escalabilidad y de mala experiencia de usuario.
A menudo, nacen proyectos que proponen alternativas para solucionar dichos problemas, pero estos pasan, a veces, por utilizar redes blockchain alternativas a Ethereum, o por comprometer la descentralización para mejorar la velocidad de las transacciones. Como consecuencia, se deja de lado la gran capitalización de mercado que las dApps y otros proyectos ya han creado en Ethereum y se descuida la enorme comunidad de desarrolladores y usuarios que utilizan su ecosistema.
En otras ocasiones, se intentan desarrollar cadenas de bloques que, siendo distintas a Ethereum, sean compatibles con ella, pero no existe ni un framework común para implementarlas, ni un protocolo para unirlas. Esto conlleva un gran problema de fragmentación en el ecosistema y grandes retos de desarrollo e implementación (Figura 1).
Figura 1. Polygon Challenge. Fuente
Ante esta situación surge Polygon, como un protocolo cuyo fin es resolver los problemas de escalabilidad y usabilidad, sin comprometer la descentralización y aprovechando la comunidad y el ecosistema de desarrolladores existentes de Ethereum.
¿Qué es Polygon?
Polygon es una solución de escalado de cadena externa descentralizada, que pretende proporcionar una mayor escalabilidad y una mejor experiencia de usuario a las dApps que quieran ser compatibles con Ethereum.
Pretende ser un marco de referencia y un protocolo que tiene como principal objetivo construir redes blockchains compatibles con Ethereum de forma ágil y sencilla, con tarifas de transacción bajas sin sacrificar nunca la seguridad.
Creado por desarrolladores, y para los desarrolladores, combina lo mejor de Ethereum y las cadenas de bloques soberanas en un sistema multicadena completo, siendo capaz de beneficiarse plenamente de los efectos de red de Ethereum, y creando un sistema intrínsecamente más abierto y seguro (Figura 2).
Figura 2. Polygon Solution. Fuente
A modo de resumen, en la siguiente figura (Figura 3), podemos observar las características principales de Polygon.
Figura 3. Polygon Features. Fuente
En la actualidad, más de 7.000 dApps de diferentes tipologías (DeFi, NFTs, Juegos, Metaverso, etc) utilizan Polygon como entorno para escalar sus servicios. En el siguiente enlace se pueden consultar muchas de ellas.
¿Qué Soluciones aporta Polygon?
A continuación vamos a explicar, más en detalle, los problemas que tienen muchas de las blockchains existentes, y como Polygon intenta solventarlos.
Transacciones lentas
Las transacciones en las redes blockchain suelen ser muy lentas y tienen un rendimiento muy limitado.
Muchas cadenas de bloques que utilizan sistemas PoW (Proof of Work) tienen un límite en el tamaño del bloque y lleva una cierta cantidad de tiempo generar un bloque. Cada transacción también tiene que esperar múltiples confirmaciones de bloque debido a posibles reorganizaciones de la cadena.
Por otro lado, las cadenas de bloques que utilizan sistemas PoS (Proof of Stake) intentan contrarrestar estas limitaciones mediante un mecanismo de participación, pero, a menudo, las que consiguen lograr un alto rendimiento lo hacen a costa de la descentralización.
Polygon resuelve el problema de las transacciones lentas mediante el uso de una cadena de bloques de alto rendimiento con el consenso proporcionado por un conjunto seleccionado «Block Producers», elegidos para cada punto de control por un conjunto de «Stakers». Además, se utiliza una capa de prueba de participación para validar los bloques y publicar pruebas periódicas (Merkle Roots) de los bloques producidos en la cadena principal de Ethereum. Esto ayuda a lograr un alto nivel de descentralización mientras se mantienen tiempos de confirmación de bloque por debajo de los 2 segundos.
Bajo rendimiento en las transacciones
Algunas cadenas de bloques públicas tienen que esperar un cierto tiempo después de producir un bloque antes de producir otro, con el objetivo de garantizar un tiempo suficiente que permita la propagación de los mismos por toda la red. Por otro lado, el tamaño del bloque debe ser pequeño para garantizar una rápida propagación del bloque a través de la red. Esto implica que la cantidad de transacciones en un bloque en particular debe ser bastante limitada.
Polygon resuelve este problema mediante el uso de una capa de «Block Producer» para producir los bloques. Los productores de bloques permiten que el sistema produzca bloques a un ritmo muy rápido. El sistema garantiza la descentralización utilizando puntos de control de PoS que se envían a la Mainchain de Ethereum. Esto permite que teóricamente se logre hasta 2^16 transacciones por segundo en una sola cadena lateral .
Escalabilidad
Como ya hemos comentado en este artículo y en otros publicados con anterioridad, la escalabilidad es uno de los grandes problemas con los que se encuentran las dApps cuando se despliegan en algunas de las blockchain existentes.
Polygon logra fácilmente una velocidad teórica de hasta 2^16 transacciones por segundo en una sola cadena lateral. En el futuro, se espera que Polygon pueda agregar fácilmente más cadenas laterales horizontalmente para aumentar la cantidad total de transacciones mientras usa la misma capa de PoS descentralizada.
Es decir, en teoría, Polygon tiene capacidad para millones de transacciones por segundo con el uso de múltiples cadenas laterales.
Tamaño de la cadena de bloques
Cada bloque en la cadena de bloques debe ser validado por múltiples nodos. Cada nodo tiene que gestionar una copia del estado y los bloques. Si bien la cadena aumenta de tamaño a medida que pasan los días, mantener y validar toda la cadena de bloques se vuelve difícil y da como resultado menos nodos lo que representa un riesgo para la descentralización.
La capa principal de Polygon que proporciona descentralización puede optar por almacenar solo los bloques desde el punto de control anterior hasta el siguiente punto de control, ya que todas las pruebas de transacciones/bloques anteriores se han enviado a la cadena principal. Esto permite que los nodos que participan del PoS se puedan ejecutar en máquinas de muy bajo costo con poco almacenamiento.
Múltiples canales de micropagos con otras soluciones fuera de la cadena
Las soluciones planteadas para resolver el problema de los micropagos basadas en canales de pago, se encuentran con la complejidad en el proceso de apertura y gestión de canales con múltiples dApps o usuarios.
Polygon utiliza una arquitectura basada en el estado de la EVM (Ethereum Virtual Machine) y no requiere que se abran canales de pago entre dos partes. Cualquier dirección Ethereum válida es una dirección Polygon válida y no es necesario que el receptor esté en la cadena Polygon para recibir el pago. Solo necesitarían tener una billetera Polygon cuando quieran recuperar los pagos en la cadena principal o gastarlos en el ecosistema en la red Polygon.
Tarifas altas en las transacciones
El gran crecimiento del volumen de las transacciones en las blockchains, ha derivado, en alguna de ellas, en un alto coste de las mismas, lo que ha provocado que muchas dApps y usuarios migren sus sistemas a blockchains con menores tarifas.
La red Polygon permite transacciones de bajo costo al realizar una gran cantidad de transacciones en la capa del «Block Producer», agrupando posteriormente las pruebas de los bloques utilizando la raíz del árbol de Merkle de los bloques en un sistema altamente descentralizado.
Mala Usabilidad
Las interacciones de los usuarios en las dApps suelen ser deficientes en comparación con las centralizadas.
El equipo de desarrollo de Polygon está trabajando en varias herramientas de integración de navegadores móviles y web y tiene la intención de construir una aplicación móvil/navegador que actuará como una capa de interacción segura para las interacciones de la cadena de bloques.
Suite de soluciones para desarrolladores
Polygon se define como una plataforma hecha por desarrolladores para los desarrolladores. Por ello, está implementando una suite de soluciones que permite a los desarrolladores construir dApps de forma sencilla con un bajo coste a nivel de transacción, sin tener que renunciar a la seguridad que aporta Ethereum (Figura 4).
Figura 4. Suite de soluciones de Polygon. Fuente
Algunas de ellas están operativas, como son Polygon PoS, Polygon Hermez, y Polygon Edge. En cambio, tal y como vemos en la Figura 2, otras están en fase de pruebas o en desarrollo.
Polygon PoS se define como una solución de escalado de capa 2 que permite ejecutar transacciones de forma rápida (unas 65.000 transacciones por segundo) y con bajos costes (unos 0,002 $), utilizando cadenas laterales para el procesamiento de las mismas. Todo ello garantizando la seguridad de los activos mediante el framework Plasma, y una red descentralizada de validadores de prueba de participación.
Polygon Hermez se define como una solución de capa 2 sobre Ethereum, que mediante el uso de zk-rollups resuelve sus problemas de escalabilidad a través del procesamiento en una sola transacción de un conjunto de transacciones. La tecnología de Prueba de Conocimiento Cero se utiliza para presentar y registrar públicamente la validez y corrección de las transferencias procesadas en la cadena de bloques de Ethereum. Al almacenar solo la prueba y los datos comprimidos de un lote de transferencias, se multiplica la eficiencia y el rendimiento de la red, logrando una reducción de alrededor del 90% en los costes de las transferencias de tokens, multiplicando por 130 el rendimiento, y permitiendo retiros seguros y rápidos.
Polygon Edge se define como un framework modular y extensible que permite desarrollar redes blockchain con características personalizables, ya sean públicas o privadas, compatibles con Ethereum.
El Token MATIC
El ecosistema Polygon utiliza el token MATIC como token nativo. Su propósito principal es ser la herramienta que permita gestionar la gobernanza, y asegurar la red mediante la participación.
MATIC es la moneda de las aplicaciones implementadas en Polygon y permite a los usuarios de las mismas interactuar con el resto de las dApps desplegadas en su ecosistema
MATIC es el token que se utiliza para pagar las comisiones a la hora de ejecutar las transacciones en el ecosistema de Polygon. Dichas comisiones irán destinadas a pagar, a modo de incentivo, a los nodos que se encargan de procesar y validar dichas transaciones.
El token MATIC es usado en el mecanismo de PoS (Proof of Stake) implementado en Polygon para alcanzar el consenso en la red. De tal forma que, haciendo Staking en la red, además de asegurar la red, se pueden conseguir tokens Matic como recompensas a modo de incentivo, así como también se pueden perder dichos tokens para desincentivar los ataques.
La gobernanza del protocolo está en desarrollo, y en un futuro permitirá a los propietarios de tokens MATIC poder participar en la gobernanza del mismo, teniendo la posibilidad de votar las PIPs (Polygon Improvement Proposals).
Conclusión
Como hemos venido apuntando en artículos anteriores, uno de los principales problemas a los que se enfrentan los equipos de desarrollo de dApps es encontrar una tecnología blockchain que les permita escalar sus soluciones acorde a la demanda de transacciones que requieren sus usuarios, sin renunciar a la seguridad y al efecto red que tiene en la actualidad Ethereum.
En este entorno surgen soluciones de capa 2 como Polygon, la cual se posiciona como una de las opciones más eficientes y prometedoras que aporta una serie de herramientas y características, tal y como hemos visto en apartados anteriores, que la hacen muy atractiva para desarrollar aplicaciones descentralizadas.
A modo de resumen de todo lo anterior visto, recomendamos la visualización del siguiente vídeo.
Referencias
- Polygon Website: https://polygon.technology/
- Polygon Ecosystem: https://polygon.technology/ecosystem
- Matic Whitepaper: https://github.com/maticnetwork/whitepaper#abstract-1
- Polygon Lightpaper: https://polygon.technology/lightpaper-polygon.pdf
- Polygon PoS: https://polygon.technology/solutions/polygon-pos/
- Polygon Hermez: https://polygon.technology/solutions/polygon-hermez/
- Polygon Hedge: https://polygon.technology/solutions/polygon-edge/
- Matic Token: https://polygon.technology/matic-token
- Polygon Scan: https://polygonscan.com/