home *** CD-ROM | disk | FTP | other *** search
/ Handbook of Infosec Terms 2.0 / Handbook_of_Infosec_Terms_Version_2.0_ISSO.iso / text / rfcs / rfc1741.txt < prev    next >
Text File  |  1996-05-07  |  10KB  |  210 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                       P. Faltstrom Request for Comments: 1741                 Royal Institute of Technology Category: Informational                                       D. Crocker                                                   Brandenburg Consulting                                                                  E. Fair                                                      Apple Computer Inc.                                                            December 1994 
  8.  
  9.                 MIME Content Type for BinHex Encoded Files 
  10.  
  11. Status of this Memo 
  12.  
  13.    This memo provides information for the Internet community.  This memo    does not specify an Internet standard of any kind.  Distribution of    this memo is unlimited. 
  14.  
  15. Abstract 
  16.  
  17.    This memo describes the format to use when sending BinHex4.0 files    via MIME [BORE93].  The format is compatible with existing mechanisms    for distributing Macintosh files.  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. 
  18.  
  19. 1.  Introduction 
  20.  
  21.    Files on the Macintosh consists of two parts, called forks: 
  22.  
  23.    DATA FORK:       The actual data included in the file.  The Data                     fork is typically the only meaningful part of a                     Macintosh file on a non-Macintosh computer system.                     For example, if a Macintosh user wants to send a                     file of data to a user on an IBM-PC, she would only                     send the Data fork. 
  24.  
  25.    RESOURCE FORK:   Contains a collection of arbitrary attribute/value                     pairs, including program segments, icon bitmaps,                     and parametric values. 
  26.  
  27.    Additional information regarding Macintosh files is stored by the    Finder has in a hidden file, called the "Desktop Database". 
  28.  
  29.    Because of the complications in storing different parts of a    Macintosh file in a non-Macintosh filesystem that only handles    consecutive data in one part, it is common to convert the Macintosh    file into some other format before transferring it over the network. 
  30.  
  31.  
  32.  
  33. Faltstrom, Crocker & Fair                                       [Page 1] 
  34.  RFC 1741             Content Type for BinHex Files         December 1994 
  35.  
  36.     AppleDouble file format [APPL90], encoded in MIME as    multipart/appledouble [FALT94] and application/applefile [FALT94] is    the preferred format for a Macintosh file that is to be included in    an Internet mail message, because it provides recipients with    Macintosh computers the entire document, including Icons and other    Macintosh specific information, while other users easily can extract    the Data fork (the actual data). 
  37.  
  38.    However, this specification provides for use of the currently popular    BinHex4.0 encoding schemes, as a convinience to the installed base of    users. 
  39.  
  40. 2.  MIME format for BinHex4.0 
  41.  
  42.    MIME-base Apple information is specified by: 
  43.  
  44.    MIME type-name:            APPLICATION    MIME subtype name:         MAC-BINHEX40    Required parameters:       none    Optional parameters:       NAME, which must be a "value" as                               defined in RFC-1521 [BORE93].    Encoding considerations:   none    Security considerations:   See separate section in the document    Published specification:   Appendix A    Rationale:                 Permits MIME-based transmission of data                               with Apple Macintosh file system specific                               information using a currently popular,                               though platform specific, format. 
  45.  
  46.    2a.  Detail specific to MIME-based usage 
  47.  
  48.       Macintosh documents do not always need to be sent in a special       format.  Those documents with well-known MIME types and non-       existent or trivial resource forks can be sent as regular MIME       body parts, without use of AppleSingle, AppleDouble or BinHex4.0. 
  49.  
  50.       Documents which lack a data fork must be sent as AppleSingle       according to RFC 1740 [FALT94]. 
  51.  
  52.       Unless there are strong reasons not to, all other documents should       be sent as AppleDouble according to RFC 1740 [FALT94].  This       includes documents with non-trivial resource forks, and documents       without corresponding well-known MIME types. 
  53.  
  54.       It may be valuable in some cases to allow the user to choose one       format over another, either because he disagrees with the       implementor's definition of "trivial" resource forks, or for       reasons of his own. 
  55.  
  56.  
  57.  
  58. Faltstrom, Crocker & Fair                                       [Page 2] 
  59.  RFC 1741             Content Type for BinHex Files         December 1994 
  60.  
  61.        Only when available software and/or user practice dictates, should       BinHex 4.0 be employed. 
  62.  
  63. 3.  BinHex 
  64.  
  65.    BinHex 4.0 is a propular means of encoding Macintosh files for    archiving on non-Macintosh file systems and for transmission via    Internet mail.  (See Appendix A for a brief description of the BinHex    4.0 format.) 
  66.  
  67.    The content-type application/mac-binhex40 indicates that the body of    the mail is a BinHex4.0 file.  Even though the BinHex encoding    consists of characters which are not the same as those used in Base64    (those regarded as safe according to RFC-1521 [BORE93]) a    transportation encoding should not be done. 
  68.  
  69.    Even though a BinHex file includes the original Macintosh filename,    it is recommended that a name parameter be included on the Content-    Type header to give the recipient a hint as to what file is attached.    The value of the name parameter must be a "value" as defined by RFC-    1521 [BORE93].  Note that this restricts the value to seven-bit US-    ASCII characters. 
  70.  
  71.    3a.  BinHex example 
  72.  
  73.         Content-Type: application/mac-binhex40; name="car.hqx" 
  74.  
  75.             [The BinHex4.0 file goes here] 
  76.  
  77. 4.  References 
  78.  
  79.    APPL90   AppleSingle/AppleDouble Formats for Foreign Files             Developer's Note, Apple Computer, Inc., 1990. 
  80.  
  81.    FALT94   Faltstrom P., Crocker, D., and E. Fair, "MIME             Encapsulation of Macintosh Files - MacMIME", RFC 1740,             KTH, Brandenburg Consulting, Apple Computer Inc.,             December 1994. 
  82.  
  83.    BORE93   Borenstein N., and N. Freed, "MIME (Multipurpose Internet             Mail Extensions): Mechanisms for Specifying and Describing             the Format of Internet Message Bodies", RFC 1521, Bellcore,             Innosoft, September 1993. 
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  Faltstrom, Crocker & Fair                                       [Page 3] 
  92.  RFC 1741             Content Type for BinHex Files         December 1994 
  93.  
  94.  5.  Security Considerations 
  95.  
  96.    To the extent that application/mac-binhex40 facilitates the    transmission of operating-system sensitive data, it may open a door    for easier relaxation of security rules than is intended either by    the sender of the administrator of the sender's system. 
  97.  
  98. 6.  Acknowledgements 
  99.  
  100.    Thanks to all of the people on the ietf-822 list who have provided    much meaningful input for this document.  Some of them must though be    remembered by name, because they have almost crushed my mailbox the    last weeks with a very nice and interesting debate: 
  101.  
  102.       Johan Berglund, Steve Dorner, David Gelhar, David Herron, Raymond       Lau, Jamey Maze, John B. Melby, Jan Michael Rynning, Rens Troost,       and Peter Svanberg. 
  103.  
  104. 7.  Authors' Addresses 
  105.  
  106.       Patrik Faltstrom       Department of Numerical Analysis and Computing Science       Royal Institute of Technology       S-100 44 Stockholm       Sweden 
  107.  
  108.       EMail: paf@nada.kth.se 
  109.  
  110.        Dave Crocker       Brandenburg Consulting       675 Spruce Dr.       Sunnyvale, CA  94086 
  111.  
  112.       EMail: dcrocker@mordor.stanford.edu 
  113.  
  114.        Erik E. Fair       Engineering Computer Operations       Apple Computer Inc. 
  115.  
  116.       EMail: fair@apple.com 
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126. Faltstrom, Crocker & Fair                                       [Page 4] 
  127.  RFC 1741             Content Type for BinHex Files         December 1994 
  128.  
  129.  Appendix A.  The BinHex format 
  130.  
  131.    Here is a description of the Hqx7 (7 bit format as implemented in    BinHex 4.0) formats for Macintosh Application and File transfers. 
  132.  
  133.    The main features of the format are: 
  134.  
  135.    1) Error checking even using ASCII download    2) Compression of repetitive characters    3) 7 bit encoding for ASCII download 
  136.  
  137.    The format is processed at three different levels: 
  138.  
  139.       1) 8 bit encoding of the file: 
  140.  
  141.    Byte:    Length of FileName (1->63)    Bytes:   FileName ("Length" bytes)    Byte:    Version    Long:    Type    Long:    Creator    Word:    Flags (And $F800)    Long:    Length of Data Fork    Long:    Length of Resource Fork    Word:    CRC    Bytes:   Data Fork ("Data Length" bytes)    Word:    CRC    Bytes:   Resource Fork ("Rsrc Length" bytes)    Word:    CRC 
  142.  
  143.        2) Compression of repetitive characters. 
  144.  
  145.    ($90 is the marker, encoding is made for 3->255 characters) 
  146.  
  147.    00 11 22 33 44 55 66 77   -> 00 11 22 33 44 55 66 77    11 22 22 22 22 22 22 33   -> 11 22 90 06 33    11 22 90 33 44            -> 11 22 90 00 33 44 
  148.  
  149.    The whole file is considered as a stream of bits.  This stream will    be divided in blocks of 6 bits and then converted to one of 64    characters contained in a table.  The characters in this table have    been chosen for maximum noise protection.  The format will start    with a ":" (first character on a line) and end with a ":".    There will be a maximum of 64 characters on a line.  It must be    preceded, by this comment, starting in column 1 (it does not start    in column 1 in this document): 
  150.  
  151.  
  152.  
  153.  
  154.  
  155. Faltstrom, Crocker & Fair                                       [Page 5] 
  156.  RFC 1741             Content Type for BinHex Files         December 1994 
  157.  
  158.      (This file must be converted with BinHex 4.0) 
  159.  
  160.    Any text before this comment is to be ignored. 
  161.  
  162.    The characters used is: 
  163.  
  164.     !"#$%&'()*+,- 012345689@ABCDEFGHIJKLMNPQRSTUVXYZ[`abcdefhijklmpqr 
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  Faltstrom, Crocker & Fair                                       [Page 6] 
  209.  
  210.