[要約] RFC 4494は、AES-CMAC(Cipher-based Message Authentication Code)アルゴリズムを、IPsecの認証および整合性保護のために使用するための仕様を定義しています。データの改ざん検知と送信元認証を行うための手順、およびIKEにおけるアルゴリズム識別子を規定しています。従来のHMACアルゴリズムに代わる、効率的で安全なブロック暗号ベースのメッセージ認証方式を提供することを目的としています。

Network Working Group                                           JH. Song
Request for Comments: 4494                                 R. Poovendran
Category: Standards Track                       University of Washington
                                                                  J. Lee
                                                     Samsung Electronics
                                                               June 2006
        

The AES-CMAC-96 Algorithm and Its Use with IPsec

AES-CMAC-96 アルゴリズムとその IPsec での利用

Status of This Memo

本文書の状態

This document specifies an Internet standards track protocol for the Internet community, and requests discussion and suggestions for improvements. Please refer to the current edition of the "Internet Official Protocol Standards" (STD 1) for the standardization state and status of this protocol. Distribution of this memo is unlimited.

このドキュメントは、インターネットコミュニティのインターネット標準トラックプロトコルを指定し、改善のための議論と提案を要求します。このプロトコルの標準化状態とステータスについては、「インターネット公式プロトコル標準」(STD 1)の現在のエディションを参照してください。このメモの配布は無制限です。

Copyright Notice

著作権表示

Copyright (C) The Internet Society (2006).

Copyright(c)The Internet Society(2006)。

Abstract

概要

The National Institute of Standards and Technology (NIST) has recently specified the Cipher-based Message Authentication Code (CMAC), which is equivalent to the One-Key CBC-MAC1 (OMAC1) algorithm submitted by Iwata and Kurosawa. OMAC1 efficiently reduces the key size of Extended Cipher Block Chaining mode (XCBC). This memo specifies the use of CMAC mode on the authentication mechanism of the IPsec Encapsulating Security Payload (ESP) and the Authentication Header (AH) protocols. This new algorithm is named AES-CMAC-96.

米国国立標準技術研究所(NIST)は最近、暗号ベースのメッセージ認証コード(CMAC)を規定しました。これは岩田氏と黒澤氏によって提出されたOne-Key CBC-MAC1(OMAC1)アルゴリズムに相当します。OMAC1は、拡張暗号ブロックチェーン(eXtended Cipher Block Chaining; XCBC)モードの鍵サイズを効率的に削減します。このメモは、IPsecのカプセル化セキュリティペイロード(ESP)および認証ヘッダー(AH)プロトコルの認証メカニズムにおけるCMACモードの使用を規定します。この新しいアルゴリズムはAES-CMAC-96と命名されています。

1. Introduction
1. はじめに

The National Institute of Standards and Technology (NIST) has recently specified the Cipher-based Message Authentication Code (CMAC). CMAC [NIST-CMAC] is a message authentication code that is based on a symmetric key block cipher such as the Advanced Encryption Standard [NIST-AES]. CMAC is equivalent to the One-Key CBC MAC1 (OMAC1) submitted by Iwata and Kurosawa [OMAC1a, OMAC1b]. OMAC1 is an improvement of the eXtended Cipher Block Chaining mode (XCBC) submitted by Black and Rogaway [XCBCa, XCBCb], which itself is an improvement of the basic CBC-MAC. XCBC efficiently addresses the security deficiencies of CBC-MAC, and OMAC1 efficiently reduces the key size of XCBC.

米国国立標準技術研究所(NIST)は最近、暗号ベースのメッセージ認証コード(CMAC)を規定しました。CMAC [NIST-CMAC]は、Advanced Encryption Standard [NIST-AES]などの共通鍵ブロック暗号に基づくメッセージ認証コードです。CMACは、岩田氏と黒澤氏によって提出されたOne-Key CBC MAC1(OMAC1)に相当します [OMAC1a, OMAC1b]。OMAC1は、Black氏とRogaway氏によって提出された拡張暗号ブロックチェーン(eXtended Cipher Block Chaining; XCBC)モードの改良であり [XCBCa, XCBCb]、それ自体が基本的なCBC-MACの改良です。XCBCはCBC-MACのセキュリティ上の欠陥に効果的に対処し、OMAC1はXCBCの鍵サイズを効率的に削減します。

This memo specifies the usage of CMAC on the authentication mechanism of the IPsec Encapsulating Security Payload [ESP] and Authentication Header [AH] protocols. This new algorithm is named AES-CMAC-96. For further information on AH and ESP, refer to [AH] and [ROADMAP].

このメモは、IPsecのカプセル化セキュリティペイロード [ESP] および認証ヘッダー [AH] プロトコルの認証メカニズムにおけるCMACの使用を規定します。この新しいアルゴリズムはAES-CMAC-96と命名されています。AHおよびESPの詳細については、[AH] と [ROADMAP] を参照してください。

2. Basic Definitions
2. 基本定義

CBC Cipher Block Chaining mode of operation for message authentication code.

CBC メッセージ認証コードのための暗号ブロックチェーン(Cipher Block Chaining)動作モードです。

MAC Message Authentication Code. A bit string of a fixed length, computed by the MAC generation algorithm, that is used to establish the authority and, hence, the integrity of a message.

MAC メッセージ認証コード(Message Authentication Code)。メッセージの真正性、ひいては整合性を確立するために使用される、MAC生成アルゴリズムによって計算される固定長のビット列です。

CMAC Cipher-based MAC based on an approved symmetric key block cipher, such as the Advanced Encryption Standard.

CMAC Advanced Encryption Standardなどの承認された共通鍵ブロック暗号に基づく、暗号ベースのMACです。

Key (K) 128-bit (16-octet) key for AES-128 cipher block. Denoted by K.

鍵 (K) AES-128暗号ブロックのための128ビット(16オクテット)の鍵です。Kで表されます。

Message (M) Message to be authenticated. Denoted by M.

メッセージ (M) 認証対象のメッセージです。Mで表されます。

Length (len) The length of message M in octets. Denoted by len. The minimum value is 0. The maximum value is not specified in this document.

長さ (len) オクテット単位のメッセージ M の長さです。len で表されます。最小値は 0 です。この文書では最大値は規定されていません。

truncate(T,l) Truncate T (MAC) in most-significant-bit-first (MSB-first) order to a length of l octets.

truncate(T,l) 最上位ビット優先(MSB優先)の順序で、T(MAC)を l オクテットの長さに切り捨てます。

T The output of AES-CMAC.

T AES-CMACの出力です。

Truncated T The truncated output of AES-CMAC-128 in MSB-first order.

切り捨てられたT 最上位ビット優先の順序におけるAES-CMAC-128の切り捨てられた出力です。

AES-CMAC CMAC generation function based on AES block cipher with 128-bit key.

AES-CMAC 128ビットの鍵を持つAESブロック暗号に基づくCMAC生成関数です。

AES-CMAC-96 IPsec AH and ESP MAC generation function based on AES-CMAC, which truncates the 96 most significant bits of the 128-bit output.

AES-CMAC-96 AES-CMACに基づくIPsec AHおよびESPのMAC生成関数であり、128ビットの出力の最上位96ビットを残して切り捨てます。

3. AES-CMAC
3. AES-CMAC

The core of AES-CMAC-96 is the AES-CMAC [AES-CMAC]. The underlying algorithms for AES-CMAC are the Advanced Encryption Standard cipher block [NIST-AES] and the recently defined CMAC mode of operation [NIST-CMAC]. AES-CMAC provides stronger assurance of data integrity than a checksum or an error detecting code. The verification of a checksum or an error detecting code detects only accidental modifications of the data, while CMAC is designed to detect intentional, unauthorized modifications of the data, as well as accidental modifications. The output of AES-CMAC can validate the input message. Validating the message provides assurance of the integrity and authenticity over the message from the source. According to [NIST-CMAC], at least 64 bits should be used against guessing attacks. AES-CMAC achieves the similar security goal of HMAC [RFC-HMAC]. Since AES-CMAC is based on a symmetric key block cipher (AES), while HMAC is based on a hash function (such as SHA-1), AES-CMAC is appropriate for information systems in which AES is more readily available than a hash function. Detailed information about AES-CMAC is available in [AES-CMAC] and [NIST-CMAC].

AES-CMAC-96のコアはAES-CMAC [AES-CMAC]です。AES-CMACの基礎となるアルゴリズムは、Advanced Encryption Standardブロック暗号 [NIST-AES] と、最近定義されたCMAC動作モード [NIST-CMAC] です。AES-CMACは、チェックサムやエラー検出コードよりも強力なデータ整合性の保証を提供します。チェックサムやエラー検出コードの検証はデータの偶発的な変更のみを検出しますが、CMACはデータの偶発的な変更だけでなく、意図的で不正な変更も検出するように設計されています。AES-CMACの出力によって入力メッセージを検証できます。メッセージを検証することで、送信元からのメッセージに対する整合性と真正性の保証が得られます。[NIST-CMAC] によれば、推測攻撃を防ぐために少なくとも64ビットを使用する必要があります。AES-CMACは、HMAC [RFC-HMAC] と同様のセキュリティ目標を達成します。HMACはハッシュ関数(SHA-1など)に基づいているのに対し、AES-CMACは共通鍵ブロック暗号(AES)に基づいているため、AES-CMACはハッシュ関数よりもAESが容易に利用可能な情報システムに適しています。AES-CMACの詳細情報は、[AES-CMAC] および [NIST-CMAC] で入手できます。

4. AES-CMAC-96
4. AES-CMAC-96

For IPsec message authentication on AH and ESP, AES-CMAC-96 should be used. AES-CMAC-96 is a AES-CMAC with 96-bit truncated output in MSB-first order. The output is a 96-bit MAC that will meet the default authenticator length as specified in [AH]. The result of truncation is taken in MSB-first order. For further information on AES-CMAC, refer to [AES-CMAC] and [NIST-CMAC].

AHおよびESPでのIPsecメッセージ認証の場合、AES-CMAC-96を使用する必要があります。AES-CMAC-96は、MSB-First順序で96ビットの切り捨てられた出力を備えたAES-CMACです。出力は、[AH]で指定されているデフォルトの認証機の長さを満たす96ビットMacです。切り捨ての結果は、MSB-First順序で取得されます。AES-CMACの詳細については、[AES-CMAC]および[NIST-CMAC]を参照してください。

Figure 1 describes AES-CMAC-96 algorithm:

図1は AES-CMAC-96 アルゴリズムを示しています。

In step 1, AES-CMAC is applied to the message M in length len with key K.

ステップ1では、鍵 K を用いて長さ len のメッセージ M に AES-CMAC を適用します。

In step 2, the output block T is truncated to 12 octets in MSB-first order, and Truncated T (TT) is returned.

ステップ2では、出力ブロック T が最上位ビット優先の順序で12オクテットに切り捨てられ、切り捨てられた T(TT)が返されます。

   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   +                    Algorithm AES-CMAC-96                          +
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
   +                                                                   +
   +   Input    : K (128-bit Key described in Section 4.1)             +
   +            : M    (message to be authenticated)                   +
   +            : len  (length of message in octets)                   +
   +   Output   : Truncated T  (truncated output to length 12 octets)  +
   +                                                                   +
   +-------------------------------------------------------------------+
   +                                                                   +
   +   Step 1.  T  := AES-CMAC (K,M,len);                              +
   +   Step 2.  TT := truncate (T, 12);                                +
   +            return TT;                                             +
   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
        

Figure 1: Algorithm AES-CMAC-96

図1:AES-CMAC-96アルゴリズム

5. Test Vectors
5. テストベクトル

These test cases are the same as those defined in [NIST-CMAC], with the exception of 96-bit truncation.

これらのテストケースは、96ビットの切り捨てを除いて、[NIST-CMAC] で定義されているものと同じです。

   --------------------------------------------------
   K              2b7e1516 28aed2a6 abf71588 09cf4f3c
   Subkey Generation
   AES_128(key,0) 7df76b0c 1ab899b3 3e42f047 b91b546f
   K1             fbeed618 35713366 7c85e08f 7236a8de
   K2             f7ddac30 6ae266cc f90bc11e e46d513b

   Test Case 1: len = 0
   M              <empty string>
   AES_CMAC_96    bb1d6929 e9593728 7fa37d12

   Test Case 2: len = 16
   M              6bc1bee2 2e409f96 e93d7e11 7393172a
   AES_CMAC_96    070a16b4 6b4d4144 f79bdd9d

   Test Case 3: len = 40
   M              6bc1bee2 2e409f96 e93d7e11 7393172a
                  ae2d8a57 1e03ac9c 9eb76fac 45af8e51
                  30c81c46 a35ce411
   AES_CMAC_96    dfa66747 de9ae630 30ca3261

   Test Case 4: len = 64
   M              6bc1bee2 2e409f96 e93d7e11 7393172a
                  ae2d8a57 1e03ac9c 9eb76fac 45af8e51
                  30c81c46 a35ce411 e5fbc119 1a0a52ef
                  f69f2445 df4f9b17 ad2b417b e66c3710
   AES_CMAC_96    51f0bebf 7e3b9d92 fc497417
   --------------------------------------------------
        
6. Interaction with the ESP Cipher Mechanism
6. ESP暗号メカニズムとの相互作用

As of this writing, there are no known issues that preclude the use of AES-CMAC-96 with any specific cipher algorithm.

本書の執筆時点では、特定の暗号アルゴリズムにおける AES-CMAC-96 の使用を妨げる既知の問題はありません。

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

See the security considerations section of [AES-CMAC].

[AES-CMAC] のセキュリティに関する考慮事項のセクションを参照してください。

8. IANA Considerations
8. IANAの考慮事項

The IANA has allocated value 8 for IKEv2 Transform Type 3 (Integrity Algorithm) to the AUTH_AES_CMAC_96 algorithm.

IANAは、IKEv2 トランスフォームタイプ3(整合性アルゴリズム)において、AUTH_AES_CMAC_96 アルゴリズムに値8を割り当てています。

9. Acknowledgements
9. 謝辞

Portions of this text were borrowed from [NIST-CMAC] and [XCBCa]. We would like to thank to Russ Housley for his useful comments.

本稿の一部は [NIST-CMAC] および [XCBCa] から借用されています。有益なコメントをいただいた Russ Housley 氏に感謝いたします。

We acknowledge the support from the the following grants: Collaborative Technology Alliance (CTA) from US Army Research Laboratory, DAAD19-01-2-0011; Presidential Award from Army Research Office, W911NF-05-1-0491; NSF CAREER, ANI-0093187. Results do not reflect any position of the funding agencies.

以下の助成金からの支援に感謝いたします:米国陸軍研究所(US Army Research Laboratory)の Collaborative Technology Alliance (CTA)、DAAD19-01-2-0011;陸軍研究オフィス(Army Research Office)の大統領賞、W911NF-05-1-0491;NSF CAREER、ANI-0093187。なお、本結果は資金提供機関の見解を反映するものではありません。

10. References
10. 参考文献
10.1. Normative References
10.1. 引用文献

[AES-CMAC] Song, JH., Poovendran, R., Lee, J., and T. Iwata, "The AES-CMAC Algorithm", RFC 4493, June 2006.

[AES-CMAC] Song、JH。、Poovendran、R.、Lee、J。、およびT. Iwata、「AES-CMACアルゴリズム」、RFC 4493、2006年6月。

[AH] Kent, S., "IP Authentication Header", RFC 4302, December 2005.

[AH] Kent, S.、「IP認証ヘッダー」、RFC 4302、2005年12月。

[ESP] Kent, S., "IP Encapsulating Security Payload (ESP)", RFC 4303, December 2005.

[ESP] Kent, S.、「セキュリティペイロードをカプセル化するIP(ESP)」、RFC 4303、2005年12月。

[NIST-AES] NIST, FIPS 197, "Advanced Encryption Standard (AES)", November 2001, http://csrc.nist.gov/publications/fips/ fips197/fips-197.pdf.

[NIST-AES] NIST, FIPS 197、「高度な暗号化標準(AES)」、2001年11月、http://csrc.nist.gov/publications/fips/ fips197/fips-197.pdf。

[NIST-CMAC] NIST, Special Publication 800-38B Draft, "Recommendation for Block Cipher Modes of Operation: The CMAC Method for Authentication", March 9, 2005.

[NIST-CMAC] NIST, Special Publication 800-38B Draft、「操作のブロックモードの推奨:認証のためのCMACメソッド」、2005年3月9日。

10.2. Informative References
10.2. 参考引用

[OMAC1a] Tetsu Iwata and Kaoru Kurosawa, "OMAC: One-Key CBC MAC", Fast Software Encryption, FSE 2003, LNCS 2887, pp. 129- 153, Springer-Verlag, 2003.

[OMAC1a] Tetsu Iwata and Kaoru Kurosawa、「OMAC:One-Key CBC MAC」、Fast Software Encryption、FSE 2003、LNCS 2887、pp。129-153、Springer-Verlag、2003。

[OMAC1b] Tetsu Iwata and Kaoru Kurosawa, "OMAC: One-Key CBC MAC", Submission to NIST, December 2002. Available from http://csrc.nist.gov/CryptoToolkit/modes/proposedmodes/ omac/omac-spec.pdf.

[OMAC1b] Tetsu Iwata and Kaoru Kurosawa、「Omac:One-Key CBC Mac」、Nistへの提出、2002年12月。http://csrc.nist.gov/cryptotoolkit/modes/proposedmodes/ omac/omac-spec。PDF。

[RFC-HMAC] Krawczyk, H., Bellare, M., and R. Canetti, "HMAC: Keyed-Hashing for Message Authentication", RFC 2104, February 1997.

[RFC-HMAC] Krawczyk, H., Bellare, M., and R. Canetti、「HMAC:メッセージ認証のためのキー付きハッシング」、RFC 2104、1997年2月。

[ROADMAP] Thayer, R., Doraswamy, N., and R. Glenn, "IP Security Document Roadmap", RFC 2411, November 1998.

[ROADMAP] Thayer, R., Doraswamy, N., and R. Glenn、「IP Security Document Roadmap」、RFC 2411、1998年11月。

[XCBCa] John Black and Phillip Rogaway, "A Suggestion for Handling Arbitrary-Length Messages with the CBC MAC", NIST Second Modes of Operation Workshop, August 2001. Available from http://csrc.nist.gov/CryptoToolkit/modes/ proposedmodes/xcbc-mac/xcbc-mac-spec.pdf.

[XCBCa] John Black and Phillip Rogaway、「CBC MACで任意の長さのメッセージを処理するための提案」、NIST 2番目のオペレーションワークショップ、2001年8月。http://csrc.nist.gov/cryptotoolkit/modes/modes/modes/から入手可能提案モード/xcbc-mac/xcbc-mac-spec.pdf。

[XCBCb] John Black and Phillip Rogaway, "CBC MACs for Arbitrary-Length Messages: The Three-Key Constructions", Journal of Cryptology, Vol. 18, No. 2, pp. 111-132, Springer-Verlag, Spring 2005.

[XCBCb] John Black and Phillip Rogaway、「任意の長さのメッセージのCBC Macs:The Three-Key Constructions」、Journal of Cryptology、vol。18、No。2、pp。111-132、Springer-Verlag、2005年春。

Authors' Addresses

著者のアドレス

Junhyuk Song University of Washington Samsung Electronics

ジュンヒョクソングワシントン大学サムスンエレクトロニクス

   Phone: (206) 853-5843
   EMail: songlee@ee.washington.edu, junhyuk.song@samsung.com
        

Jicheol Lee Samsung Electronics

Jicheol Lee Samsung Electronics

   Phone: +82-31-279-3605
   EMail: jicheol.lee@samsung.com
        

Radha Poovendran Network Security Lab (NSL) Dept. of Electrical Engineering University of Washington

ワシントンの電気工学部のRadha Poovendran Network Security Lab(NSL)部

Phone: (206) 221-6512 EMail: radha@ee.washington.edu

電話:(206)221-6512メール:radha@ee.washington.edu

Full Copyright Statement

完全な著作権声明

Copyright (C) The Internet Society (2006).

Copyright(c)The Internet Society(2006)。

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

この文書は、BCP 78に含まれる権利、ライセンス、および制限の対象となり、そこに記載されている場合を除き、著者はすべての権利を保持しています。

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

このドキュメントとここに含まれる情報は、「現状のまま」に基づいて提供されています。また、貢献者、彼/彼女が代表する組織(もしあれば)が後援する組織、インターネット協会とインターネット工学タスクフォースは、すべての保証、明示的または明示的、またはすべての保証を否認します。本書の情報の使用が、商品性または特定の目的に対する適合性の権利または黙示的な保証を侵害しないという保証を含むがこれらに限定されないことを含む。

Intellectual Property

知的財産

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

IETFは、知的財産権またはその他の権利の有効性または範囲に関して、本書に記載されている技術の実装または使用、またはそのような権利に基づくライセンスに基づくライセンスの範囲に関連すると主張される可能性のある他の権利に関しては、立場を取得しません。利用可能になります。また、そのような権利を特定するために独立した努力をしたことも表明していません。RFCドキュメントの権利に関する手順に関する情報は、BCP 78およびBCP 79に記載されています。

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

IETF事務局に行われたIPR開示のコピーと、利用可能にするライセンスの保証、またはこの仕様の実装者またはユーザーによるそのような独自の権利の使用のための一般的なライセンスまたは許可を取得するための試みの結果を取得できます。http://www.ietf.org/iprのIETFオンラインIPRリポジトリから。

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.

IETFは、関心のある当事者に、著作権、特許、または特許出願、またはこの基準を実装するために必要なテクノロジーをカバーする可能性のあるその他の独自の権利を注意深く招待します。ietf-ipr@ietf.orgのIETFへの情報をお問い合わせください。

Acknowledgement

謝辞

Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA).

RFCエディター機能の資金は、IETF管理サポートアクティビティ(IASA)によって提供されます。