Konformität und Testvektoren

Was «gültig» bedeutet, legen öffentliche Testvektoren fest – nicht eine Beschreibung. Jede Implementierung kann sich daran messen.

Kurz gesagt

Öffentliche Testvektoren mit echten Signaturen legen fest, was gültig ist. Jede Implementierung kann sich daran messen, ohne Gebühr.

Die Testvektoren

39 Vektoren mit echten Signaturen (ES256, EdDSA) und echten RFC-3161-Zeitstempeln (RSA und ECDSA) aus eigens erzeugten Test-Zertifizierungsstellen. Dazu 11 Verifiable-Intent-Vektoren, erzeugt mit der offiziellen Mastercard-Referenz und mit deren Urteil, sowie 12 Web-Bot-Auth-Vektoren auf Basis der von Cloudflare veröffentlichten Testvektoren. Jeder Vektor nennt Eingabe, Optionen und das erwartete Ergebnis. Private Schlüssel wurden nie gespeichert. Lizenz: Apache 2.0.

vectors.json herunterladen, vi-vectors.json herunterladen, wba-vectors.json herunterladen

Was die Vektoren abdecken

  • Vollständige Nachweispakete auf A3 und A4
  • Manipulierte Disclosures, Signaturen, Ketten und Manifeste
  • Abgelaufene, noch nicht gültige, widerrufene und suspendierte Mandate
  • Handlungen ausserhalb von Umfang und Betragsgrenze, korrekt abgelehnte Handlungen
  • Delegationsketten, intakt und unzulässig erweitert
  • Zeitstempel über falschen Inhalt, mit fremdem Anker und ohne Ziel
  • Unbekannte, erkannte und unsignierte Eingaben

So prüfen Sie Ihre Implementierung

  1. Lesen Sie jeden Vektor mit Eingabe und Optionen in Ihre Prüfung ein, mit dem Prüfzeitpunkt aus now.
  2. Vergleichen Sie Urteil, Stufe und die im Vektor genannten Prüfschritte.
  3. Für Aussteller-Implementierungen: Erzeugen Sie eigene Nachweise und prüfen Sie sie hier oder mit der Kommandozeile gegen den Prüfkern.

Ein Format aufnehmen lassen

Formate werden aufgenommen, wenn es eine öffentliche Spezifikation und mindestens einen Testvektor mit echter Signatur gibt. Es gibt dafür keine Gebühr und keine Bevorzugung einzelner Anbieter. Anfragen an info@innopulse.io.

Bekannte Implementierungen

ImplementierungRolleStatus
@knowyouragent/verify-corePrüfungNormative Quelle dieser Spezifikation
MandactAusstellung und EntscheidKommerzielle Referenzimplementierung, gleicher Betreiber

Weitere Implementierungen werden hier aufgeführt, sobald sie die Vektoren bestehen.

Was Konformität nicht bedeutet

Konformität heisst, dass eine Implementierung dieselben Ergebnisse liefert wie der Prüfkern. Sie ist keine Zertifizierung, keine Sicherheitsprüfung und keine Aussage über den Betrieb einer Implementierung.