D/TLS IANA Registry UpdatesTableau Softwarejoe@salowey.netsn3rdsean@sn3rd.com
Security
TLS WGInternet-DraftThis document changes the IANA registry policy for a number of registries related to DTLS and TLS, renames some of the registries for consistency, and adds notes to many of the registries. As a result, this document updates many RFCs (see updates header).As the authors of this draft are also the WG chairs, the responsible Area Director has agreed to judge consensus.RFC EDITOR: Please delete section prior to publication.This document requests that IANA make changes to a number of DTLS- and TLS-related IANA registries.In this document, we use the term “(D)TLS” to refer to registries that apply to both TLS and DTLS.Add “TLS” to registries’ names for consistency amongst TLS-related registries.Change the IANA registry policy for the TLS ExtensionType Values, TLS Cipher Suite, and TLS ClientCertificateType Identifiers registries. These changes register a small part of these code spaces for experimentation and private use.Add designated expert instructions as notes in the TLS ExtensionType Values, TLS Cipher Suite, TLS ClientCertificateType Identifiers, and TLS Exporter Label registries to inform users about what to expect from the designated expert.Add notes to indicate whether an extension, certain values of an extension, or an entire registry is only applicable pre-(D)TLS 1.3.Rename the NewSessionTicket TLS HandshakeType message registry entry to new_session_ticket to match the naming nomenclature for the other Handshake type names and to match with existing implementations.Rename the SessionTicket TLS extension to session_ticket to match the nomenclature for the other extensions’ names.Add missing entry to the TLS Alert Registry for the no_application_protocol alert defined in .Added “Recommended” column to TLS ExtensionType Values, TLS Cipher Suite, TLS Certificate Types, TLS Supported Groups, and TLS Exporters Label registries. Initial values marked “Yes” are specified in IETF Standards Track documents; all others are marked “No”. This new column is intended to alter the incorrect perception that getting a code point somehow legitimizes the extension, cipher suite/algorithm, or exporter.Establish Designated Expert pool rules for Specification Required registries.This document proposes no changes to the registration policies for TLS Alert , TLS ContentType , TLS HandshakeType, and TLS Certificate Status Types ; the existing policies (Standards Action for the first three; IETF Review for the last), are appropriate for these one-byte code points because of their scarcity.IANA is to update the names of the following registries to add “TLS” to for consistency with the other TLS-related extensions:Application-Layer Protocol Negotiation (ALPN) Protocol IDs,ExtensionType Values,Heartbeat Message Types,Heartbeat Modes, andSupported Groups.IANA is also to add a reference to this document for the registry whose names have been updated as a result of the above change. The remainder of this document will use the registry names with the “TLS” prefix.Many of the TLS-related IANA registries were defined prior to where “IETF Consensus” was used instead of the RFC5226-defined “IETF Review”. To align with the new terminology, IANA is to update to use “IETF Review” in place of “IETF Consensus” in the following registries:TLS Authorization Data FormatsTLS Supplemental Data Formats (SupplementalDataType)This is not a universal change as some registries originally defined with “IETF Consensus” are undergoing other changes either as a result of this document or .The nomenclature for the registry entries in the TLS ExtensionType Values registry correspond to the presentation language field name except for entry 35. To ensure that the values in the registry are consistently identified in the registry, IANA is to rename entry 35 to “session_ticket (renamed from “SessionTicket TLS”)”.IANA is to update the TLS ExtensionType Values registry as follows:Change the registry policy to:
Values with the first byte in the range 0-254 (decimal) are assigned via Specification Required . Values with the first byte 255 (decimal) are reserved for Private Use .Update the “References” to also refer to this document.Add the following note:
Note: Experts are to verify that there is in fact a publicly available standard.Add a “Recommended” column with the contents as listed below.
This table has been generated by marking Standards Track RFCs as “Yes” and all others
as “No”. Future extensions MUST define the value of this column. A Standards Track
document is required to register an extension with the value “Yes”.ExtensionRecommendedserver_nameYesmax_fragment_lengthYesclient_certificate_urlYestrusted_ca_keysYestruncated_hmacYesstatus_requestYesuser_mappingYesclient_authzNoserver_authzNocert_typeYessupported_groupsYesec_point_formatsYessrpNosignature_algorithmsYesuse_srtpYesheartbeatYesapplication_layer_protocol_negotiationYesstatus_request_v2Yessigned_certificate_timestampNoclient_certificate_typeYesserver_certificate_typeYespaddingYesencrypt_then_macYesextended_master_secretYessession_ticketYesrenegotiation_infoYesIANA is to update the TLS Cipher Suite registry as follows:Change the registry policy to:
Values with the first byte in the range 0-254 (decimal) are assigned via Specification Required . Values with the first byte 255 (decimal) are reserved for Private Use .Add a “Recommended” column to the cipher suite registry. The cipher suites that follow in the two tables are marked as “Yes”. All other cipher suites are marked as “No”. Future cipher suites MUST define the value of the Recommended column. A Standards Track document is required to register a cipher suite with the value “Yes”.Update the reference for this registry to also point to this document.The cipher suites that follow are standards track server-authenticated (and optionally client-authenticated) cipher suites which are currently available in TLS 1.2. The notable exception are the ECDHE AES GCM cipher suites which are not yet standards track prior to the publication of this specification, but this document promotes those 4 cipher suites to standards track (see TO-DO insert reference).RFC EDITOR: Please delete the sentence beginning with “The notable exception …” after RFC 5289 has been promoted to Proposed Standard.The cipher suites that follow are standards track ephemeral pre-shared key cipher suites which are available in TLS 1.2. is inconsistent with respect to the ordering of components within PSK AES CCM cipher suite names; those names are used here without modification.Add the following:
WARNING: Cryptographic algorithms will be broken or weakened over time. Blindly implementing cipher suites listed here is not advised. Implementers and users need to check that the cryptographic algorithms listed continue to provide the expected level of security.
Note(1): Although TLS 1.3 uses the same cipher suite space as previous versions of TLS, TLS 1.3 cipher suites are defined differently, only specifying the symmetric ciphers, and cannot be used for TLS 1.2. Similarly, TLS 1.2 and lower cipher suites cannot be used with TLS 1.3.
Note(2): Cipher suites marked as “Yes” are those allocated via Standards Track RFCs. Cipher suites marked as “No” are not; cipher suites marked “No” range from “good” to “bad” from a cryptographic standpoint.
Note(3): The designated expert only ensures that the specification is publicly available.Add a “Recommended” column with a “Yes” for secp256r1, secp384r1, x25519, and x448 while all others are “No”. These “Yes” groups are taken from Standards Track RFCs. Not all groups from , which is standards track, are not marked as “Yes”; these groups apply to TLS 1.3 and previous versions of TLS . A Standards Track document is required to register an entry with the value “Yes”.IANA is to update the TLS ClientCertificateType Identifiers registry as follows:Change the registry policy to:
Values in the range 0-223 are assigned via Specification Required . Values 224-255 are reserved for Private Use.Add the following:
Note: The designated expert only ensures that the specification is publicly available.To align with TLS implementations and to align the naming nomenclature for other Handshake message types, IANA is to rename entry 4 in the TLS HandshakeType registry to “new_session_ticket (renamed from NewSessionTicket)”. IANA is to also add a reference to this document in the Reference column for entry 4 in the TLS HandshakeType registry.IANA is to add the following note to the TLS Exporter Label Registry:IANA is to also to add a “Recommended” column to the TLS Exporter Label registry. The table that follows has been generated by marking Standards Track RFCs as “Yes” and all others as “No”. Future exporters MUST define the value of this column. A Standards Track document is required to register an extension with the value “Yes”.IANA is also to add the following note:IANA is to add the following entry to the TLS Alert Registry (the entry was omitted from the IANA instructions in ):Add a “Recommended” column to the registry. X.509 and Raw Public Key are “Yes”. All others are “No”. A Standards Track document is required to register a certificate type with the value “Yes”.To make it clear that (D)TLS 1.3 has orphaned certain extensions (i.e., they are only applicable to version of (D)TLS prior to 1.3), IANA is to add the following to the TLS ExtensionType Values registry:To make it clear that (D)TLS 1.3 has orphaned certain registries (i.e., they are only applicable to version of (D)TLS protocol versions prior to 1.3), IANA is to:Add the following to the TLS Compression Method Identifiers registry :
Note: Value 0 (NULL) is the only value in this registry applicable to (D)TLS protocol version 1.3 or later.Add the following to the TLS HashAlgorithm and TLS SignatureAlgorithm registries :
Note: The values in this registry are only applicable to (D)TLS protocol versions prior to 1.3.Update the “References” in the TLS Compression Method Identifiers, TLS HashAlgorithm and TLS SignatureAlgorithm registries to also refer to this document.IANA [SHALL update/has updated] the TLS HashAlgorithm Registry to list values 7-223 as “Reserved” and the TLS SignatureAlgorithm registry to list values 4-223 as “Reserved”.Specification Required registry requests are registered after
a three-week review period on the (tbd but maybe
tls-reg-review@ietf.org) mailing list, on the advice of one or more
Designated Experts. However, to allow for the allocation of values
prior to publication, the Designated Experts may approve registration
once they are satisfied that such a specification will be published.Registration requests sent to the mailing list for review SHOULD use an
appropriate subject (e.g., “Request to register value in TLS bar
registry”).Within the review period, the Designated Experts will either approve or
deny the registration request, communicating this decision to the review
list and IANA. Denials SHOULD include an explanation and, if applicable,
suggestions as to how to make the request successful. Registration
requests that are undetermined for a period longer than 21 days can be
brought to the IESG’s attention (using the iesg@ietf.org mailing list)
for resolution.Criteria that SHOULD be applied by the Designated Experts includes
determining whether the proposed registration duplicates existing
functionality, whether it is likely to be of general applicability
or useful only for a single application, and whether the registration
description is clear.IANA MUST only accept registry updates from the Designated Experts and
SHOULD direct all requests for registration to the review mailing list.It is suggested that multiple Designated Experts be appointed who are
able to represent the perspectives of different applications using this
specification, in order to enable broadly informed review of
registration decisions. In cases where a registration decision could
be perceived as creating a conflict of interest for a particular
Expert, that Expert SHOULD defer to the judgment of the other Experts.The authors are fairly certain that there are no security considerations for this document.This document is entirely about changes to TLS-related IANA registries.Transport Layer Security Protocol Compression MethodsThe Transport Layer Security (TLS) protocol (RFC 2246) includes features to negotiate selection of a lossless data compression method as part of the TLS Handshake Protocol and to then apply the algorithm associated with the selected method as part of the TLS Record Protocol. TLS defines one standard compression method which specifies that data exchanged via the record protocol will not be compressed. This document describes an additional compression method associated with a lossless data compression algorithm for use with TLS, and it describes a method for the specification of additional TLS compression methods. [STANDARDS-TRACK]Transport Layer Security (TLS) Session Resumption without Server-Side StateThis document describes a mechanism that enables the Transport Layer Security (TLS) server to resume sessions and avoid keeping per-client session state. The TLS server encapsulates the session state into a ticket and forwards it to the client. The client can subsequently resume a session using the obtained ticket. This document obsoletes RFC 4507. [STANDARDS-TRACK]TLS Handshake Message for Supplemental DataThis specification defines a TLS handshake message for exchange of supplemental application data. TLS hello message extensions are used to determine which supplemental data types are supported by both the TLS client and the TLS server. Then, the supplemental data handshake message is used to exchange the data. Other documents will define the syntax of these extensions and the syntax of the associated supplemental data types. [STANDARDS-TRACK]Guidelines for Writing an IANA Considerations Section in RFCsMany protocols make use of identifiers consisting of constants and other well-known values. Even after a protocol has been defined and deployment has begun, new values may need to be assigned (e.g., for a new option type in DHCP, or a new encryption or authentication transform for IPsec). To ensure that such quantities have consistent values and interpretations across all implementations, their assignment must be administered by a central authority. For IETF protocols, that role is provided by the Internet Assigned Numbers Authority (IANA).In order for IANA to manage a given namespace prudently, it needs guidelines describing the conditions under which new values can be assigned or when modifications to existing values can be made. If IANA is expected to play a role in the management of a namespace, IANA must be given clear and concise instructions describing that role. This document discusses issues that should be considered in formulating a policy for assigning values to a namespace and provides guidelines for authors on the specific text that must be included in documents that place demands on IANA.This document obsoletes RFC 2434. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.The Transport Layer Security (TLS) Protocol Version 1.2This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol. The TLS protocol provides communications security over the Internet. The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery. [STANDARDS-TRACK]Keying Material Exporters for Transport Layer Security (TLS)A number of protocols wish to leverage Transport Layer Security (TLS) to perform key establishment but then use some of the keying material for their own purposes. This document describes a general mechanism for allowing that. [STANDARDS-TRACK]Transport Layer Security (TLS) Authorization ExtensionsThis document specifies authorization extensions to the Transport Layer Security (TLS) Handshake Protocol. Extensions are carried in the client and server hello messages to confirm that both parties support the desired authorization data types. Then, if supported by both the client and the server, authorization information, such as attribute certificates (ACs) or Security Assertion Markup Language (SAML) assertions, is exchanged in the supplemental data handshake message. This document defines an Experimental Protocol for the Internet community.Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) Heartbeat ExtensionThis document describes the Heartbeat Extension for the Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) protocols.The Heartbeat Extension provides a new protocol for TLS/DTLS allowing the usage of keep-alive functionality without performing a renegotiation and a basis for path MTU (PMTU) discovery for DTLS. [STANDARDS-TRACK]Transport Layer Security (TLS) Application-Layer Protocol Negotiation ExtensionThis document describes a Transport Layer Security (TLS) extension for application-layer protocol negotiation within the TLS handshake. For instances in which multiple application protocols are supported on the same TCP or UDP port, this extension allows the application layer to negotiate which protocol will be used within the TLS connection.The Transport Layer Security (TLS) Protocol Version 1.3This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.AES-CCM Cipher Suites for Transport Layer Security (TLS)This memo describes the use of the Advanced Encryption Standard (AES) in the Counter with Cipher Block Chaining - Message Authentication Code (CBC-MAC) Mode (CCM) of operation within Transport Layer Security (TLS) and Datagram TLS (DTLS) to provide confidentiality and data origin authentication. The AES-CCM algorithm is amenable to compact implementations, making it suitable for constrained environments. [STANDARDS-TRACK]Guidelines for Writing an IANA Considerations Section in RFCsThis document discusses issues that should be considered in formulating a policy for assigning values to a name space and provides guidelines to document authors on the specific text that must be included in documents that place demands on the IANA. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.The Transport Layer Security (TLS) Multiple Certificate Status Request ExtensionThis document defines the Transport Layer Security (TLS) Certificate Status Version 2 Extension to allow clients to specify and support several certificate status methods. (The use of the Certificate Status extension is commonly referred to as "OCSP stapling".) Also defined is a new method based on the Online Certificate Status Protocol (OCSP) that servers can use to provide status information about not only the server's own certificate but also the status of intermediate certificates in the chain.Elliptic Curve Cryptography (ECC) Cipher Suites for Transport Layer Security (TLS) Versions 1.2 and EarlierThis document describes key exchange algorithms based on Elliptic Curve Cryptography (ECC) for the Transport Layer Security (TLS) protocol. In particular, it specifies the use of Ephemeral Elliptic Curve Diffie-Hellman (ECDHE) key agreement in a TLS handshake and the use of Elliptic Curve Digital Signature Algorithm (ECDSA) and Edwards Digital Signature Algorithm (EdDSA) as authentication mechanisms. This document obsoletes and replaces RFC 4492.