rfc9150xml2.original.xml | rfc9150.xml | |||
---|---|---|---|---|
<?xml version="1.0" encoding="US-ASCII"?> | <?xml version="1.0" encoding="UTF-8"?> | |||
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [ | ||||
<!ENTITY RFC2104 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | <!DOCTYPE rfc [ | |||
FC.2104.xml"> | <!ENTITY nbsp " "> | |||
<!ENTITY RFC2119 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | <!ENTITY zwsp "​"> | |||
FC.2119.xml"> | <!ENTITY nbhy "‑"> | |||
<!ENTITY RFC4492 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | <!ENTITY wj "⁠"> | |||
FC.4492.xml"> | ]> | |||
<!ENTITY RFC5246 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | ||||
FC.5246.xml"> | <rfc xmlns:xi="http://www.w3.org/2001/XInclude" docName="draft-camwinget-tls-ts1 | |||
<!ENTITY RFC6234 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | 3-macciphersuites-12" number="9150" ipr="trust200902" obsoletes="" updates="" su | |||
FC.6234.xml"> | bmissionType="independent" category="info" xml:lang="en" tocInclude="true" tocDe | |||
<!ENTITY RFC8174 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.R | pth="2" symRefs="true" sortRefs="true" version="3"> | |||
FC.8174.xml"> | ||||
<!ENTITY RFC8446 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | <!-- xml2rfc v2v3 conversion 3.8.0 --> | |||
.8446.xml"> | ||||
<!ENTITY RFC4868 SYSTEM "http://xml.resource.org/public/rfc/bibxml/reference.RFC | ||||
.4868.xml"> | ||||
]> | ||||
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?> | ||||
<!-- OPTIONS, known as processing instructions (PIs) go here. --> | ||||
<!-- For a complete list and description of PIs, | ||||
please see http://xml.resource.org/authoring/README.html. --> | ||||
<!-- Below are generally applicable PIs that most I-Ds might want to use. --> | ||||
<?rfc strict="yes" ?> | ||||
<!-- give errors regarding ID-nits and DTD validation --> | ||||
<!-- control the table of contents (ToC): --> | ||||
<?rfc toc="yes"?> | ||||
<!-- generate a ToC --> | ||||
<?rfc tocdepth="2"?> | ||||
<!-- the number of levels of subsections in ToC. default: 3 --> | ||||
<!-- control references: --> | ||||
<?rfc symrefs="yes"?> | ||||
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] --> | ||||
<?rfc sortrefs="yes" ?> | ||||
<!-- sort the reference entries alphabetically --> | ||||
<!-- control vertical white space: | ||||
(using these PIs as follows is recommended by the RFC Editor) --> | ||||
<?rfc compact="yes" ?> | ||||
<!-- do not start eacddh main section on a new page --> | ||||
<?rfc subcompact="no" ?> | ||||
<!-- keep one blank line between list items --> | ||||
<!-- end of popular PIs --> | ||||
<rfc category="info" docName="draft-camwinget-tls-ts13-macciphersuites-12" ipr=" | ||||
trust200902"> | ||||
<front> | <front> | |||
<title abbrev="MAC-only Ciphers">TLS 1.3 Authentication and Integrity only C | <title abbrev="HMAC-Only Ciphers">TLS 1.3 Authentication and Integrity-Only | |||
ipher Suites</title> | Cipher Suites</title> | |||
<seriesInfo name="RFC" value="9150"/> | ||||
<author fullname="Nancy Cam-Winget" initials="N" surname="Cam-Winget"> | <author fullname="Nancy Cam-Winget" initials="N" surname="Cam-Winget"> | |||
<organization>Cisco Systems</organization> | <organization>Cisco Systems</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>3550 Cisco Way </street> | <street>3550 Cisco Way</street> | |||
<city>San Jose</city> | <city>San Jose</city> | |||
<country>USA</country> | <country>United States of America</country> | |||
<code>95134</code> | <code>95134</code> | |||
<region>CA</region> | <region>CA</region> | |||
</postal> | </postal> | |||
<email>ncamwing@cisco.com</email> | <email>ncamwing@cisco.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<author fullname="Jack Visoky" initials="J" surname="Visoky"> | <author fullname="Jack Visoky" initials="J" surname="Visoky"> | |||
<organization>ODVA</organization> | <organization>ODVA</organization> | |||
<address> | <address> | |||
<postal> | <postal> | |||
<street>1 Allen Bradley Dr </street> | <street>1 Allen Bradley Dr</street> | |||
<city>Mayfield Heights</city> | <city>Mayfield Heights</city> | |||
<code>44124</code> | <code>44124</code> | |||
<country>USA</country> | <country>United States of America</country> | |||
<region>OH</region> | <region>OH</region> | |||
</postal> | </postal> | |||
<email>jmvisoky@ra.rockwell.com</email> | <email>jmvisoky@ra.rockwell.com</email> | |||
</address> | </address> | |||
</author> | </author> | |||
<date year="2022" month="January"/> | ||||
<date/> | ||||
<area>Security</area> | <area>Security</area> | |||
<workgroup>TLS</workgroup> | <workgroup>TLS</workgroup> | |||
<!-- <keyword/> --> | ||||
<!-- <keyword/> --> | <keyword>HMAC</keyword> | |||
<!-- <keyword/> --> | <keyword>IoT</keyword> | |||
<!-- <keyword/> --> | <keyword>constrained devices</keyword> | |||
<abstract> | <abstract> | |||
<t>This document defines the use of HMAC-only cipher suites for TLS 1.3, whi | <t>This document defines the use of cipher suites for TLS 1.3 based on Has | |||
ch provides server and optionally mutual authentication and data authenticity, b | hed Message Authentication Code (HMAC). Using these cipher suites provides serv | |||
ut not data confidentiality. Cipher suites with these properties are not of gene | er and, optionally, mutual authentication and data authenticity, but not data co | |||
ral applicability, but there are use cases, specifically in Internet of Things ( | nfidentiality. | |||
IoT) and constrained environments, that do not require confidentiality of exchan | Cipher suites with these properties are not of general applicability, but there | |||
ged messages while still requiring integrity protection, server authentication, | are use cases, specifically in Internet of Things (IoT) and constrained environ | |||
and optional client authentication. This document gives examples of such use cas | ments, that do not require confidentiality of exchanged messages while still req | |||
es, with the caveat that prior to using these integrity-only cipher suites, a th | uiring integrity protection, server authentication, and optional client authenti | |||
reat model for the situation at hand is needed, and a threat analysis must be pe | cation. This document gives examples of such use cases, with the caveat that pri | |||
rformed within that model to determine whether the use of integrity-only cipher | or to using these integrity-only cipher suites, a threat model for the situation | |||
suites is appropriate. The approach described in this document is not endorsed b | at hand is needed, and a threat analysis must be performed within that model to | |||
y the IETF and does not have IETF consensus, but is presented here to enable int | determine whether the use of integrity-only cipher suites is appropriate. The a | |||
eroperable implementation of a reduced security mechanism that provides authenti | pproach described in this document is not endorsed by the IETF and does not have | |||
cation and message integrity without supporting confidentiality.</t> | IETF consensus, but it is presented here to enable interoperable implementation | |||
of a reduced-security mechanism that provides authentication and message integr | ||||
ity without supporting confidentiality.</t> | ||||
</abstract> | </abstract> | |||
</front> | </front> | |||
<middle> | <middle> | |||
<section numbered="true" toc="default"> | ||||
<section title="Introduction"> | <name>Introduction</name> | |||
<t>There are several use cases in which communications privacy is not st | <t>There are several use cases in which communications privacy is not stri | |||
rictly needed, although authenticity of the communications transport is still ve | ctly needed, although authenticity of the communications transport is still very | |||
ry important. For example, within the Industrial Automation space there could be | important. For example, within the industrial automation space, there could be | |||
TCP or UDP communications which command a robotic arm to move a certain distanc | TCP or UDP communications that command a robotic arm to move a certain distance | |||
e at a certain speed. Without authenticity guarantees, an attacker could modify | at a certain speed. Without authenticity guarantees, an attacker could modify th | |||
the packets to change the movement of the robotic arm, potentially causing physi | e packets to change the movement of the robotic arm, potentially causing physica | |||
cal damage. However, the motion control commands are not always considered to be | l damage. However, the motion control commands are not always considered to be s | |||
sensitive information and thus there is no requirement to provide confidentiali | ensitive information, and thus there is no requirement to provide confidentialit | |||
ty. Another Internet of Things (IoT) example with no strong requirement for conf | y. Another Internet of Things (IoT) example with no strong requirement for confi | |||
identiality is the reporting of weather information; however, message authentici | dentiality is the reporting of weather information; however, message authenticit | |||
ty is required to ensure integrity of the message.</t> | y is required to ensure integrity of the message.</t> | |||
<t>There is no requirement to encrypt messages in environments where the | <t>There is no requirement to encrypt messages in environments where the i | |||
information is not confidential; such as when there is no intellectual property | nformation is not confidential, such as when there is no intellectual property a | |||
associated with the processes, or where the threat model does not indicate any | ssociated with the processes, or where the threat model does not indicate any ou | |||
outsider attacks (such as in a closed system). Note however, this situation will | tsider attacks (such as in a closed system). Note, however, that this situation | |||
not apply equally to all use cases (for example, a robotic arm might be used in | will not apply equally to all use cases (for example, in one case a robotic arm | |||
one case for a process that does not involve any intellectual property, but in | might be used for a process that does not involve any intellectual property but | |||
another case used in a different process that does contain intellectual property | in another case might be used in a different process that does contain intellect | |||
). Therefore, it is important that a user or system developer carefully examine | ual property). Therefore, it is important that a user or system developer carefu | |||
both the sensitivity of the data and the system threat model to determine the ne | lly examine both the sensitivity of the data and the system threat model to dete | |||
ed for encryption before deploying equipment and security protections.</t> | rmine the need for encryption before deploying equipment and security protection | |||
<t>Besides having a strong need for authenticity and no need for conf | s.</t> | |||
identiality, many of these systems also have a strong requirement for low latenc | <t>Besides having a strong need for authenticity and no need for confident | |||
y. Furthermore, several classes of IoT device (industrial or otherwise) have lim | iality, many of these systems also have a strong requirement for low latency. Fu | |||
ited processing capability. However, these IoT systems still gain great benefit | rthermore, several classes of IoT devices (industrial or otherwise) have limited | |||
from leveraging TLS 1.3 for secure communications. Given the reduced need for co | processing capability. However, these IoT systems still gain great benefit from | |||
nfidentiality, TLS 1.3 <xref target="RFC8446"/> cipher suites that maintain data | leveraging TLS 1.3 for secure communications. Given the reduced need for confid | |||
integrity without confidentiality are described in this document. These cipher | entiality, TLS 1.3 cipher suites <xref target="RFC8446" format="default"/> that | |||
suites are not meant for general use as they do not meet the confidentiality and | maintain data integrity without confidentiality are described in this document. | |||
privacy goals of TLS. They should only be used in cases where confidentiality a | These cipher suites are not meant for general use, as they do not meet the confi | |||
nd privacy is not a concern and there are constraints on using cipher suites tha | dentiality and privacy goals of TLS. They should only be used in cases where con | |||
t provide the full set of security properties. The approach described in this do | fidentiality and privacy are not a concern and there are constraints on using ci | |||
cument is not endorsed by the IETF and does not have IETF consensus, but is pres | pher suites that provide the full set of security properties. The approach descr | |||
ented here to enable interoperable implementation of a reduced security mechanis | ibed in this document is not endorsed by the IETF and does not have IETF consens | |||
m that provides authentication and message integrity with supporting confidentia | us, but it is presented here to enable interoperable implementation of a reduced | |||
lity. </t> | -security mechanism that provides authentication and message integrity with supp | |||
orting confidentiality. </t> | ||||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section title="Terminology"> | <name>Terminology</name> | |||
<t>This document adopts the conventions for normative language to pr | <t>This document adopts the conventions for normative language to provide | |||
ovide clarity of instructions to the implementer. The key words "MUST", "MUST NO | clarity of instructions to the implementer. | |||
T", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MA | The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", | |||
Y", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 | "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", | |||
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they app | "<bcp14>SHALL NOT</bcp14>", "<bcp14>SHOULD</bcp14>", | |||
ear in all capitals, as shown here. </t> | "<bcp14>SHOULD NOT</bcp14>", | |||
"<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>", | ||||
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document | ||||
are to be interpreted as described in BCP 14 | ||||
<xref target="RFC2119"/> <xref target="RFC8174"/> when, and only | ||||
when, they appear in all capitals, as shown here.</t> | ||||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<name>Applicability Statement</name> | ||||
<t>The two cipher suites defined in this document, which are based on Hash | ||||
ed Message Authentication Code (HMAC) SHAs <xref target="RFC6234" format="defaul | ||||
t"/>, are intended for a small limited set of applications where confidentiality | ||||
requirements are relaxed and the need to minimize the number of cryptographic a | ||||
lgorithms is prioritized. This section describes some of those applicable use ca | ||||
ses. </t> | ||||
<t>Use cases in the industrial automation industry, while requiring data i | ||||
ntegrity, often do not require confidential communications. Mainly, data communi | ||||
cated to unmanned machines to execute repetitive | ||||
tasks does not convey private information. For example, there could | ||||
be a system with a robotic arm that paints the body of a car. This equipment is | ||||
used within a car manufacturing plant and is just | ||||
one piece of equipment in a multi-step manufacturing pro | ||||
cess. The movements of this robotic arm are likely not a trade secret or sensiti | ||||
ve intellectual property, although some portions of the manufacturing of the car | ||||
might very well contain sensitive intellectual property. | ||||
Even the mixture for the paint itself might be confidential, but the mixing is | ||||
done by a completely different piece of equipment and therefore communication to | ||||
/from that equipment can be encrypted without requiring the communication to/fro | ||||
m the robotic arm to be encrypted. | ||||
Modern manufacturing often has segmented equipment with | ||||
different levels of risk related to intellectual property, although nearly every | ||||
communication interaction has strong data authenticity requirements. </t> | ||||
<t>Another use case that is closely related is that of fine-grained time u | ||||
pdates. Motion systems often rely on time synchronization to ensure proper execu | ||||
tion. Time updates are essentially public; there is no threat from an attacker k | ||||
nowing the time update information. This should make intuitive sense to those no | ||||
t familiar with these applications; rarely if ever does time information present | ||||
a serious attack surface dealing with privacy. However, the authenticity is sti | ||||
ll quite important. The consequences of maliciously modified time data can vary | ||||
from mere denial of service to actual physical damage, depending on the particul | ||||
ar situation and attacker capability. As these time synchronization updates are | ||||
very fine-grained, it is again important for latency to be very low.</t> | ||||
<t>A third use case deals with data related to alarms. Industrial control | ||||
sensing equipment can be configured to send alarm information when it meets cert | ||||
ain conditions -- for example, temperature goes above or below a given threshold | ||||
. Oftentimes, this data is used to detect certain out-of-tolerance conditions, a | ||||
llowing an operator or automated system to take corrective action. Once again, i | ||||
n many systems the reading of this data doesn't grant the attacker information t | ||||
hat can be exploited; it is generally just information regarding the physical st | ||||
ate of the system. At the same time, being able to modify this data would allow | ||||
an attacker to either trigger alarms falsely or cover up evidence of an attack t | ||||
hat might allow for detection of their malicious activity. Furthermore, sensors | ||||
are often low-powered devices that might struggle to process encrypted and authe | ||||
nticated data. These sensors might be very cost sensitive such that there is not | ||||
enough processing power for data encryption. Sending data that is just authenti | ||||
cated but not encrypted eases the burden placed on these devices yet still allow | ||||
s the data to be protected against any tampering threats. A user can always choo | ||||
se to pay more for a sensor with encryption capability, but for some, data authe | ||||
nticity will be sufficient. </t> | ||||
<t>A fourth use case considers the protection of commands in the railway i | ||||
ndustry. In railway control systems, no confidentiality requirements are applied | ||||
for the command exchange between an interlocking controller and a railway equip | ||||
ment controller (for instance, a railway point controller of a tram track where | ||||
the position of the controlled point is publicly available). | ||||
However, protecting the integrity and authenticity of those commands | ||||
is vital; otherwise, an adversary could change the target position of the point | ||||
by modifying the commands, which consequently could lead to the derailment of a | ||||
passing train. | ||||
Furthermore, requirements for providing flight-data recording of the | ||||
safety-related network traffic can only be fulfilled through using authenticity- | ||||
only ciphers as, typically, the recording is used by a third party responsible f | ||||
or the analysis after an accident. The analysis requires such third party to ext | ||||
ract the safety-related commands from the recording. | ||||
</t> | ||||
<t>The fifth use case deals with data related to civil aviation airplanes | ||||
and ground communication. Pilots can send and receive messages to/from ground co | ||||
ntrol, such as airplane route-of-flight updates, weather information, controller | ||||
and pilot communication, and airline back-office communication. Similarly, the | ||||
Air Traffic Control (ATC) service uses air-to-ground communication to receive th | ||||
e surveillance data that relies on (is dependent on) downlink reports from an ai | ||||
rplane's avionics. This communication occurs automatically in accordance with co | ||||
ntracts established between the ATC ground system and the airplane's avionics. R | ||||
eports can be sent whenever specific events occur or specific time intervals are | ||||
reached. In many systems, the reading of this data doesn't grant the attacker i | ||||
nformation that can be exploited; it is generally just information regarding the | ||||
states of the airplane, controller pilot communication, meteorological informat | ||||
ion, etc. At the same time, being able to modify this data would allow an attack | ||||
er to either put aircraft in the wrong flight trajectory or provide false inform | ||||
ation to ground control that might delay flights, damage property, or harm life. | ||||
Sending data that is not encrypted but is authenticated allows the data to be p | ||||
rotected against any tampering threats. Data authenticity is sufficient for the | ||||
air traffic, weather, and surveillance information exchanges between airplanes a | ||||
nd the ground systems. </t> | ||||
<t> The above use cases describe the requirements where confidentiality is | ||||
not needed and/or interferes with other requirements. Some of these use cases a | ||||
re based on devices that come with a small runtime memory footprint and reduced | ||||
processing power; therefore, the need to minimize the number of cryptographic al | ||||
gorithms used is a priority. Despite this, it is noted that memory, performance, | ||||
and processing power implications of any given algorithm or set of algorithms a | ||||
re highly dependent on hardware and software architecture. Therefore, although t | ||||
hese cipher suites may provide performance benefits, they will not necessarily p | ||||
rovide these benefits in all cases on all platforms. Furthermore, in some use ca | ||||
ses, third-party inspection of data is specifically needed, which is also suppor | ||||
ted through the lack of confidentiality mechanisms. </t> | ||||
</section> | ||||
<section numbered="true" toc="default"> | ||||
<name>Cryptographic Negotiation Using Integrity-Only Cipher Suites</name> | ||||
<t>The cryptographic negotiation as specified in <xref target="RFC8446" se | ||||
ctionFormat="comma" section="4.1.1"/> remains the same, with the inclusion of th | ||||
e following cipher suites: </t> | ||||
<section title="Applicability Statement"> | <ul empty="true" indent="3"> | |||
<t>The two HMAC SHA <xref target="RFC6234"/> based cipher suites defined | <li>TLS_SHA256_SHA256 {0xC0,0xB4}</li> | |||
in this document are intended for a small limited set of applications where con | <li>TLS_SHA384_SHA384 {0xC0,0xB5}</li> | |||
fidentiality requirements are relaxed and the need to minimize the number of cry | </ul> | |||
ptographic algorithms is prioritized. This section describes some of those appli | <t> | |||
cable use cases. </t> | As defined in <xref target="RFC8446" format="default"/>, TLS 1.3 cip | |||
her suites denote the Authenticated Encryption with Associated Data (AEAD) algor | ||||
<t>Use cases in the industrial automation industry, while requiring data | ithm for record protection and the hash algorithm to use with the HMAC-based Key | |||
integrity, often do not require confidential communications. Mainly, informatio | Derivation Function (HKDF). The cipher suites provided by this document are def | |||
n communicated to unmanned machines to execute repetitive | ined in a similar way, but they use the HMAC authentication tag to model the AEA | |||
tasks does not convey private information. For example, there could | D interface, as only an HMAC is provided for record protection (without encrypti | |||
be a system with a robotic arm that paints the body of a car. This equipment is | on). These cipher suites allow the use of SHA-256 or SHA-384 as the HMAC for dat | |||
used within a car manufacturing plant, and is just | a integrity protection as well as its use for the HKDF. The authentication mecha | |||
one piece of equipment in a multi-step manufacturing proc | nisms remain unchanged with the intent to only update the cipher suites to relax | |||
ess. The movements of this robotic arm are likely not a trade secret or sensitiv | the need for confidentiality.</t> | |||
e intellectual property, although some portions of the manufacturing of the car | <t> Given that these cipher suites do not support confidentiality, they <b | |||
might very well contain sensitive intellectual property. | cp14>MUST NOT</bcp14> be used with authentication and key exchange methods that | |||
Even the mixture for the paint itself might be confidential, but the mixing is d | rely on confidentiality. </t> | |||
one by a completely different piece of equipment and therefore communication to/ | </section> | |||
from that equipment can be encrypted without requiring the communication to/from | <section numbered="true" toc="default"> | |||
the robotic arm to be encrypted. | <name>Record Payload Protection for Integrity-Only Cipher Suites</name> | |||
Modern manufacturing often has segmented equipment with d | <t>Record payload protection as defined in <xref target="RFC8446" format=" | |||
ifferent levels of risk on intellectual property, although nearly every communic | default"/> is retained in modified form when integrity-only cipher suites are us | |||
ation interaction has strong data authenticity requirements. </t> | ed. Note that due to the purposeful use of hash algorithms, instead of AEAD algo | |||
rithms, confidentiality protection of the record payload is not provided. | ||||
<t>Another use case which is closely related is that of fine-grained tim | This section describes the mapping of record payload structures when | |||
e updates. Motion systems often rely on time synchronization to ensure proper ex | integrity-only cipher suites are employed. </t> | |||
ecution. Time updates are essentially public; there is no threat from an attacke | <t> Given that there is no encryption to be done at the record layer, the | |||
r knowing the time update information. This should make intuitive sense to those | operations "Protect" and "Unprotect" take the place of "AEAD-Encrypt" and "AEAD- | |||
not familiar with these applications; rarely if ever does time information pres | Decrypt" <xref target="RFC8446" format="default"/>, respectively.</t> | |||
ent a serious attack surface dealing with privacy. However, the authenticity is | <t> As integrity protection is provided over the full record, the encrypte | |||
still quite important. The consequences of maliciously modified time data can va | d_record in the TLSCiphertext along with the additional_data input to protected_ | |||
ry from mere denial of service to actual physical damage, depending on the parti | data (termed AEADEncrypted data in <xref target="RFC8446" format="default"/>) as | |||
cular situation and attacker capability. As these time synchronization updates a | defined in <xref target="RFC8446" sectionFormat="of" section="5.2"/> remain the | |||
re very fine-grained, it is again important for latency to be very low.</t> | same. | |||
<t>A third use case deals with data related to alarms. Industrial contro | ||||
l sensing equipment can be configured to send alarm information when it meets ce | ||||
rtain conditions, for example, temperature goes above or below a given threshold | ||||
. Often times this data is used to detect certain out-of-tolerance conditions, a | ||||
llowing an operator or automated system to take corrective action. Once again, i | ||||
n many systems the reading of this data doesn't grant the attacker information t | ||||
hat can be exploited, it is generally just information regarding the physical st | ||||
ate of the system. At the same time, being able to modify this data would allow | ||||
an attacker to either trigger alarms falsely or to cover up evidence of an attac | ||||
k that might allow for detection of their malicious activity. Furthermore, senso | ||||
rs are often low powered devices that might struggle to process encrypted and au | ||||
thenticated data. These sensors might be very cost sensitive such that there is | ||||
not enough processing power for data encryption. Sending data that is just authe | ||||
nticated but not encrypted eases the burden placed on these devices, yet still a | ||||
llows the data to be protected against any tampering threats. A user can always | ||||
choose to pay more for a sensor with encryption capability, but for some, data a | ||||
uthenticity will be sufficient. </t> | ||||
<t>A fourth use case considers the protection of commands in the railway | ||||
industry. In railway control systems, no confidentiality requirements are appli | ||||
ed for the command exchange between an interlocking controller and a railway equ | ||||
ipment controller (for instance, a railway point controller of a tram track wher | ||||
e the position of the controlled point is publicly available). | ||||
However, protecting integrity and authenticity of those commands is | ||||
vital, otherwise, an adversary could change the target position of the point by | ||||
modifying the commands, which consequently could lead to the derailment of a pas | ||||
sing train. | ||||
Furthermore, requirements for providing blackbox recording of the sa | ||||
fety related network traffic can only be fulfilled through using authenticity-on | ||||
ly ciphers, to be able to provide the safety related commands to a third party, | ||||
which is responsible for the analysis after an accident.</t> | ||||
<t>The fifth use case deals with data related to civil aviation airplane | ||||
s and ground communication. Pilots can send and receive messages to/from ground | ||||
control such as airplane route-of-flight update, weather information, controller | ||||
and pilot communication, and airline back office communication. Similarly, the | ||||
Aviation Traffic Control (ATC) use air to ground communication to receive the su | ||||
rveillance data that relies on (is dependent on) downlink reports from an airpla | ||||
ne's avionics. This communication occurs automatically in accordance with contra | ||||
cts established between the ATC ground system and the airplane's avionics. Repor | ||||
ts can be sent whenever specific events occur, or specific time intervals are re | ||||
ached. In many systems the reading of this data doesn't grant the attacker infor | ||||
mation that can be exploited, it is generally just information regarding the air | ||||
plane states, controller pilot communication, meteorological information etc. At | ||||
the same time, being able to modify this data would allow an attacker to either | ||||
put aircraft in the wrong flight trajectory or to provide false information to | ||||
ground control that might delay flights and damage properties or harm life. Send | ||||
ing data that is not encrypted but is authenticated, allows the data to be prote | ||||
cted against any tampering threats. Data authenticity is sufficient for the air | ||||
traffic, weather and surveillance information exchange between airplanes and the | ||||
ground systems. </t> | ||||
<t> The above use cases describe the requirements where confidentiality | ||||
is not needed and/or interferes with other requirements. Some of these use cases | ||||
are based on devices that come with a small runtime memory footprint and reduce | ||||
d processing power therefore the need to minimize the number of cryptographic al | ||||
gorithms used is a priority. Despite this, it is noted that memory, performance, | ||||
and processing power implications of any given algorithm or set of algorithms i | ||||
s highly dependent on hardware and software architecture. Therefore, although th | ||||
ese cipher suites may provide performance benefits, they will not necessarily pr | ||||
ovide these benefits in all cases on all platforms. Furthermore, in some use cas | ||||
es third party inspection of data is specifically needed, which is also supporte | ||||
d through the lack of confidentiality mechanisms. </t> | ||||
</section> | ||||
<section title="Cryptographic Negotiation Using Integrity only Cipher Suites | ||||
"> | ||||
<t>The cryptographic negotiation as specified in <xref target="RFC8446"/> | ||||
Section 4.1.1 remains the same, with the inclusion of the following cipher suit | ||||
es: </t> | ||||
<!-- | ||||
<t>This document defines the following cipher suites for use in TLS 1.3: | ||||
</t> | ||||
--> | ||||
<t> <list style='hanging'> | ||||
<t hangText='TLS_SHA256_SHA256'> {0xC0, 0xB4}</t> | ||||
<t hangText='TLS_SHA384_SHA384'> {0xC0, 0xB5}</t> | ||||
</list> </t> | ||||
<t> | ||||
As defined in <xref target="RFC8446"/>, TLS 1.3 cipher suites denote | ||||
the AEAD algorithm for record protection and the hash algorithm to use with the | ||||
HKDF. These cipher suites are defined in a similar way, but using the HMAC auth | ||||
entication tag to model the AEAD interface, as only an HMAC is provided for reco | ||||
rd protection (without encryption). These cipher suites allow the use of SHA-256 | ||||
or SHA-384 as the Hashed Message Authentication Code (HMAC) for data integrity | ||||
protection as well as its use for HMAC-based Key Derivation Function (HKDF). The | ||||
authentication mechanisms remain unchanged with the intent to only update the c | ||||
ipher suites to relax the need for confidentiality.</t> | ||||
<t> Given that these cipher suites do not support confidentiality, they M | ||||
UST NOT be used with authentication and key exchange methods that rely on confid | ||||
entiality. </t> | ||||
</section> | ||||
<section title="Record Payload Protection for Integrity only Cipher Suites"> | ||||
<t> The record payload protection as defined in <xref target="RFC8446"/> | ||||
is retained in modified form when integrity only cipher suites are used. Note t | ||||
hat due to the purposeful use of hash algorithms, instead of AEAD algorithms, th | ||||
e confidentiality protection of the record payload is not provided. | ||||
This section describes the mapping of record payload structures when | ||||
integrity only cipher suites are employed. </t> | ||||
<t> Given that there is no encryption to be done at the record la | ||||
yer, the operations "Protect" and "Unprotect" take the place of "AEAD-Encrypt" a | ||||
nd "AEAD-Decrypt", respectively, as referenced in <xref target="RFC8446"/> </t> | ||||
<t> As integrity protection is provided over the full record, the encryp | ||||
ted_record in the TLSCiphertext along with the additional_data input to protecte | ||||
d_data (termed AEADEncrypted data in <xref target="RFC8446"/>) as defined in Sec | ||||
tion 5.2 of <xref target="RFC8446"/> remain the same. | ||||
The TLSCiphertext.length for the integrity cipher suites will be: </ t> | The TLSCiphertext.length for the integrity cipher suites will be: </ t> | |||
<t> <list style='hanging'> | <artwork name="" type="ascii-art" align="left" alt=""><![CDATA[ | |||
<t hangText='TLS_SHA256_SHA256:'> TLSCiphertext.length = TLSPlaint | TLS_SHA256_SHA256: | |||
ext.length + 1 (type field) + length_of_padding + 32 (HMAC) = TLSInnerPlaintext_ | TLSCiphertext.length = TLSInnerPlaintext_length + 32 | |||
length + 32 (HMAC) </t> | ||||
<t hangText='TLS_SHA384_SHA384:'> TLSCiphertext.length = TLSPlaint | ||||
ext.length + 1 (type field) + length_of_padding + 48 (HMAC) = TLSInnerPlaintext_ | ||||
length + 48 (HMAC) </t> | ||||
</list> </t> | ||||
<t> Note that TLSInnerPlaintext_length is not defined as an expli | ||||
cit field in <xref target="RFC8446"/>; this refers to the length of the encoded | ||||
TLSInnterPlaintext structure </t> | ||||
<t> The resulting protected_record is the concatenation of the TLSInnerP | ||||
laintext with the resulting HMAC. Note this analogous to the "encrypted_record" | ||||
of <xref target="RFC8446"/>, although it is referred to as a "protected_record" | ||||
because of the lack of confidentiality via encryption. With this mapping, the re | ||||
cord validation order as defined in Section 5.2 of <xref target="RFC8446"/> rema | ||||
ins the same. That is, encrypted_record field of TLSCiphertext is set to: </t> | ||||
<t> encrypted_record = TLS13-HMAC-Protected = TLSInnerPlaintext || HMAC( | ||||
write_key, nonce || additional_data || TLSInnerPlaintext) </t> | ||||
<t> Here "nonce" refers to the per-record nonce described in sect | ||||
ion 5.3 of <xref target="RFC8446"/>.</t> | ||||
<t> For DTLS 1.3, the DTLSCiphertext is set to:</t> | ||||
<t> encrypted_record = DTLS13-HMAC-Protected = DTLSInnerPlaintext || | ||||
HMAC(write_key, nonce || additional_data || DTLSInnerPlaintext) </t> | ||||
<t> The DTLS "nonce" refers to the per-record nonce described in sec | ||||
tion 4.2.2 of <xref target="DTLS13"/>.</t> | ||||
<t> The Protect and Unprotect operations provide the integrity protectio | ||||
n using HMAC SHA-256 or HMAC SHA-384 as described in <xref target="RFC6234"/>.</ | ||||
t> | ||||
<t> Due to the lack of encryption of the plaintext, record padding does | ||||
not provide any obfuscation as to the plaintext size, although it can be optiona | ||||
lly included.</t> | ||||
</section> | ||||
<section title="Key Schedule when using Integrity only Cipher Suites"> | ||||
<t> The key derivation process for Integrity only Cipher Suites remains | ||||
the same as defined in <xref target="RFC8446"/>. The only difference is that the | ||||
keys used to protect the tunnel apply to the negotiated HMAC SHA-256 or HMAC SH | ||||
A-384 ciphers. Note that the traffic key material (client_write_key, client_writ | ||||
e_iv, server_write_key and server_write_iv) MUST be calculated as per RFC 8446, | ||||
section 7.3. The key lengths and IVs for these cipher suites are according to th | ||||
e hash output lengths. In other words, the following key lengths and IV lengths | ||||
SHALL be: </t> | ||||
<texttable> | ||||
<ttcol align='left'>Cipher Suite</ttcol> | ||||
<ttcol align='left'>Key Length</ttcol> | ||||
<ttcol align='left'>IV Length</ttcol> | ||||
<c>TLS_SHA256_SHA256</c> | ||||
<c>32 Bytes</c> | ||||
<c>32 Bytes</c> | ||||
<c>TLS_SHA384_SHA384</c> | ||||
<c>48 Bytes</c> | ||||
<c>48 Bytes</c> | ||||
</texttable> | ||||
</section> | ||||
<section title="Error Alerts"> | TLS_SHA384_SHA384: | |||
<t>The error alerts as defined by <xref target="RFC8446"/> remains the s | TLSCiphertext.length = TLSInnerPlaintext_length + 48 | |||
ame, in particular: </t> | ]]></artwork> | |||
<t> bad_record_mac: This alert can also occur for a record whose mess | <t> Note that TLSInnerPlaintext_length is not defined as an explicit field | |||
age authentication code can not be validated. Since these cipher suites do not i | in <xref target="RFC8446" format="default"/>; this refers to the length of the | |||
nvolve record encryption this alert will only occur when the HMAC fails to verif | encoded TLSInnerPlaintext structure.</t> | |||
y. </t> | <t> The resulting protected_record is the concatenation of the TLSInnerPla | |||
<t> decrypt_error: This alert as described in <xref target="RFC8446"/> Se | intext with the resulting HMAC. Note that this is analogous to the "encrypted_re | |||
ction 6.2 occurs when the signature or message authentication code can not be va | cord" as defined in <xref target="RFC8446" format="default"/>, although it is re | |||
lidated. Note that this error is only sent during the handshake, not for an erro | ferred to as a "protected_record" because of the lack of confidentiality via enc | |||
r in validating record HMACs. </t> | ryption. With this mapping, the record validation order as defined in <xref targ | |||
et="RFC8446" sectionFormat="of" section="5.2"/> remains the same. That is, the e | ||||
ncrypted_record field of TLSCiphertext is set to: </t> | ||||
<artwork name="" type="ascii-art" align="left" alt=""><![CDATA[ | ||||
encrypted_record = TLS13-HMAC-Protected = TLSInnerPlaintext || | ||||
HMAC(write_key, nonce || additional_data || TLSInnerPlaintext) | ||||
]]></artwork> | ||||
<t>Here, "nonce" refers to the per-record nonce described in <xref target= | ||||
"RFC8446" sectionFormat="of" section="5.3"/>.</t> | ||||
<t> For DTLS 1.3, the DTLSCiphertext is set to:</t> | ||||
<artwork name="" type="ascii-art" align="left" alt=""><![CDATA[ | ||||
encrypted_record = DTLS13-HMAC-Protected = DTLSInnerPlaintext || | ||||
HMAC(write_key, nonce || additional_data || DTLSInnerPlaintext) | ||||
]]></artwork> | ||||
<t> The DTLS "nonce" refers to the per-record nonce described in <xref tar | ||||
get="RFC9147" sectionFormat="of" section="4.2.2"/>.</t> | ||||
<t> The Protect and Unprotect operations provide the integrity protection | ||||
using HMAC SHA-256 or HMAC SHA-384 as described in <xref target="RFC6234" format | ||||
="default"/>.</t> | ||||
<t> Due to the lack of encryption of the plaintext, record padding does no | ||||
t provide any obfuscation as to the plaintext size, although it can be optionall | ||||
y included.</t> | ||||
</section> | </section> | |||
<section numbered="true" toc="default"> | ||||
<section anchor="IANA" title="IANA Considerations"> | <name>Key Schedule when Using Integrity-Only Cipher Suites</name> | |||
<t> IANA has granted registration the following specifically for this d | <t> The key derivation process for integrity-only cipher suites remains th | |||
ocument within the TLS Cipher Suites Registry:</t> | e same as that defined in <xref target="RFC8446" format="default"/>. The only di | |||
<t> TLS_SHA256_SHA256 {0xC0, 0xB4} cipher suite and TLS_SHA384_SHA384 {0 | fference is that the keys used to protect the tunnel apply to the negotiated HMA | |||
xC0, 0xB5} cipher suite. </t> | C SHA-256 or HMAC SHA-384 ciphers. Note that the traffic key material (client_wr | |||
<t> Note that both of these cipher suites are registered with the DTLS-O | ite_key, client_write_iv, server_write_key, and server_write_iv) <bcp14>MUST</bc | |||
K column set to Y and the Recommended column set to N </t> | p14> be calculated as per <xref target="RFC8446" sectionFormat="comma" section=" | |||
<t>No further IANA action is requested by this document. </t> | 7.3"/>. The key lengths and Initialization Vectors (IVs) for these cipher suites | |||
are according to the hash output lengths. In other words, the following key len | ||||
gths and IV lengths <bcp14>SHALL</bcp14> be: </t> | ||||
<table align="center"> | ||||
<thead> | ||||
<tr> | ||||
<th align="left">Cipher Suite</th> | ||||
<th align="left">Key Length</th> | ||||
<th align="left">IV Length</th> | ||||
</tr> | ||||
</thead> | ||||
<tbody> | ||||
<tr> | ||||
<td align="left">TLS_SHA256_SHA256</td> | ||||
<td align="left">32 Bytes</td> | ||||
<td align="left">32 Bytes</td> | ||||
</tr> | ||||
<tr> | ||||
<td align="left">TLS_SHA384_SHA384</td> | ||||
<td align="left">48 Bytes</td> | ||||
<td align="left">48 Bytes</td> | ||||
</tr> | ||||
</tbody> | ||||
</table> | ||||
</section> | ||||
<section numbered="true" toc="default"> | ||||
<name>Error Alerts</name> | ||||
<t>The error alerts as defined by <xref target="RFC8446" format="default"/ | ||||
> remain the same; in particular: </t> | ||||
<dl newline="false" spacing="normal"> | ||||
<dt>bad_record_mac:</dt><dd>This alert can also occur for a record whose m | ||||
essage authentication code cannot be validated. Since these cipher suites do not | ||||
involve record encryption, this alert will only occur when the HMAC fails to ve | ||||
rify.</dd> | ||||
<dt>decrypt_error:</dt><dd>This alert, as described in <xref target="RFC84 | ||||
46" sectionFormat="comma" section="6.2"/>, occurs when the signature or message | ||||
authentication code cannot be validated. Note that this error is only sent durin | ||||
g the handshake, not for an error in validating record HMACs.</dd> | ||||
</dl> | ||||
</section> | </section> | |||
<section anchor="IANA" numbered="true" toc="default"> | ||||
<name>IANA Considerations</name> | ||||
<t>IANA has registered the following cipher suites, defined by this docume | ||||
nt, in the "TLS Cipher Suites" registry:</t> | ||||
<section anchor="Security" title="Security and Privacy Considerations"> | <table anchor="iana_table"> | |||
<t>In general, except for confidentiality and privacy, the security cons | <thead> | |||
iderations detailed in <xref target="RFC8446"/> and in <xref target="RFC5246"/> | <tr> | |||
apply to this document. Furthermore, as the cipher suites described in this docu | <th>Value</th> | |||
ment do not provide any confidentiality, it is important that they only be used | <th>Description</th> | |||
in cases where there are no confidentiality or privacy requirements and concerns | <th>DTLS-OK</th> | |||
; and the runtime memory requirements can accommodate support for authenticity-o | <th>Recommended</th> | |||
nly cryptographic constructs.</t> | </tr> | |||
<t>With the lack of data encryption specified in this specification, no | </thead> | |||
confidentiality or privacy is provided for the data transported via the TLS sess | <tbody> | |||
ion. That is, the record layer is not encrypted when using these cipher suite, a | <tr> | |||
nd the handshake also is not encrypted. To highlight the loss of privacy, the in | <td>0xC0,0xB4</td> | |||
formation carried in the TLS handshake, which includes both the Server and Clien | <td>TLS_SHA256_SHA256</td> | |||
t certificates, while integrity protected, will be sent unencrypted. Similarly, | <td>Y</td> | |||
other TLS extensions that may be carried in the Server's EncryptedExtensions mes | <td>N</td> | |||
sage will only be integrity protected without provisions for confidentiality. Fu | </tr> | |||
rthermore, with this lack of confidentiality, any private PSK data MUST NOT be s | <tr> | |||
ent in the handshake while using these cipher suites. However, as PSKs may be lo | <td>0xC0,0xB5</td> | |||
aded externally, these cipher suites can be used with the 0-RTT handshake define | <td>TLS_SHA384_SHA384</td> | |||
d in <xref target="RFC8446"/>, with the same security implications discussed the | <td>Y</td> | |||
re applied. </t> | <td>N</td> | |||
<t>Application protocols which build on TLS or DTLS for protection (e.g. | </tr> | |||
HTTP) may have implicit assumptions of data confidentiality. Any assumption of | </tbody> | |||
data confidentiality is invalidated by the use of these cipher suites, as no dat | </table> | |||
a confidentiality is provided. This applies to any data sent over the applicatio | ||||
n-data channel (e.g. bearer tokens in HTTP), as data requiring confidentiality M | ||||
UST NOT be sent using these cipher suites.</t> | ||||
<t> Limits on key usage for AEAD-based ciphers are described in | ||||
<xref target="RFC8446"/>. However, as the cipher suites discussed here are not A | ||||
EAD, those same limits do not apply. The general security properties of HMACs di | ||||
scussed in <xref target="RFC2104"/> and <xref target="BCK1"/> apply. Additional | ||||
ly, security considerations on the algorithm's strength based on the HMAC key le | ||||
ngth and trunction length further described in <xref target="RFC4868"/> also app | ||||
ly. Until further cryptanalysis demonstrate limitations on key usage for HMACs, | ||||
general practice for key usage recommends that implementations place limits on t | ||||
he lifetime of the HMAC keys and invoke a key update as described in <xref targe | ||||
t="RFC8446"/> prior to reaching this limit. </t> | ||||
<t>DTLS 1.3 defines a mechanism for encrypting the DTLS record se | ||||
quence numbers. However, as these cipher suites do not utilize encryption, the r | ||||
ecord sequence numbers are sent unencrypted. That is, the procedure for DTLS rec | ||||
ord sequence number protection is to apply no protection for these cipher suites | ||||
. </t> | ||||
<t>Given the lack of confidentiality, these cipher suites MUST NO | ||||
T be enabled by default. As these cipher suites are meant to serve the IoT marke | ||||
t, it is important that any IoT endpoint that uses them be explicitly configured | ||||
with a policy of non-confidential communications. </t> | ||||
</section> | </section> | |||
<section anchor="Security" numbered="true" toc="default"> | ||||
<section anchor="Acknowledgements" title="Acknowledgements"> | <name>Security and Privacy Considerations</name> | |||
<t>The authors would like to acknowledge the work done by Industrial Commu | <t>In general, except for confidentiality and privacy, the security consid | |||
nications Standards Groups (such as ODVA) as the motivation for this document. W | erations detailed in <xref target="RFC8446" format="default"/> and <xref target= | |||
e would also like to thank Steffen Fries for providing a fourth use case and Mad | "RFC5246" format="default"/> apply to this document. Furthermore, as the cipher | |||
hu Niraula for a fifth use case. In addition, we are grateful for the advice and | suites described in this document do not provide any confidentiality, it is impo | |||
feedback from Joe Salowey, Blake Anderson, David McGrew, Clement Zeller, and Pe | rtant that they only be used in cases where there are no confidentiality or priv | |||
ter Wu.</t> | acy requirements and concerns; the runtime memory requirements can accommodate s | |||
upport for authenticity-only cryptographic constructs.</t> | ||||
<t>With the lack of data encryption specified in this specification, no co | ||||
nfidentiality or privacy is provided for the data transported via the TLS sessio | ||||
n. That is, the record layer is not encrypted when using these cipher suites, no | ||||
r is the handshake. To highlight the loss of privacy, the information carried in | ||||
the TLS handshake, which includes both the server and client certificates, whil | ||||
e integrity protected, will be sent unencrypted. Similarly, other TLS extensions | ||||
that may be carried in the server's EncryptedExtensions message will only be in | ||||
tegrity protected without provisions for confidentiality. Furthermore, with this | ||||
lack of confidentiality, any private Pre-Shared Key (PSK) data <bcp14>MUST NOT< | ||||
/bcp14> be sent in the handshake while using these cipher suites. However, as PS | ||||
Ks may be loaded externally, these cipher suites can be used with the 0-RTT hand | ||||
shake defined in <xref target="RFC8446" format="default"/>, with the same securi | ||||
ty implications discussed therein applied. </t> | ||||
<t>Application protocols that build on TLS or DTLS for protection (e.g., H | ||||
TTP) may have implicit assumptions of data confidentiality. Any assumption of da | ||||
ta confidentiality is invalidated by the use of these cipher suites, as no data | ||||
confidentiality is provided. This applies to any data sent over the application- | ||||
data channel (e.g., bearer tokens in HTTP), as data requiring confidentiality <b | ||||
cp14>MUST NOT</bcp14> be sent using these cipher suites.</t> | ||||
<t> Limits on key usage for AEAD-based ciphers are described in <xref tar | ||||
get="RFC8446" format="default"/>. However, as the cipher suites discussed here a | ||||
re not AEAD, those same limits do not apply. The general security properties of | ||||
HMACs discussed in <xref target="RFC2104" format="default"/> and <xref target="B | ||||
CK1" format="default"/> apply. Additionally, security considerations on the alg | ||||
orithm's strength based on the HMAC key length and truncation length further des | ||||
cribed in <xref target="RFC4868" format="default"/> also apply. Until further cr | ||||
yptanalysis demonstrates limitations on key usage for HMACs, general practice fo | ||||
r key usage recommends that implementations place limits on the lifetime of the | ||||
HMAC keys and invoke a key update as described in <xref target="RFC8446" format= | ||||
"default"/> prior to reaching this limit. </t> | ||||
<t>DTLS 1.3 defines a mechanism for encrypting the DTLS record sequence nu | ||||
mbers. However, as these cipher suites do not utilize encryption, the record seq | ||||
uence numbers are sent unencrypted. That is, the procedure for DTLS record seque | ||||
nce number protection is to apply no protection for these cipher suites. </t> | ||||
<t>Given the lack of confidentiality, these cipher suites <bcp14>MUST NOT< | ||||
/bcp14> be enabled by default. As these cipher suites are meant to serve the IoT | ||||
market, it is important that any IoT endpoint that uses them be explicitly conf | ||||
igured with a policy of non-confidential communications. </t> | ||||
</section> | </section> | |||
</middle> | </middle> | |||
<back> | <back> | |||
<references title="Normative References"> | ||||
&RFC2104; | <displayreference target="RFC9147" to="DTLS13"/> | |||
&RFC2119; | ||||
&RFC6234; | <references> | |||
&RFC8174; | <name>References</name> | |||
&RFC8446; | <references> | |||
&RFC4868; | <name>Normative References</name> | |||
<reference anchor="DTLS13"> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<front> | FC.2104.xml"/> | |||
<title>https://tools.ietf.org/id/draft-ietf-tls-dtls13-38.txt< | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
/title> | FC.2119.xml"/> | |||
<author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<organization>IETF Internet Drafts editor</organization> | FC.6234.xml"/> | |||
</author> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
<date year=""></date> | FC.8174.xml"/> | |||
</front> | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
</reference> | FC.8446.xml"/> | |||
<reference anchor="BCK1" target="https://cseweb.ucsd.edu/~mihir/papers/kmd5. | <xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | |||
pdf"> | FC.4868.xml"/> | |||
<!-- draft-ietf-tls-dtls13-43 (citation string is "DTLS13") --> | ||||
<reference anchor='RFC9147' target="https://www.rfc-editor.org/info/rfc9147"> | ||||
<front> | ||||
<title>The Datagram Transport Layer Security (DTLS) Protocol Version 1.3</title> | ||||
<author initials='E' surname='Rescorla' fullname='Eric Rescorla'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='H' surname='Tschofenig' fullname='Hannes Tschofenig'> | ||||
<organization /> | ||||
</author> | ||||
<author initials='N' surname='Modadugu' fullname='Nagendra Modadugu'> | ||||
<organization /> | ||||
</author> | ||||
<date year='2022' month='January' /> | ||||
</front> | ||||
<seriesInfo name="RFC" value="9147"/> | ||||
<seriesInfo name="DOI" value="10.17487/RFC9147"/> | ||||
</reference> | ||||
<reference anchor="BCK1" target="https://link.springer.com/chapter/10.10 | ||||
07/3-540-68697-5_1"> | ||||
<front> | <front> | |||
<title>Keyed Hash Functions and Message Authentication</title> | <title>Keying Hash Functions for Message Authentication</title> | |||
<author initials="M." surname="Bellare"> | <author initials="M." surname="Bellare"> | |||
<organization/> | <organization/> | |||
</author> | </author> | |||
<author initials="R." surname="Canetti"> | <author initials="R." surname="Canetti"> | |||
<organization/> | <organization/> | |||
</author> | </author> | |||
<author initials="H." surname="Krawczyk"> | <author initials="H." surname="Krawczyk"> | |||
<organization/> | <organization/> | |||
</author> | </author> | |||
<date year=""></date> | <date year="1996"/> | |||
</front> | </front> | |||
</reference> | <seriesInfo name="DOI" value="10.1007/3-540-68697-5_1"/> | |||
</reference> | ||||
</references> | ||||
<references> | ||||
<name>Informative References</name> | ||||
<xi:include href="https://xml2rfc.ietf.org/public/rfc/bibxml/reference.R | ||||
FC.5246.xml"/> | ||||
</references> | ||||
</references> | </references> | |||
<references title="Informative Reference"> | <section anchor="Acknowledgements" numbered="false" toc="default"> | |||
&RFC5246; | <name>Acknowledgements</name> | |||
</references> | <t>The authors would like to acknowledge the work done by Industrial Commu | |||
nications Standards Groups (such as ODVA) as the motivation for this document. W | ||||
e would also like to thank <contact fullname="Steffen Fries"/> for providing a f | ||||
ourth use case and <contact fullname="Madhu Niraula"/> for a fifth use case. In | ||||
addition, we are grateful for the advice and feedback from <contact fullname="Jo | ||||
e Salowey"/>, <contact fullname="Blake Anderson"/>, <contact fullname="David McG | ||||
rew"/>, <contact fullname="Clement Zeller"/>, and <contact fullname="Peter Wu"/> | ||||
.</t> | ||||
</section> | ||||
</back> | </back> | |||
</rfc> | </rfc> | |||
End of changes. 22 change blocks. | ||||
428 lines changed or deleted | 464 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |