Polkadot es el proyecto insignia de la Web3 Foundation, el cual pretende conectar las cadenas existentes en el ecosistema blockchain, para que puedan escalar como parte fundamental de una web descentralizada, donde los usuarios controlan sus datos y no están condicionados por límites de confianza dentro de la red.

¿Qué es Polkadot?

Polkadot es una plataforma que pretende llevar a un nuevo nivel el ecosistema Blockchain. Se define como un protocolo blockchain de nueva generación, que une una red completa de blockchains con propósitos específicos, permitiéndolas operar juntas y escalar conjuntamente.

Al reunir las mejores características de múltiples cadenas de bloques especializadas, Polkadot
allana el camino para una nueva descentralización de mercados emergentes, ofreciendo formas más justas de acceder a los servicios a través de una amplia variedad de aplicaciones y proveedores.

El diseño de Polkadot ofrece varias ventajas sobre las redes existentes y heredadas, incluyendo fragmentación heterogénea, capacidad de escalar, capacidad de actualizarse, gobernanza transparente y conectividad entre cadenas.

Polkadot implementa una blockchain fragmentada, que permite conectar varias cadenas juntas en un red única. De esta forma, se pueden procesar transacciones en paralelo e intercambiar datos entre las cadenas con garantías de seguridad.

Como consecuencia, Polkadot permite que cualquier tipo de datos sea enviado entre las distintas blockchains. Además, está diseñado para trabajar con cadenas tanto públicas, como privadas, como empresariales, por lo que desbloquea un gran número de casos de uso del mundo real que hasta ahora no habían podido ser abordados.

Gracias al modelo de fragmentación heterogénea que implementa Polkadot, cada cadena en la red se puede optimizar para un caso de uso específico en lugar de verse obligadas a adaptarse a un modelo one-size-fits-all (modelo de talla única).

Características principales

A continuación, ampliando la información dada en el apartado anterior, vamos a pasar a detallar las características principales que hacen del proyecto Polkadot, una de las plataformas más esperadas y prometedoras en el ecosistema blockchain.

  • Heterogeneous Sharding: en la actualidad, la mayoría de las blockchains están orientadas a resolver casos de uso específicos, por lo que es poco probable que en en un futuro haya una única blockchain que gobierne a todas las demás. Como consecuencia, cada vez parece más necesario un sistema que permita que las diferentes blockchains puedan realizar transacciones entre ellas. En este contexto, aparece Polkadot, como una blockchain fragmentada, que permite conectar varias cadenas en una red única, procesando transacciones en paralelo entre las diferentes cadenas de forma segura.
  • Scalability: parece poco probable que una única blockchain sea capaz de aglutinar todas las aplicaciones descentralizadas que demanda el mundo real. Por otro lado, las blockchains, en la actualidad, tienen un rendimiento limitado que no las permite escalar para dar soporte a muchos casos de uso. Polkadot, viene a resolver estas cuestiones, ya que es capaz de unir múltiples cadenas especializadas juntándolas en una red fragmentada. De esta forma, Polkadot
    permite realizar múltiples transacciones procesadas en paralelo, eliminando los cuellos de botella que ocurren en redes que procesan transacciones una a una. Además, Polkadot podrá escalar aún más en el futuro cuando se implemente una función planificada conocida como «nested relay chains», la cual permitirá aumentar el número de fragmentos que se pueden agregar a la red.
  • Upgradeability: las blockchains, al igual que cualquier otro software, necesitan actualizarse periódicamente para corregir errores, o para modificar su funcionalidad adaptándola a las nuevas necesidades. Las actualizaciones que se realizan en las blockchains, lejos de ser procesos sencillos y automáticos, requieren meses de trabajo, y conllevan la bifurcación (fork) de las mismas, llegando, a veces, incluso a dividir a la comunidad que las soporta cuando la bifurcación es dura (hard fork). En este contexto, Polkadot viene a resolver estas cuestiones, permitiendo que las blockchains se actualicen sin la necesidad de realizar bifurcaciones, a través de un sistema on-chain de gobernanza transparente. Como consecuencia de implementar esta característica, Polkadot permite que los proyectos evolucionen de forma ágil, y que se puedan adaptar rápidamente al ritmo de la tecnología.
  • Transparent Governance: las primeras blockchains carecían de procedimientos formales de gobernanza. Las partes individuales interesadas no tenían mecanismos para proponer o vetar cambios en los protocolos. En este contexto, Polkadot define un sistema de gobernanza, en el que cualquier parte individual interesada en el protocolo y que posea el token nativo de Polkadot, denominado DOT, puede proponer cambios y votar las propuestas realizadas de forma justa y transparente. Además de lo anterior, también pueden ayudar a elegir a los miembros del consejo, los cuales representan a las partes interesadas pasivas dentro del sistema de gobierno de Polkadot.
  • Cross-Chain Composability: las primeras blockchains fueron desarrolladas para funcionar de forma aislada, sin que se pudieran comunicar con otras blockchains. A medida que pasa el tiempo, el número de blockchains para propósitos específicos aumenta, por lo que cada vez es más necesario que haya un sistema que permita interconectar dichas blockchains. Polkadot, viene a resolver esta necesidad, permitiendo la interconexión entre diferentes cadenas, y el paso de mensajes entre ellas, pudiéndose intercambiar valor, y compartir funcionalidad. Gracias a esta capacidad de Polkadot de tender puentes entre las diferentes blockchains, se abren nuevas oportunidades de negocio e innovación, al poder interactuar, entre otros, con protocolos DeFi, y redes como Ethereum.

Arquitectura

Polkadot une una red de fragmentos heterogéneos de blockchains llamados «Parachains». Estas cadenas se conectan entre ellas y son aseguradas por la «Relay Chain». Además, estas cadenas se pueden conectar con redes externas a través «Bridges» (Figura 1).

Arquitectura Polkadot Master Blockchain Online

Figura 1: Arquitectura de Polkadot. Fuente

A continuación, pasamos a describir, más en detalle, los elementos principales que conforman la arquitectura de Polkadot:

  • Relay Chain: se trata del corazón de Polkadot (la cadena central), siendo responsable de la seguridad de la red, de la interoperatividad entre las cadenas, y del consenso. Los Validators de Polkadot realizan staking con DOTs en la Relay Chain. Está compuesta por un pequeño número de tipos de transacciones que determinan la forma de interactuar con el mecanismo de gobernanza, las subastas de Parachains, y la participación en NPoSEs probable que las transacciones en la Relay Chain tengan un precio más alto que en las Parachains, ya que se espera que la mayor parte del trabajo computacional se delegue a estas últimas, las cuales tienen diferentes implementaciones y características.
  • Parachains: suelen ser blockchains soberanas que pueden tener sus propios tokens y optimizar su funcionalidad para casos de uso específicos. Para conectarse con la Relay Chain, deberán realizar pagos puntuales, o si quieren una conectividad permanente podrán alquilar un slot de la Relay Chain. La mayor parte del cálculo que ocurre en la red Polkadot se delegará a implementaciones específicas de Parachains que manejan varios casos de uso. Polkadot no impone restricciones sobre lo que pueden hacer las Parachains, algunas pueden ser DApps específicas, otras pueden centrarse en características como la privacidad o la escalabilidad y otras pueden ser arquitecturas experimentales que no son necesariamente de naturaleza blockchain.
  • Parathreads: son similares a las Parachains, pero con un modelo de pago por uso (pay-as-you-go), por lo que son más económicas para blockchains que no necesitan una conectividad continua a la red.
  • Bridges: son sistemas especiales que permiten a los fragmentos de Polkadot conectarse con cadenas de bloques externas como Bitcoin, Ethereum o Tezos. Los Bridges, por diseño, pueden ser desde centralizados y confiables, hasta descentralizados y no confiables. En la actualidad, en el ecosistema Polkadot, hay dos tipos de Bridges:
    • Bridge Modules: son posiblemente Parachains de nivel de sistema o implementadas por la comunidad, que tienen un propósito distinto como adaptadores de consenso para cadenas externas.
    • Bridge Contracts: son similares a los Bridge Modules, pero sin embargo, estos existen en Parachains específicas que admiten contratos inteligentes.

Polkadot tiene un estado compartido entre la Relay Chain y todas las Parachains conectadas. Si la Relay Chain debe revertirse por cualquier motivo, entonces todas las Parachains también se revertirán para asegurar que la validez de todo el sistema pueda persistir y ninguna parte individual sea corruptible.

Para los lectores que quieran profundizar en la arquitectura de Polkadot pueden consultar el siguiente enlace.

Consenso

Polkadot utiliza un sistema de consenso híbrido mediante los algorítmos GRANDPA (GHOST-based Recursive Ancestor Deriving Prefix Agreement) y BABE (Blind Assignment for Blockchain Extension). En buenas condiciones de la red, la combinación de ambos algoritmos permite finalizar bloques casi instantáneamente.

En el sistema de consenso de Polkadot, se dan los siguientes roles:

  • Validators: se encargan de aportar seguridad a la Relay Chain, realizando staking de DOTs. Además, deben validar los bloques candidatos que proponen los Collators, y participan del consenso junto con otros Validators. Los Validators deben ejecutar una implementación de cliente de la Relay Chain con alta disponibilidad y ancho de banda suficiente. En cierto sentido, los Validators son similares a los pools de minería de las cadenas de bloques PoW actuales.
  • Collators: mantienen los fragmentos, recolectando las transacciones que generan los usuarios y produciendo bloques candidatos para que los Validators se encarguen de validarlos. Ejecutan un nodo completo para una Parachain en particular, por lo que controlan la información necesaria para poder crear nuevos bloques y ejecutar transacciones de la misma manera que lo hacen los mineros en las cadenas de bloques PoW actuales.
  • Nominators: aportan seguridad a la Relay Chain seleccionando un Validator (o un conjunto de Validators) de confianza y aportando capital como señal de dicha confianza en el Validator. Deben actuar con responsabilidad en el mantenimiento de la red, realizando staking de DOTs, ya que su capital será incrementado o reducido acorde a su contribución y comportamiento. En cierto sentido, los Nominators son similares a los mineros de las cadenas de bloques PoW actuales.
  • Fishermen: se encargan de inspeccionar la red para reportar malos comportamientos de los Validators. Este rol puede ser implementado por Collators y, en general, por cualquier nodo completo dentro de cada Parachain. A diferencia de los otros roles, los Fishermen no están directamente relacionados con el proceso de autoría de bloques. Vendrían a ser cazarrecompensas independientes motivados por la posibilidad de obtener grandes recompensas por detectar eventos de mala conducta. Como consecuencia, se espera que estos eventos malintencionados sucedan raras veces.

En la Figura 2, se pueden ver cómo los diferentes roles interactúan entre ellos para que el sistema funciones correctamente.

 

Polkadot Roles Master Blockchain Online

Figura 2: Interacción entre los 4 roles de Polkadot. Fuente

En la Figura 3 se puede ver un esquema resumido del sistema Polkadot. Los Collators recolectan y propagan las transacciones realizadas por los usuarios. Además, se encargan de propagar los bloques candidatos hacia los Validators y el Fisherman. Por otro lado, se puede observar cómo una cuenta puede publicar una transacción que se gestiona desde su Parachain asociada, y vía la Relay Chain se transfiere a otra Parachain en dónde se puede gestionar como una transacción dirigida a una cuenta gestionada por esta última.

 

Polkadot System Master Blockchain Online

Figura 3. Polkadot System. Fuente

 

Para los lectores que quieran profundizar más en el sistema de consenso de Polkadot, pueden hacerlo a través del siguiente enlace.

Gobernanza

Polkadot tiene un sofisticado sistema de gobernanza en el que todas las partes interesadas tienen voz. Las actualizaciones de la red se coordinan en cadena y se ejecutan de forma autónoma, lo que garantiza que el desarrollo de Polkadot refleje los valores de la comunidad y evite el estancamiento.

En el sistema de gobernanza de Polkadot, se dan los siguientes roles:

  • Miembros del consejo (Council Members): son elegidos para representar a las partes interesadas pasivas en dos funciones principales de gobernanza: proponer referéndums y vetar referéndums peligrosos o maliciosos.
  • Comités técnicos (Technical Committees): están compuestos por equipos activos que desarrollan Polkadot, los cuales pueden proponer referéndums de emergencia junto con el Council para realizar una votación e implementación lo más rápida posible. 

Todos los cambios en Polkadot deben acordarse mediante referéndums en los que participan las partes interesadas. La idea es juntar a los titulares de los tokens activos (DOTs) y a los miembros del consejo para administrar las decisiones de actualizaciones de la red. No importa si la propuesta es realizada por el público (titulares de DOTs) o por el consejo, finalmente tendrá que pasar por un referéndum para que todos los titulares de DOTs, ponderados por su participación, tomen la decisión.

Para aquellos lectores que quieran profundizar en el funcionamiento del sistema de gobernanza de Polkadot, pueden revisar la documentación que se encuentra en el siguiente enlace.

El token DOT

El token nativo de Polkadot, llamado DOT, tiene un suministro inicial total de 10 millones de tokens. Está configurado con 12 decimales, siendo la unidad más pequeña el Planck (Figura 4).

Unidades Polkadot Master Blockchain Online

Figura 4. Unidades manejadas para la gestión del token nativo de Polkadot. Fuente

Los tokens DOT de la mainnet de Polkadot no se pueden transferir hasta el lanzamiento de la mainnet, por lo que, hasta entonces, cualquier transferencia de DOT de la mainnet es ilegítima y no está autorizada.

El DOT en el ecosistema Polkadot desempeña cuatro propósitos principales:

  • Gobernanza: los propietarios de los tokens DOT tienen un control total sobre el protocolo, pudiendo administrar eventos excepcionales como son las actualizaciones y los arreglos que se produzcan en el mismo.
  • Staking: para asegurar que la red permanezca segura, se utiliza la teoría de juegos, por lo que los actores que participen del stake y se porten adecuadamente, serán recompensados con DOTs, mientras que los actores que tengan comportamientos maliciosos serán penalizados, recortándoles DOTs de su cantidad de staking.
  • Bonding: las nuevas Parachains son añadidas a Polkadot atando una cantidad de DOTs a las mismas. A este hecho se le llama «Bonding». Las Parachains que estén caducadas o inservibles serán eliminadas, eliminando también sus tokens.  
  • Pago: los usuarios de Polkadot deberán realizar el pago de una tasa, en DOTs, a los Validators, por gestionar los mensajes que se quieran mandar, a través de las Parachains, a otras máquinas en la red de Polkadot.

Los lectores que quieran profundizar en el estudio del token DOT, pueden hacerlo a través del siguiente enlace.

Tecnología

La Relay Chain de Polkadot está construida con Substrate, el cual es un marco de construcción de blockchains, que es el resultado de los aprendizajes de Parity Technologies en la construcción de Ethereum, Bitcoin y blockchains empresariales (Figura 5). Los desarrolladores que quieran construir en Polkadot, deberán utilizar Substrate para crear nuevas Parachains.

Tecnologia Polkadot Master Blockchain Online

Figura 5. Tecnología usada en Polkadot. Fuente

La máquina de estado de Polkadot está compilada en WebAssembly (Wasm), la cual es un entorno virtual de alto rendimiento desarrollado por compañías importantes, incluidas Google, Apple, Microsoft y Mozilla, que han creado un gran ecosistema de soporte para dicho estándar.

La red de Polkadot utiliza libp2p, el cual es  un marco de red multiplataforma flexible para aplicaciones peer-to-peer. Posicionado para ser el estándar para futuras aplicaciones descentralizadas, libp2p maneja el descubrimiento de pares y la comunicación en el ecosistema Polkadot.

El entorno de ejecución de Polkadot está codificado en Rust, C ++ y Golang, lo que hace que Polkadot sea accesible para una amplia gama de desarrolladores.

En cuanto a la seguridad, Polkadot adopta un enfoque diferente al de los sistemas PoW, o PoS, permitiendo que las cadenas de bloques agrupen su seguridad, lo que significa que la seguridad de las cadenas se agrega y se aplica a todasAl conectarse a Polkadot, los desarrolladores de blockchain pueden asegurar su blockchain desde el primer día, a diferencia de los sistemas PoW, y PoS, en los que las cadenas de bloques compiten entre sí por los recursos para proteger sus redes y pueden ser atacadas fácilmente hasta que desarrollan una comunidad significativa para respaldar su red.

Para los lectores interesados en construir una Parachain en Polkadot pueden consultar la información que aparece en el siguiente enlace.

Herramientas

Otro de los proyectos lanzados por la Web3 Foundation es Kusama, el cual implementa una red de investigación y desarrollo comunitario experimental, que sirve como red de pruebas para Polkadot. Se puede decir que Kusama es una versión temprana, no auditada, ni refinada de Polkadot, que está disponible antes que Polkadot y tiene un valor económico real. Para los desarrolladores, Kusama es un campo de pruebas que permite realizar actualizaciones en tiempo de ejecución, practicar con las funciones de gobernanza en la cadena, crear Parachains, o ejecutar el rol de Validator. Para los lectores que estén interesados en saber más detalles de Kusama, pueden hacerlo a través del siguiente enlace.

Polkadot, también dispone de un visualizador de bloques llamado «Polkascan» (Figura 6), al que se puede acceder a través del siguiente enlace, el cual permite visualizar información de los bloques, transacciones, y cuentas tanto de Kusama como de Polkadot.

Polkascan Polkadot Master Blockchain Online

Figura 6. Visualizador de bloques Polkascan. Fuente

Otra de las herramientas interesantes que dispone el proyecto Polkadot, es un cuadro de mando de telemetría en el que se puede acceder a información detallada de todos los nodos que están funcionando en varias redes como Kusama, Polkadot y Phala PoC-2, entre otras (Figura 7). 

Telemetría Polkadot Master Blockchain Online

Figura 7. Herramienta de telemetría de Polkadot. Fuente

En conclusión

Polkadot es uno de los proyectos que con más espectación y entusiasmo se siguen en el ecosistema descentralizado, ya que permite que las cadenas de bloques especializadas, se comuniquen entre sí, en un entorno seguro y sin confianza, consiguiendo que los sistemas escalen. Polkadot está diseñado para conectar y asegurar cadenas de bloques únicas, ya sean redes públicas no permisionadas, cadenas de consorcios privados, oráculos u otras tecnologías Web3. Permite una Internet donde las cadenas de bloques independientes pueden intercambiar información bajo garantías de seguridad comunes.

 

Bibliografía