home *** CD-ROM | disk | FTP | other *** search
- Network Working Group Internet Engineering Task Force
- Internet Draft Privacy Enhanced Mail Working Group
- <draft-ietf-pem-mime-alternative-00.txt> J. I. Schiller
- MIT
- October 1993
-
- An Alternative PEM MIME Integration
-
- 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
- Drafts as reference material or to cite them other than as a "working
- draft" or "work in progress."
-
- Please check the I-D abstract listing contained in each Internet
- Draft directory to learn the current status of this or any other
- Internet Draft.
-
- Distribution of this memo is unlimited. Please send comments to the
- <pem-dev@tis.com> mailing list.
-
- This is the second document to describe a mechanism to enclose MIME
- messages within PEM and vica versa. This document is an independent
- effort to be considered as an alternative to the previous document.
- This is *not* a revision of that document and the authors of it do
- not necessarily endorse the approach described here.
-
- Introduction
-
- This document describes a mechanism for providing Privacy Enhanced
- Mail (PEM) functionality within the context of MIME messages.
-
- Background
-
- MIME (RFC1341-1342) and PEM (RFC1421-1424) have taken separate
- evolution paths. Specifically PEM was designed and specified to
- handle RFC822 (non-MIME) messages. The goal of this document is to
- describe a method for using PEM to protect MIME messages, and to
- define a way to enclose PEM processed messages within MIME messages.
-
- To accomplish these goals requires an additional profile for RFC1421
- (Content-Domain: MIME) and the definition of a new MIME "application"
- (application/pem-1421).
-
- There are four possibilities for interaction between PEM and MIME.
- They are:
-
- * A MIME message transporting an RFC1421 PEM message which itself
- contains an RFC822 message (Content-Domain: RFC822).
-
- * A MIME message transporting an RFC1421 PEM message which itself
- contains a MIME object (Content-Domain: MIME).
-
-
-
- Expires: April 28, 1994 [Page 1]
- Network Working Group Internet Engineering Task Force
- Internet Draft Privacy Enhanced Mail Working Group
- J. I. Schiller
- MIT
- October 1993
-
- * A PEM message which contains a RFC822 message (as specified by
- RFC1421).
-
- * A PEM message which contains a MIME message or object (Content-
- Domain: MIME).
-
- Definition of "Content-Domain: MIME" within an RFC1421 PEM message
-
- When a PEM message contains a MIME object, as opposed to a simple
- text message, the value of the Content-Domain field of the PEM
- headers shall be the string "MIME".
-
- An RFC1421 PEM message of Content-Domain "MIME" shall contain a MIME
- "object" that begins with a "Content-Type" MIME header. The PEM body,
- upon completion of successful PEM processing is handed to a MIME
- interpreter for further processing. Content-Domain "MIME" messages
- may be protected with either ENCRYPTED, MIC-ONLY or MIC-CLEAR PEM
- services. However if MIC-CLEAR is chosen, the MIME content should be
- in a canonical 7bit form.
-
- In other words, if the enclosed MIME object is encoded in such
- fashion as to be 7bit transportable, then MIC-CLEAR may be (and
- perhaps should be) used. Other non-encrypted messages should be
- encoded via the MIC-ONLY mechanism.
-
- Enclosing a PEM message within a MIME object
-
- An RFC1421 PEM message may be enclosed in a MIME message by defining
- it to be of Content Type "application/pem-1421" by preceding the PEM
- processed body with:
-
- Content-Type: application/pem-1421
-
- Note that the application subtype is defined to be "pem-1421" and
- that the representation *must* be text/plain; charset=us-ascii. This
- is because these are correct characterizations of what a RFC1421
- message appears as.
-
- The behavior of a MIME mail reader with PEM capability
-
- A MIME mail reader with PEM capability will be able to fully process
- a MIME message which includes a PEM portion (which may either be the
- entire message or only part of a multi-part message).
-
- The MIME reader will process a message which contains a PEM portion
- as it would any other MIME message. Upon encountering a
- "application/pem-1421" body part, it will invoke PEM processing on
- the enclosed PEM message. If the PEM message contains a Content-
- Domain "MIME" body, it will invoke MIME recursively on the
- successfully processed PEM body. If the Content-Domain is RFC822, the
- PEM software will either display the enclosed text, or prepend the
- necessary headers such that it can be fed to a MIME reader which will
- treat it as an RFC822 mail message.
-
-
-
- Expires: April 28, 1994 [Page 2]
- Network Working Group Internet Engineering Task Force
- Internet Draft Privacy Enhanced Mail Working Group
- J. I. Schiller
- MIT
- October 1993
-
- The behavior of a MIME mail reader without PEM capability
-
- A MIME mail reader will process a MIME message with PEM contents as
- any other MIME message. If an application/pem-1421 object is found
- and the MIME reader does not support PEM, then the MIME reader may
- handle the enclosed PEM message in the same or similar fashion as it
- handles any other application subtype for which it has no support
- software.
-
- The behavior of a non-MIME but PEM capable mail reader
-
- A PEM mail reader that does not understand MIME will be able to
- process a MIME/PEM message provided that the message itself is a PEM
- message. In other words, if the whole message is PEM processed as the
- last step prior to transmission, then a PEM capable, but non-MIME
- capable mail reader will be able to process the PEM message and then
- display the enclosed MIME object in the same fashion that a non-MIME
- mail reader handles a MIME (but non-PEM) message today.
-
- It is likely that a non-MIME compliant mail reading agent may not be
- able to parse a MIME message in order to discover an enclosed
- "application/pem-1421" component containing a PEM message. However an
- end-user may be able to manually reformat the incoming message so as
- to make it amenable to PEM processing.
-
- Discussion
-
- Prior approaches to integrating PEM and MIME have suggested a
- significant departure from the RFC1421 PEM encapsulation mechanism.
- Specifically it has been recommended that PEM messages be represented
- as MIME multi-part messages. One part of the multi-part would contain
- what in RFC1421 is described as the PEM headers, and the other would
- contain the PEM body that is protected by the PEM mechanisms
- specified in the PEM header part.
-
- This document intentionally does not recommend such an approach. This
- is because it is important for MIME interpreters to *not* reach down
- into the structure of a PEM body until PEM processing has been
- performed. The reason for this requirement has to do with the
- requirement that PEM body parts be immutable so that digital
- signatures computed on them can be verified. If a PEM body part is
- decomposeable by MIME readers, then it is quite possible that MIME
- gateways could reassemble PEM body parts in a fashion semantically
- equivalent to the original message, but sufficiently different (i.e.,
- different in one bit is sufficient) to cause signature verification
- to later fail.
-
- It is important to understand that the signature verification
- requirement mandates that PEM messages be carried within MIME as
- "application" objects and not as "message", "multipart" or other
- types of body parts. Once this is recognized, it no longer matters
- whether or not the object within the "application" enclosure appears
- to be a MIME object upon visual inspection, for it is now outside the
- realm of what a MIME interpreter may attempt to parse without the aid
- of the application processor (PEM in this case).
-
- Expires: April 28, 1994 [Page 3]
- Network Working Group Internet Engineering Task Force
- Internet Draft Privacy Enhanced Mail Working Group
- J. I. Schiller
- MIT
- October 1993
-
- By using the RFC1421 based encapsulation technology we benefit from
- the experience gained in debugging existing PEM implementations as
- well as ease backward compatibility with non-MIME based PEM agents.
-
- Examples
-
- Date: Sun, 30 May 93 23:59:39 EST
- From: jis@MIT.EDU (Jeffrey I. Schiller)
- To: pem-dev@tis.com
- Subject: Example PEM MIME Interaction
- MIME-Version: 1.0
- Content-Type: application/pem-1421
-
- -----BEGIN PRIVACY-ENHANCED MESSAGE-----
- Proc-Type: 4,MIC-CLEAR
- Content-Domain: MIME
- Originator-Certificate: MIIB+jCCAWMCAQIwDQYJKoZIhvcNAQECBQAwSj...
- Issuer-Certificate: MIIB+jCCAWMCAQQwDQYJKoZIhvcNAQECBQAwRDELMA...
- MIC-Info: RSA-MD5,RSA,dlSRMLFiwcK7FDvFef8gJfLWwMM4uxMSNtKGlLz9xxw
- fAyvaFuzp85davcwX4q7EImDs4K46Uwh0oL2GueLnv6b4s1gg25mMg/Y5Bd7/HaE
- cvkV77tKWGXZrDGEgGSDA
-
- Content-Type: text/plain; charset=us-ascii
-
- This is a test message.
- -----END PRIVACY-ENHANCED MESSAGE-----
-
- Author's Address
-
- Jeffrey I. Schiller
- Massachusetts Institute of Technology
- MIT Room E40-311
- 1 Amherst Street
- Cambridge, MA 02139
- U.S.A.
- Tel: +1 (617) 253-0161
- Fax: +1 (617) 258-8736
- Email: jis@mit.edu
-
-
-