From a816848aaa259d7d2ee58ec2518220a046d3044d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?P=C3=A9ter=20Dimitrov?=
Date: Fri, 24 May 2019 11:33:53 +0200
Subject: ssl: Improve standards compliance document
OTP-15431
---
lib/ssl/doc/src/standards_compliance.xml | 45 ++++++++++++++++++++------------
1 file changed, 29 insertions(+), 16 deletions(-)
diff --git a/lib/ssl/doc/src/standards_compliance.xml b/lib/ssl/doc/src/standards_compliance.xml
index 650fcec920..3bd86178c8 100644
--- a/lib/ssl/doc/src/standards_compliance.xml
+++ b/lib/ssl/doc/src/standards_compliance.xml
@@ -129,7 +129,7 @@
OTP-22 introduces basic support for TLS 1.3. Basic functionality
covers a simple TLS 1.3 handshake with support of the mandatory extensions
(supported_groups, signature_algorithms, key_share, supported_versions and
- signature_algorithms_cert). The server supports a selective set of cryptographic algorithms:
+ signature_algorithms_cert). The current implementation supports a selective set of cryptographic algorithms:
- Key Exchange: ECDHE
- Groups: all standard groups supported for the Diffie-Hellman key exchange
@@ -140,7 +140,6 @@
Other notable features:
- - The server supports the HelloRetryRequest mechanism
- PSK and session resumption not supported
- Early data and 0-RTT not supported
- Key and Initialization Vector Update not supported
@@ -965,8 +964,8 @@
Client |
- NC |
- |
+ C |
+ 22.1 |
|
@@ -2122,14 +2121,14 @@
|
TLS 1.3 ClientHello |
- PC |
+ C |
22.1 |
|
If not containing a "pre_shared_key" extension, it MUST contain both a "signature_algorithms" extension and a "supported_groups" extension. |
- NC |
- |
+ C |
+ 22.1 |
|
@@ -2158,30 +2157,44 @@
|
- NC |
- |
+ C |
+ 22.1 |
|
MUST correctly handle extensible fields |
- NC |
- |
+ C |
+ 22.1 |
|
- A client sending a ClientHello MUST support all parameters advertised in it. |
- NC |
- |
+ A client sending a ClientHello MUST support all parameters
+ advertised in it. Otherwise, the server may fail to interoperate by selecting one of those parameters. |
+ C |
+ 22.1 |
|
- A middlebox which terminates a TLS connection MUST behave as a compliant TLS server |
+ A server receiving a ClientHello MUST correctly ignore all
+ unrecognized cipher suites, extensions, and other parameters. Otherwise, it may fail to
+ interoperate with newer clients. In TLS 1.3, a client receiving a CertificateRequest or
+ NewSessionTicket MUST also ignore all unrecognized extensions. |
+ C |
+ 22.1 |
+
+
+
+ |
+ A middlebox which terminates a TLS connection MUST behave as a
+ compliant TLS server |
NA |
|
|
- A middlebox which forwards ClientHello parameters it does not understand MUST NOT process any messages beyond that ClientHello. |
+ A middlebox which forwards ClientHello parameters it does not
+ understand MUST NOT process any messages beyond that ClientHello. It MUST forward all subsequent
+ traffic unmodified. Otherwise, it may fail to interoperate with newer clients and servers. |
NA |
|
--
cgit v1.2.3