Beschreiben, was DIDs von anderen Bezeichnern unterscheidet

Abgeschlossen

Wie auf der W3C DID-Arbeitsgruppensitzung im September 2019 in Fukuoka, Japan, erwähnt wurde, gab es vier Gründe für die Finanzierung der Entwicklung der DID-Spezifikation, die derzeit als W3C-Empfehlung für die Architektur, das Datenmodell und die Darstellungen der Version 1.0 Core dezentraler Bezeichner (Decentralized Identifiers, DIDs) veröffentlicht wird.

  • „Ein permanenter (persistenter) Bezeichner“ – Ein DID ist auf Persistenz ausgelegt. Persistenz bedeutet: „Ein DID kann nicht ohne die Zustimmung des DID-Verantwortlichen von Dritten entfernt oder unbrauchbar gemacht werden.“
  • „Ein auflösbarer Bezeichner“: Ein DID ist ein auflösbarer Bezeichner, d. h., Sie können ein Lookup durchführen, um die ihm zugeordneten Daten zu ermitteln (z. B. die zugehörigen Metadaten). Die Informationen, in die eine DID aufgelöst wird, ist das DID-Dokument.
  • „Ein kryptografisch überprüfbarer Bezeichner“: Ein DID ist ein kryptografisch überprüfbarer Bezeichner. Das bedeutet, dass die Entität, die den DID kontrolliert, ihre Kontrolle über den DID mithilfe von Kryptografie nachweisen kann.
  • „Ein dezentraler Bezeichner“: Ein DID ist ein dezentraler Bezeichner. Dies bedeutet, dass es keine zentrale Registrierungsstelle zum Erstellen und Verwalten von DIDs gibt. DIDs nutzen dezentrale Netzwerke, die auch als überprüfbare Datenregistrierungen bezeichnet werden, um Transaktionen zu registrieren und aufzuzeichnen. Diese Registrierungen können Distributed Ledger, Blockchains, verteilte Dateisysteme oder andere vertrauenswürdige Datenspeicher sein. Es gibt viele verschiedene Typen von überprüfbaren Datenregistrierungen, die von DIDs verwendet werden können. Der verwendete Ansatz hängt von der DID-Methode ab.

Diese vier Gründe dienen als Kerneigenschaften von DIDs. Obwohl es bereits Bezeichner gibt, die einige dieser Eigenschaften erfüllen, ist ein DID der erste neue Typ von Bezeichner, der alle vier dieser Eigenschaften erfüllt.

Auflösbare DIDs und DID-Dokumente

Ganz Allgemeinen bieten Bezeichner einen Wert, wenn sie im Kontext einer Anwendung verwendet werden, wo sie einige Informationen bereitstellen oder die Interaktion oder Kommunikation ermöglichen. Beispielsweise hat eine URL, bei der es sich auch um einen Bezeichnertyp handelt, nur dann einen Wert, wenn sie in einen Webbrowser eingegeben wird und eine Webseite zurückgibt, die verwendet werden kann. In diesem Kontext wird eine URL in eine Webseite aufgelöst. Das gleiche Konzept gilt auch für DIDs, aber anstatt über einen Webbrowser in eine Webseite aufgelöst zu werden, wird für DIDs eine Software oder Hardware verwendet, die als Resolver bezeichnet wird, um ein DID-Dokument zurückzugeben.

Ein DID-Dokument ist ein öffentlich verfügbares Dataset, das die durch den DID identifizierte DID-Entität beschreibt. In der W3C-Empfehlung für dezentralisierte Bezeichner (DIDs) v1.0 sind die Kerneigenschaften eines DID-Dokuments definiert. Zu den Kerneigenschaften gehören:

  • Verifizierungsmethoden: Hierzu gehören öffentliche Kryptografieschlüssel und zugehörige Metadaten. Beispielsweise kann ein öffentlicher kryptografischer Schlüssel als Überprüfungsmethode für eine digitale Signatur verwendet werden.
  • Dienste: Dienste werden für die Kommunikation oder Interaktion mit den DID-Entitäten verwendet. Dies kann Informationen umfassen, die die Entitäten ankündigen möchten. Beispiele hierfür können Repositorydienste für Nachweise, Dateispeicherdienste, Agentdienste u. v. m. sein. Diese werden als Dienstendpunkte bezeichnet und als Netzwerkadresse (z. B. als HTTP-URL) dargestellt.

Diagram that shows content that is included in a DID document. It includes the DID, the public keys, and service endpoints.

Dies sind nur einige Beispiele für Daten, die häufig in DID-Dokumenten enthalten sind. DID-Dokumente sind öffentlich verfügbare Dokumente, die von den Anwendungen und Diensten genutzt werden, die diese DIDs verwenden, (und nicht für die Verwendung durch Endbenutzer*innen vorgesehen). DID-Dokumente enthalten Informationen, die die DID-Entität beschreiben, z. B. ihren öffentlichen Schlüssel, Dienstendpunkte und andere Metadaten. Es sollten jedoch keine personenbezogenen Daten über die Entität enthalten sein. Als öffentlich zugängliches Dokument sollte es lediglich die Mindestmenge an Informationen enthalten, die zur Unterstützung der gewünschten Interaktion oder Kommunikation erforderlich sind.

DIDs und Kryptografie mit öffentlichen Schlüsseln

Um zu verstehen, wie DID-Verantwortliche ihre Zuständigkeit für ihren Bezeichner nachweisen können, ist es hilfreich, Kryptografie mit öffentlichem Schlüssel zu verstehen.

DIDs verwenden asymmetrische Kryptografie, die auch als Kryptografie mit öffentlichen Schlüsseln bezeichnet wird. Die Kryptografie mit öffentlichen Schlüsseln verwendet ein Schlüsselpaar aus öffentlichem und privatem Schlüssel und dient dazu, Informationen durch Verschlüsselung zu schützen und die Authentizität und Einwilligung anhand von digitalen Signaturen nachzuweisen. Ausführlichere Informationen finden Sie unter Beschreiben von Konzepten der Kryptografie. Bei Kryptografie mit öffentlichen Schlüsseln besteht eine Herausforderung darin zu überprüfen, ob der öffentliche Schlüssel, der allgemein freigegeben wird, tatsächlich von der erwarteten Entität stammt und nicht von Betrüger*innen. Anders ausgedrückt: Wie binden Sie den öffentlichen Schlüssel an den Bezeichner, der die Entität darstellt? Bei der herkömmlichen Kryptografie mit öffentlichen Schlüsseln wird diese Vertrauensstellung durch digitale Zertifikate von vertrauenswürdigen zentralen Zertifizierungsstellen (CAs) hergestellt, die eine zentralisierte Public Key-Infrastruktur (PKI) bilden. Eine Eigenschaft von DIDs ist jedoch, dass sie dezentralisiert sind und Abhängigkeiten von einer Zertifizierungsstelle unerwünscht sind. Daher wird bei DIDs der methodenspezifische Bezeichner entweder direkt oder indirekt von Informationen im Zusammenhang mit dem öffentlichen Schlüssel abgeleitet. Der DID ist damit an den öffentlichen Schlüssel gebunden, ohne dass eine zentrale Zertifizierungsstelle nötig ist. Im Endergebnis hat damit die Entität der DID die Möglichkeit, ihre Kontrolle über diesen Bezeichner mithilfe von Kryptografie nachzuweisen. Dadurch ermöglichen DIDs eine Form von verteilter Public Key-Infrastruktur.

Bei einem Ansatz, bei dem die DIDs auf öffentlichen Schlüsseln basieren, müssten die DIDs geändert werden, wenn Sie die kryptografischen Schlüssel aus Sicherheitsgründen rotieren müssen. Die Notwendigkeit zur Änderung der DID widerspricht jedoch der Vorgabe, dass DIDs persistent sein sollen. Dieses Problem wird durch das DID-Dokument behoben. Wenn die Schlüssel geändert werden müssen, kann die DID-Entität eine Aktualisierung für das DID-Dokument veröffentlichen, das den neuen öffentlichen Schlüssel enthält, aber mit dem ursprünglichen privaten Schlüssel signiert ist. Die Aktualisierung des DID-Dokuments kann authentifiziert werden, da der ursprüngliche öffentliche Schlüssel zur Originalversion des DID-Dokuments zurückverfolgt werden kann. Dieser Ansatz stellt eine Vertrauenskette für die Aktualisierungen her. Das Konzept ist vergleichbar mit der Versionskontrolle einer Software, bei der immer nur eine aktuelle Version der Software vorhanden ist, Sie aber anhand früherer Versionen nachvollziehen können, welche Änderungen vorgenommen wurden.