馃嚜馃嚫 The Cardano Ballot: el desarrollo de una aplicaci贸n de votaci贸n descentralizada

En la preparaci贸n de un evento internacional como la Cumbre Cardano 2022 intervienen m煤ltiples partes m贸viles, con diversos equipos que se ocupan de diferentes aspectos para asegurar que las cosas se desarrollen con la mayor fluidez posible. El equipo de Herramientas de Metadatos de la Fundaci贸n Cardano recibi贸 a finales de julio una nueva tarea: Apoyar la Cumbre mediante el desarrollo de una aplicaci贸n de votaci贸n que cualquiera pudiera utilizar f谩cilmente. Esta aplicaci贸n tambi茅n deber铆a aprovechar las posibilidades de la blockchain de Cardano y hacer que cada voto se verificara en la cadena.

Con apenas dos meses para desarrollar una soluci贸n elegante y totalmente funcional, el equipo de Herramientas de Metadatos inici贸 un periodo de intenso trabajo y descubrimiento. Hoy, el equipo, junto con toda la Fundaci贸n Cardano, se complace en presentar la aplicaci贸n La Boleta Cardano :uk:[The Cardano Ballot.]

Estableciendo las bases para una aplicaci贸n de votaci贸n

Entre los principales requisitos para la votaci贸n de Cardano figuraba una aplicaci贸n que no s贸lo sirviera para la Cumbre de Cardano, sino que adem谩s mostrara las ventajas y el potencial de la blockchain de Cardano. Era preciso dise帽arla y construirla de forma que permitiera a todo el mundo votar por el ponente elegido por la comunidad y premiar a los nominados a la Cumbre. Adem谩s, la votaci贸n deb铆a ofrecerse sin coste alguno para los usuarios y tener un l铆mite de un voto por usuario.

El equipo de Herramientas de Metadatos examin贸 numerosos modelos de dise帽o, algunos utilizando transacciones de metadatos, otros utilizando activos nativos, smart contracts o la :uk: soluci贸n de escalabilidad Hydra. Se contempl贸 tambi茅n la opci贸n de reutilizar las soluciones de votaci贸n Cardano existentes.

Identificamos r谩pidamente la imposibilidad de confiar en modelos de votaci贸n ponderados que se basan en la cantidad de ada estacado. Ten铆amos que garantizar un peso de voto igual por usuario y estos modelos, naturalmente, no pod铆an ofrecer tal garant铆a. Por otra parte, el equipo descubri贸 ciertas dificultades a la hora de limitar un wallet a un voto.

Durante el proceso de desarrollo, la papeleta Cardano Ballot evolucion贸 hasta convertirse en una aplicaci贸n de votaci贸n Web3 que empleaba el nuevo :uk: Conector de Wallet de c贸digo abierto de la Fundaci贸n Cardano, permitiendo a los usuarios conectar un wallet Cardano compatible con los est谩ndares :uk: CIP 30 y CIP 8. El equipo implement贸 dos m茅todos distintos para verificar la wallet de un usuario: recurrir a un bot de Discord o a un mensaje SMS. Al aprovechar la firma de mensajes del CIP 8 y la direcci贸n de stake de la wallet, exigimos a los usuarios que firmaran un mensaje secreto ofrecido a trav茅s de uno de los dos m茅todos, autenticando as铆 la propiedad de la wallet conectada.

Tomamos la decisi贸n de desarrollar esta nueva biblioteca de conectores de wallet por dos motivos. Ante todo, necesit谩bamos una soluci贸n para la Boleta Cardano y, a trav茅s de un importante proceso de prueba y error, descubrimos numerosos problemas en varios proyectos de monederos relacionados con la conexi贸n de monederos que no nos permit铆an obtener un uso 贸ptimo de ellos. Por otro lado, el equipo quer铆a ofrecer a los futuros desarrolladores de Cardano una soluci贸n de c贸digo abierto que eliminara la probable carga de trabajo y la carga asociada a los problemas tal y como se plantean en la actualidad.

Promoviendo herramientas de c贸digo abierto y optimizando la utilidad

Junto a los problemas de wallet identificados, la biblioteca de c贸digo abierto Wallet Connector pretend铆a ofrecer una soluci贸n ligera que no dependiera de las bibliotecas de serializaci贸n existentes. Por ello, desarrollamos el componente React a medida para ofrecer una funcionalidad que priorizara la conexi贸n de wallet y la firma de mensajes CIP 8. Como resultado final obtuvimos un conector de wallet de c贸digo abierto que permite a cualquier desarrollador o proyecto introducir la conexi贸n y autenticaci贸n de wallet Cardano sin problemas. Confiamos en que este nuevo conector de wallet mejore el viaje de los desarrolladores de Cardano y ayude a superar la limitada estandarizaci贸n en botones y componentes de conexi贸n de wallets con la que se ha encontrado nuestro equipo.

Ahora, disponiendo de una wallet de Cardano conectada y verificada, el usuario puede redactar una Votacion de Cardano para los distintos nominados en las diferentes categorias de ponentes y premios de la Cumbre. El borrador de la aplicaci贸n Cardano Ballot tambi茅n debe firmarse utilizando el est谩ndar CIP 8, momento en el que puede presentarse como voto. En este sentido, la aplicaci贸n utiliza CIP 8 tanto para verificar una wallet conectada como para firmar un borrador de papeleta. Para crear una funci贸n de inicio de sesi贸n en la aplicaci贸n, el equipo tambi茅n recurri贸 al CIP 8.

En el transcurso del proceso de desarrollo e implementaci贸n del Wallet Connector de c贸digo abierto, se hizo evidente que la compatibilidad actual de los dispositivos m贸viles en el ecosistema Cardano es significativamente limitada. Por otra parte, existe una variaci贸n considerable en la forma en que se implementa el est谩ndar CIP 8 en los distintos wallets.

En adelante, la Fundaci贸n Cardano tambi茅n tiene la intenci贸n de publicar un verificador y analizador JAVA CIP 8 de c贸digo abierto que pueda incorporarse a los proyectos Cardano. Este verificador y analizador JAVA CIP 8 permite la deserializaci贸n de firmas CIP 8 y est谩 dise帽ado espec铆ficamente para soportar los flujos de trabajo de extracci贸n de datos para la gobernanza SundaeSwap. De la misma forma, la biblioteca admite la generalizaci贸n del an谩lisis sint谩ctico de firmas CIP 8 utilizando el popular lenguaje de programaci贸n JAVA.

Disponer de la votaci贸n en la cadena [de bloques]

Tras firmar la boleta de Cardano [Cardano Ballot en ingl茅s] y enviarla al sistema, el equipo se enfrent贸 al reto de decidir qu茅 ofrecer铆a una opci贸n ideal para escribir el voto on-chain [en la cadena]. La manera elegida tendr铆a que englobar una serie de consideraciones, entre ellas un enfoque en la transparencia y la verificaci贸n, as铆 como en un uso responsable de la blockchain.

Algunos debates en curso han discutido si la red principal de una blockchain -frecuentemente denominada capa-1- deber铆a utilizarse como base de datos. En el caso de la papeleta de Cardano, esto supondr铆a tener todas las papeletas firmadas escritas en la cadena. Esto ofrecer铆a sin duda las caracter铆sticas de transparencia y verificaci贸n deseadas, pero tambi茅n suscitar铆a inquietudes.

Con conocimientos sobre los 谩rboles merkle y su importancia para la verificaci贸n, el equipo se propuso identificar una soluci贸n responsable que ofreciera transparencia y verificaci贸n, sin utilizar la capa 1 de Cardano como base de datos. Durante esta fase combinada de dise帽o y desarrollo comenzaron las conversaciones con diferentes proyectos comunitarios.

Al reunirnos con [el equipo de desarrollo del proyecto] Voteaire y a pesar de que el [nuestro] equipo identific贸 numerosos casos de uso en los que el proyecto presentaba una soluci贸n ideal, qued贸 claro que la integraci贸n con su soluci贸n de votaci贸n requerir铆a escribir todos los votos en la cadena, por lo que no se ajustaba a nuestros requisitos. Surgieron asimismo algunos problemas relacionados con la garant铆a de un voto por usuario. Sin embargo, las conversaciones con Voteaire resultaron inestimables. Indagaron en informaci贸n crucial sobre los problemas existentes con la votaci贸n descentralizada y con ofrecer soluciones verificables a los usuarios de forma rentable.

Por su parte, SundaeSwap ha implementado recientemente un modelo de gobernanza que emplea 谩rboles merkle como medio para verificar los datos y que lo hace sin escribir la totalidad de los datos en la blockchain de Cardano. Las interesantes conversaciones con SundaeSwap, junto con su disposici贸n a compartir las valiosas lecciones que aprendieron mientras desarrollaban su soluci贸n, nos permitieron identificar una soluci贸n viable para el mecanismo de verificaci贸n de la votaci贸n de Cardano que ofrec铆a transparencia y verificaci贸n, pero que no requer铆a escribir grandes cantidades de datos en la cadena. Adem谩s, lo hac铆a a un coste m铆nimo.

Esta colaboraci贸n con SundaeSwap tambi茅n es un ejemplo del trabajo de colaboraci贸n de la Fundaci贸n Cardano con la comunidad Cardano. Forma parte de los constantes esfuerzos de la Fundaci贸n tanto para mostrar como para ayudar a la madurez del ecosistema.

De la papeleta de Cardano a la utilidad blockchain

En el camino hacia el dise帽o y desarrollo de la Bola de Cardano, el equipo de Herramientas de Metadatos encontr贸 tanto aspectos encomiables dentro del ecosistema de desarrollo de Cardano como 谩reas que podr铆an beneficiarse de una mayor exploraci贸n y desarrollo. Con la voluntad de seguir colaborando con el ecosistema, ahora estamos documentando y analizando posibles v铆as para mejorar la experiencia del desarrollador y del usuario de Cardano.

Si bien la aplicaci贸n la Boleta Cardano se dise帽贸 espec铆ficamente para la Cumbre Cardano 2022, suscit贸 debates en torno a una soluci贸n de nivel empresarial y lo que se necesitar铆a para implementarla. Tanto la Fundaci贸n Cardano en general como el equipo de Herramientas de Metadatos en particular conocen la creciente investigaci贸n y desarrollo sobre la identidad autosuficiente (SSI). Somos igualmente conscientes de la emisi贸n de identificadores descentralizados (DID) en Cardano con proyectos como Atala Prism, RootsID, IAMX y Sidetree-Cardano. Adem谩s, numerosas normas y sistemas que existen dentro de SSI -como DIF, W3, Trust Over IP, KERI- deben ser tenidos en cuenta si el objetivo es dise帽ar y desarrollar una soluci贸n de identidad verdaderamente interoperable.

En 煤ltima instancia, la papeleta Cardano ser谩 refactorizada en una biblioteca de c贸digo abierto. Esperamos que resulte 煤til a otras personas de la comunidad y para fines que vayan m谩s all谩 de los de la Cumbre Cardano 2022.

El presente proyecto de desarrollo ofreci贸 una experiencia reveladora para el equipo, ya que identificamos 谩reas en el viaje del desarrollador de Cardano que requieren un mayor debate. Con esto en mente, la Fundaci贸n Cardano planea llevar a cabo un taller sobre el Conector de Wallet y DApp en la Cumbre Cardano 2022, as铆 como organizar debates en torno a los est谩ndares CIP, la votaci贸n descentralizada y mucho m谩s.

Los miembros del equipo de Herramientas de Metadatos y la Fundaci贸n Cardano animan a toda la comunidad Cardano a votar primero por las categor铆as de ponentes y despu茅s por los premios inaugurales de la Cumbre Cardano. Asimismo, esperamos ver a todos en persona o virtualmente en la Cumbre, y esperamos seguir colaborando con la comunidad Cardano.


Traducci贸n al espa帽ol de 鈥淭he Cardano Ballot: developing a decentralized voting app鈥, escrito por la @Cardano-Foundation, en octubre 18 de 2022.


Notas del traductor

  • Corchetes del traductor.
  • :uk: indica que el enlace apunta a un contenido en idioma ingl茅s.
  • :es: indica que el enlace apunta a un contenido en idioma espa帽ol.

Considere suscribirse a las siguientes fuentes de informaci贸n en espa帽ol de Cardano seg煤n su inter茅s.