Key Binding

Key Binding ist der Nachweis, dass derjenige, der einen Nachweis vorlegt, den darin gebundenen privaten Schlüssel besitzt.

Bei SD-JWT VC geschieht das über ein Key-Binding-JWT, das mit dem Schlüssel aus dem Claim cnf signiert ist und einen Hash der vorgelegten Teile enthält. Ohne Key Binding könnte jeder, der einen Nachweis kopiert, ihn als seinen ausgeben.

Beispiel

Ein Mandat enthält den öffentlichen Schlüssel des Agenten. Legt der Agent das Mandat vor, signiert er zusätzlich ein Key-Binding-JWT mit Empfänger und Zeitpunkt. Ein gestohlenes Mandat ohne den privaten Schlüssel ist damit wertlos.

Abgrenzung

Ein Inhabernachweis ohne Key Binding funktioniert wie Bargeld: Wer ihn hat, kann ihn nutzen. Mit Key Binding gleicht er einer Karte mit PIN. Delegation geht weiter und überträgt Befugnisse auf einen weiteren Schlüssel.

In der Praxis

  • Erzeugen Sie den privaten Schlüssel des Agenten in einer geschützten Umgebung und geben Sie ihn nie aus der Hand; das Mandat enthält nur den öffentlichen Teil.
  • Prüfen Sie im Key-Binding-JWT den Empfänger und den Zeitpunkt. Ein Nachweis, der für einen anderen Empfänger oder vor Stunden erstellt wurde, sollte abgelehnt werden.
  • Wechseln Sie Schlüssel regelmässig und widerrufen Sie Mandate, deren Schlüssel kompromittiert sein könnten, sofort über die Statusliste.

Bezug zu KYA

KYA prüft das Key-Binding-JWT gegen den Schlüssel im Nachweis sowie Empfänger, Zeitpunkt und den Hash über die vorgelegten Angaben. Fehlt das Key Binding, ist die Bindung an den Agenten nicht belegt.

Zugehöriger Prüfschritt: Agent und Auftraggeber (subject_agent_binding). Nennen alle Teile denselben Agenten, ist der Auftraggeber benannt, hält der Agent den gebundenen Schlüssel?

Jetzt prüfen: passendes Beispiel öffnen

Häufige Fragen

Was ist Key Binding?

Die Bindung eines Nachweises an den Schlüssel seines Inhabers. Nur wer den privaten Schlüssel besitzt, kann den Nachweis gültig vorlegen.

Wozu dient das Key-Binding-JWT?

Es belegt bei jeder Vorlage, dass der Inhaber den Schlüssel besitzt, und bindet die Vorlage an Empfänger und Zeitpunkt. Das verhindert die Wiederverwendung.

Was passiert ohne Key Binding?

Dann kann jeder, der den Nachweis besitzt, ihn vorlegen. Für Agenten-Mandate ist das ein erhebliches Risiko.

Wo liegt der private Schlüssel eines Agenten?

Idealerweise in einem geschützten Speicher, etwa einem Hardware-Modul oder einem verwalteten Schlüsseldienst. Der Agent nutzt ihn zum Signieren, ohne ihn auszulesen.

Ist Key Binding bei jedem Nachweis nötig?

Bei Nachweisen, mit denen ein Agent handelt, ja. Ohne Key Binding könnte ein abgefangenes Mandat von einem anderen Agenten genutzt werden. Bei rein informativen Nachweisen kann es entbehrlich sein.

Quellen

  1. SD-JWT (IETF): Key Binding

Verwandte Begriffe