aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorMatt Caswell <matt@openssl.org>2018-06-15 14:55:06 +0100
committerMatt Caswell <matt@openssl.org>2018-07-02 15:06:12 +0100
commit3bb5e5b09e32defefda2b61087c113203005ffa0 (patch)
tree47b35b54cfc423ea594f73cf603e24844e78ff96 /doc
parent5a42141565a4074167b006e7a28a822176b40f86 (diff)
downloadopenssl-3bb5e5b09e32defefda2b61087c113203005ffa0.zip
openssl-3bb5e5b09e32defefda2b61087c113203005ffa0.tar.gz
openssl-3bb5e5b09e32defefda2b61087c113203005ffa0.tar.bz2
Add the ability to configure anti-replay via SSL_CONF
This also adds the ability to control this through s_server Reviewed-by: Viktor Dukhovni <viktor@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/6469)
Diffstat (limited to 'doc')
-rw-r--r--doc/man1/s_server.pod11
-rw-r--r--doc/man3/SSL_CONF_cmd.pod21
2 files changed, 32 insertions, 0 deletions
diff --git a/doc/man1/s_server.pod b/doc/man1/s_server.pod
index 2b7db63..f601794 100644
--- a/doc/man1/s_server.pod
+++ b/doc/man1/s_server.pod
@@ -180,6 +180,8 @@ B<openssl> B<s_server>
[B<-keylogfile outfile>]
[B<-max_early_data int>]
[B<-early_data>]
+[B<-anti_replay>]
+[B<-no_anti_replay>]
=head1 DESCRIPTION
@@ -709,6 +711,15 @@ greater than or equal to 0.
Accept early data where possible.
+=item B<-anti_replay>, B<-no_anti_replay>
+
+Switches replay protection on or off, respectively. Replay protection is on by
+default unless overridden by a configuration file. When it is on, OpenSSL will
+automatically detect if a session ticket has been used more than once, TLSv1.3
+has been negotiated, and early data is enabled on the server. A full handshake
+is forced if a session ticket is used a second or subsequent time. Any early
+data that was sent will be rejected.
+
=back
=head1 CONNECTED COMMANDS
diff --git a/doc/man3/SSL_CONF_cmd.pod b/doc/man3/SSL_CONF_cmd.pod
index 4d3e9c2..4edd49c 100644
--- a/doc/man3/SSL_CONF_cmd.pod
+++ b/doc/man3/SSL_CONF_cmd.pod
@@ -211,6 +211,18 @@ that there will be no forward secrecy for the resumed session.
enables strict mode protocol handling. Equivalent to setting
B<SSL_CERT_FLAG_TLS_STRICT>.
+=item B<-anti_replay>, B<-no_anti_replay>
+
+Switches replay protection, on or off respectively. With replay protection on,
+OpenSSL will automatically detect if a session ticket has been used more than
+once, TLSv1.3 has been negotiated, and early data is enabled on the server. A
+full handshake is forced if a session ticket is used a second or subsequent
+time. Anti-Replay is on by default unless overridden by a configuration file and
+is only used by servers. Anti-replay measures are required for compliance with
+the TLSv1.3 specification. Some applications may be able to mitigate the replay
+risks in other ways and in such cases the built-in OpenSSL functionality is not
+required. Switching off anti-replay is equivalent to B<SSL_OP_NO_ANTI_REPLAY>.
+
=back
=head1 SUPPORTED CONFIGURATION FILE COMMANDS
@@ -441,6 +453,15 @@ middleboxes that do not understand TLSv1.3 will not drop the connection. This
option is set by default. A future version of OpenSSL may not set this by
default. Equivalent to B<SSL_OP_ENABLE_MIDDLEBOX_COMPAT>.
+B<AntiReplay>: If set then OpenSSL will automatically detect if a session ticket
+has been used more than once, TLSv1.3 has been negotiated, and early data is
+enabled on the server. A full handshake is forced if a session ticket is used a
+second or subsequent time. This option is set by default and is only used by
+servers. Anti-replay measures are required to comply with the TLSv1.3
+specification. Some applications may be able to mitigate the replay risks in
+other ways and in such cases the built-in OpenSSL functionality is not required.
+Disabling anti-replay is equivalent to setting B<SSL_OP_NO_ANTI_REPLAY>.
+
=item B<VerifyMode>
The B<value> argument is a comma separated list of flags to set.