Covalent (CQT) es un proyecto que busca ofrecer un servicio REST API para facilitar el desarrollo de aplicaciones blockchain y, al mismo tiempo, ofrecer todo ello en una red descentralizada que usa el poder de la blockchain para garantizar un funcionamiento sin fallas, de acceso global y muy seguro.
La expansión de las criptomonedas y la tecnología blockchain ha impulsado la generación de herramientas orientadas a aprovechar las capacidades de estas redes descentralizadas. Entre esas herramientas destaca Covalent, una API que permite unificar distintos proyectos blockchain de tal forma que los desarrolladores pueden utilizarla para extraer información útil de las cadenas de bloques compatibles.
Así, por ejemplo, se puede desarrollar de forma muy fácil una aplicación con la que se pueda observar la interacción de datos on-chain y demás estadísticas de uso entre redes como Ethereum y Polygon, así como las distintas dApps que se ejecutan en ellas. Y esto, es sólo una muestra de las potencialidades de Covalent.
Sin duda, este tipo de funciones extienden enormemente las posibilidades de la tecnología blockchain y su alcance, por lo que la comunidad se aboca al desarrollo de las mismas con un claro fin: mejorar las prestaciones de la tecnología, crear nuevos casos de uso y potenciar el ecosistema en general.
Origen de Covalent
El origen de Covalent se remonta al año 2018, cuando sus creadores Ganesh Swami y Levi Aul, decidieron constituir la empresa y hacer realidad este proyecto. Su versión inicial se reveló en un hackathon en 2017, con la idea de crear una REST API (una interfaz de programación, que permite acceso a datos mediante tecnologías webs) que interconectara a las más importantes blockchains del mundo crypto.
De esta manera, los desarrolladores podrían disponer de una potente herramienta para acceder a datos de todas esas blockchains a través de una sola API. Así, por ejemplo para obtener información acerca de BTC o Ethereum, no sería necesario programar interfaces para cada una de estas redes, sino que una misma plataforma podría brindar los datos necesarios.
Bajo este concepto, los desarrolladores de Covalent trabajaron durante tres años seguidos hasta que, finalmente, el 29 de abril de 2021 lanzaron la Covalent Network. Covalent Network es una cadena de bloques que funciona sobre la tecnología de Moonbeam. En la actualidad el equipo continúa trabajando en una implementación directa sobre Polkadot para aprovechar las capacidades de despliegue en una parachain.
Gracias a todo este esfuerzo, Covalent busca resolver los enormes problemas de infraestructura que ralentizan la adopción y aceptación de blockchain en todo el mundo. Algo especialmente útil en el mundo de las dApps y las finanzas descentralizadas (DeFi), los cuales se verían enormemente beneficiados de esta tecnología.
Objetivo e impacto de Covalent
El principal objetivo de Covalent es ofrecer acceso a servicios de gestión de datos en los que los desarrolladores de aplicaciones puedan usar su REST API para obtener datos de las blockchains indexadas por la red. ¿De qué clase de datos hablamos? Pues bien, Covalent es capaz de indexar datos de cada bloque en las blockchains soportadas, entre los que destacan:
- Direcciones
- Transacciones
- TX Hash
- Block Hash
- Operaciones con tokens (ERC-20 o ERC-721, incluyendo compatibles)
- Eventos de registro
- Transiciones de estado
- Eventos de seguimiento
- Creación y despliegue de contratos
- Interacción con contratos
Esto significa que Covalent es capaz de ofrecernos un conjunto completo de datos útiles que se pueden utilizar para mejorar las prestaciones y servicios de nuestras aplicaciones. Todas estas capacidades convierten a Covalent en un proyecto especialmente útil, dado que:
Nos permite contar con una mejor y mayor disponibilidad de datos que pueden ser integrados a nuestra aplicación. A diferencia de proyectos como The Graph, Covalent indexa la totalidad de los datos y los pone a disposición con una simple API, sin tener que realizar pasos anteriores de configuración y despliegue.
Otro punto importante de Covalent es su componibilidad o la capacidad para que los desarrolladores puedan construir rápida y fácilmente soluciones financieras aprovechando bloques de construcción «tipo Lego» de una multitud de proyectos. Esto es posible gracias a la funcionalidad multicadena de Covalent y a su API de desarrollo.
Facilidad para el desarrollo gracias a que es una API que puede ser integrada sin complicaciones en cualquier código y a partir de allí usarse sin mayores complicaciones.
El impacto de estas capacidades de Covalent es enorme, ya que permite fácilmente integrar potentes capacidades de adquisición de datos a cualquier aplicación, sea esta una dApps o una aplicación centralizada (como las apps de tu smartphone).
¿Cómo funciona Covalent?
Básicamente el funcionamiento de Covalent se basa en «data sink», que se encarga de recibir toda la información de las blockchains conectadas y soportadas, para luego clasificar todos esos datos en lo que Covalent denomina «block-specimens». De esta manera, la plataforma recopila toda la información de cada bloque en las cadenas de bloques y crea un enorme índice relacionado para que podamos acceder a esos datos cuando deseemos.
Esto, por supuesto, no es una tarea fácil, dada la enorme cantidad de información que se genera en blockchain. Por ejemplo, Ethereum tiene una blockchain cuyo historial completo (conocido como archive node) ya supera los 9 TB de información. Y si sumamos redes como Polygon o BSC, los historiales alcanzan fácilmente los 12 TB de datos. Y esto sólo en tres redes que continúan creciendo día tras día, lo que aumenta esa necesidad de datos y almacenamiento. Para hacer frente a esto, Covalent ha creado una red conocida como Covalent Network, en la que existe una estructura de funcionamiento que ayuda a resolver este problema.
Validadores
El primer rol dentro de esta estructura es realizado por los validadores. Los validadores dentro de Covalent son nodos especialmente diseñados para garantizar que los datos que llegan a la Covalent Network y su blockchain sean los correctos. Para ello, ha creado una enorme red que trabaja bajo un protocolo de consenso único que le permite decidir de forma descentralizada si la información que reciben de una cadena de bloques específica es la correcta.
De esta forma los validadores de Covalent realizan dos tareas vitales:
- Garantizar que los datos dentro de la red sean correctos.
- Mantener el funcionamiento honesto de todos los participantes de la red.
Dada la tarea tan vital que realizan los validadores, estos nodos sólo pueden crearse mediante staking de tokens Covalent (CQT). De esta manera se garantiza la integridad de la red en todo momento.
Productores de block-specimens
El segundo nivel dentro de la estructura de Covalent es para los productores de block-specimens. Estos son los encargados de ejecutar el «data sink», la interfaz que se encarga de consumir los datos provenientes de los bloques de blockchains externas que son soportadas por la Covalent Network. Para lograr esto, generalmente los productores de block-specimens ejecutan un nodo de la cadena de bloques a la que realizan el data sink, y a partir de los datos del nodo, clasifican la información según las necesidades de la Covalent Network. Podríamos clasificarlos como «mineros de datos», ya que su trabajo consiste en reunir los datos de los bloques y clasificar los mismos para, al final, generar un block-specimens según los criterios de Covalent.
Tras realizar su trabajo, estos productos de block-specimens publican los bloques generados junto con una prueba de generación de bloques que se libera a la Covalent Network. La idea es que los validadores tomen esta prueba, realicen la verificación pertinente y, en caso de ser correcta, reciban una pequeña recompensa en CQT por su trabajo.
Indexadores
El siguiente nivel de funcionamiento pertenece a los indexadores. Su función es bastante sencilla: producir y publicar los resultados en la red Covalent. Básicamente, lo que hacen es obtener los datos, comprobar su exactitud y publicar estos resultados en la red de almacenamiento de la Covalent Network.
Si bien estos nodos se comportan de forma similar a los nodos productores de block-specimens, los nodos indexadores sólo deben tener acceso a los puntos de almacenamiento y trabajar en conjunto con ellos para su trabajo, mientras los productores de block-specimens operan directamente con los nodos de las otras blockchains.
La estructura de funcionamiento de los indexadores está pensada para ser altamente eficiente y mantener un historial muy detallado de todo lo que llega a la Covalent Network. Para lograrlo, estos nodos funcionan de forma similar a la que lo hace el protocolo Git (muy usado en desarrollo de software), con el fin de mantener un historial de cada dato y metadato dentro de la red. Al final, toda esa información se almacena en la red de almacenamiento de datos de Covalent y se asocia con los datos en bloque dentro de Covalent Network.
¿Complejo de ver? Quizás la forma más sencilla de explicar el trabajo de los indexadores puede ser el de «marcador». En la blockchain de Covalent podemos ver un marcador (en forma de hash) que los indexadores pueden leer y como resultado permitirnos acceder a la red de almacenamiento de Covalent y obtener los datos que buscamos. Todo ello sin saber la posición exacta de los datos en la red de almacenamiento. Lo mejor, es que el «marcador» puede referirse a un dato muy específico o a un conjunto de datos aún más grande, facilitándonos el acceso a los datos según lo requerimos.
Para el funcionamiento de estos nodos también es necesario realizar staking de tokens CQT, ya que su trabajo es vital para la red y, al unirlo al sistema de consenso, protege este trabajo de actores deshonestos dentro de la red.
Respondedores
Los respondedores tienen la función de recibir las peticiones de datos y ofrecer la respuesta apropiada a la solicitud. Existen dos tipos de respondedores dentro de Covalent, a saber:
- Respondedores de Solicitud de Almacenamiento: encargados de mantener y brindar acceso a los datos solicitados por los usuarios finales de Covalent.
- Respondedores de Solicitud de Consulta: los cuales se encargan de recibir las peticiones generadas por la REST API. Se ocupan de traducir dicha solicitud dentro de la red y ofrecer la respuesta apropiada al usuario que ha realizado la petición. Estos últimos son los que hacen posible que podamos interactuar de forma fácil con la red Covalent por medio de su API.
Servicio de directorio de nodos
Este nivel permite que los clientes externos a la red puedan encontrar nodos de red con recursos/capacidades específicas recursos/capacidades específicas (por ejemplo, nodos de la red de almacenamiento que tienen objetos específicos; nodos de consulta de consulta que han indexado contratos específicos) o para encontrar nodos de la red dentro del «rango de precios» del cliente.
Los nodos del directorio probablemente actuarán juntos para formar un DHT similar al de Kademlia (un protocolo de red descentralizada usado en software como Bitcoin y BitTorrent), que en su mayoría contiene pequeños punteros (content-hashes cuyos valores apuntan al slot DHT del nodo), junto con anuncios de nodos que actúan tanto como manifiestos de datos disponibles, como listas de precios/fórmulas para obtener esos datos/tipo de datos del nodo. Los clientes pueden entonces descubrir los nodos que anuncian los recursos deseados a través de este DHT.
Básicamente podemos decir que estos nodos son «el mapa y el directorio» de la Covalent Network, permitiéndole a los usuarios navegar por sus distintos nodos y acceder a sus funciones.
Una base de datos descentralizada
Si examinamos a profundidad la estructura de funcionamiento de Covalent podemos observar que esta red apunta a convertirse en una base de datos descentralizada, con todas las facilidades que ya destacamos. Esto significa que Covalent no tendrá un punto único de fallo como sucede actualmente con ciertos servicios (ej: Infura de Ethereum, donde una caída del servicio puede dejar sin acceso a muchas empresas). Por supuesto, esto no es un trabajo sencillo y aún queda mucho camino por recorrer para alcanzar ese nivel.
¿Qué es el token CQT de Covalent?
El token CQT es un utility token con una función muy clara: permitir el acceso a la red de Covalent, mantener su seguridad e incentivar el funcionamiento de los nodos dentro de la red. Los nodos dentro de Covalent reciben sus recompensas mediante este token, mientras los usuarios y todos aquellos que quieran usar la REST API, deben utilizar tokens CQT para pagar por las peticiones o «queries» de información que se realizan. Como el objetivo de Covalent es llegar a convertirse en una base de datos descentralizada, el token CQT también jugará un papel importante en la gobernanza de ese sistema, la cual puede ejercerse a través de su foro de gobernanza.
Lo interesante de este token es que pese a que Covalent Network funciona sobre Moonbeam, el token CQT en realidad está desplegado sobre Ethereum como un token ERC-20, con una emisión de mil millones de tokens y una distribución según se muestra en la siguiente gráfica.
Casos de uso de la tecnología
El mayor potencial de Covalent está en los casos de uso de su tecnología, entre los que podemos mencionar:
- DeFi: haciendo posible la generación de dApps DeFi mucho más complejas e interconectadas con otras blockchains.
- Aplicaciones de control financiero: si eres un trader sabrás que una de las cosas más complejas es mantener un control y seguimiento completo de tu portafolio, algo esencial cuando toca realizar la declaración de impuestos. Con Covalent, es posible hacer aplicaciones de control financiero mucho más completas e integradas que faciliten esta tarea.
- Interconexión de protocolos y blockchains: ya que Covalent permite que los desarrolladores puedan integrar de forma nativa herramientas cross-chain fáciles de usar en sus protocolos, lo que brinda nuevas funciones a sus usuarios. Esto no solo apunta al mercado de tokens fungibles (ej: token ERC-20), sino también a tokens no-fungibles o NFT.
En todo caso, las posibilidades de Covalent son enormes y se pueden adaptar a las necesidades de cada desarrollo.
Conclusiones
Covalent es sin duda un proyecto prometedor que apunta a mejorar la interacción y posibilidades de la tecnología blockchain. Aunque actualmente se encuentra en constante desarrollo, ya es posible ver y probar todo el gran potencial de su tecnología sobre el terreno.
Lo mejor es que su REST API es abierta, con una documentación clara y acompañada de una estructura de funcionamiento que nos permite aprovechar al máximo sus posibilidades. En cuanto a su token CQT, este nos brinda acceso a sus servicios y, al mismo tiempo, nos abre una oportunidad única hacia mercados en los que se pueda operar con el mismo.
Finalmente, para los desarrolladores de aplicaciones, Covalent es un proyecto a tener en cuenta para ampliar las funcionalidades de sus aplicaciones. Y, a medida que el proyecto siga madurando, seguramente se podrán disfrutar de mayores funcionalidades y beneficios por utilizarlo y poseer tokens CQT.