xref: /netbsd-src/crypto/dist/ipsec-tools/src/racoon/rfc/rfc4109.txt (revision c8da0e5fefd3800856b306200a18b2315c7fbb9f)
1
2
3
4
5
6Network Working Group                                         P. Hoffman
7Request for Comments: 4109                                VPN Consortium
8Updates: 2409                                                   May 2005
9Category: Standards Track
10
11
12         Algorithms for Internet Key Exchange version 1 (IKEv1)
13
14Status of This Memo
15
16   This document specifies an Internet standards track protocol for the
17   Internet community, and requests discussion and suggestions for
18   improvements.  Please refer to the current edition of the "Internet
19   Official Protocol Standards" (STD 1) for the standardization state
20   and status of this protocol.  Distribution of this memo is unlimited.
21
22Copyright Notice
23
24   Copyright (C) The Internet Society (2005).
25
26Abstract
27
28   The required and suggested algorithms in the original Internet Key
29   Exchange version 1 (IKEv1) specification do not reflect the current
30   reality of the IPsec market requirements.  The original specification
31   allows weak security and suggests algorithms that are thinly
32   implemented.  This document updates RFC 2409, the original
33   specification, and is intended for all IKEv1 implementations deployed
34   today.
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57Hoffman                     Standards Track                     [Page 1]
58
59RFC 4109                  Algorithms for IKEv1                  May 2005
60
61
621.  Introduction
63
64   The original IKEv1 definition, [RFC2409], has a set of MUST-level and
65   SHOULD-level requirements that do not match the needs of IPsec users.
66   This document updates RFC 2409 by changing the algorithm requirements
67   defined there.
68
69   The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD,
70   SHOULD NOT, RECOMMENDED, MAY, and OPTIONAL, when they appear in this
71   document, are to be interpreted as described in [RFC2119].
72
732.  Old Algorithm Requirements
74
75   RFC 2409 has the following MUST-level and SHOULD-level requirements:
76
77   o  DES for encryption MUST be supported.
78   o  MD5 and SHA-1 for hashing and HMAC functions MUST be supported.
79   o  Pre-shared secrets for authentication MUST be supported.
80   o  Diffie-Hellman MODP group 1 (discrete log 768 bits) MUST be
81      supported.
82   o  TripleDES for encryption SHOULD be supported.
83   o  Tiger for hashing SHOULD be supported.
84   o  DSA and RSA for authentication with signatures SHOULD be
85      supported.
86   o  RSA for authentication with encryption SHOULD be supported.
87   o  Diffie-Hellman MODP group 2 (discrete log 1024 bits) SHOULD be
88      supported.
89
90   RFC 2409 gives two conflicting requirement levels for Diffie-Hellman
91   MODP groups with elliptic curves.  Section 4 of that specification
92   says that "IKE implementations ... MAY support ECP and EC2N groups",
93   but Sections 6.3 and 6.4 say that MODP groups 3 and 4 for EC2N groups
94   SHOULD be supported.
95
963.  New Algorithm Requirements
97
98   The new requirements for IKEv1 are listed here.  Note that some of
99   the requirements are the same as those in RFC 2409, whereas others
100   are changed.
101
102   o  TripleDES for encryption MUST be supported.
103   o  AES-128 in CBC mode [RFC3602] for encryption SHOULD be supported.
104   o  SHA-1 for hashing and HMAC functions MUST be supported.
105   o  Pre-shared secrets for authentication MUST be supported.
106   o  AES-128 in XCBC mode for PRF functions ([RFC3566] and [RFC3664])
107      SHOULD be supported.
108   o  Diffie-Hellman MODP group 2 (discrete log 1024 bits) MUST be
109      supported.
110
111
112
113Hoffman                     Standards Track                     [Page 2]
114
115RFC 4109                  Algorithms for IKEv1                  May 2005
116
117
118   o  Diffie-Hellman MODP group 14 (discrete log 2048 bits) [RFC3526]
119      SHOULD be supported.
120   o  RSA for authentication with signatures SHOULD be supported.
121
122   If additional updates are made to IKEv1 in the future, then it is
123   very likely that implementation of AES-128 in CBC mode for encryption
124   will become mandatory.
125
126   The other algorithms that were listed at MUST-level and SHOULD-level
127   in RFC 2409 are now MAY-level.  This includes DES for encryption, MD5
128   and Tiger for hashing, Diffie-Hellman MODP group 1, Diffie-Hellman
129   MODP groups with elliptic curves, DSA for authentication with
130   signatures, and RSA for authentication with encryption.
131
132   DES for encryption, MD5 for hashing, and Diffie-Hellman MODP group 1
133   are dropped to MAY due to cryptographic weakness.
134
135   Tiger for hashing, Diffie-Hellman MODP groups with elliptic curves,
136   DSA for authentication with signatures, and RSA for authentication
137   with encryption are dropped due to lack of any significant deployment
138   and interoperability.
139
1404.  Summary
141
142      Algorithm                     RFC 2409    This document
143      ------------------------------------------------------------------
144      DES for encryption            MUST        MAY (crypto weakness)
145      TripleDES for encryption      SHOULD      MUST
146      AES-128 for encryption        N/A         SHOULD
147      MD5 for hashing and HMAC      MUST        MAY (crypto weakness)
148      SHA1 for hashing and HMAC     MUST        MUST
149      Tiger for hashing             SHOULD      MAY (lack of deployment)
150      AES-XCBC-MAC-96 for PRF       N/A         SHOULD
151      Pre-shared secrets            MUST        MUST
152      RSA with signatures           SHOULD      SHOULD
153      DSA with signatures           SHOULD      MAY (lack of deployment)
154      RSA with encryption           SHOULD      MAY (lack of deployment)
155      D-H Group 1 (768)             MUST        MAY (crypto weakness)
156      D-H Group 2 (1024)            SHOULD      MUST
157      D-H Group 14 (2048)           N/A         SHOULD
158      D-H elliptic curves           SHOULD      MAY (lack of deployment)
159
1605.  Security Considerations
161
162   This document is all about security.  All the algorithms that are
163   either MUST-level or SHOULD-level in the "new algorithm requirements"
164   section of this document are believed to be robust and secure at the
165   time of this writing.
166
167
168
169Hoffman                     Standards Track                     [Page 3]
170
171RFC 4109                  Algorithms for IKEv1                  May 2005
172
173
1746.  Normative References
175
176   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
177              Requirement Levels", BCP 14, RFC 2119, March 1997.
178
179   [RFC2409]  Harkins, D. and D. Carrel, "The Internet Key Exchange
180              (IKE)", RFC 2409, November 1998.
181
182   [RFC3526]  Kivinen, T. and M. Kojo, "More Modular Exponential (MODP)
183              Diffie-Hellman groups for Internet Key Exchange (IKE)",
184              RFC 3526, May 2003.
185
186   [RFC3566]  Frankel, S. and H. Herbert, "The AES-XCBC-MAC-96 Algorithm
187              and Its Use With IPsec", RFC 3566, September 2003.
188
189   [RFC3602]  Frankel, S., Glenn, R., and S. Kelly, "The AES-CBC Cipher
190              Algorithm and Its Use with IPsec", RFC 3602, September
191              2003.
192
193   [RFC3664]  Hoffman, P., "The AES-XCBC-PRF-128 Algorithm for the
194              Internet Key Exchange Protocol (IKE)", RFC 3664, January
195              2004.
196
197Author's Address
198
199   Paul Hoffman
200   VPN Consortium
201   127 Segre Place
202   Santa Cruz, CA  95060
203   US
204
205   EMail: paul.hoffman@vpnc.org
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225Hoffman                     Standards Track                     [Page 4]
226
227RFC 4109                  Algorithms for IKEv1                  May 2005
228
229
230Full Copyright Statement
231
232   Copyright (C) The Internet Society (2005).
233
234   This document is subject to the rights, licenses and restrictions
235   contained in BCP 78, and except as set forth therein, the authors
236   retain all their rights.
237
238   This document and the information contained herein are provided on an
239   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
240   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
241   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
242   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
243   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
244   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
245
246Intellectual Property
247
248   The IETF takes no position regarding the validity or scope of any
249   Intellectual Property Rights or other rights that might be claimed to
250   pertain to the implementation or use of the technology described in
251   this document or the extent to which any license under such rights
252   might or might not be available; nor does it represent that it has
253   made any independent effort to identify any such rights.  Information
254   on the procedures with respect to rights in RFC documents can be
255   found in BCP 78 and BCP 79.
256
257   Copies of IPR disclosures made to the IETF Secretariat and any
258   assurances of licenses to be made available, or the result of an
259   attempt made to obtain a general license or permission for the use of
260   such proprietary rights by implementers or users of this
261   specification can be obtained from the IETF on-line IPR repository at
262   http://www.ietf.org/ipr.
263
264   The IETF invites any interested party to bring to its attention any
265   copyrights, patents or patent applications, or other proprietary
266   rights that may cover technology that may be required to implement
267   this standard.  Please address the information to the IETF at ietf-
268   ipr@ietf.org.
269
270Acknowledgement
271
272   Funding for the RFC Editor function is currently provided by the
273   Internet Society.
274
275
276
277
278
279
280
281Hoffman                     Standards Track                     [Page 5]
282
283