Identidad IOTA – Lanzamiento Beta

1367

Estamos encantados de anunciar el lanzamiento de IOTA Identity Beta. Esto marca el marco como «característica completa» en el camino hacia una versión 1.0. Incluye varios hitos importantes como la actualización a Chrysalis Fase 2, una API simplificada de alto nivel que incluye el soporte de Stronghold y una implementación inicial de los mensajes de comunicaciones DID basados en el estándar de la Fundación de Identidad Descentralizada (DIF) y el trabajo de Hyperledger Aries.

Esto se basa en el trabajo existente que se hizo para la versión Alpha, en la que implementamos los estándares del W3C para los Identificadores Descentralizados (DID) y las Credenciales Verificables. Hemos perfeccionado aún más esta implementación y hemos presentado nuestro método DID al W3C para que se incluya como una de las especificaciones del método DID.

Resumen de la identidad IOTA

IOTA Identity es un framework de identidad autosoberana (SSI) que permite a las personas, organizaciones o máquinas crear y tener un control completo sobre una identidad digital, sin el permiso de un intermediario o parte central. Además, permite controlar cómo se comparten y utilizan los datos personales.

Las plataformas de medios sociales como Facebook y Linkedin nos muestran cada día que las cuentas en línea dependen en gran medida del contenido enviado por los usuarios. La información proporcionada en estas plataformas no es fiable y puede ser fácilmente falsificada – queremos evitarlo con nuestra solución de identidad digital.

Aquí es donde entran en juego las Credenciales Verificables (CV). Se trata de declaraciones digitales sobre un aspecto de la identidad como el «nombre», firmadas digitalmente por otra identidad, que tiene autoridad sobre el tema. Por ejemplo: Mi título de licenciado es fiable si lo firma una universidad, pero no tanto si lo firma tu madre. Estas declaraciones hacen que los datos sean fiables y valiosos. Las CV permiten que una solución SSI no sólo sea más respetuosa con la privacidad, sino que también compita con los perfiles de Facebook / LinkedIn, ya que son más fiables y precisos.

Queremos llevar este concepto un paso más allá aplicándolo a los dispositivos. Innumerables dispositivos y sensores del IoT interactúan entre sí todos los días. Como resultado, se generan grandes cantidades de datos, pero hasta ahora los programas rara vez han utilizado los datos de los dispositivos de terceros para la toma de decisiones. Una de las razones por las que no lo hacemos es que el origen de los datos y, en última instancia, la confianza en un dispositivo no puede determinarse suficientemente con la tecnología tradicional. IOTA Identity permite a los dispositivos IoT crear sus propias identidades y recoger declaraciones verificables sobre ellos mismos, como por ejemplo

  • El fabricante del dispositivo
  • El software instalado y por quién
  • El certificado de calibración
  • Declaraciones de otras identidades que han utilizado los datos y los han considerado precisos (Reseñas)

Permitimos que los dispositivos IoT construyan una reputación y se conviertan en dignos de confianza. A continuación, podemos aprovechar los datos proporcionados por los dispositivos para tomar decisiones. Piensa en el flujo de tráfico de una ciudad:

Ahora mismo, una ciudad sólo confía en los sensores que ella misma ha desplegado para determinar el flujo de tráfico. Imagínese cuánta más información, y a su vez mayor precisión, podría lograrse si los coches pudieran identificarse y compartir los datos que generan. Esto constituiría la base de una economía de datos de confianza, habilitada por IOTA Identity. Si no se prevé una arquitectura que permita la creación de confianza, cualquiera podría falsificar los datos de tráfico y causar estragos en un sistema de tráfico automatizado que dependa de datos externos. Por lo tanto, las identidades de confianza son la base para hacer cualquier uso de los datos que se generan. Cualquier sistema digital se beneficia de la confianza, no sólo los sistemas de tráfico como en el ejemplo anterior.

Cuenta de identidad

La primera característica importante que introducimos con esta versión beta es la cuenta, una API de alto nivel para utilizar IOTA Identity. Al igual que la reciente actualización de Chrysalis, IOTA Identity se vuelve mucho más fácil de usar utilizando la cuenta. Se pretende proporcionar una interfaz mucho más simplificada que es perfecta para más del 90% de los casos de uso. El otro 10% son casos de uso más complejos que todavía pueden querer utilizar las API de nivel inferior para tener más control sobre las identidades. La cuenta no sólo simplifica las interacciones con los Documentos DID, sino también con el Tangle y el Stronghold.

Los mensajes de identidad en el Tangle son bastante complicados. Tenemos dos formatos para optimizar los tiempos de resolución de los DID y deben ser creados y utilizados de una manera específica. Con la cuenta, una sola línea de código se encarga de todo el formato del mensaje y de su publicación en el Tangle. Del mismo modo, la creación de una identidad es un proceso bastante complicado, ya que primero hay que generar un par de claves, del que se deriva un DID. Después, se crea un documento DID, en el que hay que incrustar la clave pública y publicarlo en el Tangle. Por último, hay que almacenar y gestionar la clave privada de forma segura. La cuenta hace todo esto en una sola línea de código, almacenando la clave privada dentro de un Stronghold, o un método de almacenamiento diferente definido por el desarrollador.

Actualmente la característica de la cuenta sólo está disponible en Rust y todavía no está disponible como enlaces de Javascript, ya que esto requiere algunas mejoras de diseño más grandes en el proyecto que queremos abordar durante nuestro camino hacia una versión 1.0.

Próximos pasos

Como se ha mencionado, IOTA Identity continuará siendo refinada y mejorada para el lanzamiento de la versión 1.0, con un enfoque en el rendimiento, la calidad del código, la documentación y el soporte de Javascript. La próxima versión 1.0 marcará un hito muy importante para la identidad, ya que apoyaremos la compatibilidad con versiones anteriores y la transición de versiones de las identidades en el futuro, lo que hace posible construir aplicaciones listas para la producción en la parte superior de IOTA Identity y actualizar fácilmente a las nuevas versiones en el futuro.

Aunque nuestra versión 1.0 es el próximo gran hito, el viaje de IOTA Identity no termina ahí. Tenemos muchas ideas de características adicionales para futuras actualizaciones, como mejoras en la privacidad, agentes de identidad, pero también proporcionar más bibliotecas específicas de casos de uso para hacer que IOTA Identity sea fácil de adoptar en los casos de uso más prometedores. De hecho, estamos muy contentos de comenzar pronto a trabajar junto con la Fundación LINKS, que está creando una especificación Zero Knowledge Proof (ZKP) para IOTA Identity, aumentando masivamente las características de privacidad de IOTA Identity. Son investigadores experimentados en ciberseguridad que proporcionarán una especificación basada en los resultados de la literatura científica establecida.

Mientras que IOTA Identity no es ampliamente conocido todavía, con el lanzamiento de la beta nos estamos acercando e incluso superando a algunos de los marcos SSI populares en calidad y conjuntos de características. Vamos a seguir centrándonos en el desarrollo de un marco increíble que es seguro, performante pero también fácil de usar. Si estás interesado en trabajar con IOTA Identity, por favor, echa un vistazo a nuestro repositorio y considera la posibilidad de unirte al X-team de IOTA Identity, donde los desarrolladores, empresarios y estudiantes con ideas afines se reúnen semanalmente con los desarrolladores de IOTA Identity para discutir el marco en un ambiente relajado pero educativo.

Para conseguir la versión Alpha, la Fundación IOTA se apoyó en un grupo de desarrolladores financiado por el EDF: Thoralf, Sebastian (huhn) y Tensor. Esta vez tenemos que agradecer a Filancore, una startup de la comunidad IOTA, su apoyo para hacer posible la liberación Beta. Mientras que realmente disfrutamos trabajando con los miembros de la comunidad, también estamos emocionados de estar creciendo el equipo de manera significativa con el fin de continuar desarrollando el marco de identidad de IOTA, las herramientas de los desarrolladores, los enlaces a otros idiomas y las pruebas de concepto con nuestra propia mano de obra.

Registro de cambios completo

Este es un registro incompleto de los cambios entre la versión 0.2 alpha y la 0.3 beta.

Características significativas

Implementación de la cuenta (#151)

Implementación de mensajes y sobres de comunicación DID (#226)

Cambiado el código IOTA para que funcione sólo en las redes Chrysalis Fase 2 (#161)

Renombrado los tipos y archivos para reducir la confusión entre la implementación agnóstica de DID y la implementación `did:iota`. ¡Contribuido por m-renaud! (#219, #233,  #233, #243)

Añadida la implementación de Libjose (#176)

Documentación / Especificación

Añadida la especificación del método DID para el método `did:iota` y enviada al W3C (#207)

Añadida la especificación de la comunicación DID (#178, #186, #187, #202, #203)

Muchas mejoras en la documentación (#174, #164, #171)

Cambios menores

Se han cambiado las suites criptográficas para que funcionen con Stronghold (#158)

Se ha fusionado el tipo Credencial verificable con el tipo Credencial para simplificar el código (#170)

Se ha fusionado el tipo Presentación verificable con el tipo Presentación para simplificar el código (#170)

Se ha sustituido la propiedad «inmutable» del documento DID por el parámetro de consulta de la URL DID (#141).

Se han hecho más accesibles los puntos finales del servicio (#194)

Se han añadido pruebas de evaluación comparativa (#223)

Mejora de los ejemplos (#171, #251)

 

Comentarios

comentarios

pasarela de pagos con criptomonedas