Tom Wu, "The SRP Authentication and Key Exchange System", September
2000, Available from @url{http://www.ietf.org/rfc/rfc2945.txt}.
+@item @anchor{RFC7301}[RFC7301]
+S. Friedl, A. Popov, A. Langley, E. Stephan, "Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension",
+July 2014, Available from @url{http://www.ietf.org/rfc/rfc7301.txt}.
+
@item @anchor{RFC2986}[RFC2986]
Magnus Nystrom and Burt Kaliski, "PKCS 10 v1.7: Certification Request
Syntax Specification", November 2000, Available from
@end menu
@node TLS layers
-@section TLS layers
+@section TLS Layers
@cindex TLS layers
@acronym{TLS} is a layered protocol, and consists of the record
@end float
@node The transport layer
-@section The transport layer
+@section The Transport Layer
@cindex transport protocol
@cindex transport layer
* OCSP status request::
* SRTP::
* Application Layer Protocol Negotiation (ALPN)::
+* Extensions and Supplemental Data::
@end menu
@node Maximum fragment length negotiation
@cindex ALPN
@cindex Application Layer Protocol Negotiation
-The TLS protocol was extended in @code{draft-ietf-tls-applayerprotoneg-00}
+The TLS protocol was extended in @code{RFC7301}
to provide the application layer a method of
negotiating the application protocol version. This allows for negotiation
of the application protocol during the TLS handshake, thus reducing
you can use them for other protocols (at the risk of collisions), it is preferable
to register them.
+@node Extensions and Supplemental Data
+@subsection Extensions and Supplemental Data
+@cindex Supplemental data
+
+It is possible to transfer supplemental data during the TLS handshake, following
+@xcite{RFC4680}. This is for "custom" protocol modifications for applications which
+may want to transfer additional data (e.g. additional authentication messages). Such
+an exchange requires a custom extension to be registered.
+The provided API for this functionality is low-level and described in @ref{TLS Extension Handling}.
+
@include sec-tls-app.texi
@node On SSL 2 and older protocols
note="Available from \url{http://www.ietf.org/rfc/rfc5280}",
}
+@misc{rfc7301,
+ author="S. Friedl and A. Popov and A. Langley and E. Stephan",
+ title="{Transport Layer Security (TLS) Application-Layer Protocol Negotiation Extension}",
+ series="Request for Comments",
+ number="7301",
+ howpublished="RFC 7301 (Proposed Standard)",
+ publisher="IETF",
+ organization="Internet Engineering Task Force",
+ year=2014,
+ month=jul,
+ note="Available from \url{http://www.ietf.org/rfc/rfc7301}",
+}
+
@Misc{ RFC5764,
author = "David McGrew and Eric Rescorla",
title = "{Datagram Transport Layer Security (DTLS) Extension to Establish Keys for the Secure Real-time Transport Protocol (SRTP)}",