Actualización de desarrollo n. ° 4: Anuncio de ID de Swapy (Alfa privada)

Escrito por Tulio Braga (CTO en Swapy Network)

Hoy, estamos orgullosos de anunciar el primer lanzamiento (Private Alpha v0.0.1, vista previa) de Swapy Financial ID para Android (para convertirse en un usuario alfa, solicite aquí). Fue un largo camino desde fines de febrero hasta principios de abril. Durante este tiempo, nuestro Dev Team se enfocó en desarrollar la identidad de soberanía propia que activará Swapy Exchange y Swapy Data Market.

La aplicación fue desarrollada usando React Native, Ethereum e IPFS. Nuestra principal preocupación para esta versión fue sobre la integración tecnológica. Actualmente, la aplicación está en alfa privado en Google Play. Cualquier persona puede solicitar convertirse en usuario alfa en nuestro formulario de solicitud. Agradecemos cualquier comentario!

Las siguientes secciones contienen la información necesaria para comprender nuestro diseño de implementación y decisiones.

En esta versión, el usuario es capaz de:

Genere una billetera Ethereum para administrar los contratos inteligentes de su identidad; cree su identidad, criptográficamente almacenada en el IPFS; publique su huella digital de identidad en el Ethereum ;

Durante los primeros modelos y diseños de Swapy Financial ID, estudiamos varias opciones de identidad de . Incluso implementamos una vista previa utilizando uPort. A diferencia de las identidades de actualmente populares, las suposiciones principales de Swapy Financial ID son:

Descentralización total: la mayoría de las identidades de que evaluamos no son verdaderamente descentralizadas; soporte para actualizaciones de datos de frecuencia media a alta: no es práctico en las identidades de populares actualmente debido al costo del gas y las limitaciones de diseño; fácil integración a otros Dapps, fuente totalmente abierta y Extensible por diseño: la mayoría de las ID que evaluamos son parcialmente de código abierto, mientras que algunas de ellas están demasiado acopladas, o con baja cohesión. Nos enfocamos en una alta cohesión y una baja cadena de bloques de acoplamiento.

Debido a las características anteriores, principalmente, decidimos implementar la identificación financiera de Swapy desde cero.

Teniendo en cuenta los supuestos presentados, reunimos dispositivos móviles, contratos inteligentes en la cadena de bloques Ethereum y el IPFS, cada uno con sus propias ventajas para proporcionar una identidad realmente concisa y bien ajustada al ecosistema financiero. Junto con la infraestructura, también exploramos la criptografía simétrica, la criptografía de curva elíptica, los árboles de Merkle y otros algoritmos y estructuras de datos para permitir una identidad descentralizada y almacenada criptográficamente, mantenida por el usuario, que puede demostrarse real por Explorando la propiedad de inmutabilidad de blockchains.

Swapy Financial ID bajo el capó Las API nativas del dispositivo móvil pueden proporcionar una generación segura y aleatoria de bytes, lo que permite crear aleatoriedad para la generación del monedero Ethereum sin necesidad de interacción específica del usuario o administración central del servidor. Implementando la administración de la identidad a través de un módulo javascript con un API bien definida permite la fácil integración con Dapps de terceros. Los desarrolladores tienen acceso a abstracciones simples que hacen posible cifrar, descifrar, leer y escribir datos en identidades. Al estructurar la información del usuario como un Merkle Tree, Swapy ID puede tener un solo hash para representar todos los datos de manera estructurada, de manera similar a una huella dactilar. Además, cada rama tiene su propio hash, lo que permite granularidad al compartir y validar datos. Tenga en cuenta que el árbol Merkle es, por lo tanto, una estructura pública. Dado que los datos de los índices de IPFS que utilizan el algoritmo Multihash es posible almacenar solo una cadena de hash de 46 bytes en el contrato inteligente. Esta estrategia ahorra gas al crear y actualizar la identidad, y facilita la recuperación del árbol Merkle del IPFS. Desacoplando la información del árbol Merkle y almacenando solo en los datos específicos, Multihash convierte el árbol Merkle en una luz. estructura. Esto reduce la red y el consumo de ancho de banda cuando se consumen granularmente y se validan los datos. Dado que el algoritmo de criptografía (ECC) explorado contiene aleatoriedad interna para los bytes cifrados, necesitamos almacenar el hash de datos descifrados en el árbol Merkle y permitir que un tercero ( por ejemplo: un proveedor de servicios con el que el usuario está compartiendo datos) para verificar los datos. Considerando lo anterior, agregamos sal de 256 bits al azar para cada información. Permite crear aleatoriedad en el hash de datos públicos, por lo que no es práctico para un usuario no autorizado inferir un valor específico del hash de datos cuando el dominio de las opciones es finito (por ejemplo: el atributo "género" tiene un número limitado de respuestas posibles y, por lo tanto, sería fácil inferir el valor de las identidades mediante la comprobación de hashes de todas las opciones posibles. Resulta poco práctico con un sal aleatorio de 256 bits acoplado para cada dato específico). Desacoplar el registro de huella digital de datos del almacenamiento de datos en el IPFS permite al usuario realice más actualizaciones y decida cuándo consolidar la huella digital en la cadena de bloques, ahorrando gas.

Junto con la aplicación en Play Store, estamos entregando a la comunidad tres proyectos de código abierto diferentes:

La documentación está en progreso y será publicada próximamente =)

Los dos desafíos principales al desarrollar esta primera versión fueron: (1) Usar la API cripto con React Native para crear una billetera Ethereum; y (2) realizar solicitudes HTTP desde la aplicación React Native al IPFS.

Como la Expo actualmente no tiene una implementación para la API de criptografía de nodos, necesitamos expulsar la aplicación React Native de Expo para usar el módulo de criptografía nativa reactiva. Expulsar la aplicación de Expo fue esencial para establecer una forma segura (y nativa) de generar bytes aleatorios y, por lo tanto, generar billeteras Ethereum. Considerando que la biblioteca IPFS proporciona una implementación de navegador para el módulo stream-http, enfrentamos múltiples incógnitas desconocidas `xhr error` debido a conflictos al enviar solicitudes http desde React Native (que no es un navegador).

Esperamos que esta breve explicación pueda ayudar a otras personas que enfrentan los mismos problemas que enfrentamos durante el desarrollo de la primera versión de Swapy Financial ID. Más adelante, nuestro equipo aportará más detalles y la solución real en artículos dedicados.

Las funciones e implementaciones planificadas para la próxima versión (v0.0.2) son:

Nueva interfaz de usuario y experiencia diseñada por nuestro equipo de UI / UX; posibilidad de importar una billetera ya existente; opción de compartir su identificación a través de códigos QR; opción de leer una identificación a través de un código QR y enviar SWAPY al propietario de la identificación; inicio de sesión descentralizado Intercambio de Swapy utilizando Swapy Financial ID.

En nuestro camino hacia el Acceso Universal al Crédito, creemos que dar a las personas la oportunidad de tener una identidad financiera que cualquier persona pueda verificar, es un paso importante para hacer realidad los préstamos eficientes y asequibles. Al ser un componente clave de nuestra red, la identificación está actualmente enfocada en Swapy. Con mucho trabajo por hacer a continuación, nosotros como equipo estamos orgullosos de los resultados que hemos logrado en esta primera versión. Pudimos analizar diversos enfoques de identificación de y diseñar algo que se ajuste a nuestras necesidades mejor que las alternativas existentes. Vea el token SWAPY en Etherscan.io mientras nos preparamos para nuestro ICO.

Hasta ahora, nuestro equipo ha demostrado estar compuesto por personas muy entusiastas y flexibles. Actualmente, tenemos Swapy Exchange (v0.0.3) disponible para los navegadores (Chrome y Firefox) y los escritorios (Windows, Mac OSX y Linux). Ahora, traemos Swapy ID (v0.0.1) para Google Android y pronto para Apple iOS. Ambos Dapps con la descentralización como máxima prioridad. Nada mejor para mostrar a nuestra comunidad cuán comprometidos estamos para lograr nuestros objetivos de un mundo más sostenible. Gracias al equipo ya la comunidad!

El Swapy ID alpha v0.0.1 ya se ha probado internamente desde la última semana. Ahora, decidimos ponerlo a disposición de nuestra comunidad únicamente, como una versión alfa privada. Actualmente, solo está disponible para Android. Para tener acceso a él, complete este formulario y nuestro equipo lo pondrá a su disposición a lo sumo las 24 horas. Después de agregarlo como usuario alfa de Swapy ID, podrá descargarlo directamente desde Google Play. ¡¡¡Esperamos que disfrutes!!!

Sitio web
Gorjeo
Telegram (sólo anuncios)
Telegram (chat abierto)