OpenID4VP
OpenID4VP, OpenID for Verifiable Presentations, ist das Protokoll, mit dem eine Wallet als Antwort auf eine Anfrage ein oder mehrere Credentials einem Prüfer vorlegt, sodass der Prüfer sie ohne eigene Integration pro Aussteller kontrollieren kann.
Eine Relying Party sendet eine Vorlageanfrage, die beschreibt, was sie sehen muss, entweder als Redirect in einem Same-Device-Ablauf oder als QR-Code, den der Inhaber mit seiner Wallet in einem Cross-Device-Ablauf scannt, und die Anfrage kann nach einer einzelnen Angabe oder einem vollständigen Credential fragen. Die Wallet analysiert die Anfrage, ermittelt mit einer Abfragesprache wie DCQL, welche gespeicherten Credentials sie erfüllen, und bittet den Inhaber, zu bestätigen, welche Credentials und Angaben geteilt werden, bevor irgendetwas das Gerät verlässt. Der Verifizierer prüft die Antwort anschließend gegen die ursprünglichen Ausstellersignaturen und bestätigt dort, wo Selective Disclosure genutzt wird, dass nur die offengelegten Angaben preisgegeben wurden, während der Rest verborgen blieb, ohne den Nachweis zu brechen. OpenID4VP unterstützt sowohl die Online-Vorlage, bei der die Wallet direkt mit dem Backend der Relying Party spricht, als auch die Näherungsvorlage über Bluetooth oder NFC für persönliche Prüfungen wie eine Altersschranke an einer Ladenkasse oder einem Grenzübergang. OpenID4VP ist das Vorlageprotokoll, das die EUDI Wallet unter eIDAS 2.0 nutzt, sodass jede Relying Party, die es unterstützt, Credentials von überall in der EU ausgestellten Wallets akzeptieren kann, ohne eine maßgeschneiderte Integration mit jedem nationalen Wallet-Anbieter auszuhandeln. Weil der Inhaber jede Offenlegung ausdrücklich bestätigt, erhält eine Relying Party nie mehr Daten, als sie angefragt hat, und die Wallet führt ein Protokoll darüber, was mit wem geteilt wurde.
Verwandte Begriffe
Was hindert eine Relying Party daran, über OpenID4VP mehr Daten anzufragen, als sie braucht?
Die Wallet entscheidet, nicht die Relying Party, was das Gerät tatsächlich verlässt. Sie zeigt dem Inhaber genau, welche Credentials und Angaben die Anfrage verlangt, und der Inhaber bestätigt oder lehnt diese konkrete Offenlegung ab. Eine Relying Party kann um alles bitten, aber nichts wird geteilt, sofern der Wallet-Inhaber dieser Anfrage im jeweiligen Moment nicht zustimmt.