Cosmos (ATOM) es un interesante proyecto que apunta a construir un sistema de interoperabilidad blockchain, descentralizado, rápido, seguro y económico, para expandir las capacidades de esta tecnología. 

Símbolo
ATOM
Logotipo
Cosmos Logo
Algoritmo
Consenso
Tendermint (PoS)

El proyecto Cosmos (ATOM), es un proyecto centrado en brindar una infraestructura capaz de unir a varias blockchain independientes y hacerlas interoperables entre ellas. La intención con ello es permitir que dichas blockchains, el valor y las aplicaciones sobre las mismas, puedan comunicarse unas con otras usando un estándar que garantice dichas operaciones y que puedan llevarse a cabo de forma rápida.

El origen de Cosmos

La historia de Cosmos comenzó el 26 de junio de 2016, cuando su creador Jae Kwon, creó el whitepaper de un proyecto llamado Gnuclear. La idea de Gnuclear era crear un sistema interoperable para blockchain completamente descentralizado, que usaba el protocolo de consenso Tendermint para tales fines. La idea inicial fue evolucionando poco a poco con la ayuda de la comunidad, hasta que el 5 de agosto de 2016, se renombró el proyecto para ser llamado Cosmos.

A partir de ese momento, Kwon comenzó a buscar mecanismos que sirvieran para financiar su idea. Fue así, como el 1 de enero de 2017, comenzó a ejecutar una venta privada de tokens para encontrar financiación. En total, 12 millones de tokens ATOM fueron vendidos a un precio de 0,025 $ USD por ATOM, para un total de 300.000 $ USD recaudados. En paralelo, también se realizó otra venta privada de token por un costo de 0,08 $ USD por ATOM, con un total de 160.293.050 de tokens vendidos, y una recaudación total 1.329.472 $ USD en total.

Tras esta experiencia el 4 de junio de 2017, se inició una ICO (Oferta Inicial de Monedas), para vender un total de 160.293.050 de tokens ATOM, con un precio de 0,1 USD por token, y con un total de 16.029.305 $ USD recolectados por dicha venta. En este punto, el desarrollo de ATOM comenzaría a andar su camino para hacerse toda una realidad.

El bloque génesis y puesta en marcha de la red

La primera prueba de la tecnología de ATOM se realizó el 5 de septiembre de 2017, momento en el cual se probó el sistema de consenso Tendermint de la red. En esta prueba, se descubrieron fuertes anomalías que llevaron al equipo a revisar profundamente el funcionamiento del sistema, y llevaron cerca de un año de trabajo para ser completamente solventados.

No fue sino hasta el 22 de abril de 2019, cuando se lanzaría finalmente la mainnet (red principal) de Cosmos y se comenzaría el trabajo real de su red minando el primer bloque (bloque génesis) de la misma.

El lanzamiento fue seguido de la distribución de tokens prometida por la ICO y la venta privada de criptomonedas. Los contribuyentes de la primera venta privada (por 300 mil dólares) recibieron un total de 11.809.947,91 de tokens ATOM, por su apuesta y firme apoyo al proyecto en un momento tan temprano. Los contribuyentes de la segunda venta privada (por 1.329.472 $ USD) recibieron un total de 16.856.718,97 de tokens ATOM. Y, finalmente, los contribuyentes públicos recibieron un total de 23.619.895,81 de tokens ATOM.

Adicional a esto, se creó un fondo para el I+D para el soporte del proyecto Cosmos y sus desarrolladores con un total del 10% de toda la asignación inicial de tokens del bloque génesis de la red. Eso es un total de 23.619.895,81 de tokens ATOM asignados para tal fin.

Además, se asignó un total de 3.054.207,32 ATOM asignados a 8 direcciones, un total de 288.500 ATOM asignados a 53 direcciones y finalmente 20.277.188,49 ATOMs divididos entre dos direcciones de múltiples firmas distintas. En total, se asignaron 236.198.958,12 de tokens ATOM en el bloque génesis a 984 cuentas distintas. El registro completo de las direcciones y montos se mantiene en el GitHub del proyecto y puedes verlo en este enlace.

Arquitectura y funcionamiento de Cosmos

Como ya hemos comentado, Cosmos es en realidad una red descentralizada de blockchains paralelas independientes. Una red, donde cada blockchain es impulsada por su propio algoritmo de consenso e interconectada por la red Cosmos. Esto puede resultar complejo de ver, pero la realidad es que existe toda una estructura de trabajo que hace posible esto, y entre esos actores podemos mencionar:

El Hub Cosmos, el centro de Cosmos

El funcionamiento de Cosmos recae en una estructura que es conocida como Hub. El Hub de Cosmos, es en realidad un ledger que mantiene el historial principal de toda la red Cosmos. En palabras más sencillas, es una blockchain que guarda la información de todo lo que sucede en Cosmos y las acciones que se llevan a cabo entre los distintos actores que están interconectados a su red.

Por ejemplo, si dos cadenas de bloques interconectadas a Cosmos comparten determinados eventos, dichos eventos quedarán grabados en el Hub central de Cosmos atestiguando lo ocurrido. Al mismo tiempo, los resultados de esas acciones quedarán grabadas en la respectivas blockchain que han interactuado. De esta forma, la evidencia de la interacción queda grabada de tal forma que no existe manera de negar la misma. Esto resulta muy útil, puesto que este tipo de estructura facilita enormemente que, por ejemplo, las DApps (Aplicaciones Descentralizadas) de diferentes blockchain pudieran comunicarse entre sí.

En todo caso, el Hub es un historial de sucesos entre los participantes de la red Cosmos. Este historial es posible gracias a la existencia del protocolo de comunicación entre blockchain de Cosmos (por sus siglas en inglés, IBC de Inter Blockchain Communication). El trabajo de este protocolo es proporcionar un conector estándar que permita a las blockchains dentro de Cosmos enviar mensajes entre sí y compartir información, manteniendo un registro completo de dichos mensajes dentro del Hub.

De esta forma es posible habilitar intercambios de forma completamente descentralizada entre todas las blockchains. El alcance de esta idea es tan amplio, que a Cosmos se le conoce en el mundo cripto como “el Internet de la Blockchain

Stellar Network

Las zonas de la red Cosmos

Una zona en la red Cosmos es una cadena de bloques independiente que intercambia mensajes IBC con el Hub. Desde la perspectiva del Hub, una zona es una cuenta de múltiples firmas de membresía dinámica de activos múltiples que puede enviar y recibir tokens usando paquetes IBC. Al igual que una cuenta de criptomonedas, una zona no puede transferir más tokens de los que tiene, pero puede recibir tokens de otros que los tengan. Una zona puede designarse como una “fuente” de uno o más tipos de tokens, otorgándole el poder de inflar ese suministro de tokens.

Para evitar los ataques de doble gastos en las zonas, el protocolo de consenso de Cosmos, limita las acciones posibles dentro de estas zonas y el Hub, especialmente si hay zonas con un consenso comprometido de alguna manera.

Tendermint, un algoritmo de alta velocidad

Por supuesto, la amplitud de lo que Cosmos puede hacer, requiere de un algoritmo de consenso de alta velocidad capaz de manejar el flujo de información entre distintas blockchain. Para lograrlo, Cosmos hace uso de un algoritmo de Prueba de Participación (PoS) pensado en la velocidad y la alta escalabilidad, el algoritmo Tendermint.

Tendermint, es un algoritmo creado por el mismo Jae Kwon en 2014, con la intención de presentar un algoritmo de alta velocidad y seguridad. De hecho, dicho algoritmo está diseñado para ser una plataforma BFT SMR (State Machine Replication) de alto rendimiento que replica servicios que luego pueden simularse como máquinas de estado deterministas y no aleatorias. Básicamente, esto significa que Tendermint Core se creó para copiar servidores (o estados) especializados. Esto se realiza a través de una máquina especial que copia servidores y los distribuye por toda la red Cosmos global. Este proceso permite a los ingenieros de software de Tendermint Core reproducir la cadena de bloques en máquinas “estatales” de todo el mundo.

¿Resultado? El uso de Tendermint en Cosmos es vital, porque la interconexión de varias blockchains en una misma infraestructura lleva las exigencias de escalabilidad a un nuevo nivel, y la estructura BFT SMR de Tendermint es perfecta en este punto. Un buen ejemplo de ello es que las pruebas realizadas a Tendermint permitieron alcanzar más de 10.000 transacciones por segundos (10.000 TPS) y su escalabilidad crece con el aumento en el número de sus nodos. De allí que proyectos como Cosmos, Kava, Terra, Protocolo BAND, Aragon, Hyperledger, Ethermint, Oasis Labs, IRISNet e incluso Libra de Facebook (ahora conocida como Diem) entre otros proyectos usen Tendermint para ofrecer un alto rendimiento en su red P2P.

ATOM, un token para la plataforma

Por otro lado, Cosmos también cuenta con una criptomoneda o token nativo de nombre ATOM. Dicho token tiene el papel fundamental de crear un ecosistema económico que incentive el trabajo que sostiene toda la red. En primer lugar, la red Cosmos depende del trabajo de 100 validadores, quienes tienen la responsabilidad de usar el protocolo Tendermint para realizar el proceso de generación y validación de bloques dentro de la red. Este límite, es un límite inicial que puede ser alterado por la gobernanza del protocolo en cualquier momento.

El trabajo de los validadores en todo caso debe ser recompensando, y como en la mayoría de las blockchain, esa recompensa se da en tokens nativos, en este caso, los tokens ATOM. Pero esa selección de validadores respeta las reglas de todo protocolo de consenso PoS, así que para ser elegido se debe tener un staking importante para poder participar. Esto significa que los validadores deben almacenar y bloquear saldos en ATOM para obtener dicha participación.

Junto a ello, el token ATOM sirve como un mecanismo para prevenir el mal uso de la red, es decir desincentivar el spam, así como para acceder a los servicios de la red y como sistema de gobernanza dentro de la red, ya que los tenedores de tokens ATOM pueden emitir votos en proporción a sus staking en ATOM.

Por otro lado, la emisión de tokens ATOM es ilimitada, y la generación de los mismos por los validadores, es decidida de forma dinámica por la red de acuerdo a las directrices de la gobernanza del protocolo. En estos momentos, las recompensas por bloques se calculan entre el 7 y el 20% del rendimiento anual del suministro total de ATOM. Además, se suman las tarifas de transacción, que suman la totalidad de las recompensas para los validadores. La generación de bloques en la red sucede casa 5-6 segundos, siendo una de las redes blockchain más rápidas en este ecosistema.

Fotones (Photons), un segundo token para la plataforma

Aparte de los tokens ATOM, en Cosmos también existen los Fotones (Photons). Estos son un tipo de token con mucha más liquidez y velocidad que el ATOM. Este segundo token es usado para realizar transacciones entre todas las zonas que están conectadas al Hub.

Los tokens ATOM están diseñados para ser enlazados en el Hub. Esto significa que no son ideales para pagar tarifas o moverse en otras zonas del ecosistema de Cosmos. Esta es la razón por la que se crearon los fotones (Photons) a los fines de superar estas limitaciones. Puede verse la existencia de los “fotones” de Cosmos, como una especie de Gas (como el que existe en Ethereum, solo que los fotones son tokens reales) que sirve para el pago de comisiones y otras tareas de interoperabilidad blockchain dentro de Cosmos.

Protocolo de comunicación entre cadenas de bloques (IBC)

El protocolo Cosmos IBC, se creó para resolver uno de los desafíos más importantes que enfrentan los sistemas blockchain en la actualidad: la falta de comunicación y el intercambio de datos entre redes.

La interoperabilidad y la capacidad de comunicarse con los protocolos blockchain internos y externos es fundamental para la aplicación generalizada en el mundo real y la adopción tecnológica de blockchain y criptomonedas. Imagine una red telefónica que solo pudiera comunicarse con participantes en su área geográfica inmediata. Simplemente no funcionará. Cosmos IBC, es un protocolo de mensajería similar a TCP/IP construido para compartir información y datos, lo que finalmente permite la comunicación de varias cadenas de bloques entre sí.

De esta forma Cosmos IBC, por ejemplo, puede ver que la interacción que un usuario A realiza en Bitcoin, puede repercutir con un usuario B dentro de Ethereum, y todo esto, porque Cosmos puede crear un puente de comunicación que permita analizar la información entre ambas cadenas y hacer que las DApps o aplicaciones que están realizado las operaciones entre ambas cadenas, reaccionen de acuerdo a las operaciones de una forma completamente integrada.

Características de la Cosmos Network

Entre las principales características que podemos identificar en Cosmos Network, se pueden mencionar:

Interoperabilidad

Toda la red ha sido diseñada pensando en facilitar la interoperabilidad de Cosmos con otras blockchains, y de esas blockchain como un todo. Con las Zonas, Cosmos puede crear puentes que comunique una blockchain específica con el otro conjunto de zonas conectadas a la red, y así aumentar su estadio de interoperabilidad.

Así, por ejemplo, una Zona con una conexión a la red Ethereum, podría usar a Cosmos para conectarse a una Zona conectada a la red EOS, para intercambiar tokens, operaciones y más usando a Cosmos con un puente de interconexión entre las mismas.

Escalable

El uso de Tendermint dentro de Cosmos deja muy en claro que este proyecto puede escalar en maneras que otros proyectos no pueden. De hecho, la escalabilidad de Tendermint es indefinida puesto que a mayor número de Zonas y validadores dentro de ellas, mayor será la capacidad de la red para escalar.

Descentralizado

Cosmos se basa en los principios de la criptografía, economía sana, teoría del consenso, la transparencia y la responsabilidad para servir como una nueva base para nuestros sistemas financieros futuros.

Puede usar Cosmos como prueba para un nuevo diseño de criptomonedas, una actualización de una criptomoneda existente, como un medio para el intercambio descentralizado, o como una plataforma para contratos inteligentes escalables.

Cosmos no es solo un libro contable distribuido, y el Hub de Cosmos no es el centro de su universo. Cualquiera puede usar este protocolo para crear su propio Hub para competir con Cosmos en un mercado libre de blockchains.

Cosmos SDK, creando aplicaciones sobre Cosmos

Otra herramienta importante en Cosmos, es su SDK o entorno de desarrollo. Este SDK es una construcción enteramente basada en software libre y puede ser usada para crear infraestructura y plataformas basadas en Cosmos Hub.

Así el SDK de Cosmos permite a los desarrolladores usar no sólo módulos prediseñados, sino también sus propios módulos personalizados, lo que les permite probar su producto mínimo viable antes de lanzar su propia red principal pública (protocolos de cadena de bloques que han completado las pruebas y están listos para uso público).

Además, Cosmos SDK permite a los usuarios conectar su propia cadena de bloques a la red Cosmos a través de IBC, lo que aumenta la liquidez y la adopción de los usuarios. Ejemplo de usos de Cosmos SDK se pueden ver en redes como Kava, Terra, IRISNet y Agoric.

Conclusiones

Cosmos es una gran idea, un proyecto que puede habilitar toda una nueva serie de aplicaciones dentro del ecosistema blockchain. La idea de abrir autopistas de información y comunicación entre los distintos proyectos blockchain es algo que tiene a muchos desarrolladores del mundo cripto trabajando al 100% en la actualidad. No en vano, proyectos como Polkadot o The Graph se han centrado en este tipo de funcionalidades, con distintos grados de éxito.

En este punto, esta clara que el otro gran paso dentro de la tecnología blockchain será la interoperabilidad, que de la mano con la escalabilidad, será uno de los pilares fundamentales de la expansión y masificación de esta tecnología en todo el mundo.

Enlaces de interés

Web Oficial

Cosmos - ATOM

Whitepaper

Cosmos - ATOM

Twitter Oficial

Cosmos - ATOM

GitHub Oficial

Cosmos - ATOM

GitHub Oficial

Ir al Github de Cosmos

Hilo de Reddit

Cosmos - ATOM

Foro Bitcointalk

Cosmos - ATOM

Block Explorer

Cosmos - ATOM