Network Working Group                                          C. Newman
Internet Draft: MacBinary and Binhex 4.0 harmful         Carnegie Mellon
Document: draft-newman-macbin-binhex-harmful-00.txt            July 1996


              MacBinary and Binhex 4.0 considered harmful


Status of this memo

     This document is an Internet Draft.  Internet Drafts are working
     documents of the Internet Engineering Task Force (IETF), its Areas,
     and its Working Groups.  Note that other groups may also distribute
     working documents as Internet Drafts.

     Internet Drafts are draft documents valid for a maximum of six
     months.  Internet Drafts may be updated, replaced, or obsoleted by
     other documents at any time.  It is not appropriate to use Internet
     andrewDrafts as reference material or to cite them other than as a
     ``working draft'' or ``work in progress``.

     To learn the current status of any Internet-Draft, please check the
     1id-abstracts.txt listing contained in the Internet-Drafts Shadow
     Directories on ds.internic.net, nic.nordu.net, ftp.isi.edu, or
     munnari.oz.au.

     A revised version of this draft document will be submitted to the
     RFC editor as a Proposed Standard for the Internet Community.
     Discussion and suggestions for improvement are requested.  This
     document will expire six months after publication.  Distribution of
     this draft is unlimited.


1. Introduction

     The two most popular formats for encoding Macintosh files are
     MacBinary and Macintosh Binhex 4.0 [RFC1741].  Both of these
     formats have serious flaws which hinder interoperability of email
     and file exchange over the Internet.  This document recommends the
     use of AppleSingle or AppleDouble, encoded via MIME if necessary
     [RFC1740, APPL90].


2. Interoperability problems with Binhex 4.0

     Binhex 4.0 has five major flaws:

     1) It is significantly more complex than any other Macintosh file


Newman                        July 9, 1996                      [Page 1]


Internet Draft      MacBinary and Binhex 4.0 harmful           July 1996


     encoding.  Specificly, it includes a four-layer encoding process
     (CRC error detection, inclusion of some file meta data, a simple
     run length encoder which is rarely implemented, and an 8-to-7 bit
     encoder) and in most cases only some of the layers are needed.

     2) The inclusion of a mandatory 8-to-7 bit encoding makes it waste
     bandwidth when used over an 8-bit safe communications channel.

     3) Some of the characters in the 7-bit character set are known to
     be corrupted by some email gateways, unlike MIME's base64 encoding.

     4) The format does not allow inclusion of all the meta data
     associated with a Macintosh file (e.g. the finder comments and
     custom icons) and is not extensible.

     5) The data fork is embedded in the rest of the file in such a way
     that it is difficult to extract on any non-Macintosh platform.

     For these reasons, this author recommends that Binhex 4.0 only be
     used when sending files through email to a Macintosh owner without
     an Internet connection.  In all other cases, AppleSingle or MacMIME
     provide superior functionality.

     Some software vendors have ignored the following important
     statement in RFC 1741:

     "Only when available software and/or user practice dictates, should
     this method be employed.  It is recommended to use
     application/applefile [FALT94] for maximum interoperability."

     Any mailer which uses Binhex 4.0 as its default encoding for email
     interchange is violating this clause in RFC 1741 and is creating
     serious interoperability problems in the Internet.  Users which
     receive such mis-encoded files and are unable to decode them should
     complain to the sender who can in turn complain to their software
     vendor and repair their default configuration to use standard
     MacMIME [RFC 1740].


3. Interoperability problems with MacBinary

     MacBinary has four flaws which forced Apple Computer, Inc. [APPL90]
     to design a new file format:

     1) It has no magic number (a fixed sequence of bytes at the
     beginning of the file which can be used to identify the file type)
     which makes it difficult to distinguish from other files.



Newman                        July 9, 1996                      [Page 2]


Internet Draft      MacBinary and Binhex 4.0 harmful           July 1996


     2) The format does not allow inclusion of all the meta data
     associated with a Macintosh file and is not extensible.

     3) The data fork is embedded in the rest of the file in such a way
     that it is difficult to extract on any non-Macintosh platform.

     4) The common extension ".bin" is easily confused with generic
     binary files.


4. Advantages of AppleSingle/AppleDouble

     AppleSingle and AppleDouble are simple file formats.  Both have
     magic numbers allowing quick identification by programs such as
     Fetch.  Both include all current Macintosh file meta data and are
     extensible for the future.  Both are simple formats.  The
     AppleDouble format allows trivial extraction of the data fork,
     while it is simple to extract it from AppleSingle.  When
     AppleDouble is encoded in MIME via MacMIME, cross-platform file
     interchange works without any special Macintosh knowledge and other
     MIME services may be used for transport encoding and integrity
     verification.  In short, AppleSingle/AppleDouble correct all the
     flaws in Binhex 4.0 and MacBinary.


5. Adoption of AppleSingle for FTP archives

     While MacMIME has been actively gaining support in the Internet,
     use of AppleSingle for ftp archives has languished, even though the
     most popular Macintosh ftp client (Fetch) automatically detects and
     decodes AppleSingle.  This author believes the problem is simply
     that no common extension has been adopted for AppleSingle files.
     This document proposes that the extension ".asf" (AppleSingle File)
     be used to visually distinguish AppleSingle files from other files
     when necesssary.


6. Conclusion

     Binhex 4.0 and MacBinary are seriously flawed encodings of
     Macintosh files which should be avoided for use on the Internet.
     Adoption of AppleSingle and MacMIME for exchange of Macintosh files
     over the Internet will improve efficiency and interoperability.  In
     addition, because AppleSingle can encode all Macintosh file meta-
     data, including custom icons and finder comments it will improve
     the Macintosh user experience on the Internet.




Newman                        July 9, 1996                      [Page 3]


Internet Draft      MacBinary and Binhex 4.0 harmful           July 1996


7. References

     [RFC1740]   Faltstrom P., Crocker, D., and E. Fair, "MIME
                 Encapsulation of Macintosh Files - MacMIME", RFC 1740,
                 KTH, Brandenburg Consulting, Apple Computer Inc.,
                 December 1994.

     [RFC1741]   Faltstrom P., Crocker, D., and E. Fair, "MIME Content
                 Type for BinHex Encoded Files", RFC 1741, KTH,
                 Brandenburg Consulting, Apple Computer Inc., December
                 1994.

     [APPL90]    AppleSingle/AppleDouble Formats for Foreign Files
                 Developer's Note, Apple Computer, Inc., 1990


8. Security Considerations

     There are no known security issues in this memo.


9. Author's Address

Chris Newman
Carnegie Mellon University
5000 Forbes Ave.
Pittsburgh, PA 15213-3890

Email: chrisn+@cmu.edu





















Newman                        July 9, 1996                      [Page 4]