RFC 7515 - JSON Web Signature (JWS)
- ステータス: Proposed Standard
- 発行日: May 2015
- ストリーム: IETF
- エラッタ: エラッタなし
概要 (Abstract)
JSON Web Signature (JWS) は、JSONベースのデータ構造を使用して、デジタル署名 (Digital Signatures) またはメッセージ認証コード (Message Authentication Codes, MACs) で保護されたコンテンツを表現します。本仕様と共に使用される暗号アルゴリズムと識別子は、別個のJSON Web Algorithms (JWA) 仕様およびその仕様で定義されたIANAレジストリに記述されています。関連する暗号化機能は、別個のJSON Web Encryption (JWE) 仕様に記述されています。
目次 (Contents)
- 1. Introduction (はじめに)
- 1.1 Notational Conventions (表記規則)
- 2. Terminology (用語)
- 3. JSON Web Signature (JWS) Overview (JWS概要)
- 3.1 JWS Compact Serialization Overview (JWSコンパクトシリアライゼーション概要)
- 3.2 JWS JSON Serialization Overview (JWS JSONシリアライゼーション概要)
- 3.3 Example JWS (JWSの例)
- 4. JOSE Header (JOSEヘッダー)
- 4.1 Registered Header Parameter Names (登録済みヘッダーパラメータ名)
- 4.2 Public Header Parameter Names (公開ヘッダーパラメータ名)
- 4.3 Private Header Parameter Names (プライベートヘッダーパラメータ名)
- 5. Producing and Consuming JWSs (JWSの生成と使用)
- 5.1 Message Signature or MAC Computation (メッセージ署名またはMACの計算)
- 5.2 Message Signature or MAC Validation (メッセージ署名またはMACの検証)
- 5.3 String Comparison Rules (文字列比較規則)
- 6. Key Identification (鍵の識別)
- 7. Serializations (シリアライゼーション)
- 7.1 JWS Compact Serialization (JWSコンパクトシリアライゼーション)
- 7.2 JWS JSON Serialization (JWS JSONシリアライゼーション)
- 8. TLS Requirements (TLS要件)
- 9. IANA Considerations (IANAに関する考慮事項)
- 9.1 JSON Web Signature and Encryption Header Parameters Registry
- 9.2 Media Type Registration (メディアタイプ登録)
- 10. Security Considerations (セキュリティに関する考慮事項)
- 10.1 Key Entropy and Random Values (鍵のエントロピーとランダム値)
- 10.2 Key Protection (鍵の保護)
- 10.3 Key Origin Authentication (鍵の起源認証)
- 10.4 Cryptographic Agility (暗号アジリティ)
- 10.5 Differences between Digital Signatures and MACs (デジタル署名とMACの違い)
- 10.6 Algorithm Validation (アルゴリズムの検証)
- 10.7 Algorithm Protection (アルゴリズムの保護)
- 10.8 Chosen Plaintext Attacks (選択平文攻撃)
- 10.9 Timing Attacks (タイミング攻撃)
- 10.10 Replay Protection (リプレイ攻撃の防止)
- 10.11 SHA-1 Certificate Thumbprints (SHA-1証明書サムプリント)
- 10.12 JSON Security Considerations (JSONセキュリティに関する考慮事項)
- 10.13 Unicode Comparison Security Considerations (Unicode比較セキュリティに関する考慮事項)
- 11. References (参考文献)
- 11.1 Normative References (規範的参考文献)
- 11.2 Informative References (参考情報)
付録 (Appendices)
- Appendix A. JWS Examples (JWSの例)
- A.1 Example JWS Using HMAC SHA-256
- A.2 Example JWS Using RSASSA-PKCS1-v1_5 SHA-256
- A.3 Example JWS Using ECDSA P-256 SHA-256
- A.4 Example JWS Using ECDSA P-521 SHA-512
- A.5 Example Unsecured JWS
- A.6 Example JWS Using General JWS JSON Serialization
- A.7 Example JWS Using Flattened JWS JSON Serialization
- Appendix B. "x5c" (X.509 Certificate Chain) Example
- Appendix C. Notes on Implementing base64url Encoding without Padding
- Appendix D. Notes on Key Selection
- Appendix E. Negative Test Case for "crit" Header Parameter
- Appendix F. Detached Content
- Acknowledgements (謝辞)
関連リソース
- 公式RFC: RFC 7515
- 公式ページ: RFC 7515 DataTracker
- 正誤表: RFC Editor Errata
JOSE仕様群
- RFC 7515 - JSON Web Signature (JWS) ← 本文書
- RFC 7516 - JSON Web Encryption (JWE)
- RFC 7517 - JSON Web Key (JWK)
- RFC 7518 - JSON Web Algorithms (JWA)
- RFC 7519 - JSON Web Token (JWT)
Appendices (付録)
Appendix A. JWS Examples (JWS実例)
付録Aは複数の完全なJWS実例を提供しており、以下が含まれます:
A.1. Example JWS Using HMAC SHA-256 (HMAC SHA-256を使用したJWS実例)
HMAC SHA-256アルゴリズムを使用してJWSを作成および検証する完全なプロセスを実演します。
A.2. Example JWS Using RSASSA-PKCS1-v1_5 SHA-256 (RSAを使用したJWS実例)
RSA署名アルゴリズムを使用したJWSを実演します。
A.3. Example JWS Using ECDSA P-256 SHA-256 (ECDSAを使用したJWS実例)
楕円曲線デジタル署名アルゴリズムを使用したJWSを実演します。
A.4. Example JWS Using ECDSA P-521 SHA-512
P-521曲線を使用したECDSA署名を実演します。
A.5. Example Unsecured JWS (非セキュアJWS実例)
"alg":"none"を使用した非セキュアJWSを実演します。
A.6. Example JWS Using General JWS JSON Serialization (一般JSON直列化実例)
複数の署名をサポートする一般JSON直列化フォーマットを実演します。
A.7. Example JWS Using Flattened JWS JSON Serialization (フラット化JSON直列化実例)
単一署名用に最適化されたフラット化JSON直列化フォーマットを実演します。
Appendix B. "x5c" (X.509 Certificate Chain) Example
X.509証明書チェーンの使用に関する完全な実例を提供します。
Appendix C. Notes on Implementing base64url Encoding without Padding
パディングなしのbase64urlエンコーディングの実装に関する考慮事項を説明します。
Appendix D. Notes on Key Selection (鍵選択に関する注意事項)
JWS検証のための鍵の選択方法に関するガイダンスを提供します。
Appendix E. Negative Test Case for "crit" Header Parameter
実装の正確性を検証するための"crit"パラメータの否定的なテストケースを提供します。
Appendix F. Detached Content (分離されたコンテンツ)
JWSペイロードが署名から分離されているシナリオを説明します。JWS Compact Serializationのペイロード部分が空文字列である場合を含みます。
Acknowledgements (謝辞)
本仕様に貢献されたすべての方々に感謝します。
Authors' Addresses (著者の連絡先)
- Michael B. Jones, Microsoft
- John Bradley, Ping Identity
- Nat Sakimura, Nomura Research Institute
完全な連絡先情報および貢献者リストについては、RFC 7515原文を参照してください。