Network Working Group J.R. Levine Internet-Draft Taughannock Networks Intended status: Informational March 2012 Expires: September 12, 2012 The application/zlib and application/gzip media types draft-levine-application-gzip-01 Abstract This document defines the 'application/gzip' and 'application/zlib' media types for compressed data using the gzip and zlib compression formats. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on September 12, 2012. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/ license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. 1. Introduction The Zlib [RFC1950] and gzip [RFC1952] formats are widely used compression formats. Zlib is a stream format, while glib adds header and trailer fields more appropriate for a file format. Both Levine info [Page 1] Internet-Draft Media types zlib and gzip March 2012 implement the DEFLATE compression scheme described in [RFC1951]. They are used to compress a wide variety of material, from unstructured text to structured data to executable code. Some applications have informally used the media type application/ x-gzip. The media types defined in this document should replace that media type in future applications. 2. The Application/Zlib Media Type The application/zlib media type describes a block of data that is compressed using Zlib [RFC1950] compression. The data is a stream of bytes as described in RFC 1950. 2.1. Regsistration Details Type name: application Subtype name: zlib Required parameters: N/A Optional parameters: N/A Encoding considerations: needs base64 or other encoding that allows arbitrary binary data Security considerations: See section [security] below Interoperability considerations: N/A Published specification: [RFC1950] Applications that use this media type: anywhere data size is an issue Additional information: Magic number(s): first byte is usually 0x78 but can also be 0x08, 0x18, 0x28, 0x38, 0x48, 0x58, or 0x68. File extension(s): N/A Macintosh file type code(s): N/A Person and email address to contact for further information: see http://www.zlib.net/ Intended usage: COMMON Restrictions on usage: N/A Author: John Levine Change controller: IETF 3. The Application/Gzip Media Type Levine info [Page 2] Internet-Draft Media types zlib and gzip March 2012 The application/gzip media type describes a block of data that is compressed using gzip [RFC1952] compression. The data is a stream of bytes as described in RFC 1952. 3.1. Regsistration Details Type name: application Subtype name: gzip Required parameters: N/A Optional parameters: N/A Encoding considerations: needs base64 or other encoding that allows arbitrary binary data Security considerations: See section [security] below Interoperability considerations: N/A Published specification: [RFC1952] Applications that use this media type: anywhere data size is an issue Additional information: Magic number(s): first two bytes are 0x1f, 0x8b. File extension(s): gz Macintosh file type code(s): N/A Person and email address to contact for further information: see http://www.gzip.net/ Intended usage: COMMON Restrictions on usage: N/A Author: John Levine Change controller: IETF 4. Security Considerations Zlib and gzip compression can be used to compress arbitrary binary data such as hostile executable code. Also, data that purports to be in zlib or gzip format may not be, and fields that are supposed to be flags, lengths, or pointers, could contain anything. Applications should treat any data with due scepticism. Also see the security considerations in the underlying format documents, Section 5 of [RFC1950], Section 6 of [RFC1951], and Section 4 of [RFC1952]. 5. References Levine info [Page 3] Internet-Draft Media types zlib and gzip March 2012 [RFC1950] Deutsch, L.P. and J-L. Gailly, "ZLIB Compressed Data Format Specification version 3.3", RFC 1950, May 1996. [RFC1951] Deutsch, P., "DEFLATE Compressed Data Format Specification version 1.3", RFC 1951, May 1996. [RFC1952] Deutsch, P., Gailly, J-L., Adler, M., Deutsch, L.P. and G. Randers-Pehrson, "GZIP file format specification version 4.3", RFC 1952, May 1996. Appendix A. Change log Note to editor: Please remove this section before publication. Appendix A.1. Changes from -00 to -01 Note former x-gzip Refer to security sections in underlying format docs Author's Address John Levine Taughannock Networks PO Box 727 Trumansburg, NY 14886 Phone: +1 831 480 2300 Email: standards@taugh.com Levine info [Page 4]