La identidad es fundamental para poder realizar muchas de las transacciones que ocurren en la sociedad actual. En cualquier intercambio entre partes son necesarios ciertos requisitos asociados a la identidad de los usuarios, por lo que deben existir estructuras que permitan a las entidades determinar cierta información sobre su contraparte y tener la confianza de que la información es verdadera.

En la actualidad, dichas estructuras presentan muchos problemas asociados con aspectos como la privacidad, la escalabilidad, la flexibilidad, o el consentimiento por parte de los propietarios de las propias identidades, lo que hace que dichos sistemas no sean adecuados para el contexto actual en el que nos encontramos. Como consecuencia de lo anterior, surgen nuevos conceptos como el de identidad auto-soberana, el cual implica que cada persona tiene el control total de su propia identidad, gestionando su propia información y relaciones, y siendo independiente de cualquier organización, por lo que nadie puede violar su privacidad ni quitarle su identidad.

Evolución del concepto de identidad

En origen, el concepto de identidad es inherente al ser humano. Es ese inefable yo de la autoconciencia, que cada persona que habita el planeta, independientemente de la zona o la cultura a la que pertenezca, entiende en todo el mundo. En este sentido, el concepto de identidad está muy ligado a la identidad física de la persona, que engloba básicamente características físicas del individuo (color de piel, altura, color de ojos, peso), y aspectos de la personalidad (gustos, ideas, valores).

Este significado original de identidad, en la sociedad moderna, ha cambiado hasta el punto que el concepto de identidad se asocia a elementos como el DNI, el pasaporte, o el carné de conducir. Como consecuencia, el concepto de identidad se ha centralizado en los estados y las grandes corporaciones.

Si nos alejamos del mundo físico y nos adentramos en el mundo digital, nos encontramos con el concepto de identidad digital, el cual hace referencia a la información que una entidad genera en el mundo digital (internet, redes sociales, plataformas de servicios, plataformas de compra de productos), y sufre del mismo grado de centralización  que la identidad del mundo físico.

En la actualidad, la identidad en el mundo físico y en el mundo digital interacionan continuamente y se presenta una oportunidad de redefinir de nuevo el concepto de identidad, tomando por parte del individuo de nuevo el control, volviendo a sus orígenes. A esta nueva redefinición del concepto de identidad es a lo que se denomina identidad auto-soberana.

Identidad digital

Como hemos adelantado en el punto anterior, el concepto de identidad digital ha nacido de la mano de la creación del mundo digital, el cual no para de crecer en las últimas décadas desde su origen con el nacimiento de Internet. 

A grandes rasgos, se puede entender como identidad digital, al conjunto de todos los datos e informaciones que se generan, y en algunos casos se almacenan, sobre una entidad (humana o no) en el mundo digital. Dentro de estos datos nos podemos encontrar diferentes ejemplos, como son el registro en una plataforma que vende productos por internet, o nuestros hábitos de compras, así como las franjas horarias en las que usamos ciertos servicios.

A grandes rasgos, la identidad digital se puede gestionar desde dos modelos diferentes: el modelo centralizado y el modelo descentralizado. A su vez, el modelo centralizado, se puede dividir en el modelo escandinavo y en el continental. En el modelo escandinavo son las empresas privadas las que se encargan de gestionar la identidad digital de los usuarios. En cambio, en el modelo continental, son los gobiernos los que se encargan de dicha tarea.

En el artículo «The Path to Self-Sovereign Identity», de Cristopher Allen, se indica como la evolución del concepto de identidad digital ha pasado por la siguientes fases o etapas:

  • Fase 1. Identidad centralizada: desde los orígenes de internet (hasta nuestros días), en mayor o en menor medida, las autoridades centralizadas como la IANA, la ICANN y las CAs (Autoridades de Confianza) se han encargado de gestionar la identidad digital. Como consecuencia, la identidad digital está a merced de la centralización y por lo tanto de la arbitrariedad de la entidades que la gestionan. 
  • Fase 2. Identidad federada: a principios del siglo XXI, de la mano de proyectos como Microsoft’s Passport, o Liberty Alliance de Sun Microsystems, surgió el concepto de identidad federada, en el que los usuarios pertenecen a una organización, la cual se encarga de gestionar su identidad. Si dicha organización realiza acuerdos con otras organizaciones, se permite a los usuarios utilizar la misma identidad digital en diferentes sitios. Aunque la idea de la identidad federada surge para eliminar las autoridades centralizadas, finalmente derivó en una oligarquía en la que el poder de la autoridad central se dividía entre varias entidades poderosas que ejercían por sí mismas su propia autoridad.
  • Fase 3. Identidad centrada en el usuario: en el año 2000, la ASN (Augmented Social Network) puso las bases de un nuevo concepto de identidad digital sugiriendo construir una identidad en línea persistente en la arquitectura misma de Internet en la que cada individuo debería tener el derecho de controlar su propia identidad en línea. A este concepto se le llama identidad centrada en el usuario. El surgimiento de grupos como IIW (Internet Identity Workshop) que trabajaron en la misma línea (que los usuarios se coloquen en el medio del proceso de identidad) hicieron hincapié en la necesidad de poner a los usuarios al frente de la identidad en línea, además de querer que los usuarios tuviesen más control sobre su identidad y que la confianza se descentralizara. En este contexto nacieron proyectos como OpenId y Facebook Connect, pero no han conseguido dar a los usuarios un control completo de sus identidades digitales ya que la propiedad final de las identidades centradas en el usuario permanece en las entidades que las registran.
  • Fase 4. Identidad auto-soberana: en los últimos años ha surgido el pensamiento de que no es suficiente con que los usuarios estén en el centro del proceso de identidad, sino que es necesario que los usuarios sean los gobernantes de su propia identidad. 

Identidad auto-soberana

Aunque no hay un consenso para poder definir qué es la identidad auto-soberana, si parece que debe recoger una serie de ideas y pensamientos que se han ido asentando en los últimos tiempos. Entre estas ideas está la de que es necesario la interoperatividad de la identidad digital del usuario en diferentes ubicaciones, sistemas y plataformas con el consentimiento del mismo. Además, la identidad debe ser transportable, sin que pueda ser bloqueada, eliminada o censurada por ninguna entidad, estado u organización. Como consecuencia, es de vital importancia que el usuario se centre en administrar su propia identidad para tener un total control y autonomía sobre la misma, ya que dicho control le va a permitir demostrar o refutar hechos, o situaciones asociadas al mismo. De esta manera, se asegura que no se puedan producir abusos a los usuarios por parte de terceros que acaparan el poder.

Intentado ahondar más en estos conceptos, vamos a referenciar al artículo «Self-Sovereign Identity Principles» del arquitecto de Blockchain Cristopher Allen, en el que se identifican los siguientes principios en torno a los que se debiera asentar el concepto de identidad auto-soberana:

  • Existencia. El  usuario debe tener una existencia independiente que se basa en el inefable «yo» que está en el corazón de la identidad y que nunca puede existir totalmente en forma digital. La identidad auto-soberana hace públicos y accesibles algunos aspectos concretos del «yo» que ya existe.
  • Control. El usuario debe ser la máxima autoridad que gobierne su identidad, pudiendo actualizar, o incluso ocultar la misma. Esto no significa que terceras partes no puedan emitir testimonios sobre la identidad de un usuario, ni que el usuario pueda revocar todos los testimonios emitidos sobre su identidad.
  • Acceso. El usuario debe tener acceso a todos los datos y testimonios que forman parte de su identidad . Este principio no implica que los usuarios tengan acceso a los datos de los demás, solo a los suyos.
  • Transparencia. Los sistemas y algoritmos utilizados para gestionar la identidad digital de los usuarios deben ser gratuitos y de código abierto, de tal forma que cualquiera pueda examinar cómo funcionan.
  • Persistencia. La identidad debería durar hasta que el usuario lo desee, dando cabida al derecho al olvido. Los sistemas y algoritmos que gestionen la identidad deberán implementar los mecanismos adecuados para controlar la permanencia de los testimonios para que estos no se aten a las identidades para siempre.
  • Portabilidad. La identidad del usuario no debe estar gestionada por una determinada entidad ya que puede desaparecer o ser eliminada. De esta forma, el usuario tiene control sobre su propia identidad independientemente de del país, territorio o jurisdicción en el que se encuentre.
  • Interoperabilidad.  La identidad del usuario debe estar disponible para ser usada en cualquier sistema, plataforma, o entidad, de tal forma que la información de identidad esté ampliamente disponible, cruzando las fronteras internacionales para crear identidades globales, sin perder el control del usuario.
  • Consentimiento. El usuario debe aceptar el uso de su identidad por parte de terceros, así como la incorporación de testimonios a la misma para validarlos en el caso de que sean ciertos.
  • Minimalización. A la hora de utilizar información o testimonios sobre la identidad de un usuario, esta deberá ser la mínima para poder llevar a cabo la tarea que demanda dicha información, y de esta forma garantizar la privacidad del usuario. Tecnologías como ZKPs (Zero Knowledge Proofs) pueden ayudar a conseguir este objetivo.
  • Protección. Cuando existan conflictos entre las necesidades de la red y los derechos de los usuarios, estos últimos deberán prevalecer sobre los primeros. Es decir, los derechos de las personas deberán prevalecer sobre las necesidades de la red. Para garantizar esto, es imprescindible que los sistemas que gestionen la identidad sean independientes, descentralizados, y resistentes la manipulación y la censura.

Blockchain e identidad digital

El presidente de la Sovrin Foundation, Phillip J. Windley, escribió un post en el blog de la misma en el que identificaba los cinco problemas de la identidad en internet en la actualidad. A continuación pasamos a exponerlos:

  • El problema de la proximidad: en internet no estamos interactuando con las personas físicamente por lo que nuestros medios tradicionales de saber con quién estamos tratando son inútiles. En internet se han implementado sistemas de autenticación mediante usuario y contraseña teniendo como resultado que la información sobre la identidad de las personas está replicada en múltiples sistemas y bases de datos repartidos por la red.
  • El problema de la escalabilidad: la identidad digital en internet está controlada por centros de información de identidad como Facebook o Google, los cuales son proveedores de identidades. Aún así, siempre habrá plataformas que no quieran ceder información de sus clientes a estos proveedores de identidad por miedo a que cambien las reglas del juego actuales.
  • El problema de la flexibilidad: las soluciones de identidad digital en internet en al actualidad están limitadas por esquemas fijos que no permiten cubrir todos los casos de uso se dan en el ecosistema.
  • El problema de la privacidad: en los sistemas actuales de gestión de identidad digital, a menudo se recopilan datos sin el conocimiento del propietario. Los diferentes sistemas utilizan datos como los números de teléfono o las cuentas de e-mail para poder correlacionar información de las identidades.
  • El problema del consentimiento: los datos asociados a identidades digitales, a menudo se comparten entre los diferentes operadores sin el consentimiento de los propietarios de los mismos.

En la actualidad, estos cinco problemas intentan ser resueltos con la aplicación de la tecnología blockchain al ámbito de la identidad digital, debido principalmente a las características que esta aporta: transparencia, persistencia, no censura, y descentralización, entre otras. Como resultado, han surgido diferentes proyectos que intentan utilizarla de base para implementar en la práctica sistemas de identidad digital auto-soberana que den un paso adelante en la evolución de la identidad digital en internet. En el próximo apartado veremos varios de estos proyectos, y cuales son sus características principales.

Como norma genera, los sistemas blockchain de identidad auto-soberana utilizan la cadena de bloques para registrar identificadores descentralizados (DIDs), a los cuales se puede acceder sin necesidad de un directorio central. Los usuarios (Claim Holder), los cuales son propietarios de su propia identidad acceden a la aplicación de identidad mediante un agente (software), donde se crea una billetera virtual en la cual almacenará certificados avalados por ciertas entidades emisoras (Claim Issuer). Una tercera parte (Claim Verifier), puede solicitar una verificación (reclamo) al ente emisor (Claim Issuer). El Claim Verifier, también podrá certificar las credenciales del usuario, así éste fortalecerá su identidad digital. Todo el flujo de datos asociado a la identidad digital estará bajo el control del usuario a través de claves. Esta identidad digital podría comprender historias médicas, académicas, laborales y demás datos personales que solo se compartirán en caso de que la persona lo autorice (Figura 1).

Para entenderlo mejor, pongamos el siguiente ejemplo. Una universidad (Claim Issuer) emite una credencial sobre un alumno indicando que ha superado un título de grado. El Alumno (Claim Holder) acepta dicha credencial incorporándola en su identidad digital. El alumno realiza una solicitud para trabajar en una empresa (Claim Verifier), la cual solicita verificar la credencial emitida por la universidad para asegurarse que el alumno dispone del título de Grado.

Identidad Digital Basada En Blockchain Master Blockchain Online
Figura 1. Sistema de identidad auto-soberana implementado con blockchain. Fuente

Proyectos blockchain que implementan identidad auto-soberana

Como hemos comentado en el punto anterior, en la actualidad existen diferentes proyectos que intentan utilizar la tecnología blockchain para implementar en la práctica sistemas de identidad auto-soberana. Repasemos a continuación algunos de estos proyectos:

Estándares ERC725, y ERC735

En el año 2017, el desarrollador de Ethereum Fabian Vogelsteller propuso estos dos estándares, los cuales tuvieron rápidamente una cálida acogida por la comunidad. 

El estándar ERC725 implementa diferentes funciones que permiten gestionar la identidad digital de humanos, grupos, objetos y máquinas. Dicha identidad puede trabajar con claves para firmar transacciones, inicios de sesión, y testimonios entre otras. También incluye una función de proxy para que las DApps puedan comprobar la validez de cierta información de las identidades digitales de forma sencilla. 

El estándar ERC735 permite gestionar testimonios (claims) mediante el uso de estructuras y funciones que añaden, eliminan y modifican testimonios emitidos sobre una identidad digital. El estandar ERC735 es usado por el estándar ERC725 para la gestión de identidades.

El proyecto uPort

uPort es una colección de herramientas y protocolos para crear aplicaciones descentralizadas centradas en el usuario. Se trata de una implementación que pretende devolver la propiedad de la identidad al usuario. Las identidades creadas son propiedad exclusiva de los usuarios, estando controladas en su totalidad por los creadores de las mismas, no dependiendo de terceros para su creación, validación, ni control. 

Está construido sobre estándares y bibliotecas de código abierto. Entre las funciones que ofrece, está la de permitir al usuario registrar su propia identidad en Ethereum, enviar y solicitar testimonios, firmar transacciones y administrar de forma segura claves y datos.

Las identidades en uPort son representadas por DIDs (Decentralized Identifiers), basadas en el ERC1056 (Lightweight Ethereum Identity), las cuales son creadas por los propios usuarios y obedecen al estándar del W3C (W3C Verifiable Claims Working Group). El modelo de testimonios verificables está basado en el estándar IETF JSON Web Tokens.

La red Sovrin

Sovrin es una red blockchain de servicio pública y permisionada que permite implementar el concepto de identidad digital auto-soberana en internet. Se trata de un proyecto de código abierto que ofrece las herramientas y bibliotecas para crear soluciones de gestión de datos privados y seguros que se ejecutan en la red de identidad de Sovrin.

La red Sovrin está descentralizada, lo que permite a los usuarios controlar datos relativos a su identidad sin depender de bases de datos individuales. Dicha red está formada por un conjunto de nodos administrados por un grupo de entidades de confianza que se llaman stewards. Dichos nodos están repartidos por todo el mundo y contienen una copia de un ledger con la información pública necesaria (DIDs, actualizaciones de revocaciones, y esquemas de credenciales) para verificar la validez de las credenciales emitidas sobre las identidades digitales dentro de la propia red. Por lo tanto, dicho ledger permite a los titulares de las identidades tener la privacidad, seguridad y control de sus datos mientras el verificador puede confiar en las credenciales que se presentan. Por otro lado, los stewards garantizan la coherencia sobre qué información se escribe en ledger y en qué orden mediante una combinación de criptografía y un algoritmo RBFT (Redundant Byzantine Fault Tolerant algorithm).

A los servicios de la red se accede mediante la figura de los agents, los cuales son aplicaciones implementadas por diferentes desarrolladores y que permiten gestionar los testimonios, realizar transacciones de identidad en nombre de sus propietarios, así como intercambiar información con otros agentes mediante conexiones cifradas.

La red Sovrin está diseñada para ser privada mediante el uso de identificadores seudónimos y permite la divulgación selectiva de datos personales utilizando ZKPs (Zero Knowledge Proofs).

El DLT Hyperledger Indy

Indy es un DLT (Distributed Ledger Technology) que forma parte del proyecto Hyperledger y que tiene como objetivo proporcionar un conjunto de herramientas, bibliotecas y componentes reutilizables para desarrollar identidades digitales enraizadas en redes  blockchain u otros DLTs para que sean interoperables entre dominios administrativos, aplicaciones y cualquier otro sistema.

Indy se basa en estándares abiertos de criptografía de clave pública, estándares del formato de los DIDs (identificadores descentralizados), y estándares de la gestión de los testimonios, para que pueda interactuar con otros ledgers del ecosistema. El resultado es que, aunque Indy es una red permisionada, cualquiera puede acceder a las funcionalidades que ofrece, y proporciona una nueva forma de integración de sistemas en Internet que es mucho menos costosa y al mismo tiempo más confiable.

Como hemos indicado en el anterior párrafo, Indy utiliza DIDs (identificadores descentralizados), los cuales son únicos por pares, y pseudónimos por defecto, y están gestionados a través de un ledger sin intermediación de ninguna autoridad de resolución descentralizada. Los DIDs, en el ledger apuntan a DDOs (DID Descriptor Objects), los cuales contienen claves públicas, entre otra información, asociada a los DIDs.

Los datos personales asociados a las identidades nunca se escriben en el ledger. Dichos datos privados se intercambian a través de conexiones cifradas punto a punto entre los agentes fuera de la cadena. 

Indy trabaja con ZKPs (Zero Knowledge Proofs) para gestionar la verificación de que algunos o todos los datos en un conjunto de testimonios sean verdaderos sin revelar ninguna información adicional, incluida la identidad de los implicados.

Conclusión

A día de hoy internet carece de un sistema de identidad digital auto-soberana, universalmente disponible, que permita a los usuarios tener un control total sobres sus identidades, de tal forma que puedan recopilar, conservar y presentar las credenciales que quieran, a quien quieran, cuando quieran, y sin depender de un acceso de gestión externo.

Con el nacimiento de la tecnología blockchain, muchos proyectos han empezado a trabajar con ella para intentar lograr un sistema de identidad auto-soberana que sea capaz de implementar de forma eficiente la gobernanza, la escalabilidad, la accesibilidad, y la privacidad que se requieren para brindar al usuario un control total sobre sus datos personales.

A medida que estos proyectos vayan escalando, y siendo utilizados por un mayor número de usuarios, sectores como la banca, el comercio electrónico, la sanidad, el turismo, y los seguros, entre otros, podrán gestionar sus sistemas, y su interacción con sus clientes de una forma más eficiente, segura, privada, y fiable. Como consecuencia, nuevos escenarios y casos de uso en estos sectores se abren en el horizonte en los próximos años.

Referencias