¿Qué es Polkadot (DOT)?

Uno de los proyectos de criptomonedas recientemente creados que más ha captado la atención del mundo es Polkadot (DOT). ¿La razón? Este nuevo proyecto de tecnología blockchain busca destronar a Ethereum con una red mucho más escalable y eficiente. A la vez que brinda la posibilidad de interconectar distintas blockchain y convertirse en un hub de desarrollo cross-chain sin paralelo.

Sin duda, esto hace de Polkadot un proyecto con una meta muy alta y que nos deja con la siguiente interrogante ¿Lo logrará? Pues bien, en este artículo podrás aprender todo sobre este proyecto y contestar por ti mismo, estas y otras preguntas sobre este grandioso proyecto

Polkadot, origen de este proyecto

El origen de este proyecto nos lleva a conocer a una de las principales figuras del mundo cripto, Gavin Wood. Wood es un conocido desarrollador de tecnología blockchain que formó parte del equipo de desarrollo de Ethereum. De hecho, Wood tuvo el cargo de desarrollador principal de Ethereum, estando al mismo nivel que Vitalik Buterin. Una situación que denota su conocimiento y trabajo dentro de este proyecto. Es gracias al trabajo de Wood, que Ethereum cuenta con el poderoso lenguaje de programación Solidity, el cual fue creado por su persona. Sin embargo, el 11 de enero 2016, Wood decidió que era momento de partir y comenzar su propio proyecto, abandonado el proyecto Ethereum.

En ese momento, la idea de Wood era comenzar un proyecto blockchain capaz de superar las debilidades de Ethereum. En especial, su escalabilidad y habilitar nuevas estructuras de funcionamiento cross-chain o entre cadenas. Así, para junio de 2016, Wood ya había comenzado a trabajar en este nuevo proyecto, y en octubre de 2016, presentó al mundo la primera versión del whitepaper de Polkadot. Con esto daba comienzo este interesante proyecto, en el que también estaba participando el desarrollador Marek Kotewicz.

Desde ese momento, el desarrollo de Polkadot comenzaría su camino, hasta reunir una mayor cantidad de atención sobre el mismo. Algo que, de hecho, se puede ver claramente en la actualidad. Y es que, Polkadot es uno de los proyectos blockchain de mayor crecimiento durante 2020 y principios de 2021.

Financiación inicial del proyecto

Gavin Wood, comenzó este proyecto contando inicialmente con el apoyo económico de su empresa Parity y la Web3 Foundation, que también ayudó a crear. Si bien, Parity y Web3 Foundation son referentes dentro del mundo Ethereum, su participación en la financiación de Polkadot es vital.

Sin embargo, los recursos de ambas empresas eran limitados debido a que estaban centradas en Ethereum. Esto llevó a la realización de una Oferta Inicial de Monedas (ICO) que se realizó desde el 15 hasta el 27 de octubre de 2017. El éxito de la ICO fue extraordinario, logrando recaudar 143 millones de dólares para el desarrollo de este proyecto.

Sin embargo, poco tiempo después, este éxito se vería puesto en grave riesgo. Un hackeo haría que Parity perdiera más de 90 millones de dólares dentro de la red de Ethereum. Con sus ingresos severamente disminuidos, se replanteo la ruta de trabajo y Gavin Wood dejó en claro que el trabajo de Polkadot seguiría. Esto gracias a que había dinero suficiente para que el proyecto tuviera éxito y se respetarán las condiciones de la ICO.

Adicional, Parity y Web3 Foundation buscaron la forma de pedir apoyo para realizar un hard fork que permitiera recuperar el resto del ETH bloqueado por el hackeo. La medida recibió duras críticas y la comunidad se opuso a la realización de una acción como la que se dio tras el hackeo de The DAO en 2016. Esto porque temían que esta situación llevará a una nueva incisión en la comunidad. ¿Resultado? Los fondos siguen bloqueados en el conocido Parity Bug, y parece no haber forma de sacar dicho dinero de ese lugar.

Polkadot, una propuesta de red blockchain radicalmente distinta

Ahora bien, Polkadot comenzó su camino en la mente de Gavin Wood como una red capaz de ofrecer las mismas capacidades de Ethereum, superando al mismo tiempo sus debilidades, y ofreciendo una serie de características únicas. Para lograr esto, Polkadot ideó desde sus bases toda una nueva serie de tecnología y protocolos de consenso pensados para tal fin.

En primer lugar, Polkadot se diseñó teniendo en mente un funcionamiento de redes heterogéneas, que podían interconectarse. De esta forma, Polkadot podría cumplir con dos funciones bien definidas:

  1. Como una cadena de transmisión y procesamiento de datos. Una funcionalidad que le permite recibir información de otras cadenas, procesar dicha información y enviarla de vuelta a la cadena de origen. Esta primera opción, permite que Polkadot se convierta en una capa de escalabilidad para cualquier otra blockchain que lo necesite.
  2. Funcionamiento independiente creando sus propias cadenas. Es decir, crear cadenas con sus propias capacidades, como el caso de compatibilidad para ejecutar smart contracts o tokens. Esto permite el funcionamiento nativo de aplicaciones descentralizadas (DApps) y token sobre la red que pueden aprovechar al máximo el potencial de la red.

La idea con todo esto, es que Polkadot pueda convertirse en una opción de escalabilidad para redes como Ethereum u otras criptomonedas. Además, también podría servir para interconectar distintos ecosistemas en distintas blockchain todo ello sobre una misma red. Este último caso, por ejemplo; se puede ver con el proyecto DeFi, Equilibrium que hace vida en EOS.

Relay Chain y Parachains, la división de cadenas de Polkadot

Adicionalmente, este funcionamiento permite que Polkadot pueda brindar una mejor seguridad, escalabilidad mediante sharding y ejecución paralela dentro de la red, lo que incrementa el rendimiento general de la misma. En este punto, es importante destacar la aplicación del sharding dentro de Polkadot. Recordemos que esta técnica informática divide la cadena principal y la red, en varias subcadenas y subredes adjuntas a la misma. De esta forma, cada subcadena tiene su propio historial blockchain, nodos, y toda la infraestructura necesaria para su funcionamiento.

En Polkadot esto es precisamente lo que pasa. Las subcadenas en Polkadot reciben el nombre de parachain, las cuales pueden verse como una sidechain o cadena secundaria, donde se ejecuta una instancia blockchain propia. Es decir, una parachain tiene una blockchain o historial propio, que sostiene su propia existencia de tokens, smart contracts, y nodos. Así, esta parachain tiene su propia capacidad y poder de cálculo propio para atender sus necesidades.

Por otro lado, la Relay Chain, es la cadena principal de Polkadot, y esta existe bajo la unión del historial de todas las parachains que se ejecutan en paralelo dentro de la red Polkadot. Esta organización hace posible que Polkadot pueda ejecutar en paralelo smart contracts, y adicionalmente, permite una escalabilidad superior a las blockchain actuales.

Adicionalmente, esta funcionalidad segmentada también permite la existencia de los Bridges o Puentes, con los cuales las parachains pueden abrir comunicación con otras blockchain (como Ethereum, EOS o Bitcoin) y servir de enlace con las mismas. Como las parachains pueden comunicarse entre sí, esto permite también que distintos Bridges apuntando a otras cadenas puedan comunicarse, sirviendo de canales cross-chain para realizar operaciones entre los mismos. En resumen, con Polkadot y sus Bridges, es posible interconectar Bitcoin y Ethereum (u otras blockchains) a gran velocidad, con costos altamente reducidos sin renunciar a la seguridad en ningún momento.

Smart contracts y tokens dentro de Polkadot

Polkadot de forma nativa no ofrece soporte nativo para smart contracts. Esto deja de lado la creación de tokens o DApps nativamente en la red. Sin embargo, las parachains de Polkadot son extensibles y modulares, teniendo la capacidad de poder crear capas de abstracción que permitan la ejecución de dichos smart contracts. Al ejecutarse dentro de una parachain, el impacto de los mismos se ve limitado en cuanto a consumo de recursos, a esa parachain, dejando al resto del sistema funcionando de forma normal. Esto evita, por ejemplo, que un alto número de transacción en una parachain, merme el rendimiento del resto del sistema.

Otra gran ventaja de este sistema es que su funcionamiento, diseño, programación y despliegue es mucho más sencillo. Eso ha hecho de Polkadot una red mucho más segura. Adicionalmente, las parachains con capacidad de smart contracts pueden activar protocolos alternativos de alta velocidad que permitan la ejecución de esos smart contracts con mínimo impacto en el ecosistema general de Polkadot.

Un ejemplo para este tipo de funcionalidades es EdgeWare, la cual cuenta con una capa de extensión para Polkadot que habilita la ejecución de los mismos, incluyendo compatibilidad con los smart contracts de Ethereum y su EVM. Adicionalmente, también está, Ink, un desarrollo pensado para construir smart contracts que explotan las capacidades de Substrate, una parte fundamental de Polkadot, y que usa el lenguaje de programación segura, Rust.

Otro proyecto de gran relevancia en este sentido es Moonbeam, el cual habilita una parachain de Polkadot con estas capacidades, el cual implementa una solución totalmente compatible con la EVM de Ethereum, y con Web3 RPC API, dando todas las herramientas necesarias a los programadores para aprovechar el potencial de los smart contracts de Ethereum sobre Polkadot.

Por supuesto, estas no son las únicas soluciones para smart contracts en parachains de Polkadot, pero son una muestra clara de la posibilidad de implementar esta tecnología de forma sencilla y mucho más dentro de la red.

Organización de la red dentro de Polkadot

Ahora para lograr este tipo de funcionamiento, Polkadot ha creado toda una nueva organización de red en la cual destacan cuatro elementos. Estos elementos, son:

Validadores

La red Polkadot como toda red blockchain, cuenta con un grupo de nodos validadores cuyo trabajo es verificar, validar e informar a la red, sobre la información contenida dentro de cada bloque que forma parte de la blockchain. Dichos bloques provienen de los nominadores, quienes se encargan de crear el bloque candidato que será analizado y validado por los validadores.

Dada la importancia de un validador, y la forma en cómo trabaja Polkadot, esta posición requiere de un hardware potente, gran ancho de banda, una conexión dedicada en exclusiva a su trabajo dentro de la red y, adicional, los validadores de Polkadot deben bloquear tokens DOT con el fin de poder calificar como validadores de la red.

Por otro lado, recuerda que Polkadot es una red con un funcionamiento segmentado en sharding y con capacidad de paralelismo, lo que eleva las exigencias de potencia de cómputo y de conexión.

Nominadores

Los nominadores por su parte, son un tipo de nodo especial cuyo trabajo es crear un vínculo seguro entre los validadores y todo el proceso de funcionamiento de la red. El papel de los nominadores es sencillo: tomar las transacciones de la red, agruparlas y realizar el proceso de generación de metadatos necesarios para que los validadores puedan verificar el mismo e incluirlo dentro del historial de la blockchain de Polkadot.

Sin duda esta función se parece mucho a los mineros del sistema Proof of Work (PoW) o nodos validadores de Proof of Stake (PoS), y su función básicamente es la misma en este sentido.

Adicionalmente, los nominadores emiten a los validadores la estructura de un bloque será examinada por los validadores, quienes tendrán la última palabra en emitirlo y hacerlo parte del historial de Polkadot.

Clasificadores

Este tipo de nodos ayudan a los validadores a mantener un historial completo de la parachain (subcadena de Polkadot) a la que han sido asignados. Su trabajo es mantener en todo momento la información necesaria para crear nuevos bloques dentro de la parachain, los cuales finalmente terminarán en el historial completo de Polkadot. En circunstancias normales, recopilará y ejecutara transacciones para crear un bloque y proporcionarlo, junto con una prueba de conocimiento cero (ZKP), a uno o más validadores actualmente responsables que estén proponiendo un bloque dentro de la parachain.

Pescadores

Dado el funcionamiento en sharding de Polkadot, donde existen diversas subcadenas que forman parte de un historial más completo, se ha creado una infraestructura diseñada para evitar que actores maliciosos puedan hacer trampas. Dicha estructura es mantenida por los pescadores o fisherman. Estos nodos tienen la función de buscar transacciones duplicadas u operaciones ilegales dentro de la red, para evitarlas, a cambio de una recompensa.

El funcionamiento de estas cuatro piezas es lo que permite la orquestación del proceso de generación, verificación, validación y emisión de los bloques dentro de Polkadot y sus parachains. Además, es de destacar que la comunicación entre cada uno de estos elementos (entre las subcadenas y la cadena principal) es completamente asincrónica y paralela, garantizando una alta velocidad de comunicación dentro del sistema.

Consenso dentro de la red

Los elementos que forman parte de la red de Polkadot trabajan al unísono gracias al protocolo de consenso de Polkadot conocido como NPoS o Nominated Proof of Stake. Este protocolo de consenso está pensando como una ligera variación del conocido protocolo de Prueba de Participación (Proof of Stake – PoS).

En NPoS, los validadores deben proporcionar la infraestructura y el mantenimiento de la red. Son ellos los responsables de la producción de nuevos bloques, la validación de los bloques parachain, garantizando la finalidad y en última instancia la seguridad de la red. Deben ser receptivos en todo momento y ejecutar una infraestructura segura y confiable.

Además, los validadores necesitan tokens que los respalden, lo que los incentiva a cumplir con las reglas, ya que, de lo contrario, se podrían quitar parte de estos tokens (un concepto llamado “corte”). Por sus servicios, a los validadores se les paga en recompensas denominadas en el token nativo de la red subyacente. Para que los validadores puedan realizar sus servicios para la red, deben estar en el conjunto activo. Los validadores del conjunto activo se turnan para proponer, validar y añadir nuevos bloques.

Por su parte, los nominadores son poseedores de tokens que contribuyen a la seguridad de la red respaldando económicamente (también conocido como “nominando”) hasta 16 validadores de su elección con sus tokens (también conocido como “participación”). Los nominadores comparten parte de las recompensas obtenidas por los validadores en el conjunto activo que nominaron. Es importante tener en cuenta que los nominadores también están sujetos a recortes en caso de mala conducta de uno de sus validadores nominados.

¿Cómo funciona?

NPoS se puede comparar con una elección y se inspiró en el método secuencial de Phragmen. Este método se introdujo a finales del siglo XIX para optimizar la elección de un conjunto de un número determinado de personas de un conjunto más grande de candidatos. Así, el objetivo de NPoS es garantizar la descentralización y la representación justa a través de una representación proporcional justificada. Y junto a ello, brindar una alta seguridad a través del máximo apoyo.

La representación justificada proporcional garantiza que los espacios se asignen a los validadores de forma proporcional a sus nominaciones. Por lo tanto, cuantas más nominaciones y, en última instancia, mayor sea la cantidad de tokens que respaldan a un validador, mayor será la probabilidad de que el validador sea elegido para el conjunto activo. Los validadores se eligen al final de cada. Esto significa que el conjunto de validadores activos cambia en cada Era.

Una vez que los validadores son elegidos para el conjunto activo de acuerdo con sus nominaciones, el apoyo proporciona una distribución de la participación nominada de modo que cada validador en el conjunto activo tenga aproximadamente la misma cantidad de participación que la respalda. Esto aumenta la seguridad general de la red al aumentar las apuestas respaldando los “enlaces más débiles” del conjunto de validadores, lo que en última instancia lo hace más resistente a los ataques.

Distribución de recompensas en NPoS

En NPoS, todos los validadores del conjunto activo reciben la misma cantidad de recompensas. De estas recompensas, se deduce la comisión del validador. Las recompensas restantes se distribuyen entre los nominadores en proporción a su participación. En este punto, el sistema funciona de forma idéntica a Proof of Stake (PoS).

Token DOT, el corazón económico de Polkadot

Para mantener el funcionamiento de toda la red Polkadot, este proyecto ha creado un token de nombre DOT. El objetivo de este token es múltiple. En primer lugar, el mismo sirve para la gobernanza descentralizada del protocolo. Para ello, el token DOT permite a los validadores un poder de voto con el que pueden participar en las decisiones y evolución del proyecto.

Además, el token DOT sirve para vincular e incentivar a los validadores a actuar con honestidad dentro de la red. Esto al tener un interés financiero en la autenticidad del proceso de verificación. Incluso, las parachains o subcadenas de Polkadot pueden crearse, unirse o destruirse gracias a los tokens DOT. Algo que sin duda ofrece una enorme flexibilidad y mantenibilidad a la red.