Este artículo cubre los conceptos centrales de la identidad descentralizada, la evolución de la identidad en Internet, una descripción general capa por capa de la pila de infraestructura de identidad Web3 y desarrollos relacionados en las primitivas de privacidad. Los niveles de prueba de personalidad, cumplimiento y aplicación se tratarán en artículos futuros.
La identidad es un atributo emergente que consiste en datos asociados con una persona, entidad u objeto. En el mundo físico, almacenamos estos datos en nuestro cerebro en forma de reputaciones abstractas y asociaciones psicológicas. En el mundo digital, la identidad se formaliza en dos componentes:
Identificador: un conjunto único de caracteres o números que identifica un tema (por ejemplo, número de pasaporte, ID de Twitter, ID de estudiante).
Datos relacionados con el tema (por ejemplo, historial de viajes, tweets y seguidores, logros académicos).
Crear una capa de identidad para Internet es difícil porque falta consenso sobre qué debería ser y cómo debería funcionar. La identidad digital es contextual y experimentamos Internet a través de una variedad de contenidos que existen al menos en muchos contextos diferentes. Hoy en día, gran parte de nuestra identidad digital está fragmentada y bajo el control de un puñado de partes interesadas cuyo interés es evitar que salgamos de su entorno hacia cualquier otro lugar.
Las empresas ven las relaciones con los clientes como activos críticos y no están dispuestas a ceder el control de estas relaciones. Hasta el momento, no existe ningún método que pueda servir de incentivo para hacerlo. Incluso una identidad temporal única es mejor que un marco sobre el que no tienen control.
Industrias específicas como las financieras tienen necesidades únicas (como el cumplimiento) cuando se trata de mantener relaciones digitales con clientes y proveedores.
Los gobiernos tienen necesidades distintas a las de otros tipos de organizaciones. Por ejemplo, competencia sobre permisos de conducir y pasaportes.
Este modelo crea una asimetría de poder entre los individuos y las partes que gestionan nuestras identidades y datos. Limita nuestra autonomía, impidiéndonos dar nuestro consentimiento, revelar selectivamente información sobre nosotros mismos y trasladar nuestras identidades a través de contextos para experiencias consistentes en línea y fuera de línea.
Antes del auge de Crypto y web3, la identidad descentralizada era un esfuerzo colectivo. El objetivo general es que los individuos recuperen la autonomía sobre sus identidades sin depender de un único guardián centralizado. El mal uso de los datos de los clientes y la erosión de la confianza en las grandes corporaciones han hecho que la descentralización sea central para la próxima era de la identidad en Internet.
1 El concepto central de identidad descentralizada
Los identificadores descentralizados (DID) y las pruebas son los principales componentes básicos de la identidad descentralizada. Los DID se publican y almacenan en un Registro de datos verificables (VDR) como un "espacio de nombres" autónomo que no se administra de forma centralizada. Además de blockchain, la infraestructura de almacenamiento descentralizada y las redes P2P también pueden servir como VDR.
Aquí, las entidades (individuos, comunidades, organizaciones) pueden utilizar una infraestructura de clave pública (PKI) descentralizada para autenticar, demostrar la propiedad y administrar su DID. A diferencia de la PKI de red tradicional, no depende de una autoridad de certificación (CA) centralizada como raíz de. confianza.
Los datos sobre identidades se escriben como pruebas, es decir, el "reclamo" de una identidad ante otra (o ante ellos mismos). La verificación de las reclamaciones se logra mediante firmas criptográficas implementadas por la PKI.
Los identificadores descentralizados tienen 4 propiedades principales:
Descentralización: Creación sin dependencia de instituciones centralizadas. Las entidades se pueden crear como quieran, manteniendo separadas sus identidades, roles e interacciones deseadas en diferentes contextos.
Persistencia: Una vez creado, se asigna permanentemente a una entidad. (Aunque algunos DID están diseñados para identidades efímeras).
Analizable: se puede utilizar para revelar información adicional sobre la entidad.
Verificable: Las entidades pueden acreditar la propiedad de un DID o afirmaciones sobre el mismo (credenciales verificables) sin depender de terceros, gracias a firmas y atestados criptográficos.
Estas propiedades distinguen los DID de otros identificadores, como nombres de usuario (no verificables), pasaportes (no descentralizables) y direcciones de blockchain (no persistentes, con resolución limitada).
El World Wide Web Consortium (W3C) es una comunidad internacional de organizaciones, personal y público que trabajan juntos para desarrollar estándares web. La especificación DID del W3C define 4 partes principales:
Escenario: el prefijo "did" indica a otros sistemas que está interactuando con un DID en lugar de otro tipo de identificador, como una URL, una dirección de correo electrónico o un código de barras de producto.
Método DID: Especifica a otros sistemas cómo interpretar el identificador. Hay más de 100 métodos DID enumerados en el sitio web de W3 C, a menudo asociados con su propio VDR y con diferentes mecanismos para crear, analizar, actualizar y desactivar identificadores.
Identificador único: un identificador único específico de un método DID. Por ejemplo, una dirección en una cadena de bloques específica.
Archivo DID: las 3 secciones anteriores se analizan en un archivo DID, que contiene la forma en que la entidad puede autenticarse, cualquier propiedad/reclamo sobre la entidad y punteros a la ubicación de datos adicionales sobre la entidad (el "punto final del servicio").
2 Impacto de las criptomonedas
Si bien la infraestructura de clave pública (PKI) existe desde hace mucho tiempo, Crypto aceleró su adopción a través del mecanismo de incentivos de la red de tokens. Lo que alguna vez fue utilizado principalmente por tecnólogos centrados en la privacidad es ahora un requisito previo para participar en la nueva economía. Los usuarios necesitan crear billeteras para autocustodiar sus activos e interactuar con aplicaciones web3. Impulsados por el auge de las ICO, el verano de DeFi, la manía de NFT y la comunidad de tokenización, los usuarios tienen más claves en sus manos que nunca. Lo que sigue es un vibrante ecosistema de productos y servicios que hacen que la gestión de claves sea más fácil y segura. Crypto ha sido el caballo de Troya perfecto para la adopción y la infraestructura de identidad descentralizada.
Empecemos por las carteras. Si bien las billeteras todavía se consideran principalmente en el contexto de la gestión de activos en un sentido financiero, la tokenización y la historia en cadena nos han permitido representar nuestros intereses (colecciones de NFT), trabajo (Kudos, 101) y opiniones (votación de gobernanza). Perder sus claves privadas se está volviendo menos como perder su dinero y más como perder su pasaporte o cuenta de redes sociales. Las criptomonedas desdibujan la línea entre lo que poseemos y quiénes somos.
Sin embargo, nuestras actividades y participaciones en la cadena brindan una visión limitada de quiénes somos (y no preservamos la privacidad). Blockchain es solo una capa de la pila de identidades descentralizadas. Otras pilas también ayudan a resolver problemas importantes, como por ejemplo:
¿Cómo nos identificamos y autenticamos dentro de las redes y ecosistemas?
¿Cómo probamos nuestras cosas (reputación, singularidad, cumplimiento) manteniendo la privacidad?
¿Cómo concedemos, gestionamos y revocamos el acceso a nuestros datos?
En un mundo donde controlamos nuestras propias identidades y datos, ¿cómo interactuamos con las aplicaciones?
Las soluciones a estos problemas tendrán un profundo impacto en cómo será Internet para las generaciones venideras.
Las siguientes secciones recorren la pila de identidades Web3 capa por capa. Es decir, registro de datos verificables, almacenamiento descentralizado, mutabilidad y componibilidad de datos, billeteras, autenticación, autorización y atestación.
3 Pila de identidad Web3
Blockchain como registro de datos verificable
La naturaleza distribuida e inmutable de blockchain la hace adecuada como registro de datos verificable sobre el cual emitir DID. De hecho, varias cadenas de bloques públicas tienen métodos DID de W3 C, como por ejemplo:
En Ethereum, did:ethr:public key representa la identidad de la cuenta de Ethereum.
Cosmos, did:cosmos:chainspace:namespace:unique-id representa activos que son compatibles entre cadenas de Cosmos.
Bitcoin, dónde:btcr: btcr-identifier representa un ID de transacción codificado con TxRef que hace referencia a la ubicación de la transacción en la cadena de bloques de Bitcoin basada en UTXO.
Cabe destacar did:pkh:address, un enfoque DID generativo independiente del libro mayor diseñado para permitir la interoperabilidad en redes blockchain. Según el estándar CAIP-10, es una identificación de cuenta que se utiliza para la expresión de pares de claves entre cadenas.
Fractal es un protocolo de verificación y aprovisionamiento de identidad diseñado para aplicaciones que requieren niveles únicos y variables de KYC para los usuarios. Una vez completadas las verificaciones de validez y/o KYC, el Fractal DID se publica en la dirección Ethereum correspondiente y se agrega a la lista correspondiente. El registro DID de Fractal es un contrato inteligente en Ethereum, según el cual las partes de la transacción pueden consultar el DID de Fractal y su nivel de verificación.
Kilt, Dock y Sovrin son cadenas de bloques de aplicaciones específicas para una identidad soberana. Al momento de escribir este artículo, las empresas los utilizan principalmente para emitir identidades y credenciales a los usuarios finales. Para participar en la red, los nodos deben apostar tokens nativos para procesar transacciones como la emisión de DID/credenciales, definir esquemas de credenciales y realizar actualizaciones de revocación.
Almacenamiento de datos descentralizado
Si bien las cadenas de bloques de propósito general también pueden servir como fuente de datos de usuario inmutables, como la propiedad de activos y el historial de transacciones (como rastreadores de cartera y aplicaciones de "puntuación DeFi"), es posible que no sean adecuadas para almacenar la mayoría de los datos sobre los usuarios, porque. escribir y actualizar periódicamente grandes cantidades de información es costoso desde el punto de vista operativo y compromete la privacidad porque los datos son visibles de forma predeterminada.
Dicho esto, existen algunas cadenas de bloques para aplicaciones específicas, como Arweave*, que están diseñadas para almacenamiento permanente. Arweave paga a los mineros recompensas en bloque y tarifas de transacción a cambio de copias de la información almacenada en la red. Los mineros deben proporcionar una "prueba de acceso" para poder agregar nuevos bloques. Una parte de las tarifas también se ingresa en un fondo de dotación permanente que se pagará a los mineros en el futuro cuando los costos de almacenamiento no puedan cubrirse por la inflación y las tarifas.
Ethereum y Arweave son ejemplos de enfoques basados en blockchain para la persistencia de datos. En Ethereum, cada nodo completo debe almacenar toda la cadena. En Arweave, todos los datos necesarios para procesar nuevos bloques y nuevas transacciones se registran en el estado de cada bloque individual, lo que permite que nuevos participantes se unan a la red simplemente descargando el bloque actual de sus pares de confianza.
La persistencia basada en contratos significa que cada nodo no puede copiar ni almacenar datos de forma permanente. En cambio, los datos persisten a través de contratos con múltiples nodos, que acuerdan retener un bloque de datos durante un cierto período de tiempo y deben renovarse cada vez que se agotan para mantener la persistencia de los datos.
IPFS permite a los usuarios almacenar y transmitir datos verificables y dirigidos a contenido dentro de una red de igual a igual. Los usuarios pueden guardar los datos que deseen en sus propios nodos IPFS, aprovechar grupos de nodos dedicados o utilizar servicios "pinnin" de terceros como Pinata, Infura o web3.storage. Mientras haya un nodo que almacene los datos, los datos existirán en la red y estarán disponibles para otros nodos cuando los soliciten. Además de IPFS se encuentran capas criptoeconómicas como Filecoin y Crust Network, diseñadas para incentivar el almacenamiento de datos para la red mediante la creación de un mercado distribuido para la persistencia de datos a largo plazo.
Para la información de identificación personal (PII), se puede utilizar IPFS autorizado para cumplir con el derecho al olvido GDPR/CCPA, ya que permite a los usuarios eliminar sus datos almacenados en la red. Identity Wallet Nuggets adopta este enfoque y lo descentraliza aún más al permitir que los comerciantes y socios ejecuten nodos dedicados.
Otras soluciones de almacenamiento descentralizado basadas en contratos incluyen Sia y Storj, que cifran y dividen archivos individuales en múltiples nodos de la red. Ambos utilizan codificación de borrado (que requiere solo un subconjunto de nodos de almacenamiento para servir archivos) para garantizar la disponibilidad de los datos incluso si algunos nodos se desconectan. También tienen una estructura de incentivos incorporada y utilizan tokens nativos para el almacenamiento.
Cambios de datos y componibilidad
Universal Blockchain, Arweave e IPFS garantizan la inmutabilidad, una propiedad útil para datos como arte NFT estático y registros permanentes. Sin embargo, nuestras interacciones con la mayoría de las aplicaciones actuales actualizan constantemente nuestros datos. El protocolo Web3 diseñado para datos volátiles hace esto, aprovechando la capa de almacenamiento descentralizada que se encuentra debajo.
Ceramic es un protocolo para la mutabilidad y componibilidad de datos descentralizados que funciona transformando archivos inmutables en redes de almacenamiento de datos persistentes como IPFS o Arweave en estructuras de datos dinámicas. En Ceramic, estos "flujos de datos" son como su propio libro de contabilidad mutable. Los datos privados se pueden almacenar fuera de la cadena, con su esquema indexado en Ceramic, adjunto a un almacén de datos DID que conduce a un almacenamiento privado externo.
Cuando los usuarios actualizan su perfil en una aplicación con tecnología Ceramic, el protocolo valida esas actualizaciones como una secuencia, transformándola en un nuevo estado mientras realiza un seguimiento de los cambios de estado anteriores. Cada actualización de Ceramic está autenticada por un DID que se puede asignar a múltiples direcciones, lo que allana el camino para que los usuarios actualicen sus datos sin un servidor.
Hoy en día, las entidades Web2 poseen la interfaz de usuario y el backend, donde almacenan y controlan los datos del usuario. Google y Facebook utilizan estos datos para personalizar algorítmicamente nuestra experiencia en sus plataformas, produciendo aún más los datos que recopilan. Las nuevas aplicaciones deben crearse desde cero y no pueden ofrecer una experiencia personalizada desde el principio, lo que hace que el mercado sea menos competitivo.
Web3 democratiza los datos, nivela el campo de juego para nuevos productos y servicios y crea un entorno abierto para la experimentación y mercados competitivos para aplicaciones. En un mundo donde los usuarios pueden llevar datos de una plataforma a otra, los desarrolladores de aplicaciones no necesitan comenzar desde cero: pueden personalizar instantáneamente sus experiencias. Los usuarios pueden iniciar sesión con su billetera y autorizar a la aplicación a leer/escribir en una "base de datos" sobre la que tienen control total.
ComposeDB on Ceramic es una base de datos de gráficos descentralizada que permite a los desarrolladores de aplicaciones descubrir, crear y reutilizar modelos de datos componibles utilizando GraphQL. Los nodos en el diagrama son cuentas (DID) o archivos (flujos de datos). Los bordes del gráfico representan relaciones entre nodos.
Un DID representa cualquier entidad que pueda escribir datos en el gráfico, como un usuario final, una organización, una aplicación o cualquier tipo de servicio de autenticación.
Los modelos son flujos de Ceramic que almacenan metadatos sobre la estructura de datos del documento, reglas de validación, relaciones e información de descubrimiento. Los desarrolladores pueden crear, combinar y remezclar modelos en combinaciones de datos que sirvan como base de datos para sus aplicaciones. Esto reemplaza la tabla de usuarios tradicional con un UID centralizado y datos relacionados. Las aplicaciones se pueden crear a partir de un conjunto de datos común controlado por los usuarios, en lugar de gestionar sus propias tablas independientes.
Dado que las aplicaciones pueden definir libremente los modelos que utilizarán en contextos específicos, el mercado de curación adquiere importancia porque proporciona una señal para los modelos de datos más útiles (esquemas definidos para gráficos sociales, publicaciones de blogs, etc.). Con un mercado para estos modelos de datos, las aplicaciones pueden señalar estos modelos para que sean más fáciles de consumir. Esto incentivará que los conjuntos de datos públicos produzcan mejores análisis e infografías para que los productos puedan innovar aún más sobre esta base.
Tableland es una infraestructura para datos relacionales estructurados y mutables donde cada tabla se crea como un NFT en una cadena compatible con EVM. El propietario de la NFT puede configurar una lógica de control de acceso para la tabla, permitiendo que un tercero realice actualizaciones en la base de datos si esa parte tiene los permisos de escritura adecuados. Tableland ejecuta una red de validadores fuera de la cadena que gestionan la creación de tablas y los cambios posteriores.
Las actualizaciones dentro y fuera de la cadena se manejan mediante contratos inteligentes, que apuntan a la red Tableland mediante baseURI y tokenURI. Con Tableland, los metadatos NFT se pueden modificar (mediante control de acceso), consultar (mediante SQL) y combinar (con otras tablas en Tableland).
Los estándares de contratos inteligentes como ERC-20 y ERC-721 brindan a las dapps un lenguaje compartido sobre cómo creamos y transferimos tokens, y los estándares de modelos de datos brindan a las dapps una comprensión compartida de los perfiles, las reputaciones, las propuestas de DAO y los gráficos sociales. Estos datos pueden ser reutilizados por múltiples aplicaciones a través de un registro abierto que cualquiera puede enviar.
Desacoplar la aplicación de la capa de datos permite a los usuarios transferir su contenido, gráfico social y reputación entre plataformas. Las aplicaciones pueden acceder a la misma base de datos y usarse en su contexto, lo que permite a los usuarios obtener una reputación componible en diferentes contextos.
billetera
En términos generales, una billetera incluye las interfaces y la infraestructura subyacente para la gestión de claves, la comunicación (intercambio de datos entre titulares, emisores y validadores) y la presentación y verificación de reclamaciones.
Vale la pena distinguir entre billeteras criptográficas (MetaMask, Ledger, Coinbase Wallet, etc.) y billeteras de identidad. Las billeteras criptográficas almacenan claves criptográficas exclusivas de la red blockchain y están diseñadas para enviar/recibir monedas y firmar transacciones. Las billeteras de identidad almacenan identidades y permiten a los usuarios crear y proporcionar reclamos para que puedan proporcionar datos de identidad en todas las aplicaciones y servicios.
Ejemplos de billeteras de identidad incluyen ONTO, Nuggets y Polygon ID Wallet. Algunas billeteras de identidad, como Fractal, incluyen verificaciones de validez y KYC como parte de su proceso de incorporación, por lo que los usuarios pueden presentar un reclamo para enviar aplicaciones que tengan dichos requisitos. Esto es mucho menos común en las carteras criptográficas. Además, es más probable que las billeteras de identidad admitan DID aprobados por el W3C, credenciales verificables e implementaciones de DIDComm, así como casos de uso fuera de web3.
WalletConnect es un protocolo de comunicación que conecta billeteras con billeteras y dapps. Como protocolo minimalista e imparcial que ya presta servicios a millones de usuarios de criptomonedas, WalletConnect puede resultar una poderosa alternativa a DIDCom para acelerar la adopción de una infraestructura de identidad soberana. A diferencia de DIDCom, que requiere que un proveedor de servicios proporcione una infraestructura mediadora alojada, WalletConnect almacena información en un "buzón en la nube" en la red de retransmisión, que se envía a la billetera cuando ésta vuelve a estar en línea.
Certificación
La autenticación es la confirmación de la identidad de un usuario basada en uno o más factores de autenticación. Los factores de autenticación pueden ser algo que tenga el usuario (firma digital, identificación, token de seguridad), algo que sepa (contraseña, PIN, respuesta secreta) o biométricos (huella digital, voz, escaneo de retina).
En un paradigma de identidad descentralizado, los usuarios pueden autenticarse utilizando sus billeteras. Detrás de escena, la billetera usa sus claves almacenadas para producir firmas digitales que sirven como "prueba" de que el titular posee las claves privadas asociadas con la cuenta. Dado que las billeteras criptográficas pueden generar firmas, las aplicaciones que ofrecen inicio de sesión web3 pueden permitir a los usuarios autenticarse con su Metamask o WalletConnect.
Durante años, los usuarios de criptomonedas han interactuado con dapps a través de billeteras conectadas. La dapp no recuerda a los usuarios conectados y los trata como una pizarra en blanco cada vez que visitan un sitio web.
Hoy en día, los usuarios tienen patrones de interacción más profundos con las dapps. La identidad descentralizada resulta útil aquí porque permite que las aplicaciones obtengan más contexto en torno al usuario, lo que permite a las personas conservar el control de sus datos y al mismo tiempo ofrecer una experiencia personalizada.
Para interacciones contextuales más ricas, como cargar preferencias de usuario, perfiles o mensajes de chat privados, la aplicación debe asegurarse primero de que está hablando con el poseedor de la clave real detrás de la cuenta. Si bien Connected Wallets no ofrece esta garantía, los estándares de certificación sí la ofrecen. La autenticación establece una sesión con el usuario y permite que las aplicaciones lean y escriban sus datos de forma segura.
Iniciar sesión con Ethereum (SIWE) es un estándar de autenticación del que fueron pioneros Spruce, ENS y la Fundación Ethereum. SIWE estandariza un formato de mensaje (similar a jwt) para que los usuarios utilicen un servicio de inicio de sesión de cuenta basado en blockchain. Sign-In with X (CAIP-122) se basa en esta base, lo que convierte a SIWE en una implementación de SIWx centrada en Ethereum, generalizando el estándar para operar en blockchains.
Para las personas, esto significa poder registrarse o iniciar sesión con su billetera web3 sin tener que crear un nombre de usuario y contraseña, con una experiencia de usuario de “solo unos pocos clics” que imita el inicio de sesión social mientras mantiene el control sobre su identidad en línea. Las aplicaciones pueden utilizar esto como estrategia de marketing para dirigirse a la audiencia nativa de web3 y satisfacer las necesidades de sus usuarios.
A mediano plazo, la capacidad de iniciar sesión en dapps y otros servicios web2 utilizando una billetera criptográfica se convertirá en una mejora de la experiencia del usuario nativa de web3. Sin embargo, esto expondrá a los usuarios a problemas de correlación y seguimiento que resultarán muy perjudiciales en web2. La autenticación a través de DID de pares o identificadores autocertificados puede servir como una solución alternativa.
A diferencia de los DID "normales" descritos anteriormente, los DID de pares están diseñados para usarse entre 2 o N partes conocidas. Podrán utilizarse como identificador único para cada servicio y/o interacción. La dirección de billetera cifrada en esta identidad digital se puede almacenar con el VC como prueba de verificación para cada interacción con el comerciante o el servicio.
Autorización y control de acceso
La autenticación confirma la identidad de un usuario, mientras que la autorización determina a qué recursos debe poder acceder una entidad y qué puede hacer con esos recursos. Estos dos procesos son independientes, pero a menudo van de la mano en el proceso de experiencia del usuario. Después de iniciar sesión en un servicio de terceros mediante el inicio de sesión social, es posible que se le soliciten al usuario algunas solicitudes de autorización, como se muestra en la siguiente figura:
En el modelo de identidad federada, usted autoriza a aplicaciones de terceros a ver o actualizar sus datos almacenados con el proveedor de identidad (como Google), y ellos mantienen una lista y los permisos relacionados que usted ha autorizado para estas aplicaciones. La infraestructura y los estándares de autorización Web3 también ayudan a lograr este objetivo, excepto que tiene datos autónomos y puede otorgar a cada tercero el derecho de descifrar/leer/actualizar los datos sin la necesidad de un intermediario centralizado.
A medida que la comunidad de tokenización ha crecido, también lo han hecho los productos de activación de tokens web3 como Collab.Land, Guild y Tokenproof. Un uso principal de estas herramientas es el control de acceso a los canales de Discord exclusivos para miembros, con un acceso más granular basado en la función y la reputación. En lugar de asignar acceso manualmente, las comunidades pueden otorgar acceso mediante programación en función de la tenencia de tokens, la actividad en cadena o la verificación social.
Lit es un protocolo de control de acceso y gestión de claves descentralizado que utiliza tecnología MPC para distribuir "acciones" de claves privadas entre los nodos de la red Lit. Un par de claves pública/privada está representado por un NFT PKP (Par de claves programables), cuyo propietario es el único controlador del par de claves. Cuando se cumplen condiciones definidas arbitrariamente, los propietarios de PKP pueden activar la red para agregar recursos compartidos de claves para descifrar archivos o firmar mensajes en su nombre.
En el contexto del control de acceso, Lit permite a los usuarios definir condiciones dentro de la cadena que otorgan acceso a recursos fuera de la cadena. Por ejemplo, un DAO podría cargar un archivo en Arweave o AWS, cifrarlo con Lit y definir un conjunto de condiciones (como la propiedad de NFT). Las billeteras calificadas firman y transmiten un mensaje a los nodos de protocolo, que verifican la cadena de bloques para garantizar que el firmante sea elegible y, de ser así, agregan claves compartidas para que el firmante descifre el archivo. Esta misma infraestructura también se puede utilizar para desbloquear experiencias web2 como descuentos de Shopify, salas Zoom bloqueadas y espacios Gathertown, transmisión en vivo y acceso a Google Drive.
Kepler organiza los datos en torno a bases de datos controladas por el usuario ("Órbitas"), que representan una lista designada de hosts para los datos y, como contrato inteligente, solo sus claves pueden controlarlos. Estas bases de datos pueden ser administradas por partes confiables, mecanismos de consenso entre hosts, propietarios de recursos y validez de permisos. Cualquiera que utilice SIWE puede aprovechar inmediatamente una base de datos privada para almacenar sus preferencias, certificados digitales y archivos privados. Con el soporte "traiga su propio almacenamiento" para múltiples backends de almacenamiento, los usuarios pueden autohospedarse o usar una versión administrada.
Algunos ejemplos de cómo las aplicaciones pueden utilizar combinaciones de los componentes básicos mencionados anteriormente:
Orbis es una aplicación de red social ("web3 Twitter/Discord") que utiliza Ceramic para el almacenamiento de datos y las actualizaciones. Los mensajes privados primero se cifran con Lit antes de almacenarse.
Utilice Lit como sistema de cifrado descentralizado para delegar quién puede descifrar sus datos de Tableland.
Kepler puede utilizar documentos cerámicos como baliza para dirigirse a tiendas privadas.
Cree PKP de Lit que permitan que las aplicaciones "posean" un flujo de cerámica y otorguen a las acciones de Lit (código en IPFS) la capacidad de firmar y actualizar la base de datos si se cumplen condiciones arbitrarias.
CACAO es un estándar para expresar capacidades de objetos independientes de la cadena (OCAP), creado utilizando Sign-in-With X. Define un método para registrar los resultados de las operaciones de firma SIWx como capacidades de objetos basadas en IPLD (OCAP), creando no solo aceptaciones de eventos autenticadas, sino también recibos de autorización componibles y reproducibles para autorizaciones verificables.
Los métodos de autorización permiten a los usuarios otorgar a las aplicaciones la capacidad detallada, bien delimitada y verificable de ver/actualizar sus datos. Además, puede basarse en sesiones para que no tengan que firmar el mensaje en cada actualización, sino que tengan interacciones ricas en la aplicación y firmen una vez al final de la sesión.
Certificados y Credenciales
Aquí llegamos a la cima de la pila de infraestructura de identidad descentralizada, como se muestra en la figura.
Algunos términos:
La atestación se refiere a la certificación de que una declaración y una firma son válidas y surge de la necesidad de una verificación independiente de los hechos registrados.
Un bono es cualquier documento que detalla información sobre una entidad, escrito y firmado por otra entidad o por ellos mismos. Las credenciales son a prueba de manipulaciones, verificables criptográficamente y pueden almacenarse en una billetera.
Las credenciales verificables (VC) son el modelo de datos estándar y el formato de representación para credenciales digitales cifrables según lo definido por la especificación de credenciales verificables del W3C:
El emisor es la parte que emitió la credencial (como una universidad)
El titular es propietario de la credencial (por ejemplo, estudiante)
Verificador para verificar el certificado (como un posible empleador)
La presentación verificable es cuando los usuarios comparten sus datos con un tercero que puede verificar que la credencial efectivamente fue firmada por el emisor.
Tenga en cuenta que aquí "emisor", "titular" y "verificador" son relativos. Cada uno tiene su propio DID y las credenciales que recopila.
Las credenciales son la piedra angular de la reputación, y la reputación es un fenómeno social que cambia con las circunstancias cambiantes. Se pueden utilizar una o más credenciales como representación de las calificaciones, capacidades o autoridad de una entidad. Cualquiera puede decirse a sí mismo que se graduó con honores en una universidad prestigiosa, pero eso no significa nada para los demás. Los certificados en poder de las universidades se consideran legítimos o prestigiosos.
Si bien no todos los proyectos de certificación X y las insignias nativas de Web3 cumplen con los estándares VC del W3C, podemos extraer similitudes de los sistemas descritos anteriormente.
El ejemplo más directo son las insignias NFT intransferibles, que solo pueden ser acuñadas por billeteras que hayan completado alguna actividad en la cadena. Debido a que todo el historial de transacciones está en cadena, es verificable y a prueba de manipulaciones desde el principio. DegenScore cuantifica los atributos de su simio agregando sus interacciones con los protocolos DeFi y genera una puntuación utilizando reglas en un contrato inteligente. Puede acuñar monedas y guardarlas como una "Credencial DeFi" en su billetera criptográfica. Si hubiera un DAO de Degen que estuviera restringido a aquellos con una determinada puntuación, entonces podría presentar este NFT al DAO, y luego el protocolo de activación de tokens podría verificar que lo tiene, y podría ingresar a este DAO - Prueba de Degen .
POAP * Prueba de que asistió a un evento o conoció a alguien en la vida real: Prueba de asistencia/Prueba de encuentro.
Mientras que Otterspace permite que una DAO decida qué constituye un trabajo significativo y emita insignias ntNFT a sus miembros, Proved requiere que una DAO "firme" un reclamo (una Prueba de contribución) antes de que sus miembros le acuñen insignias NFT específicas de DAO.
101 Al final de sus cursos en línea, una vez que los estudiantes pasan la prueba, emiten ntNFT (Certificado de aprendizaje).
Kleoverse emite insignias de competencia Typecript, Rust o Solidity (prueba de habilidades) a los usuarios basándose en datos de GitHub.
Además de los casos de uso de control de acceso descritos anteriormente, los PKP de Lit también pueden actuar como un notario criptográfico que Lit Actions verifica antes de firmar un certificado. Por ejemplo, una plataforma educativa descentralizada podría permitir a los creadores de cursos definir qué se considera aprobar una prueba e implementar esas condiciones como Lit Actions para emitir VC de forma programática utilizando su PKP en función de esas condiciones.
Aquí surgen dos preguntas: ¿Cuáles de estos puntos de datos de certificación son significativos y cómo los agregamos para ganar reputación?
El protocolo Orange proporciona una solución a esto: integrar estos puntos de datos en modelos bien definidos a través de proveedores de modelos. En Orange, los parlamentarios generalmente se refieren a plataformas que tienen medidas de evaluación de reputación dentro de sus sistemas. Los "proveedores de datos" permiten que sus datos se utilicen como entrada para modelos diseñados por proveedores de modelos. Luego, los parlamentarios agregan métodos de cálculo y asignan marcadores de reputación a diferentes entidades y ponen estos modelos a disposición de otros para que los utilicen. Las Dapps pueden seleccionar y conectarse a estos modelos de reputación para sus casos de uso.
Hasta el momento, Aave, Gitcoin, Snapshot, DAOHaus, etc. han facilitado sus datos a Orange. Estos datos son modelados por ellos y otros proyectos como Dework, talentoDAO y Crypto Sapiens para proporcionar ntNFT a los miembros, lo que abre una amplia gama de oportunidades, desde mejorar los permisos de Discord usando CollabLand y Guild, hasta la gobernanza ponderada por la reputación de Snapshot.
privacidad
Ninguna discusión sobre la infraestructura de identidad está completa sin considerar las preocupaciones sobre la privacidad y los primitivos técnicos que permiten la privacidad. La privacidad es un factor en todos los niveles de la pila. Durante la última década, la adopción de blockchain ha acelerado el desarrollo de primitivas criptográficas sólidas como zk-proofs, además de su aplicación en tecnologías de escalado como paquetes acumulativos que permiten a las identidades realizar cambios sutiles en información verificable públicamente, declaración de privacidad.
Las garantías de privacidad nos ayudan a evitar las externalidades negativas que conlleva el uso de datos totalmente transparentes para producir afirmaciones confiables. Sin estas garantías, terceros pueden iniciar interacciones fuera del alcance (por ejemplo, publicidad, acoso) que no estén relacionadas con la transacción original. Aprovechando la criptografía y las tecnologías zk, podemos construir sistemas de identidad donde las interacciones y el intercambio de datos estén "aislados" dentro de límites claramente definidos y sensibles al contexto.
Las credenciales verificables "normales" generalmente vienen en formato JSON-JWT o JSON-LD, y cada credencial tiene una certificación externa o incorporada (firma digital), que la hace verificable y a prueba de manipulaciones, escrita por el emisor.
Las pruebas Zk y los nuevos esquemas de firma mejoran las funciones de protección de la privacidad de W3 C VC, tales como:
Resistencia a la correlación: cada vez que un titular comparte una credencial, este identificador se comparte, por lo que cada vez que se presenta una credencial significa que es posible que los validadores se confabulen y vean dónde el titular presentó su credencial y se triangula con un identificador. persona. Con Signature Braille, puedes compartir una prueba única de tu firma cada vez sin compartir la firma en sí.
Divulgación selectiva: comparta solo los atributos necesarios de un VC y oculte el resto. Tanto las credenciales JSON-JWT como las credenciales firmadas JSON-LD LD requieren que el titular comparta toda la credencial con el verificador; no se comparte "parcialmente".
Prueba compuesta: combine las propiedades de múltiples VC en una única prueba sin necesidad de acudir al emisor o generar un nuevo VC.
Predicción: Permite el uso de valores ocultos en las operaciones, con un valor proporcionado por el validador. Por ejemplo, el saldo de la cuenta del titular de un vale excede un cierto umbral sin revelar el saldo o, como se cita a menudo, demostrar que tiene edad legal para beber sin revelar su fecha de nacimiento.
Un enfoque prometedor es el esquema de firma BBS, propuesto originalmente por MATTR en 2020. La propuesta permite que las firmas BBS se utilicen con el formato JSON-LD comúnmente utilizado por los VC. El titular podrá, opcionalmente, revelar las declaraciones contenidas en el certificado originalmente firmado. La prueba producida por este esquema es una prueba de conocimiento cero de la firma, lo que significa que el verificador no puede determinar qué firma se utilizó para producir la prueba, eliminando así una fuente común de correlación.
Iden3 es un protocolo de identidad nativo de ZK que proporciona un marco ZK programable y bibliotecas de código abierto para primitivas de identidad ZK, autenticación y declaraciones generadas por atestación. El protocolo genera pares de claves para cada identidad utilizando curvas elípticas de Baby Jubjub, que están diseñadas para funcionar de manera efectiva con zk-SNARK utilizados para demostrar la propiedad de la identidad y los reclamos de una manera que preserve la privacidad. PolygonID utiliza actualmente el protocolo para su billetera de identidad.
La aplicación de zkp es un área activa de investigación y experimentación que ha generado mucho entusiasmo en la comunidad criptográfica en los últimos años. En web3 lo hemos visto utilizado en las siguientes aplicaciones:
Lanzamiento aéreo privado: lanzamiento sigiloso
Pruebas que preservan la privacidad pero son confiables: Sismo (propiedad), Semaphore (membresía)
Mensajería anónima: heyanon
Votación/votación anónima: Melo
4. Conclusión
Algunas implicaciones generales de este estudio:
Así como Crypto catalizó el desarrollo y la adopción de DPKI, la reputación componible que otorga acceso en línea/IRL será el catalizador para la infraestructura de identidad descentralizada. Actualmente, los protocolos de emisión de credenciales (x-proof) están fragmentados en diferentes casos de uso y redes blockchain. En 2023, veremos la capa de agregación de estos (como los perfiles) madurar y ganar adopción como una interfaz unificada, especialmente si se puede usar para desbloquear experiencias fuera de las criptomonedas, como el acceso a eventos o descuentos en comercio electrónico.
La gestión de claves sigue siendo un punto de fricción y propensa a puntos únicos de falla. Esta es una experiencia torpe para la mayoría de los usuarios cripto-nativos y una experiencia completamente inaccesible para la mayoría de los consumidores. La federación es una mejora de la experiencia del usuario para el modelo web1.0 que permite el inicio de sesión único con un nombre de usuario y contraseña por aplicación. Si bien la experiencia del usuario para la autenticación web3 está mejorando, todavía proporciona una mala experiencia de usuario, requiere una frase inicial y proporciona un recurso limitado si se pierde la clave. Veremos mejoras en esta área a medida que la tecnología MPC madure y se generalice entre individuos e instituciones.
La infraestructura criptográfica satisface las necesidades de los usuarios en web2. Las primitivas Web3 están comenzando a integrarse con aplicaciones y servicios web2, llevando la identidad descentralizada a las masas, como Collab.Land integrándose con Nuggets, permitiendo a los usuarios de Reddit usar su reputación como VC para desbloquear el acceso. El middleware de autenticación y autorización Auth0 integra SIWE como proveedor de identidad y sus clientes empresariales ahora pueden proporcionar inicio de sesión de billetera fuera de SSO.
A medida que los datos se democratizan, es necesario validar los mecanismos de purificación. Al igual que el protocolo de indexación, The Graph utiliza una red de curadores y delegados para señalar los subgrafos más útiles (API para datos en cadena), los modelos de datos en torno a los usuarios y la reputación de protocolos como Ceramic y Orange requieren tiempo y participación de la comunidad para madurar más allá de DAO y Casos de uso de criptografía.
Consideraciones de privacidad. Los proyectos deben considerar cuidadosamente el impacto del almacenamiento público o persistente al elegir su pila. En relación con una combinación de VC, efímeros y P&DID que preservan la privacidad, así como ZKP para actividades dentro y fuera de la cadena, las NFT de datos públicos "puros" pueden ser adecuadas para casos de uso limitados (por ejemplo, alguna abstracción de la cadena). actividades) que proporcionan características tales como divulgación selectiva, rotación de claves, anticorrelación y revocabilidad.
Las nuevas herramientas criptográficas como zkSNARK serán una parte importante de la próxima generación de infraestructura de identidad. Si bien zkp se está implementando actualmente en casos de uso aislados, requerirá un esfuerzo colectivo de investigación y desarrollo de abajo hacia arriba para centrarse en patrones de diseño de aplicaciones, implementaciones de circuitos ZK para primitivas criptográficas, herramientas de seguridad de circuitos y herramientas de desarrollo. Esto es algo a lo que hay que estar atento.
La identidad descentralizada es un gran proyecto y requiere los esfuerzos de todo el ecosistema para converger en estándares, iterar sobre primitivos y controlarse mutuamente sobre el impacto de las decisiones de diseño.