Identificadors descentralitzats: la “capa d’identitat que falta” d’Internet

Una identitat o identificador descentralitzat (DID) no és res més que un esquema amb diversos atributs que defineix de manera única una persona, un objecte o una organització. Els sistemes de gestió d’identitats convencionals es basen en autoritats centralitzades, com ara serveis de directori corporatius o autoritats de certificació. Els DID estan totalment sota el control del subjecte DID, independentment de qualsevol registre centralitzat, proveïdor d’identitats o autoritat certificadora. 

L’aparició de la tecnologia blockchain proporciona l’oportunitat d’implementar una gestió d’identitats totalment descentralitzada (DIDM). A DIDM, tots els propietaris d’identitats comparteixen una arrel de confiança comuna en forma de llibre major distribuït globalment.

Cada registre DID està protegit criptogràficament per claus privades sota el control del propietari de la identitat. Es creu que és l’enllaç que falta per redefinir els valors de seguretat d’Internet, ja que es pot convertir en la capa d’identitat d’Internet. El World Wide Web Consortium (W3C) està creant l’especificació dels DID..

Avantatges dels DID

Markus Sabadello, coautor de l’especificació DID i CEO de Danube Tech, va explicar els avantatges generals d’utilitzar DID:

“Els DID són una innovació important perquè ens proporcionen la possibilitat d’establir identificadors digitals que siguin persistents, segurs i resolgibles a tot el món, tot i que la seva creació no requereix una autoritat central ni un intermediari”.

Els DID estan controlats exclusivament per l’entitat a què fan referència i, per tant, són un element fonamental per al que generalment es coneix com "identitat autosoberana" o bé "identitat descentralitzada".

Imagineu-vos que tingueu un número de telèfon que el vostre operador de telefonia mòbil no us assigni, sinó que el trieu vosaltres mateixos. Qualsevol persona del món encara pot trucar-vos i ningú no us podria treure aquest número de telèfon: els DID són similars a aquesta situació.

Tècnicament, els DID són identificadors de recursos uniformes (URI) vàlids, per tant són compatibles amb moltes tecnologies web d’ús general. No es limiten a un sol cas o protocol.

Un altre avantatge és que els DID estan dissenyats per funcionar amb diferents cadenes de blocs i altres sistemes objectiu, de manera que proporcionen interoperabilitat.

Quins són els usos dels DID?

Els DID es poden utilitzar per identificar qualsevol recurs digital o de la vida real, com ara un document, un individu, una empresa o un objecte físic. En general, un DID per si sol no demostra la singularitat ni res més del seu propietari. Un DID és només un identificador. Podeu tenir, i en molts casos, tenir diversos DID per a diferents propòsits, relacions i transaccions.

Tanmateix, tot i que un DID per si mateix no proporciona molta informació sobre el propietari, podeu utilitzar protocols a sobre dels DID per verificar diverses coses. Per demostrar simplement que controleu un determinat DID i utilitzar-lo (per exemple, per iniciar la sessió en un lloc web), podeu utilitzar un protocol de resposta / repte anomenat DID Auth. Això compleix una funció similar per a "identitat descentralitzada" com ho fan OpenID Connect i altres "identitat federada".

Per demostrar fets més complexos sobre el propietari d’un DID, com ara l’edat, la possessió d’un permís de conduir vàlid o la pertinença a una organització, podeu utilitzar Credencials verificables, que estan estandarditzats pel W3C.

Les credencials verificables són les reclamacions que atorga un emissor sobre un DID. El propietari del DID els pot utilitzar com a prova durant una transacció. No hi ha límit a l’abast i a la semàntica de les reclamacions que es poden associar a un DID; poden ser tan rics com totes les nostres identitats humanes i organitzatives de la vida real que conformen les nostres societats.

Exemple d’estructura DID

Hi ha moltes variants possibles per a un DID. El fitxer d’especificacions complet es pot trobar a W3C. A continuació es mostra una forma possible de definir un DID. El que veiem aquí és una definició senzilla d’un DID amb la data de creació, la data en què s’ha actualitzat el document per última vegada, el camp de signatura (opcional) i la “capacitat d’autorització”. Aquest darrer camp conté objectes que fan referència a altres DID que obtenen un permís específic sobre aquest DID. Per exemple, el DID amb ID 215cb1dc-1f44-4695-a07f-97649cad9938 rep el permís per actualitzar aquest DID.

exemple DID

Font: W3C – https://w3c-ccg.github.io/did-spec/#requirements-of-did-method-specifications

Sovint s’entén malament el camp “signatura”. El "signatura" camp només demostra que el document DID no s’ha manipulat i que el signant controlava una determinada clau privada en el moment en què es va signar. Tot i això, la signatura no demostra que el signant sigui el propietari real del DID. Per tant, tot i que pot ser una característica de seguretat addicional, no es pot confiar per si sola quan es treballa amb DID. És similar al procés d’aplegar públicament una clau PGP al fòrum Bitcointalk.com per demostrar que teniu la clau enllaçada al vostre compte Bitcointalk..

Markus Sabadello ha afirmat que el camp “permís” és l’element inestable de l’especificació DID i probablement s’eliminarà. La seva intenció és expressar permisos sobre qui pot actualitzar el document DID. No obstant això, hi ha alguns problemes amb això:

  1. Els diferents tipus de DID (mètodes DID) tenen idees i possibilitats molt diferents sobre com gestionar les actualitzacions. Qualsevol informació d’autorització sobre actualitzacions de DID s’ha d’especificar mitjançant aquests mètodes DID específics, en lloc d’obligar-ho de manera universal per a tots els DID..
  2. En lloc de les llistes tradicionals de control d’accés per expressar permisos, hem estat estudiant un model alternatiu anomenat capacitats d’objectes. Aquest és un exemple d’aquesta especificació que és molt similar als DID.

capacitats d'objecte vinculades a DID

Font: W3C – https://w3c-ccg.github.io/ld-ocap/

Casos d’ús

L’exemple més senzill és iniciar la sessió a llocs web. Tindríeu una cartera digital que emmagatzemaria els vostres DID i les claus associades i podríeu fer servir un complement o una aplicació del navegador que aparegui i que us demani confirmació quan inicieu la sessió. La idea és una mica comparable amb el connector MetaMask, però menys avançada.

Un altre exemple és "Porteu la vostra pròpia identitat" en comprar en línia. Podeu comprar un llibre a una botiga en línia i, en fer la sortida, només heu de subministrar el vostre DID (de nou mitjançant un complement o una aplicació). D’aquesta manera podríeu compartir la vostra adreça d’enviament i informació de pagament sense haver de crear un compte al lloc web de la botiga. Fins i tot podem dibuixar la línia cap al món físic on enllaçem una targeta de fidelització de clients, que obtenim a totes les botigues per obtenir un petit descompte, al camp d’identificació del nostre identificador descentralitzat.

Finalment, un exemple més avançat és la llibreta d’adreces distribuïda. Podeu mantenir-vos connectat amb els vostres amics, així com amb les empreses que us interessen, i compartir la vostra adreça personal i altra informació del perfil amb ells, amb un control total, transparència i portabilitat de dades. Cada vegada que canvia la informació del vostre perfil, es poden notificar automàticament les vostres connexions. Els DID permeten connexions de tota la vida entre propietaris de DID que ningú no us pot treure.

Els DID milloren la seguretat

Per entendre com els DID milloren la seguretat, primer hem de familiaritzar-nos amb què és una infraestructura de clau pública (PKI). Un PKI s’utilitza principalment per xifrar i / o signar dades. El xifratge de dades fa referència a la seva codificació de manera que sigui il·legible excepte per a persones autoritzades. El PKI es basa en un mecanisme anomenat certificat digital, també anomenat certificat X.509. Penseu en un certificat com una targeta d’identificació virtual. Un PKI també es coneix com a autoritat de certificació (CA). Per exemple, VeriSign és una CA coneguda per crear un web de confiança oferint certificats SSL / TLS signats per ells.

Com que un PKI utilitza una base de dades centralitzada per emmagatzemar aquesta informació, podem pensar en els DID com una variant descentralitzada dels PKI. Els DID constitueixen la base d’una infraestructura de clau pública descentralitzada (DPKI).

Això significa que tots els missatges i compartició de dades entre DID s’autentifiquen i xifren mitjançant claus criptogràfiques associades a un DID, de manera similar als PKI tradicionals, però sense els inconvenients de les autoritats de certificació tradicionals..

Hi ha nombrosos exemples en què, en el passat, l’arquitectura de certificats TLS existent utilitzada pels servidors web ha resultat ser vulnerable a la censura i la manipulació. Amb els DID, es pot eliminar aquesta amenaça d’intermediaris, ja que cada DID representa el seu "arrel de confiança". Això vol dir que no han de ser controlats i emesos per les autoritats centrals per ser confiables.

Una altra característica de seguretat important és que els DID són persistents. Això significa que les claus criptogràfiques associades a un DID es poden rotar i revocar de manera segura mitjançant diversos mecanismes, sense haver de crear un DID nou. Aprofundirem més en aquest aspecte “revocador” a la següent subencapçalament.

Suprimeix o revoca DID

L’última versió (v0.7) de l’especificació del W3C sobre identificadors descentralitzats analitza les diferents operacions DID en què podem trobar “Suprimeix / Revoca”. Això és bastant estrany, ja que les tecnologies de llibres descentralitzats (DLT) són immutables per naturalesa. Explorem més aquest aspecte.

Un cop emesa una transacció inicial per crear el DID, es poden actualitzar altres transaccions i també "revocar" o bé "acabar", el DID. Tot i que la història d’un DID pot ser només d’apèndix i existir infinitament, l’estat actual del DID es defineix per la suma acumulada de totes les transaccions.

Si s’afegeix una transacció especial a aquest historial, el DID es marca com a "revocat". Tingueu en compte també que, tot i que els DLT tenen propietats útils que els fan adequats per a la creació i emmagatzematge DID, els DLT no són l’única tecnologia possible per als DID. Els DID també es poden crear mitjançant taules de hash descentralitzades (DHT), sistemes de fitxers distribuïts (IPF), bases de dades (BigchainDB) o altres xarxes descentralitzades.

Estat de l’especificació DID

Encara hi ha alguns problemes oberts, però el grup de treball del W3C per als DID espera publicar un esborrany d’implementador relativament estable el març o l’abril del 2018. Arribar a un estàndard W3C acabat és un procés molt més llarg que encara no poden predir..

A més, el W3C també està desenvolupant eines, com el Universal Resolver, que actua com un identificador de resolució i que funciona amb qualsevol sistema d’identificació descentralitzat. Hi ha implementacions disponibles per als llenguatges de programació Java i Python3.

Pensaments futurs i finals:

Markus Sabadello va afirmar: “Els que treballem en DID estem experimentant un interès increïble en aquesta tecnologia de tot el món. Pensem en els DID com res més que finalment tenir l’oportunitat de realitzar el "falta la capa d’identitat" d’Internet." Els DID tenen el potencial de reemplaçar gran part de la infraestructura actual d’identitat d’Internet, inclosos aspectes com noms d’usuari, noms de domini, autoritats certificadores i serveis d’identitat centralitzats com "Inicia sessió amb Facebook". Pot trigar una mica a adaptar-s’hi "identitat descentralitzada" paradigma, però esdevindrà una base millor per al funcionament de l’autenticació, l’ús compartit de dades i la missatgeria.