RFC 8902: TLS Authentication Using Intelligent Transport System (ITS) Certificates
- M. Msahli, Ed.,
- N. Cam-Winget, Ed.,
- W. Whyte, Ed.,
- A. Serhrouchni,
- H. Labiod
Abstract
The IEEE and ETSI have specified a type of end-entity certificate. This document defines an experimental change to TLS to support IEEE/ETSI certificate types to authenticate TLS entities.¶
Status of This Memo
This document is not an Internet Standards Track specification; it is published for examination, experimental implementation, and evaluation.¶
This document defines an Experimental Protocol for the Internet community. This is a contribution to the RFC Series, independently of any other RFC stream. The RFC Editor has chosen to publish this document at its discretion and makes no statement about its value for implementation or deployment. Documents approved for publication by the RFC Editor are not candidates for any level of Internet Standard; see Section 2 of RFC 7841.¶
Information about the current status of this document, any
errata, and how to provide feedback on it may be obtained at
https://
Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://
1. Introduction
The TLS protocol [RFC8446] allows the use of X.509
certificates and raw public keys to authenticate servers and
clients. This document describes an experimental extension following the
procedures laid out by [RFC7250] to support use of the certificate
format specified by the IEEE in [IEEE1609.2] and profiled by the
European Telecommunicati
The certificate types are optimized for bandwidth and processing time to support delay-sensitive applications and also to provide both authentication and authorization information to enable fast access control decisions in ad hoc networks found in Intelligent Transport Systems (ITS). The standards specify different types of certificates to support a full Public Key Infrastructure (PKI) specification; the certificates to be used in this context are end-entity certificates, i.e., certificates that have the IEEE 1609.2 appPermissions field present.¶
Use of ITS certificates is becoming widespread in the ITS setting. ITS communications, in practice, make heavy use of 10 MHz channels with a typical throughput of 6 Mbps. (The 802.11OCB modulation that gives this throughput is not the one that gives the highest throughput, but it provides for a robust signal over a range up to 300-500 m, which is the "sweet spot" communications range for ITS operations like collision avoidance). The compact nature of ITS certificates as opposed to X.509 certificates makes them appropriate for this setting.¶
The ITS certificates are also suited to the machine
The EU has committed funding for the first five years of operation
of the top-level Trust List Manager entity, enabling organizations such
as motor vehicle original equipment manufacturers (OEMs) and national
road authorities to create root certificate authorities (CAs) and have
them trusted. In the US, the US Department of Transportation (USDOT)
published a proposed regulation, active as of late 2019 though not
rapidly progressing, requiring all light vehicles in the US to implement
vehicle
ITS certificates are also used in a number of standards that build on top of the foundational IEEE and ETSI standards, particularly the Society of Automobile Engineers (SAE) J2945/x series of standards for applications and ISO 21177 [ISO21177], which builds a framework for exchanging multiple authentication tokens on top of the TLS variant specified in this document.¶
1.1. Experiment Overview
This document describes an experimental extension to the TLS security model. It uses a form of certificate that has not previously been used in the Internet. Systems using this Experimental approach are segregated from systems using standard TLS by the use of a new certificate type value, reserved through IANA (see Section 9). An implementation of TLS that is not involved in the Experiment will not recognize this new certificate type and will not participate in the experiment; TLS sessions will either negotiate the use of existing X.509 certificates or fail to be established.¶
This extension has been encouraged by stakeholders in the Cooperative ITS community in order to support ITS use-case deployment, and it is anticipated that its use will be widespread.¶
2. Requirements Terminology
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 BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
3. Extension Overview
The TLS extensions "client
As per [RFC7250], the server processes the received
[endpoint]
4. TLS Client and Server Handshake
Figure 1 shows the handshake message flow for a full TLS 1.3 handshake negotiating both certificate types.¶
In the case of TLS 1.3, in order to negotiate the support of ITS
certificate
4.1. Client Hello
In order to indicate the support of ITS certificates, a client
MUST include an extension of type
"client
For TLS 1.3, the rules for when the Client Certificate and
Certificate
For maximum compatibility, all implementations SHOULD be prepared to handle "potentially" extraneous certificates and arbitrary orderings from any TLS version, with the exception of the end-entity certificate, which MUST be first.¶
4.2. Server Hello
When the server receives the Client Hello containing the client
The certificates in the TLS client or server certificate chain MAY be sent as part of the handshake, MAY be obtained from an online repository, or might already be known to and cached at the endpoint. If the handshake does not contain all the certificates in the chain, and the endpoint cannot access the repository and does not already know the certificates from the chain, then it SHALL reject the other endpoint's certificate and close the connection. Protocols to support retrieving certificates from a repository are specified in ETSI [TS102941].¶
5. Certificate Verification
Verification of an ITS certificate or certificate chain is described in
section 5.1 of [IEEE1609.2]. In the case of
TLS 1.3, and when the certificate
All other fields in the headerInfo are omitted. The certificate
appPermissions field SHALL be present and
SHALL permit (as defined in [IEEE1609.2])
signing of PDUs with the PSID indicated in the HeaderInfo of the
SignedData. If the application specification for that PSID requires Service
Specific Permissions (SSP) for signing a pdu
The certificate appPermissions field SHALL be present and SHALL
permit (as defined in [IEEE1609.2]) signing of PDUs with the PSID
indicated in the HeaderInfo of the SignedData. If the application
specification for that PSID requires Service Specific Permissions (SSP)
for signing a pdu
The signature and verification are carried out as specified in [IEEE1609.2].¶
The input to the hash process is identical to the message input for
TLS 1.3, as specified in Section 4.4.3 of [RFC8446], consisting of pad, context string, separator, and
content, where content is Transcript
6. Examples
Some of the message
6.1. TLS Server and TLS Client Use the ITS Certificate
This section shows an example where the TLS client as well as the TLS server use ITS certificates. In consequence, both the
server and the client populate the client
6.2. TLS Client Uses the ITS Certificate and TLS Server Uses the X.509 Certificate
This example shows the TLS authentication, where the TLS client
populates the server
7. Security Considerations
This section provides an overview of the basic security considerations that need to be taken into account before implementing the necessary security mechanisms. The security considerations described throughout [RFC8446] apply here as well.¶
7.1. Securely Obtaining Certificates from an Online Repository
In particular, the certificates used to establish a secure connection MAY be obtained from an online repository. An online repository may be used to obtain the CA certificates in the chain of either participant in the secure session. ETSI TS 102 941 [TS102941] provides a mechanism that can be used to securely obtain ITS certificates.¶
7.2. Expiry of Certificates
Conventions around certificate lifetime differ between ITS certificates and X.509 certificates, and in particular, ITS certificates may be relatively short lived compared with typical X.509 certificates. A party to a TLS session that accepts ITS certificates MUST check the expiry time in the received ITS certificate and SHOULD terminate a session when the certificate received in the handshake expires.¶
7.3. Algorithms and Cryptographic Strength
All ITS certificates use public-key cryptographic algorithms with
an estimated strength on the order of 128 bits or more, specifically,
Elliptic Curve Cryptography (ECC) based on curves with keys of length
256 bits or longer. An implementation of the techniques specified in
this document SHOULD require that if X.509 certificates
are used by one of the parties to the session, those certificates are
associated with cryptographic algorithms with
7.4. Interpreting ITS Certificate Permissions
ITS certificates in TLS express the certificate holders permissions using two fields: a PSID, also known as an ITS Application Identifier (ITS-AID), which identifies a broad set of application activities that provide a context for the certificate holder's permissions, and a Service Specific Permissions (SSP) field associated with that PSID, which identifies which specific application activities the certificate holder is entitled to carry out within the broad set of activities identified by that PSID. For example, SAE [SAEJ29453] uses PSID 0204099 to indicate activities around reporting weather and managing weather response activities, and an SSP that states whether the certificate holder is a Weather Data Management System (WDMS, i.e., a central road manager), an ordinary vehicle, or a vehicle belonging to a managed road maintenance fleet. For more information about PSIDs, see [IEEE1609.12], and for more information about the development of SSPs, see [SAEJ29455].¶
7.5. Psid and Pdufunctionaltype in CertificateVerify
The Certificate
Note that each PSID is owned by an owning organization that has sole rights to define activities associated with that PSID. If an application specifier wishes to expand activities associated with an existing PSID (for example, to include activities over a secure session such as specified in this document), that application specifier must negotiate with the PSID owner to have that functionality added to the official specification of activities associated with that PSID.¶
8. Privacy Considerations
For privacy considerations in a vehicular environment, the ITS certificate is used for many reasons:¶
9. IANA Considerations
IANA maintains the "Transport Layer Security (TLS) Extensions" registry with a subregistry called "TLS Certificate Types".¶
Value 3 was previously assigned for "1609Dot2" and included a
reference to draft
10. Normative References
- [IEEE1609.12]
- IEEE, "IEEE Standard for Wireless Access in Vehicular Environments (WAVE) - Identifier Allocations", IEEE 1609.12-2016, .
- [IEEE1609.2]
-
IEEE, "IEEE Standard for Wireless Access in Vehicular Environments -- Security Services for Applications and Management Messages", IEEE Standard 1609.2-2016, DOI 10
.1109 , , <https:///IEEESTD .2016 .7426684 doi >..org /10 .1109 /IEEESTD .2016 .7426684 - [IEEE1609.2b]
-
IEEE, "IEEE Standard for Wireless Access in Vehicular Environments
--Security Services for Applications and Management Messages - Amendment 2--PDU Functional Types and Encryption Key Management" , IEEE 1609.2b-2019, . - [ISO21177]
- ISO, "Intelligent transport systems - ITS station security services for secure session establishment and authentication between trusted devices", ISO/TS 21177:2019, .
- [ITU-TX.696]
- ITU-T, "Information technology - ASN.1 encoding rules: Specification of Octet Encoding Rules (OER)", Recommendation ITU-T X.696, .
- [RFC2119]
-
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10
.17487 , , <https:///RFC2119 www >..rfc -editor .org /info /rfc2119 - [RFC7250]
-
Wouters, P., Ed., Tschofenig, H., Ed., Gilmore, J., Weiler, S., and T. Kivinen, "Using Raw Public Keys in Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)", RFC 7250, DOI 10
.17487 , , <https:///RFC7250 www >..rfc -editor .org /info /rfc7250 - [RFC8174]
-
Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10
.17487 , , <https:///RFC8174 www >..rfc -editor .org /info /rfc8174 - [RFC8446]
-
Rescorla, E., "The Transport Layer Security (TLS) Protocol Version 1.3", RFC 8446, DOI 10
.17487 , , <https:///RFC8446 www >..rfc -editor .org /info /rfc8446 - [SAEJ29453]
- SAE, "Requirements for V2I Weather Applications", J2945/3, .
- [SAEJ29455]
- SAE, "Service Specific Permissions and Security Guidelines for Connected Vehicle Applications", J2945/5_202002, .
- [TS102941]
- ETSI, "Intelligent Transport Systems (ITS); Security; Trust and Privacy Management", ETSI TS 102 941, .
- [TS103097]
- ETSI, "Intelligent Transport Systems (ITS); Security; Security header and certificate formats", ETSI TS 103 097, 2017.
Acknowledgements
The authors wish to thank Adrian Farrel, Eric Rescola, Russ Housley, Ilari Liusvaara, and Benjamin Kaduk for their feedback and suggestions on improving this document. Thanks are due to Sean Turner for his valuable and detailed comments. Special thanks to Panos Kampanakis, Jasja Tijink, and Bill Lattin for their guidance and support of the document.¶