[要約] RFC 7192は、Cryptographic Message Syntax (CMS) Key Package Receipt and Error Content Typesに関する技術文書です。このRFCの目的は、キーパッケージの受領やエラーに関する情報を安全に交換するためのアルゴリズムとフォーマットを定義することにあります。利用場面としては、キー管理サービスやセキュリティシステムでのキー配布の確認やエラー報告に使用されます。関連するRFCには、CMS (RFC 5652) やその他のキーマネジメントに関連するRFCがあります。この文書は、セキュリティプロトコルの実装者やキーマネジメントシステムの設計者にとって重要です。

Internet Engineering Task Force (IETF)                         S. Turner
Request for Comments: 7192                                          IECA
Category: Standards Track                                     April 2014
ISSN: 2070-1721
        

Algorithms for Cryptographic Message Syntax (CMS) Key Package Receipt and Error Content Types

暗号化メッセージ構文(CMS)のキーパッケージ受信アルゴリズムとエラーコンテンツタイプのアルゴリズム

Abstract

概要

This document describes the conventions for using several cryptographic algorithms with the Cryptographic Message Syntax (CMS) key package receipt and error content types. Specifically, it includes conventions necessary to implement SignedData, EnvelopedData, EncryptedData, and AuthEnvelopedData.

このドキュメントでは、暗号化メッセージ構文(CMS)キーパッケージの受信とエラーコンテンツタイプでいくつかの暗号化アルゴリズムを使用するための規則について説明します。具体的には、SignedData、EnvelopedData、EncryptedData、AuthEnvelopedDataの実装に必要な規則が含まれています。

Status of This Memo

本文書の状態

This is an Internet Standards Track document.

これはInternet Standards Trackドキュメントです。

This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 5741.

このドキュメントは、IETF(Internet Engineering Task Force)の製品です。これは、IETFコミュニティのコンセンサスを表しています。公開レビューを受け、インターネットエンジニアリングステアリンググループ(IESG)による公開が承認されました。インターネット標準の詳細については、RFC 5741のセクション2をご覧ください。

Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at http://www.rfc-editor.org/info/rfc7192.

このドキュメントの現在のステータス、エラータ、およびフィードバックの提供方法に関する情報は、http://www.rfc-editor.org/info/rfc7192で入手できます。

Copyright Notice

著作権表示

Copyright (c) 2014 IETF Trust and the persons identified as the document authors. All rights reserved.

Copyright(c)2014 IETF Trustおよびドキュメントの作成者として識別された人物。全著作権所有。

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License.

この文書は、BCP 78およびこの文書の発行日に有効なIETF文書に関するIETFトラストの法的規定(http://trustee.ietf.org/license-info)の対象となります。これらのドキュメントは、このドキュメントに関するあなたの権利と制限を説明しているため、注意深く確認してください。このドキュメントから抽出されたコードコンポーネントには、Trust Legal Provisionsのセクション4.eに記載されているSimplified BSD Licenseのテキストが含まれている必要があり、Simplified BSD Licenseに記載されているように保証なしで提供されます。

1. Introduction
1. はじめに

This document describes the conventions for using several cryptographic algorithms with the Cryptographic Message Syntax (CMS) key package receipt and error content types [RFC7191]. Specifically, it includes conventions necessary to implement SignedData [RFC5652], EnvelopedData [RFC5652], EncryptedData [RFC5652], and AuthEnvelopedData [RFC5083].

このドキュメントでは、暗号化メッセージ構文(CMS)キーパッケージの受信とエラーコンテンツタイプ[RFC7191]でいくつかの暗号化アルゴリズムを使用するための規則について説明します。具体的には、SignedData [RFC5652]、EnvelopedData [RFC5652]、EncryptedData [RFC5652]、AuthEnvelopedData [RFC5083]の実装に必要な規則が含まれています。

This document does not define any new algorithms; instead, it refers to previously defined algorithms. In fact, the algorithm requirements in this document are the same as those in [RFC5959], [RFC6033], [RFC6160], [RFC6161], and [RFC6162] with the following exceptions: the content-encryption algorithm is AES in Cipher Block Chaining (CBC) mode as opposed to AES Key Wrap with Message Length Indicator (MLI) and the key-wrap algorithm is AES Key Wrap as opposed to AES Key Wrap with MLI. The rationale for the difference is that the receipt and error content types are not keys; therefore, AES Key Wrap with MLI is not appropriate for the content-encryption algorithm. If an implementation is not using AES Key Wrap with MLI as the content-encryption algorithm, then there's no need to keep the key-wrap algorithm the same as the content encryption algorithm.

このドキュメントでは、新しいアルゴリズムを定義していません。代わりに、以前に定義されたアルゴリズムを参照します。実際、このドキュメントのアルゴリズム要件は、[RFC5959]、[RFC6033]、[RFC6160]、[RFC6161]、および[RFC6162]のアルゴリズム要件と同じですが、次の例外があります。コンテンツ暗号化アルゴリズムは暗号ブロックのAESです。メッセージ長インジケータ(MLI)を使用したAESキーラップではなくチェーン(CBC)モードとキーラップアルゴリズムは、MLIを使用したAESキーラップではなくAESキーラップです。違いの根拠は、受信とエラーのコンテンツタイプがキーではないことです。したがって、MLIを使用したAESキーラップは、コンテンツ暗号化アルゴリズムには適していません。実装がコンテンツ暗号化アルゴリズムとしてMLIを使用したAESキーラップを使用していない場合、キーラップアルゴリズムをコンテンツ暗号化アルゴリズムと同じに保つ必要はありません。

NOTE: [RFC7191] only requires that the key package receipt be signed.

注:[RFC7191]では、キーパッケージの受領書に署名する必要があるだけです。

1.1. Terminology
1.1. 用語

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].

キーワード「MUST」、「MUST NOT」、「REQUIRED」、「SHALL」、「SHALL NOT」、「SHOULD」、「SHOULD NOT」、「RECOMMENDED」、「NOT RECOMMENDED」、「MAY」、「OPTIONALこの文書の "は、[RFC2119]で説明されているように解釈されます。

2. SignedData
2. SignedData

If an implementation supports SignedData, then it MUST support the signature scheme RSA [RFC3370] and SHOULD support the signature schemes RSA Probabilistic Signature Scheme (RSASSA-PSS) [RFC4056] and Digital Signature Algorithm (DSA) [RFC3370]. Additionally, implementations MUST support the hash function SHA-256 [RFC5754] in concert with these signature schemes, and they SHOULD support the hash function SHA-1 [RFC3370]. Implementations can also choose the to support Elliptic Curve Digital Signature Algorithm (ECDSA) [RFC5753] and [RFC6090].

実装がSignedDataをサポートする場合、それは署名スキームRSA [RFC3370]をサポートしなければならず(MUST)、署名スキームRSA確率的署名スキーム(RSASSA-PSS)[RFC4056]およびデジタル署名アルゴリズム(DSA)[RFC3370]をサポートする必要があります。さらに、実装はこれらの署名方式と連携してハッシュ関数SHA-256 [RFC5754]をサポートしなければならず(MUST)、ハッシュ関数SHA-1 [RFC3370]をサポートする必要があります(SHOULD)。実装では、楕円曲線デジタル署名アルゴリズム(ECDSA)[RFC5753]および[RFC6090]をサポートするようにを選択することもできます。

3. EnvelopedData
3. EnvelopedData

If an implementation supports EnvelopedData, then it MUST implement key transport and it MAY implement key agreement.

実装がEnvelopedDataをサポートする場合、キー転送を実装する必要があり、キー合意を実装することができます(MAY)。

When key transport is used, RSA encryption [RFC3370] MUST be supported, and RSA Encryption Scheme - Optimal Asymmetric Encryption Padding (RSAES-OAEP) [RFC3560] SHOULD be supported.

鍵転送が使用されるとき、RSA暗号化[RFC3370]がサポートされなければならず(MUST)、RSA暗号化スキーム-最適非対称暗号化パディング(RSAES-OAEP)[RFC3560]がサポートされるべきです(SHOULD)。

When key agreement is used, Diffie-Hellman (DH) ephemeral-static [RFC3370] MUST be supported. When key agreement is used, Elliptic Curve Diffie-Hellman (ECDH) [RFC5753] [RFC6090] MAY be supported.

鍵合意を使用する場合、Diffie-Hellman(DH)ephemeral-static [RFC3370]をサポートする必要があります。鍵合意が使用される場合、楕円曲線Diffie-Hellman(ECDH)[RFC5753] [RFC6090]がサポートされる場合があります。

Regardless of the key management technique choice, implementations MUST support AES-128 in CBC mode [AES] as the content-encryption algorithm. Implementations SHOULD support AES-256 in CBC mode [AES] as the content-encryption algorithm.

鍵管理手法の選択に関係なく、実装はコンテンツ暗号化アルゴリズムとしてCBCモード[AES]でAES-128をサポートする必要があります。実装では、コンテンツ暗号化アルゴリズムとして、CBCモード[AES]でAES-256をサポートする必要があります(SHOULD)。

When key agreement is used, the same length for the underlying block algorithm MUST be used. If the content-encryption algorithm is AES-128 in CBC mode, then the key-wrap algorithm MUST be AES-128 Key Wrap [RFC3394]. If the content-encryption algorithm is AES-256 in CBC mode, then the key-wrap algorithm MUST be AES-256 Key Wrap [RFC3394].

鍵合意が使用される場合、基礎となるブロックアルゴリズムと同じ長さを使用する必要があります。コンテンツ暗号化アルゴリズムがCBCモードのAES-128である場合、キーラップアルゴリズムはAES-128キーラップでなければなりません[RFC3394]。コンテンツ暗号化アルゴリズムがCBCモードのAES-256である場合、キーラップアルゴリズムはAES-256 Key Wrap [RFC3394]である必要があります。

4. EncryptedData
4. EncryptedData

If an implementation supports EncryptedData, then it MUST implement AES-128 in CBC mode [AES] and SHOULD implement AES-256 in CBC mode [AES].

実装がEncryptedDataをサポートする場合、CBCモード[AES]でAES-128を実装する必要があり、CBCモード[AES]でAES-256を実装する必要があります(SHOULD)。

NOTE: EncryptedData requires that keys be managed by other means; therefore, the only algorithm specified is the content-encryption algorithm.

注:EncryptedDataでは、キーを他の方法で管理する必要があります。したがって、指定された唯一のアルゴリズムはコンテンツ暗号化アルゴリズムです。

5. AuthEnvelopedData
5. AuthEnvelopedData

If an implementation supports AuthEnvelopedData, then it MUST implement the EnvelopedData recommendations except for the content-encryption algorithm, which, in this case, MUST be AES-GCM [RFC5084]; the 128-bit version MUST be implemented, and the 256-bit version SHOULD be implemented. Implementations MAY also support AES-CCM [RFC5084].

実装がAuthEnvelopedDataをサポートする場合は、コンテンツ暗号化アルゴリズムを除くEnvelopedData推奨を実装する必要があります。この場合、AES-GCM [RFC5084]でなければなりません。 128ビットバージョンを実装する必要があり、256ビットバージョンを実装する必要があります(SHOULD)。実装はAES-CCM [RFC5084]もサポートしてもよい(MAY)。

6. Public Key Sizes
6. 公開鍵のサイズ

The easiest way to implement SignedData, EnvelopedData, and AuthEnvelopedData is with public key certificates [RFC5280]. If an implementation supports RSA, RSASSA-PSS, DSA, RSAES-OAEP, or Diffie-Hellman, then it MUST support key lengths from 1024-bit to 2048-bit, inclusive. If an implementation supports ECDSA or ECDH, then it MUST support keys on the P-256 curve [RFC6090].

SignedData、EnvelopedData、AuthEnvelopedDataを実装する最も簡単な方法は、公開鍵証明書[RFC5280]を使用することです。実装がRSA、RSASSA-PSS、DSA、RSAES-OAEP、またはDiffie-Hellmanをサポートする場合、1024ビットから2048ビットまでのキー長をサポートする必要があります。実装がECDSAまたはECDHをサポートする場合、P-256曲線のキーをサポートする必要があります[RFC6090]。

7. Security Considerations
7. セキュリティに関する考慮事項

The security considerations from [RFC3370], [RFC3394], [RFC3560], [RFC4056], [RFC5084], [RFC5652], [RFC5753], and [RFC5754] apply.

[RFC3370]、[RFC3394]、[RFC3560]、[RFC4056]、[RFC5084]、[RFC5652]、[RFC5753]、および[RFC5754]のセキュリティに関する考慮事項が適用されます。

[SP800-57] provides comparable bits of security for some algorithms and key sizes. [SP800-57] also provides time frames during which certain numbers of bits of security are appropriate, and some environments may find these time frames useful.

[SP800-57]は、一部のアルゴリズムとキーサイズに対して同等のセキュリティを提供します。 [SP800-57]は、セキュリティの特定のビット数が適切な時間枠も提供します。環境によっては、これらの時間枠が役立つ場合があります。

8. Acknowledgements
8. 謝辞

I'd like to thank Russ Housley for his early feedback on this document.

このドキュメントに関する初期のフィードバックを提供してくれたRuss Housleyに感謝します。

9. References
9. 参考文献
9.1. Normative References
9.1. 引用文献

[AES] National Institute of Standards and Technology, FIPS Pub 197: Advanced Encryption Standard (AES), 26 November 2001.

[AES]国立標準技術研究所、FIPS Pub 197:Advanced Encryption Standard(AES)、2001年11月26日。

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997.

[RFC2119] Bradner、S。、「要件レベルを示すためにRFCで使用するキーワード」、BCP 14、RFC 2119、1997年3月。

[RFC3370] Housley, R., "Cryptographic Message Syntax (CMS) Algorithms", RFC 3370, August 2002.

[RFC3370] Housley、R。、「Cryptographic Message Syntax(CMS)Algorithms」、RFC 3370、2002年8月。

[RFC3394] Schaad, J. and R. Housley, "Advanced Encryption Standard (AES) Key Wrap Algorithm", RFC 3394, September 2002.

[RFC3394] Schaad、J。およびR. Housley、「Advanced Encryption Standard(AES)Key Wrap Algorithm」、RFC 3394、2002年9月。

[RFC3560] Housley, R., "Use of the RSAES-OAEP Key Transport Algorithm in Cryptographic Message Syntax (CMS)", RFC 3560, July 2003.

[RFC3560] Housley、R。、「暗号化メッセージ構文(CMS)でのRSAES-OAEPキー転送アルゴリズムの使用」、RFC 3560、2003年7月。

[RFC4056] Schaad, J., "Use of the RSASSA-PSS Signature Algorithm in Cryptographic Message Syntax (CMS)", RFC 4056, June 2005.

[RFC4056] Schaad、J。、「暗号化メッセージ構文(CMS)でのRSASSA-PSS署名アルゴリズムの使用」、RFC 4056、2005年6月。

[RFC5083] Housley, R., "Cryptographic Message Syntax (CMS) Authenticated-Enveloped-Data Content Type", RFC 5083, November 2007.

[RFC5083] Housley、R。、「Cryptographic Message Syntax(CMS)Authenticated-Enveloped-Data Content Type」、RFC 5083、2007年11月。

[RFC5084] Housley, R., "Using AES-CCM and AES-GCM Authenticated Encryption in the Cryptographic Message Syntax (CMS)", RFC 5084, November 2007.

[RFC5084] Housley、R。、「Cryptographic Message Syntax(CMS)でのAES-CCMおよびAES-GCM Authenticated Encryptionの使用」、RFC 5084、2007年11月。

[RFC5280] Cooper, D., Santesson, S., Farrell, S., Boeyen, S., Housley, R., and W. Polk, "Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 5280, May 2008.

[RFC5280] Cooper、D.、Santesson、S.、Farrell、S.、Boeyen、S.、Housley、R。、およびW. Polk、「Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List(CRL)Profile "、RFC 5280、2008年5月。

[RFC5652] Housley, R., "Cryptographic Message Syntax (CMS)", STD 70, RFC 5652, September 2009.

[RFC5652] Housley、R。、「Cryptographic Message Syntax(CMS)」、STD 70、RFC 5652、2009年9月。

[RFC5753] Turner, S. and D. Brown, "Use of Elliptic Curve Cryptography (ECC) Algorithms in Cryptographic Message Syntax (CMS)", RFC 5753, January 2010.

[RFC5753]ターナーS.およびD.ブラウン、「暗号化メッセージ構文(CMS)での楕円曲線暗号化(ECC)アルゴリズムの使用」、RFC 5753、2010年1月。

[RFC5754] Turner, S., "Using SHA2 Algorithms with Cryptographic Message Syntax", RFC 5754, January 2010.

[RFC5754] Turner、S。、「Using SHA2 Algorithms with Cryptographic Message Syntax」、RFC 5754、2010年1月。

[RFC6090] McGrew, D., Igoe, K., and M. Salter, "Fundamental Elliptic Curve Cryptography Algorithms", RFC 6090, February 2011.

[RFC6090] McGrew、D.、Igoe、K。、およびM. Salter、「Fundamental Elliptic Curve Cryptography Algorithms」、RFC 6090、2011年2月。

[RFC7191] Housley, R., "Cryptographic Message Syntax (CMS) Key Package Receipt and Error Content Types", RFC 7191, April 2014.

[RFC7191] Housley、R。、「Cryptographic Message Syntax(CMS)Key Package Receipt and Error Content Types」、RFC 7191、2014年4月。

9. Informative References
9. 参考引用

[RFC5959] Turner, S., "Algorithms for Asymmetric Key Package Content Type", RFC 5959, August 2010.

[RFC5959]ターナー、S。、「非対称キーパッケージコンテンツタイプのアルゴリズム」、RFC 5959、2010年8月。

[RFC6033] Turner, S., "Algorithms for Cryptographic Message Syntax (CMS) Encrypted Key Package Content Type", RFC 6033, December 2010.

[RFC6033]ターナー、S。、「暗号化メッセージ構文(CMS)暗号化キーパッケージのコンテンツタイプのアルゴリズム」、RFC 6033、2010年12月。

[RFC6160] Turner, S., "Algorithms for Cryptographic Message Syntax (CMS) Protection of Symmetric Key Package Content Types", RFC 6160, April 2011.

[RFC6160]ターナー、S。、「対称メッセージパッケージのコンテンツタイプの暗号化メッセージ構文(CMS)保護のアルゴリズム」、RFC 6160、2011年4月。

[RFC6161] Turner, S., "Elliptic Curve Algorithms for Cryptographic Message Syntax (CMS) Encrypted Key Package Content Type", RFC 6161, April 2011.

[RFC6161]ターナー、S。、「暗号メッセージ構文(CMS)暗号化キーパッケージコンテンツタイプの楕円曲線アルゴリズム」、RFC 6161、2011年4月。

[RFC6162] Turner, S., "Elliptic Curve Algorithms for Cryptographic Message Syntax (CMS) Asymmetric Key Package Content Type", RFC 6162, April 2011.

[RFC6162]ターナーS.、「暗号化メッセージ構文(CMS)非対称鍵パッケージコンテンツタイプの楕円曲線アルゴリズム」、RFC 6162、2011年4月。

[SP800-57] National Institute of Standards and Technology (NIST), Special Publication 800-57: Recommendation for Key Management - Part 1 (Revised), March 2007.

[SP800-57]米国国立標準技術研究所(NIST)、特別刊行物800-57:鍵管理の推奨-パート1(改訂)、2007年3月。

Author's Address

著者のアドレス

Sean Turner IECA, Inc. 3057 Nutley Street, Suite 106 Fairfax, VA 22031 USA

Sean Turner IECA、Inc. 3057 Nutley Street、Suite 106 Fairfax、VA 22031 USA

   EMail: turners@ieca.com