Transport Layer Security (TLS) Protocol Compression Using Lempel-Ziv-Stac (LZS)
RFC 3943

 
Document
Type RFC - Informational (November 2004; No errata)
Was draft-friend-tls-lzs-compression (individual in gen area)
Last updated 2013-03-02
Stream IETF
Formats plain text pdf html
Stream
WG state (None)
Consensus Unknown
Document shepherd No shepherd assigned
IESG
IESG state RFC 3943 (Informational)
Telechat date
Responsible AD Steven Bellovin
Send notices to Robert Friend <rfriend@hifn.com>, Eric Rescorla <ekr@rtfm.com>,

Email authors IPR 2 References Referenced by Nits Search lists

Network Working Group                                          R. Friend
Request for Comments: 3943                                          Hifn
Category: Informational                                    November 2004

       Transport Layer Security (TLS) Protocol Compression Using
                         Lempel-Ziv-Stac (LZS)

Status of this Memo

   This memo provides information for the Internet community.  It does
   not specify an Internet standard of any kind.  Distribution of this
   memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2004).

Abstract

   The Transport Layer Security (TLS) protocol (RFC 2246) includes
   features to negotiate selection of a lossless data compression method
   as part of the TLS Handshake Protocol and then to apply the algorithm
   associated with the selected method as part of the TLS Record
   Protocol.  TLS defines one standard compression method, which
   specifies that data exchanged via the record protocol will not be
   compressed.  This document describes an additional compression method
   associated with the Lempel-Ziv-Stac (LZS) lossless data compression
   algorithm for use with TLS.  This document also defines the
   application of the LZS algorithm to the TLS Record Protocol.

Friend                       Informational                      [Page 1]
RFC 3943               TLS Compression Using LZS           November 2004

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  2
       1.1.  General. . . . . . . . . . . . . . . . . . . . . . . . .  2
       1.2.  Specification of Requirements. . . . . . . . . . . . . .  3
   2.  Compression Methods. . . . . . . . . . . . . . . . . . . . . .  3
       2.1.  LZS CompresionMethod . . . . . . . . . . . . . . . . . .  4
       2.2.  Security Issues with Single History Compression. . . . .  4
   3.  LZS Compression. . . . . . . . . . . . . . . . . . . . . . . .  4
       3.1.  Background of LZS Compression  . . . . . . . . . . . . .  4
       3.2.  LZS Compression History and Record Processing  . . . . .  5
       3.3.  LZS Compressed Record Format . . . . . . . . . . . . . .  6
       3.4.  TLSComp Header Format  . . . . . . . . . . . . . . . . .  6
             3.4.1.  Flags. . . . . . . . . . . . . . . . . . . . . .  6
       3.5.  LZS Compression Encoding Format  . . . . . . . . . . . .  7
       3.6.  Padding  . . . . . . . . . . . . . . . . . . . . . . . .  8
   4.  Sending Compressed Records . . . . . . . . . . . . . . . . . .  8
       4.1.  Transmitter Process. . . . . . . . . . . . . . . . . . .  9
       4.2.  Receiver Process . . . . . . . . . . . . . . . . . . . .  9
       4.3.  Anti-expansion Mechanism . . . . . . . . . . . . . . . . 10
   5.  Internationalization Considerations .  . . . . . . . . . . . . 10
   6.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 10
   7.  Security Considerations. . . . . . . . . . . . . . . . . . . . 11
   8.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11
   9.  References . . . . . . . . . . . . . . . . . . . . . . . . . . 12
       9.1.  Normative References . . . . . . . . . . . . . . . . . . 12
       9.2.  Informative References . . . . . . . . . . . . . . . . . 12
   Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 12
   Full Copyright Statement . . . . . . . . . . . . . . . . . . . . . 13

1. Introduction

1.1.  General

   The Transport Layer Security (TLS) protocol (RFC 2246, [2]) includes
   features to negotiate selection of a lossless data compression method
   as part of the TLS Handshake Protocol and then to apply the algorithm
   associated with the selected method as part of the TLS Record
   Protocol.  TLS defines one standard compression method,
   CompressionMethod.null, which specifies that data exchanged via the
   record protocol will not be compressed.  Although this single
   compression method helps ensure that TLS implementations are
   interoperable, the lack of additional standard compression methods
   has limited the ability to develop interoperative implementations
   that include data compression.

Friend                       Informational                      [Page 2]
RFC 3943               TLS Compression Using LZS           November 2004

   TLS is used extensively to secure client-server connections on the
   World Wide Web.  Although these connections can often be
   characterized as short-lived and exchanging relatively small amounts
   of data, TLS is also being used in environments where connections can
   be long-lived and the amount of data exchanged can extend into
   thousands or millions of octets.  For example, TLS is now
   increasingly being used as an alternative Virtual Private Network
Show full document text