Nutzerdokumentation der Prüfung einer Signatur und Zertifikatskette

An verschiedenen Stellen müssen API-Clients Zertifikatsketten der verwendeten Zertifikate prüfen. Hierzu ist in der Dokumentation praxisnah für verschiedene Programmiersprachen dargestellt, wie die Prüfung der Zertifikatskette durchzuführen ist.

Dazu sind folgende Schritte notwendig:

  1. Abruf des zur Destination gehörenden JSON Web Keys
  2. Überprüfung, dass der JSON Web Key für die Verschlüsselung geeignet ist ("keyops": ["wrap_key"])
  3. Überprüfung, dass der öffentliche Schlüssel mit dem im JSON Web Key hinterlegten Zertifikat übereinstimmt (Attribute n und e)
  4. Überprüfung der Zertifikats-Kette bis zum Wurzelzertifikat (BSI)
  5. Überprüfung mittels Validierungsdienst (gegen eine Certificate Revocation List (CRL) und/oder einen OCSP-Endpunkt) mit signierten Antworten

Akzeptanzkriterien

  1. Alle Vorgaben aus bestehender Dokumentation, insbesondere die oben genannten Schritte werden beachtet.
  2. Es gibt Codebeispiele für alle der oben genannten Teilschritte.
  3. Es existiert ein Beispiel einer nicht erfolgreichen Zertifikatsvalidierung (ungültiges Zertifikat).
  4. An allen Stellen der API-Dokumentation (bspw. Signaturprüfung), wo eine Zertifikatsprüfung notwendig ist, wird auf die Notwendigkeit bzw. Empfehlung einer Zertifikatskettenprüfung durch die API-Client hingewiesen und auf den Detailartikel verwiesen.
Edited by Marco Holz