1. Introduction (はじめに)
本仕様書は、JSON Web Signature (JWS) [JWS]、JSON Web Encryption (JWE) [JWE]、および JSON Web Key (JWK) [JWK] の仕様書と共に使用される暗号アルゴリズムと識別子を登録します。これらの識別子のための複数の IANA レジストリを定義します。これらの仕様書はすべて、JSON ベース [RFC7159] のデータ構造を使用します。本仕様書は、これらのアルゴリズムと鍵タイプに特有のセマンティクスと操作についても説明します。
JWS、JWE、および JWK の仕様書ではなく、ここでアルゴリズムと識別子を登録することは、Required (必須)、Recommended (推奨)、Optional (任意)、および Deprecated (非推奨) のアルゴリズムセットが時間の経過とともに変化する場合でも、それらを変更せずに維持できるようにすることを目的としています。これにより、本文書を更新することなく、JWS、JWE、および JWK の仕様書を変更することも可能になります。
ここで定義される名前はすべて短いものです。これは、結果として得られる表現を可能な限りコンパクトにすることが中心的な目標だからです。
1.1 Notational Conventions (表記規則)
本文書のキーワード "MUST" (しなければならない)、"MUST NOT" (してはならない)、"REQUIRED" (必須である)、"SHALL" (しなければならない)、"SHALL NOT" (してはならない)、"SHOULD" (すべきである)、"SHOULD NOT" (すべきでない)、"RECOMMENDED" (推奨される)、"NOT RECOMMENDED" (推奨されない)、"MAY" (してもよい)、および "OPTIONAL" (任意である) は、"RFC で要求レベルを示すために使用するキーワード" [RFC2119] に記載されているとおりに解釈されるものとします。この解釈は、これらの用語がすべて大文字で表記されている場合にのみ適用されます。
BASE64URL(OCTETS) は、[JWS] のセクション 2 に従った、OCTETS の base64url エンコーディングを示します。
UTF8(STRING) は、STRING の UTF-8 [RFC3629] 表現のオクテットを示します。ここで、STRING は 0 個以上の Unicode [UNICODE] 文字のシーケンスです。
ASCII(STRING) は、STRING の ASCII [RFC20] 表現のオクテットを示します。ここで、STRING は 0 個以上の ASCII 文字のシーケンスです。
2 つの値 A と B の連結は、A || B として表記されます。