1 TLS Working Group P. Eronen, Ed.
3 Expires: May 25, 2005 H. Tschofenig, Ed.
8 Pre-Shared Key Ciphersuites for Transport Layer Security (TLS)
9 draft-ietf-tls-psk-04.txt
13 This document is an Internet-Draft and is subject to all provisions
14 of section 3 of RFC 3667. By submitting this Internet-Draft, each
15 author represents that any applicable patent or other IPR claims of
16 which he or she is aware have been or will be disclosed, and any of
17 which he or she become aware will be disclosed, in accordance with
20 Internet-Drafts are working documents of the Internet Engineering
21 Task Force (IETF), its areas, and its working groups. Note that
22 other groups may also distribute working documents as
25 Internet-Drafts are draft documents valid for a maximum of six months
26 and may be updated, replaced, or obsoleted by other documents at any
27 time. It is inappropriate to use Internet-Drafts as reference
28 material or to cite them other than as "work in progress."
30 The list of current Internet-Drafts can be accessed at
31 http://www.ietf.org/ietf/1id-abstracts.txt.
33 The list of Internet-Draft Shadow Directories can be accessed at
34 http://www.ietf.org/shadow.html.
36 This Internet-Draft will expire on May 25, 2005.
40 Copyright (C) The Internet Society (2004).
44 This document specifies three sets of new ciphersuites for the
45 Transport Layer Security (TLS) protocol to support authentication
46 based on pre-shared keys. These pre-shared keys are symmetric keys,
47 shared in advance among the communicating parties. The first set of
48 ciphersuites uses only symmetric key operations for authentication.
49 The second set uses a Diffie-Hellman exchange authenticated with a
50 pre-shared key; and the third set combines public key authentication
51 of the server with pre-shared key authentication of the client.
56 Eronen & Tschofenig Expires May 25, 2005 [Page 1]
58 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
63 Usually TLS uses public key certificates [3] or Kerberos [12] for
64 authentication. This document describes how to use symmetric keys
65 (later called pre-shared keys or PSKs), shared in advance among the
66 communicating parties, to establish a TLS connection.
68 There are basically two reasons why one might want to do this:
70 o First, TLS may be used in performance-constrained environments
71 where the CPU power needed for public key operations is not
74 o Second, pre-shared keys may be more convenient from a key
75 management point of view. For instance, in closed environments
76 where the connections are mostly configured manually in advance,
77 it may be easier to configure a PSK than to use certificates.
78 Another case is when the parties already have a mechanism for
79 setting up a shared secret key, and that mechanism could be used
80 to "bootstrap" a key for authenticating a TLS connection.
82 This document specifies three sets of new ciphersuites for TLS.
83 These ciphersuites use new key exchange algorithms, and re-use
84 existing cipher and MAC algorithms from [3] and [2]. A summary of
85 these ciphersuites is shown below.
87 CipherSuite Key Exchange Cipher Hash
89 TLS_PSK_WITH_RC4_128_SHA PSK RC4_128 SHA
90 TLS_PSK_WITH_3DES_EDE_CBC_SHA PSK 3DES_EDE_CBC SHA
91 TLS_PSK_WITH_AES_128_CBC_SHA PSK AES_128_CBC SHA
92 TLS_PSK_WITH_AES_256_CBC_SHA PSK AES_256_CBC SHA
93 TLS_DHE_PSK_WITH_RC4_128_SHA DHE_PSK RC4_128 SHA
94 TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA DHE_PSK 3DES_EDE_CBC SHA
95 TLS_DHE_PSK_WITH_AES_128_CBC_SHA DHE_PSK AES_128_CBC SHA
96 TLS_DHE_PSK_WITH_AES_256_CBC_SHA DHE_PSK AES_256_CBC SHA
97 TLS_RSA_PSK_WITH_RC4_128_SHA RSA_PSK RC4_128 SHA
98 TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA RSA_PSK 3DES_EDE_CBC SHA
99 TLS_RSA_PSK_WITH_AES_128_CBC_SHA RSA_PSK AES_128_CBC SHA
100 TLS_RSA_PSK_WITH_AES_256_CBC_SHA RSA_PSK AES_256_CBC SHA
102 The first set of ciphersuites (with PSK key exchange algorithm),
103 defined in Section 2 use only symmetric key algorithms, and are thus
104 especially suitable for performance-constrained environments.
106 The ciphersuites in Section 3 (with DHE_PSK key exchange algorithm)
107 use a PSK to authenticate a Diffie-Hellman exchange. These
108 ciphersuites protect against dictionary attacks by passive
112 Eronen & Tschofenig Expires May 25, 2005 [Page 2]
114 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
117 eavesdroppers (but not active attackers), and also provide Perfect
118 Forward Secrecy (PFS).
120 The third set of ciphersuites (with RSA_PSK key exchange algorithm),
121 defined in Section 4, combine public key based authentication of the
122 server (using RSA and certificates) with mutual authentication using
125 1.1 Applicability statement
127 The ciphersuites defined in this document are intended for a rather
128 limited set of applications, usually involving only a very small
129 number of clients and servers. Even in such environments, other
130 alternatives may be more appropriate.
132 If the main goal is to avoid PKIs, another possibility worth
133 considering is to use self-signed certificates with public key
134 fingerprints. Instead of manually configuring a shared secret in,
135 for instance, some configuration file, a fingerprint (hash) of the
136 other party's public key (or certificate) could be placed there
139 It is also possible to use the SRP (Secure Remote Password)
140 ciphersuites for shared secret authentication [14]. SRP was designed
141 to be used with passwords, and incorporates protection against
142 dictionary attacks. However, it is computationally more expensive
143 than the PSK ciphersuites in Section 2.
145 1.2 Conventions used in this document
147 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
148 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
149 document are to be interpreted as described in [1].
168 Eronen & Tschofenig Expires May 25, 2005 [Page 3]
170 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
173 2. PSK key exchange algorithm
175 This section defines the PSK key exchange algorithm and associated
176 ciphersuites. These ciphersuites use only symmetric key algorithms.
178 It is assumed that the reader is familiar with ordinary TLS
179 handshake, shown below. The elements in parenthesis are not included
180 when PSK key exchange algorithm is used.
185 ClientHello -------->
190 <-------- ServerHelloDone
198 Application Data <-------> Application Data
201 The client indicates its willingness to use pre-shared key
202 authentication by including one or more PSK ciphersuites in the
203 ClientHello message. If the TLS server also wants to use pre-shared
204 keys, it selects one of the PSK ciphersuites, places the selected
205 ciphersuite in the ServerHello message, and includes an appropriate
206 ServerKeyExchange message (see below). The Certificate and
207 CertificateRequest payloads are omitted from the response.
209 Both clients and servers may have pre-shared keys with several
210 different parties. The client indicates which key to use by
211 including a "PSK identity" in the ClientKeyExchange message (note
212 that unlike in [7], the session_id field in ClientHello message keeps
213 its usual meaning). To help the client in selecting which identity
214 to use, the server can provide a "PSK identity hint" in the
215 ServerKeyExchange message (note that if no hint is provided, a
216 ServerKeyExchange message is still sent).
218 It is expected that different types of identities are useful for
219 different applications running over TLS. This document does not
220 therefore mandate the use of any particular type of identity (such as
224 Eronen & Tschofenig Expires May 25, 2005 [Page 4]
226 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
229 IPv4 address or FQDN) or identity hint; neither is specified how
230 exactly the client uses the hint (if it uses it at all).
232 To increase the chances for successful interoperation between
233 applications that do agree on what type of identity is used, the
234 identity MUST be first converted to a character string, and then
235 encoded to octets using UTF-8 [5]. For instance,
237 o IPv4 addresses are sent as dotted-decimal strings (e.g.,
238 "192.0.1.2"), not as 32-bit integers in network byte order.
240 o Domain names are sent in their usual text form (e.g.,
241 "www.example.com" or "embedded\.dot.example.net"), not in DNS
242 protocol wire format.
244 o X.500 Distinguished Names are sent in their string representation
245 [9], not as BER-encoded ASN.1.
247 In situations where the identity is entered by a person, processing
248 the character string with an appropriate stringprep [10] profile is
251 The format of the ServerKeyExchange and ClientKeyExchange messages is
255 select (KeyExchangeAlgorithm) {
256 /* other cases for rsa, diffie_hellman, etc. */
258 opaque psk_identity_hint<0..2^16-1>;
263 select (KeyExchangeAlgorithm) {
264 /* other cases for rsa, diffie_hellman, etc. */
266 opaque psk_identity<0..2^16-1>;
280 Eronen & Tschofenig Expires May 25, 2005 [Page 5]
282 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
285 The premaster secret is formed as follows: if the PSK is N octets
286 long, concatenate an uint16 with the value N, N zero octets, a second
287 uint16 with the value N, and the PSK itself.
289 Note 1: All the ciphersuites in this document share the same
290 general structure for the premaster secret, namely
293 opaque other_secret<0..2^16-1>;
294 opaque psk<0..2^16-1>;
297 Here "other_secret" is either zeroes (plain PSK case), or comes
298 from the Diffie-Hellman or RSA exchange (DHE_PSK and RSA_PSK,
299 respectively). See Sections 3 and 4 for a more detailed
302 Note 2: Using zeroes for "other_secret" effectively means that
303 only the HMAC-SHA1 part (but not the HMAC-MD5 part) of the TLS PRF
304 is used when constructing the master secret. See [8] for a more
307 The TLS handshake is authenticated using the Finished messages as
310 If the server does not recognize the PSK identity, it MAY respond
311 with an "unknown_psk_identity" alert message. Alternatively, if the
312 server wishes to hide the fact that the PSK identity was not known,
313 it MAY continue the protocol as if the PSK identity existed but the
314 key was incorrect: that is, respond with a "decrypt_error" alert.
336 Eronen & Tschofenig Expires May 25, 2005 [Page 6]
338 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
341 3. DHE_PSK key exchange algorithm
343 This section defines additional ciphersuites that use a PSK to
344 authenticate a Diffie-Hellman exchange. These ciphersuites give some
345 additional protection against dictionary attacks, and also provide
346 Perfect Forward Secrecy (PFS). See Section 6 for discussion of
347 related security considerations.
349 When these ciphersuites are used, the ServerKeyExchange and
350 ClientKeyExchange also include the Diffie-Hellman parameters. The
351 PSK identity and identity hint fields have the same meaning as in the
354 The format of the ServerKeyExchange and ClientKeyExchange messages is
358 select (KeyExchangeAlgorithm) {
359 /* other cases for rsa, diffie_hellman, etc. */
360 case diffie_hellman_psk: /* NEW */
361 opaque psk_identity_hint<0..2^16-1>;
362 ServerDHParams params;
367 select (KeyExchangeAlgorithm) {
368 /* other cases for rsa, diffie_hellman, etc. */
369 case diffie_hellman_psk: /* NEW */
370 opaque psk_identity<0..2^16-1>;
371 ClientDiffieHellmanPublic public;
375 The premaster secret is formed as follows. Let Z be the value
376 produced by the Diffie-Hellman exchange (with leading zero bytes
377 stripped as in other Diffie-Hellman based ciphersuites). Concatenate
378 an uint16 containing the length of Z (in octets), Z itself, an uint16
379 containing the length of the PSK (in octets), and the PSK itself.
381 This corresponds to the general structure for the premaster secrets
382 (see Note 1 in Section 2) in this document, with "other_secret"
392 Eronen & Tschofenig Expires May 25, 2005 [Page 7]
394 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
397 4. RSA_PSK key exchange algorithm
399 The ciphersuites in this section use RSA and certificates to
400 authenticate the server, in addition to using a PSK.
402 As in normal RSA ciphersuites, the server must send a Certificate
403 message. The format of the ServerKeyExchange and ClientKeyExchange
404 messages is shown below.
407 select (KeyExchangeAlgorithm) {
408 /* other cases for rsa, diffie_hellman, etc. */
409 case rsa_psk: /* NEW */
410 opaque psk_identity_hint<0..2^16-1>;
415 select (KeyExchangeAlgorithm) {
416 /* other cases for rsa, diffie_hellman, etc. */
417 case rsa_psk: /* NEW */
418 opaque psk_identity<0..2^16-1>;
419 EncryptedPreMasterSecret;
423 The EncryptedPreMasterSecret field sent from the client to the server
424 contains a 2-byte version number and a 46-byte random value,
425 encrypted using the server's RSA public key as described in Section
426 7.4.7.1 of [3]. The actual premaster secret is formed by both
427 parties as follows: concatenate an uint16 with the value 48, the
428 2-byte version number and the 46-byte random value, an uint16
429 containing the length of the PSK (in octets), and the PSK itself.
431 This corresponds to the general structure for the premaster secrets
432 (see Note 1 in Section 2) in this document, with "other_secret"
433 containing both the 2-byte version number and the 46-byte random
436 Neither the normal RSA ciphersuites nor these RSA_PSK ciphersuites
437 themselves specify what the certificates contain (in addition to the
438 RSA public key), or how the certificates are to be validated. In
439 particular, it is possible to use the RSA_PSK ciphersuites with
440 unvalidated self-signed certificates to provide somewhat similar
441 protection against dictionary attacks as the DHE_PSK ciphersuites
442 defined in Section 3.
448 Eronen & Tschofenig Expires May 25, 2005 [Page 8]
450 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
453 5. IANA considerations
455 IANA does not currently have a registry for TLS-related numbers, so
456 there are no IANA actions associated with this document.
458 For easier reference in the future, the ciphersuite numbers defined
459 in this document are summarized below.
461 CipherSuite TLS_PSK_WITH_RC4_128_SHA = { 0x00, 0x8A };
462 CipherSuite TLS_PSK_WITH_3DES_EDE_CBC_SHA = { 0x00, 0x8B };
463 CipherSuite TLS_PSK_WITH_AES_128_CBC_SHA = { 0x00, 0x8C };
464 CipherSuite TLS_PSK_WITH_AES_256_CBC_SHA = { 0x00, 0x8D };
465 CipherSuite TLS_DHE_PSK_WITH_RC4_128_SHA = { 0x00, 0x8E };
466 CipherSuite TLS_DHE_PSK_WITH_3DES_EDE_CBC_SHA = { 0x00, 0x8F };
467 CipherSuite TLS_DHE_PSK_WITH_AES_128_CBC_SHA = { 0x00, 0x90 };
468 CipherSuite TLS_DHE_PSK_WITH_AES_256_CBC_SHA = { 0x00, 0x91 };
469 CipherSuite TLS_RSA_PSK_WITH_RC4_128_SHA = { 0x00, 0x92 };
470 CipherSuite TLS_RSA_PSK_WITH_3DES_EDE_CBC_SHA = { 0x00, 0x93 };
471 CipherSuite TLS_RSA_PSK_WITH_AES_128_CBC_SHA = { 0x00, 0x94 };
472 CipherSuite TLS_RSA_PSK_WITH_AES_256_CBC_SHA = { 0x00, 0x95 };
474 This document also defines a new TLS alert message,
475 unknown_psk_identity(115).
477 6. Security Considerations
479 As with all schemes involving shared keys, special care should be
480 taken to protect the shared values and to limit their exposure over
483 6.1 Perfect forward secrecy (PFS)
485 The PSK and RSA_PSK ciphersuites defined in this document do not
486 provide Perfect Forward Secrecy (PFS). That is, if the shared secret
487 key (in PSK ciphersuites), or both the shared secret key and the RSA
488 private key (in RSA_PSK ciphersuites), is somehow compromised, an
489 attacker can decrypt old conversations.
491 The DHE_PSK ciphersuites provide Perfect Forward Secrecy if a fresh
492 DH private key is generated for each handshake.
494 6.2 Brute-force and dictionary attacks
496 Use of a fixed shared secret of limited entropy (for example, a PSK
497 that is relatively short, or was chosen by a human and thus may
498 contain less entropy than its length would imply) may allow an
499 attacker to perform a brute-force or dictionary attack to recover the
500 secret. This may be either an off-line attack (against a captured
504 Eronen & Tschofenig Expires May 25, 2005 [Page 9]
506 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
509 TLS handshake messages), or an on-line attack where the attacker
510 attempts to connect to the server and tries different keys.
512 For the PSK ciphersuites, an attacker can get the information
513 required for an off-line attack by eavesdropping a TLS handshake, or
514 by getting a valid client to attempt connection with the attacker (by
515 tricking the client to connect to wrong address, or intercepting a
516 connection attempt to the correct address, for instance).
518 For the DHE_PSK ciphersuites, an attacker can obtain the information
519 by getting a valid client to attempt connection with the attacker.
520 Passive eavesdropping alone is not sufficient.
522 For the RSA_PSK ciphersuites, only the server (authenticated using
523 RSA and certificates) can obtain sufficient information for an
526 It is RECOMMENDED that implementations that allow the administrator
527 to manually configure the PSK also provide a functionality for
528 generating a new random PSK, taking [4] into account.
532 The PSK identity is sent in cleartext. While using a user name or
533 other similar string as the PSK identity is the most straightforward
534 option, it may lead to problems in some environments since an
535 eavesdropper is able to identify the communicating parties. Even
536 when the identity does not reveal any information itself, reusing the
537 same identity over time may eventually allow an attacker to perform
538 traffic analysis to identify the parties. It should be noted that
539 this is no worse than client certificates, since they are also sent
542 6.4 Implementation notes
544 The implementation notes in [11] about correct implementation and use
545 of RSA (including Section 7.4.7.1) and Diffie-Hellman (including
546 Appendix F.1.1.3) apply to the DHE_PSK and RSA_PSK ciphersuites as
551 The protocol defined in this document is heavily based on work by Tim
552 Dierks and Peter Gutmann, and borrows some text from [7] and [2].
553 The DHE_PSK and RSA_PSK ciphersuites are based on earlier work in
556 Valuable feedback was also provided by Philip Ginzboorg, Peter
560 Eronen & Tschofenig Expires May 25, 2005 [Page 10]
562 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
565 Gutmann, David Jablon, Nikos Mavroyanopoulos, Bodo Moeller, Eric
566 Rescorla, and Mika Tervonen.
568 When the first version of this draft was almost ready, the authors
569 learned that something similar had been proposed already in 1996
570 [13]. However, this draft is not intended for web password
571 authentication, but rather for other uses of TLS.
575 8.1 Normative References
577 [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
578 Levels", RFC 2119, March 1997.
580 [2] Chown, P., "Advanced Encryption Standard (AES) Ciphersuites
581 for Transport Layer Security (TLS)", RFC 3268, June 2002.
583 [3] Dierks, T. and C. Allen, "The TLS Protocol Version 1.0", RFC
586 [4] Eastlake, D., Crocker, S. and J. Schiller, "Randomness
587 Recommendations for Security", RFC 1750, December 1994.
589 [5] Yergeau, F., "UTF-8, a transformation format of ISO 10646", RFC
592 8.2 Informative References
594 [6] Badra, M., Cherkaoui, O., Hajjeh, I. and A. Serhrouchni,
595 "Pre-Shared-Key key Exchange methods for TLS",
596 draft-badra-tls-key-exchange-00 (work in progress), August
599 [7] Gutmann, P., "Use of Shared Keys in the TLS Protocol",
600 draft-ietf-tls-sharedkeys-02 (expired), October 2003.
602 [8] Krawczyk, H., "Re: TLS shared keys PRF", message on
603 ietf-tls@lists.certicom.com mailing list 2004-01-13,
604 http://www.imc.org/ietf-tls/mail-archive/msg04098.html.
606 [9] Zeilenga, K., "LDAP: String Representation of Distinguished
607 Names", draft-ietf-ldapbis-dn-15 (work in progress), October
610 [10] Hoffman, P. and M. Blanchet, "Preparation of Internationalized
611 Strings ("stringprep")", RFC 3454, December 2002.
616 Eronen & Tschofenig Expires May 25, 2005 [Page 11]
618 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
621 [11] Dierks, T. and E. Rescorla, "The TLS Protocol Version 1.1",
622 draft-ietf-tls-rfc2246-bis-08 (work in progress), August 2004.
624 [12] Medvinsky, A. and M. Hur, "Addition of Kerberos Cipher Suites
625 to Transport Layer Security (TLS)", RFC 2712, October 1999.
627 [13] Simon, D., "Addition of Shared Key Authentication to Transport
628 Layer Security (TLS)", draft-ietf-tls-passauth-00 (expired),
631 [14] Taylor, D., Wu, T., Mavroyanopoulos, N. and T. Perrin, "Using
632 SRP for TLS Authentication", draft-ietf-tls-srp-08 (work in
633 progress), August 2004.
672 Eronen & Tschofenig Expires May 25, 2005 [Page 12]
674 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
677 Authors' and Contributors' Addresses
680 Nokia Research Center
682 FIN-00045 Nokia Group
684 Email: pasi.eronen@nokia.com
692 Email: Hannes.Tschofenig@siemens.com
700 Email: Mohamad.Badra@enst.fr
707 Email: cherkaoui.omar@uqam.ca
715 Email: Ibrahim.Hajjeh@enst.fr
723 Email: Ahmed.Serhrouchni@enst.fr
728 Eronen & Tschofenig Expires May 25, 2005 [Page 13]
730 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
733 Appendix A. Changelog
735 (This section should be removed by the RFC Editor before
738 Changes from -03 to -04:
740 o Added a note about premaster secret "general structure" in
743 o Something in the I-D submission procedure had removed all
744 circumflexes from -03 version, turning e.g. "2^16" (two-to-
745 the sixteenth power) to "216" (two hundred and sixteen).
748 Changes from -02 to -03:
750 o Aligned the way the premaster secret is derived.
752 o Specified that identities must be sent as human-readable UTF-8
753 strings, not in binary formats. Changed reference to RFC 3629
754 from informative to normative.
756 o Selected ciphersuite and alert numbers, and updated IANA
757 considerations section to match this.
759 o Reworded some text about dictionary attacks in Section 6.2.
761 Changes from -01 to -02:
763 o Clarified text about DHE_PSK ciphersuites in Section 1.
765 o Clarified explanation of HMAC-SHA1/MD5 use of PRF in Section 2.
767 o Added note about certificate validation and self-signed
768 certificates in Section 4.
770 o Added Mohamad Badra et al. as contributors.
772 Changes from draft-ietf-tls-psk-00 to -01:
774 o Added DHE_PSK and RSA_PSK key exchange algorithms, and updated
775 other text accordingly
777 o Removed SHA-1 hash from PSK key exchange premaster secret
778 construction (since premaster secret doesn't need to be 48 bytes).
780 o Added unknown_psk_identity alert message.
784 Eronen & Tschofenig Expires May 25, 2005 [Page 14]
786 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
789 o Updated IANA considerations section.
791 Changes from draft-eronen-tls-psk-00 to draft-ietf-tls-psk-00:
793 o Updated dictionary attack considerations based on comments from
796 o Added a recommendation about using UTF-8 in the identity field.
798 o Removed Appendix A comparing this document with
799 draft-ietf-tls-sharedkeys-02.
801 o Removed IPR comment about SPR.
803 o Minor editorial changes.
840 Eronen & Tschofenig Expires May 25, 2005 [Page 15]
842 Internet-Draft PSK Ciphersuites for TLS November 24, 2004
845 Intellectual Property Statement
847 The IETF takes no position regarding the validity or scope of any
848 Intellectual Property Rights or other rights that might be claimed to
849 pertain to the implementation or use of the technology described in
850 this document or the extent to which any license under such rights
851 might or might not be available; nor does it represent that it has
852 made any independent effort to identify any such rights. Information
853 on the procedures with respect to rights in RFC documents can be
854 found in BCP 78 and BCP 79.
856 Copies of IPR disclosures made to the IETF Secretariat and any
857 assurances of licenses to be made available, or the result of an
858 attempt made to obtain a general license or permission for the use of
859 such proprietary rights by implementers or users of this
860 specification can be obtained from the IETF on-line IPR repository at
861 http://www.ietf.org/ipr.
863 The IETF invites any interested party to bring to its attention any
864 copyrights, patents or patent applications, or other proprietary
865 rights that may cover technology that may be required to implement
866 this standard. Please address the information to the IETF at
870 Disclaimer of Validity
872 This document and the information contained herein are provided on an
873 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
874 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
875 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
876 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
877 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
878 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
883 Copyright (C) The Internet Society (2004). This document is subject
884 to the rights, licenses and restrictions contained in BCP 78, and
885 except as set forth therein, the authors retain all their rights.
890 Funding for the RFC Editor function is currently provided by the
896 Eronen & Tschofenig Expires May 25, 2005 [Page 16]