Zum Hauptinhalt springen

1. Introduction (Einführung)

Ein JSON Web Key (JWK) ist eine JavaScript Object Notation (JSON) [RFC7159] Datenstruktur, die einen kryptographischen Schlüssel (Cryptographic Key) darstellt. Diese Spezifikation definiert auch eine JWK Set JSON Datenstruktur, die eine Menge von JWKs darstellt. Kryptographische Algorithmen (Cryptographic Algorithms) und Identifikatoren für die Verwendung mit dieser Spezifikation werden in der separaten JSON Web Algorithms (JWA) [JWA] Spezifikation und IANA-Registern beschrieben, die durch diese Spezifikation etabliert wurden.

Die Ziele dieser Spezifikation umfassen nicht die Darstellung neuer Arten von Zertifikatsketten (Certificate Chains), die Darstellung neuer Arten von zertifizierten Schlüsseln (Certified Keys) oder den Ersatz von X.509-Zertifikaten.

JWKs und JWK Sets werden in den Spezifikationen JSON Web Signature [JWS] und JSON Web Encryption [JWE] verwendet.

Die durch diese Spezifikation definierten Namen sind kurz, da ein zentrales Ziel darin besteht, die resultierenden Darstellungen so kompakt (Compact) wie möglich zu gestalten.

1.1. Notational Conventions (Notationskonventionen)

Die Schlüsselwörter „muss (MUST)", „darf nicht (MUST NOT)", „erforderlich (REQUIRED)", „muss (SHALL)", „darf nicht (SHALL NOT)", „sollte (SHOULD)", „sollte nicht (SHOULD NOT)", „empfohlen (RECOMMENDED)", „nicht empfohlen (NOT RECOMMENDED)", „kann (MAY)" und „optional (OPTIONAL)" in diesem Dokument sind zu interpretieren wie in „Schlüsselwörter zur Verwendung in RFCs zur Angabe von Anforderungsebenen" [RFC2119] beschrieben. Die Interpretation sollte nur angewendet werden, wenn die Begriffe vollständig in Großbuchstaben erscheinen.

BASE64URL(OCTETS) bezeichnet die base64url-Kodierung von OCTETS gemäß Abschnitt 2 von [JWS].

UTF8(STRING) bezeichnet die Oktette der UTF-8 [RFC3629] Darstellung von STRING, wobei STRING eine Sequenz von null oder mehr Unicode [UNICODE] Zeichen ist.

ASCII(STRING) bezeichnet die Oktette der ASCII [RFC20] Darstellung von STRING, wobei STRING eine Sequenz von null oder mehr ASCII-Zeichen ist.

Die Verkettung zweier Werte A und B wird als A || B notiert.