Email Address Internationalization                        Y. YONEYA, Ed.
(EAI)                                                   K. Fujiwara, Ed.
Internet-Draft                                                      JPRS
Intended status: Experimental                               July 6, 2007
Expires: January 7, 2008


      Downgrading mechanism for Email Address Internationalization
                    draft-ietf-eai-downgrade-04.txt

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   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
   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."

   The list of current Internet-Drafts can be accessed at
   http://www.ietf.org/ietf/1id-abstracts.txt.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on January 7, 2008.

Copyright Notice

   Copyright (C) The IETF Trust (2007).

Abstract

   Traditional mail systems handle only US-ASCII characters in SMTP
   envelope and mail header fields.  The Email Address
   Internationalization (UTF8SMTP) allows UTF-8 characters in SMTP
   envelope and mail header fields.  To deliver internationalized Email
   messages to/via UTF8SMTP non-compliant environment, some sort of
   converting mechanism is required.  This document describes
   downgrading mechanism for Email Address Internationalization.



YONEYA & Fujiwara        Expires January 7, 2008                [Page 1]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  4
   3.  New header fields definition . . . . . . . . . . . . . . . . .  4
   4.  SMTP Downgrading . . . . . . . . . . . . . . . . . . . . . . .  5
   5.  Email header fields downgrading  . . . . . . . . . . . . . . .  6
   6.  MIME body part headers downgrading . . . . . . . . . . . . . .  9
   7.  Security considerations  . . . . . . . . . . . . . . . . . . . 10
   8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 10
   9.  Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 11
   10. Change History . . . . . . . . . . . . . . . . . . . . . . . . 11
     10.1.  draft-yoneya-ima-downgrade: Version 00  . . . . . . . . . 11
     10.2.  draft-yoneya-ima-downgrade: Version 01  . . . . . . . . . 11
     10.3.  draft-ietf-eai-downgrade: Version 00  . . . . . . . . . . 11
     10.4.  draft-ietf-eai-downgrade: Version 01  . . . . . . . . . . 12
     10.5.  draft-ietf-eai-downgrade: Version 02  . . . . . . . . . . 12
     10.6.  draft-ietf-eai-downgrade: Version 03  . . . . . . . . . . 12
     10.7.  draft-ietf-eai-downgrade: Version 04  . . . . . . . . . . 12
   11. Normative References . . . . . . . . . . . . . . . . . . . . . 12
   Appendix A.  Displaying downgraded message . . . . . . . . . . . . 14
     A.1.   Displaying technique 1  . . . . . . . . . . . . . . . . . 14
     A.2.   Displaying technique 2  . . . . . . . . . . . . . . . . . 14
   Appendix B.  Examples  . . . . . . . . . . . . . . . . . . . . . . 14
     B.1.   Downgrading example 1 . . . . . . . . . . . . . . . . . . 14
     B.2.   Displaying example (Displaying technique 1) . . . . . . . 17
     B.3.   Displaying example (Displaying technique 2) . . . . . . . 17
     B.4.   Downgrading example 2 . . . . . . . . . . . . . . . . . . 19
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 21
   Intellectual Property and Copyright Statements . . . . . . . . . . 22





















YONEYA & Fujiwara        Expires January 7, 2008                [Page 2]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


1.  Introduction

   Traditional mail systems which are defined by [RFC2821] and [RFC2822]
   allow US-ASCII characters in SMTP envelope and mail header field
   values.  The UTF8SMTP proposals [I-D.ietf-eai-framework],
   [I-D.ietf-eai-utf8headers] and [I-D.ietf-eai-smtpext] allow UTF-8
   characters in SMTP envelope and mail header field values.

   Delivering non-ASCII mail addresses from a sender to recipients
   requires all components on the mail delivery route are UTF8SMTP
   compliant.  Otherwise, non-ASCII mail address can't be delivered.  To
   solve the problem, this document describes downgrading mechanism that
   enables delivering non-ASCII mail addresses to traditional mail
   system by converting them to corresponding US-ASCII representation.
   And more, [I-D.ietf-eai-utf8headers] expands that mail header fields
   and MIME header fields are allowed to use any UTF-8 characters.  This
   downgrading mechanism targets mail header fields and MIME header
   fields to be converted to US-ASCII only to send to UTF8SMTP non-
   compliant receivers.

   [I-D.ietf-eai-smtpext] section 2.2 defines when downgrading occurs.
   Mail clients (MUAs, MSAs, MTAs) try to deliver Email messages to SMTP
   servers by static setting or DNS MX resource records resolution.  If
   the SMTP client has an UTF8SMTP envelope or an UTF8SMTP message and
   the SMTP client detects that SMTP server doesn't support "UTF8SMTP"
   option at EHLO, then the SMTP client MUST NOT send the UTF8SMTP
   envelope or UTF8SMTP message to the SMTP server.  The section shows 4
   choices.  The second choice "reject or generate a notification of
   non-deliverability" is always allowed.  The fourth choice is
   downgrading.

   Downgrading may be implemented in MUAs, MSAs, MTAs, MDAs which
   generates or receives UTF8SMTP envelopes or UTF8SMTP messages and may
   send them to non-UTF8SMTP compliant systems.

   This document tries to define the downgrading process clearly and it
   preserves the original information as much as possible.

   Downgrading in UTF8SMTP consists of the following four parts:
   o  New header fields definition
   o  SMTP downgrading
   o  Email header fields downgrading
   o  MIME header fields downgrading
   Before sending to traditional SMTP server, the downgrading process
   need to perform SMTP downgrading, Email header fields downgrading,
   and MIME header fields downgrading.

   In Section 3, two header fields are introduced.  One is "Envelope-



YONEYA & Fujiwara        Expires January 7, 2008                [Page 3]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Downgraded:", it preserves the original envelope information.  The
   other is "Downgraded:", it preserves the original header fields which
   contains non-ASCII email addresses or which does not have clear
   downgrading definition.

   The SMTP downgradin is described in Section 4.  It generates US-ASCII
   only envelope information from an UTF8SMTP envelope.

   The Email header fields downgrading is described in Section 5.  It
   generates US-ASCII only header fields.

   The MIME header fields are expanded in [I-D.ietf-eai-utf8headers].
   The MIME header fields downgrading is described in Section 6.  It
   generates US-ASCII only MIME header fields.


2.  Terminology

   The key words "MUST", "SHALL", "REQUIRED", "SHOULD", "RECOMMENDED",
   and "MAY" in this document are to be interpreted as described in RFC
   2119 [RFC2119].

   All specialized terms used in this specification are defined in the
   EAI overview [I-D.ietf-eai-framework] or in [RFC2821][RFC2822], MIME
   documents [RFC2045] [RFC2047] [RFC2183] [RFC2231].  The terms "ASCII
   address", "internationalized email address", "non-ASCII address",
   "i18mail address", "UTF8SMTP", "message" and "mailing list" are used
   with the definitions from [I-D.ietf-eai-framework] document.

   This document depends on [I-D.ietf-eai-smtpext],
   [I-D.ietf-eai-utf8headers], and [I-D.ietf-eai-dsn].  Key words used
   in these document are used in this document, too.

   The term "non-ASCII" is an UTF-8 string which contains at least one
   non-ASCII character.

   An "UTF8SMTP envelope" has Email originator/recipient addresses
   expanded by [I-D.ietf-eai-smtpext] and [I-D.ietf-eai-dsn].

   An "UTF8SMTP message" is Email messages expanded by
   [I-D.ietf-eai-utf8headers].


3.  New header fields definition

   A generic encapsulation header "Downgraded:" is defined to preserve
   the original header field.  It has two value fields.  The former
   value field holds the original header field name.  The latter value



YONEYA & Fujiwara        Expires January 7, 2008                [Page 4]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   field holds the original header field value.  Any original header
   field value is treated as an unstructured value.  The latter value
   field of this header MUST be encoded by [RFC2047] section 5(1) method
   with charset='UTF-8' same as a 'Subject' header.  The header field
   syntax is specified as follows:


   fields     =/ downgraded
   downgraded =  "Downgraded:" [FWS] field-name ":" unstructured CRLF


   Encapsulating a header in a Downgraded: header is defined as:
   1.  Generate new Downgraded: header whose former value is the
       original header field name and latter value is the original
       header fleid value.
   2.  Encode the generated header by [RFC2047] section 5(1) method with
       charset='UTF-8'.
   3.  Replace the original header field as the generated header field.

   Another new header "Envelope-Downgraded:" is defined to preserve SMTP
   envelope downgraded information.  SMTP envelope downgraded
   information consists of the original non-ASCII address and the
   downgraded all-ASCII address.  The non-ASCII address is encoded by
   [RFC2047] with charset='UTF-8'.  The header field syntax is specified
   as follows:

   fields      =/ edowngraded
   edowngraded = "Envelope-Downgraded:" [FWS] edowngraded-field ":"
                                        [FWS] "<" uPath ">" [FWS]
                                        "<" Mailbox ">" [FWS] CRLF
   edowngraded-field =  "From" / "To"

   Original non-ASCII address <uPath> is defined in
   [I-D.ietf-eai-smtpext]. <Mailbox> is defined in [RFC2821], section
   4.1.2.  The "Envelope-Downgraded:" header field is encoded by
   [RFC2047] in the downgraded message.


4.  SMTP Downgrading

   Target of downgrading elements in SMTP envelope are below:

   o  MAIL FROM:
   o  RCPT TO:
   o  ORCPT parameter

   Downgrading in SMTP envelope uses ALT-ADDRESS parameter defined in
   [I-D.ietf-eai-smtpext].  An address is downgradable if the address is



YONEYA & Fujiwara        Expires January 7, 2008                [Page 5]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   US-ASCII address or the address has US-ASCII address specified by
   ALT-ADDRESS parameter.

   If each recipient address and the return address is downgradable, the
   SMTP to the recipient is downgradable.

   Even if no downgrading is performed for envelope from/to, MUA/MTA
   MUST downgrade message header fields and MIME header fields in the
   message body including non-ASCII characters.  This is described in
   Section 5 and Section 6.

   MTA replaces non-ASCII mail address with specified alternative US-
   ASCII address when downgrading.  Before replacing, decode the ALT-
   ADDRESS parameter value because it is encoded as xtest [RFC3461].
   Also MTA preserves original information using "Envelope-Downgraded"
   header defined in Section 3 with From or To field name.  The non-
   ASCII mail addresses are encoded by [RFC2047] and put into "Envelope-
   Downgraded" header.

   Not to disclose whole recipient addresses, MUA/MTA MUST NOT add
   "Envelope-Downgraded: To:" header if the SMTP downgrading targets
   multiple recipients.  See Section 7 for more detail.

   While the recipient address downgrading, the "RCPT TO" command may
   have an ORCPT parameter.  The ORCPT parameter is used for DSN
   [RFC3461].  If the ORCPT parameter contains "utf-8" address type
   address and the address contains non-ASCII characters, the ORCPT
   parameter MUST be converted to utf-8-addr-xtext form or utf-8-addr-
   unitext form which is described in [I-D.ietf-eai-dsn].


5.  Email header fields downgrading

   This section defines conversion method to US-ASCII for each header
   field which may contain non-ASCII characters.  Header fields are
   listed in [RFC4021].  If the whole mail header field does not contain
   non-ASCII characters, email header field downgrading is not required.
   If the header field contains non-ASCII characters, convert the header
   field.  Each header field's downgrading method is described below.

   o  Downgrading Address header fields

      From:
      Sender:







YONEYA & Fujiwara        Expires January 7, 2008                [Page 6]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


      Reply-To:
      To:
      Cc:
      Bcc:
      Resent-From:
      Resent-Sender:
      Resent-To:
      Resent-Cc:

      The header field value is composed of single or multiple <angle-
      addr>/<utf8-addr-spec> fields defined in
      [I-D.ietf-eai-utf8headers].
      If the header has no <angle-addr> or <utf8-addr-spec> which
      contains non-ASCII characters, only "display-name" part or
      comments contain non-ASCII characters, the "display-name" or
      comments are encoded by [RFC2047] with charset='UTF-8'.
      Otherwise, preserve the header field in "Downgraded:" header,
      generate US-ASCII only address header, and replace the original
      header field with the generated US-ASCII only header field.  New
      header generation method are shown in below.

      Extract every field and downgrade each <mailbox>/<angle-addr>/
      <utf8-addr-spec>.

      If the non-ASCII address is in <utf8-addr-spec> form, then rewrite
      it as "Internationalized Address utf8-addr-spec-encoded
      Removed:;". "utf8-addr-spec" is encoded to "utf8-addr-spec-
      encoded" by [RFC2047].

      The field may contain multiple <comment> fields.  The <comment>
      fields are encoded by [RFC2047] with charset='UTF-8', if
      necessary.

      <mailbox> is defined as "display-name <angle-addr>" in
      [I-D.ietf-eai-utf8headers].  The "display-name" field is encoded
      by [RFC2047] with charset='UTF-8', if necessary.

      The <angle-addr> may contain comments.  Before processing, remove
      comments from the <angle-addr>.

      UTF8SMTP <angle-addr> defined in [I-D.ietf-eai-utf8headers]
      consists of 3 forms.  Downgrading method is defined for each form.

      *  <US-ASCII>
         <US-ASCII> is used as is.
      *  <non-ASCII>
         Non-ASCII mail address without sender-specified US-ASCII
         address is replaced as



YONEYA & Fujiwara        Expires January 7, 2008                [Page 7]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


         "Internationalized Address non-ASCII-encoded Removed:;".
         non-ASCII address is encoded to "non-ASCII-encoded" by
         [RFC2047].
      *  <non-ASCII <US-ASCII>>
         Non-ASCII mail address with sender-specified US-ASCII address
         MUST be replaced as "display-name <US-ASCII>".

   o  Downgrading Non-ASCII in comments

      Date:
      Message-ID:
      In-Reply-To:
      References:
      Resent-Date:
      Resent-Message-ID:
      MIME-Version:
      Content-ID:

      These header fields do not contain non-ASCII characters except in
      comments.  If the header contains UTF-8 characters in comments,
      encode the header by [RFC2047] with charset='UTF-8'.

   o  Trace header

      Received:

      If the FOR clause contains non-ASCII addresses, remove the FOR
      clause in the header.  The other part does not contain non-ASCII
      values.

   o  MIME Content header

      Content-Type:
      Content-Disposition:

      Encode the header by [RFC2231] with charset='UTF-8'.

   o  Unstructured text headers and structured text headers

      Subject:
      Comments:
      Keywords:
      Content-Description:

      Encode the header by [RFC2047] with charset='UTF-8'.






YONEYA & Fujiwara        Expires January 7, 2008                [Page 8]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   o  URI headers

      List-Archive:
      List-Help:
      List-Owner:
      List-Post:
      List-Subscribe:
      List-Unsubscribe:

      If the header contains UTF-8 characters in comments, encode the
      header by [RFC2047] with charset='UTF-8'.  If the header contains
      UTF-8 characters in URI, Encode the URI by [RFC3987].

   o  Other target headers
      All other headers which contains non-ASCII characters are
      preserved in Downgraded: header and removed.

   o  ASCII only headers

      Content-Transfer-Encoding:

      This header is not target of downgrading.

   Downgraded header fields should be inserted or replaced at the same
   position of the original header field.


6.  MIME body part headers downgrading

   MIME body part header fields may contain non-ASCII characters
   [I-D.ietf-eai-utf8headers].  This section defines conversion method
   to US-ASCII for each MIME header field which may contain non-ASCII
   characters.  Parse the message body's MIME structure for all level
   and check all MIME header fields whether contains non-ASCII
   characters.  If the header contains non-ASCII characters in the
   header value, the header is a target of the MIME body part headers
   downgrading.  Each MIME header field's downgrading method is
   described below:

   Content-ID:
      The Content-ID: header does not contain non-ASCII characters
      except in comments.  If the header contains UTF-8 characters in
      comments, encode the header by [RFC2047] with charset='UTF-8'.








YONEYA & Fujiwara        Expires January 7, 2008                [Page 9]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Content-Type:
   Content-Disposition:
      Encode the header by [RFC2231] with charset='UTF-8'.

   Content-Description:
      Encode the header by [RFC2047] with charset='UTF-8'.

   Content-Transfer-Encoding:
      This header does not contain non-ASCII characters.


7.  Security considerations

   o  Rewriting headers increases the opportunities for undetected
      spoofing.
   o  Recipients addresses can be undisclosed if those addresses are
      listed on Bcc or group address.  Those undisclosed addresses are
      used only in the Envelope.  Copying information from the Envelope
      into headers creates some risk of inadvertent information
      disclosure (not just about addresses).
   o  It is likely that the techniques suggested here will invalidate
      methods that depend on signatures over headers or the envelope.
      "Issues" does talk about that, but, because this document strongly
      implies that one can downgrade and then upgrade again with no risk
      of loss of information, the topic should be explored further.
   o  Many gateways and servers on the Internet will discard headers
      with which they are not familiar.  To the extent to which the
      downgrade procedures depend on new headers (e.g., "Downgraded") to
      avoid information loss, then the risk of having those headers
      dropped and its implications must be identified.  In particular,
      it appears to me that, if the Downgraded headers are dropped,
      there is no possibility of reconstructing the original information
      at any point (before, during, or after delivery).

   See "Security considerations" section in [I-D.ietf-eai-framework] for
   more discussion.


8.  IANA Considerations

   IANA is requested to register the following header fields in the
   Permanent Message Header Field Repository, in accordance with the
   procedures set out in [RFC3864].








YONEYA & Fujiwara        Expires January 7, 2008               [Page 10]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Header field name:  Downgraded
   Applicable protocol:  mail
   Status:  experimental
   Author/change controller:  IETF
   Specification document(s):  This document (Section 3)

   Header field name:  Envelope-Downgraded
   Applicable protocol:  mail
   Status:  experimental
   Author/change controller:  IETF
   Specification document(s):  This document (Section 3)


9.  Acknowledgements

   Significant comments and suggestions were received from John Klensin,
   Harald Alvestrand, Chris Newman, Charles Lindsey, Marcos Sanz, Alexey
   Melnikov, Frank Ellermann and JET members.


10.  Change History

   This section is used for tracking the update of this document.  Will
   be removed after finalize.

10.1.  draft-yoneya-ima-downgrade: Version 00

   o  Initial version
   o  Followed draft-yeh-ima-utf8headers-00 and draft-yao-smtpext-00

10.2.  draft-yoneya-ima-downgrade: Version 01

   o  Document structure was changed
   o  Followed draft-yeh-ima-utf8headers-01 and draft-yao-smtpext-02
   o  Downgrading requirements were added
   o  SMTP DATA encapsulation method was proposed
   o  Downgrading examples was provided

10.3.  draft-ietf-eai-downgrade: Version 00

   o  Followed draft-yeh-ima-utf8headers-01 and
      draft-ietf-eai-smtpext-00
   o  No header downgrading method was proposed
   o  Header encapsulation method was proposed







YONEYA & Fujiwara        Expires January 7, 2008               [Page 11]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


10.4.  draft-ietf-eai-downgrade: Version 01

   o  Followed draft-ietf-eai-utf8headers-00
   o  Header conversion and encapsulation method was merged
   o  Header conversion method was defined in detail

10.5.  draft-ietf-eai-downgrade: Version 02

   o  Followed draft-ietf-eai-utf8headers-01 and
      draft-ietf-eai-smtpext-01
   o  Specification about algorithmic generated address is removed
   o  No header downgrading method was removed
   o  SMTP DATA encapsulation method was removed

10.6.  draft-ietf-eai-downgrade: Version 03

   o  Followed draft-ietf-eai-utf8headers-03 and
      draft-ietf-eai-smtpext-03
   o  Downgraded: and Envelope-Downgraded: headers definition was added
   o  Mail header downgrading method was refined
   o  Examples in Appendix A were refined

10.7.  draft-ietf-eai-downgrade: Version 04

   o  Followed draft-ietf-eai-utf8headers-06, draft-ietf-eai-smtpext-07
      and draft-ietf-eai-dsn-02
   o  Downgrading requirements and conditions were moved to
      Introduction.
   o  Descriptions about upgrading were removed.
   o  SPF and DKIM discussion were removed.
   o  Added many header fields downgrading.
   o  Allow address literal rewriting without alternate US-ASCII address
      in header fields.
   o  Added MIME body part headers downgrading.
   o  Added ORCPT downgrading.


11.  Normative References

   [I-D.ietf-eai-dsn]
              Newman, C. and A. Melnikov, "International Delivery and
              Disposition Notifications", draft-ietf-eai-dsn-02 (work in
              progress), July 2007.

   [I-D.ietf-eai-framework]
              Klensin, J. and Y. Ko, "Overview and Framework for
              Internationalized Email", draft-ietf-eai-framework-05
              (work in progress), February 2007.



YONEYA & Fujiwara        Expires January 7, 2008               [Page 12]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   [I-D.ietf-eai-smtpext]
              Yao, J. and W. Mao, "SMTP extension for internationalized
              email address", draft-ietf-eai-smtpext-07 (work in
              progress), June 2007.

   [I-D.ietf-eai-utf8headers]
              Yeh, J., "Internationalized Email Headers",
              draft-ietf-eai-utf8headers-05 (work in progress),
              April 2007.

   [RFC2045]  Freed, N. and N. Borenstein, "Multipurpose Internet Mail
              Extensions (MIME) Part One: Format of Internet Message
              Bodies", RFC 2045, November 1996.

   [RFC2047]  Moore, K., "MIME (Multipurpose Internet Mail Extensions)
              Part Three: Message Header Extensions for Non-ASCII Text",
              RFC 2047, November 1996.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2183]  Troost, R., Dorner, S., and K. Moore, "Communicating
              Presentation Information in Internet Messages: The
              Content-Disposition Header Field", RFC 2183, August 1997.

   [RFC2231]  Freed, N. and K. Moore, "MIME Parameter Value and Encoded
              Word Extensions:
              Character Sets, Languages, and Continuations", RFC 2231,
              November 1997.

   [RFC2821]  Klensin, J., "Simple Mail Transfer Protocol", RFC 2821,
              April 2001.

   [RFC2822]  Resnick, P., "Internet Message Format", RFC 2822,
              April 2001.

   [RFC3461]  Moore, K., "Simple Mail Transfer Protocol (SMTP) Service
              Extension for Delivery Status Notifications (DSNs)",
              RFC 3461, January 2003.

   [RFC3864]  Klyne, G., Nottingham, M., and J. Mogul, "Registration
              Procedures for Message Header Fields", BCP 90, RFC 3864,
              September 2004.

   [RFC3987]  Duerst, M. and M. Suignard, "Internationalized Resource
              Identifiers (IRIs)", RFC 3987, January 2005.

   [RFC4021]  Klyne, G. and J. Palme, "Registration of Mail and MIME



YONEYA & Fujiwara        Expires January 7, 2008               [Page 13]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


              Header Fields", RFC 4021, March 2005.


Appendix A.  Displaying downgraded message

   Displaying downgraded message is mostly retrieved by MIME decoding
   [RFC2047][RFC2231].  Result of MIME decoding, downgraded address
   header fields and undefined header fields are still in Downgraded:
   headers, but it is MIME decoded.  This decoded Downgraded: headers
   contain the original headers and the recipient can read them.  But
   the recipient's MUA cannot use the original header fields
   automatically.

   Additionally, MUAs can decode Downgraded: header.  It is described in
   Appendix A.1 and Appendix A.2.

A.1.  Displaying technique 1

   MUA can remove 'Downgraded:' from decoded 'Downgraded:' header
   fields.  With this technique, The address header fields may be
   displayed twice, one is ASCII-only downgraded header field and the
   other is from decoded Downgraded: header.

A.2.  Displaying technique 2

   MUA can decode and regenerate headers which contains the original
   non-ASCII addresses.  It is described below:
   o  For each Downgraded: header, generate new header which field-name
      is the second field of the Downgraded: header and the header value
      is the third field of the Downgraded: header.
      *  If the header is an address header described in Section 5,
         +  Generate ASCII only header defined in Section 5 from the
            decoded header.
         +  Remove the header field which is the same with the generated
            ASCII only header from the header fields.  If the headers
            contain [RFC2047] encoded part, decode it before comparison.


Appendix B.  Examples

B.1.  Downgrading example 1

   This section shows an SMTP Downgrading example.  Consider a
   downgradable mail message.
   o  The sender address is "NON-ASCII-FROM" which is non-ASCII address.
      Its ASCII alternative is "ASCII-FROM".





YONEYA & Fujiwara        Expires January 7, 2008               [Page 14]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   o  The "To" address is "NON-ASCII-TO" which is non-ASCII address.
      Its ASCII alternative is "ASCII-TO".
   o  The "CC" address is non-ASCII address "NON-ASCII-CC" without
      alternative US-ASCII address.
   o  The Subject header is "NON-ASCII-SUBJECT" which contains non-ASCII
      characters.

   Original UTF8SMTP message SMTP session


   MAIL From: <NON-ASCII-FROM> ALT-ADDRESS <ASCII-FROM>
   RCPT TO: <NON-ASCII-TO> ALT-ADDRESS <ASCII-TO>
   RCPT TO: <NON-ASCII-CC>
   -------------------------------------------------------------
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: NON-ASCII-SUBJECT
   From: <NON-ASCII-FROM <ASCII-FROM>>
   To: <NON-ASCII-TO <ASCII-TO>>
   CC: <NON-ASCII-CC>
   Date: DATE

   MAIL_BODY


                    Figure 3: Original UTF8SMTP message

   In this example, there are two SMTP recipients, one is To:, the other
   is CC:.  In this example, assume the Cc: recipient's MTA supports
   UTF8SMTP and the To: recipient's MTA does not support UTF8SMTP.  The
   SMTP downgrading treats To: session downgrading.  Figure 4 shows SMTP
   downgraded example.

















YONEYA & Fujiwara        Expires January 7, 2008               [Page 15]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   MAIL From: <ASCII-FROM>
   RCPT TO: <ASCII-TO>
   -------------------------------------------------------------
   Envelope-Downgraded: From: <RFC2047(NON-ASCII-FROM)> <ASCII-FROM>
   Envelope-Downgraded: To: <RFC2047(NON-ASCII-TO)> <ASCII-TO>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: NON-ASCII-SUBJECT
   From: <NON-ASCII-FROM <ASCII-FROM>>
   To: <NON-ASCII-TO <ASCII-TO>>
   CC: <NON-ASCII-CC>
   Date: DATE

   MAIL_BODY


                Figure 4: SMTP Downgraded UTF8SMTP message

   After SMTP downgrading, header downgrading is performed.  Final
   downgraded messages are shown in Figure 5.  Return-Path header will
   be added the destination MTA.

   Result of the header downgrading.


   Return-Path: <ASCII-FROM>
   Envelope-Downgraded: From: <RFC2047(NON-ASCII-FROM)> <ASCII-FROM>
   Envelope-Downgraded: To: <RFC2047(NON-ASCII-TO)> <ASCII-TO>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: RFC2047(UTF-8_SUBJECT)
   Downgraded: From: RFC2047(<NON-ASCII-FROM <ASCII-FROM>>)
   From: <ASCII-FROM>
   Downgraded: To: RFC2047(<NON-ASCII-TO <ASCII-TO>>)
   To: <ASCII-TO>
   Downgraded: CC: RFC2047(<NON-ASCII-CC>)
   CC: Internationalized address RFC2047(NON-ASCII-CC) removed:;
   Date: DATE

   MAIL_BODY


                    Figure 5: Header downgraded message




YONEYA & Fujiwara        Expires January 7, 2008               [Page 16]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   RFC2047() stands for [RFC2047] encoding.

B.2.  Displaying example (Displaying technique 1)

   This example shows MIME decoded message of Figure 5.

   Result of MIME decoding.


   Return-Path: <ASCII-FROM>
   Envelope-Downgraded: From: <NON-ASCII-FROM> <ASCII-FROM>
   Envelope-Downgraded: To: <NON-ASCII-TO> <ASCII-TO>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: UTF-8_SUBJECT
   Downgraded: From: <NON-ASCII-FROM <ASCII-FROM>>
   From: <ASCII-FROM>
   Downgraded: To: <NON-ASCII-TO <ASCII-TO>>
   To: <ASCII-TO>
   Downgraded: CC: <NON-ASCII-CC>
   CC: Internationalized address NON-ASCII-CC removed:;
   Date: DATE

   MAIL_BODY


                      Figure 6: MIME decoded message

B.3.  Displaying example (Displaying technique 2)

   This example shows displaying process of Appendix A.2 for Figure 5.

   First, check 'Downgraded:' header existence.

   Select 'Downgraded:' headers.


   Downgraded: From: <NON-ASCII-FROM <ASCII-FROM>>
   Downgraded: To: <NON-ASCII-TO <ASCII-TO>>
   Downgraded: CC: <NON-ASCII-CC>


      Figure 7: Displaying technique 2: selecting Downgraded headers






YONEYA & Fujiwara        Expires January 7, 2008               [Page 17]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Apply address header downgrading to the decoded header.


   From: <ASCII-FROM>
   To: <ASCII-TO>
   CC: Internationalized address RFC2047(NON-ASCII-CC) removed:;


      Figure 8: Displaying technique 2: downgraded decoded Downgraded
                                  headers

   Remove the header line which is the same with the downgraded line.
   If the headers contain [RFC2047] encoded part, decode it before
   comparison.


   Return-Path: <ASCII-FROM>
   Envelope-Downgraded: From: <NON-ASCII-FROM> <ASCII-FROM>
   Envelope-Downgraded: To: <NON-ASCII-TO> <ASCII-TO>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: UTF-8_SUBJECT
   Downgraded: From: <NON-ASCII-FROM <ASCII-FROM>>
   Downgraded: To: <NON-ASCII-TO <ASCII-TO>>
   Downgraded: CC: <NON-ASCII-CC <ASCII-CC>>
   Date: DATE

   MAIL_BODY


       Figure 9: Displaying technique 2: Removing duplicated headers


















YONEYA & Fujiwara        Expires January 7, 2008               [Page 18]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Decode each 'Downgraded' header and replace it with its decoded
   header.  If each mail header has [RFC2047] encoded part and which
   encoding is "UTF-8", it is a downgraded header, so decode it.


   Return-Path: <ASCII-FROM>
   Envelope-Downgraded: From: <NON-ASCII-FROM> <ASCII-FROM>
   Envelope-Downgraded: To: <NON-ASCII-TO> <ASCII-TO>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: UTF-8_SUBJECT
   From: <NON-ASCII-FROM <ASCII-FROM>>
   To: <NON-ASCII-TO <ASCII-TO>>
   CC: <NON-ASCII-CC <ASCII-CC>>
   Date: DATE

   MAIL_BODY


              Figure 10: Display technique 2: decoded message

   As a result, in this simple example, all original header fields are
   displayed in the original form.

B.4.  Downgrading example 2

   In many cases, the sender wants to use non-ASCII address and the
   recipient does not support UTF8SMTP and does not have non-ASCII
   address.
   o  The sender address is "NON-ASCII-FROM" which is non-ASCII address.
      Its ASCII alternative is "ASCII-FROM".
   o  The "To" address is "ASCII-TO" which is ASCII only.
   o  The Subject header is "NON-ASCII-SUBJECT" which contains non-ASCII
      characters.















YONEYA & Fujiwara        Expires January 7, 2008               [Page 19]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Original UTF8SMTP message SMTP session


   MAIL From: <NON-ASCII-FROM> ALT-ADDRESS <ASCII-FROM>
   RCPT TO: <ASCII-TO>
   -------------------------------------------------------------
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: NON-ASCII-SUBJECT
   From: <NON-ASCII-FROM <ASCII-FROM>>
   To: <ASCII-TO>
   Date: DATE

   MAIL_BODY


                  Figure 11: Original UTF8SMTP message 2

   In this example, SMTP session is downgradable.  Figure 12 shows SMTP
   downgraded example.



   MAIL From: <ASCII-FROM>
   RCPT TO: <ASCII-TO>
   -------------------------------------------------------------
   Envelope-Downgraded: From: <RFC2047(NON-ASCII-FROM)> <ASCII-FROM>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: NON-ASCII-SUBJECT
   From: <NON-ASCII-FROM <ASCII-FROM>>
   To: <ASCII-TO>
   Date: DATE

   MAIL_BODY


               Figure 12: SMTP Downgraded UTF8SMTP message 2

   After SMTP downgrading, header downgrading is performed.  The
   downgraded example is shown in Figure 13.






YONEYA & Fujiwara        Expires January 7, 2008               [Page 20]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


   Envelope-Downgraded: From: <RFC2047(NON-ASCII-FROM)> <ASCII-FROM>
   Message-Id: MESSAGE_ID
   Mime-Version: 1.0
   Content-Type: text/plain; charset="UTF-8"
   Content-Transfer-Encoding: 8bit
   Subject: RFC2047(UTF-8_SUBJECT)
   Downgraded: From: RFC2047(<NON-ASCII-FROM <ASCII-FROM>>)
   From: <ASCII-FROM>
   To: <ASCII-TO>
   Date: DATE

   MAIL_BODY


                  Figure 13: Header downgraded message 2


Authors' Addresses

   Yoshiro YONEYA (editor)
   JPRS
   Chiyoda First Bldg. East 13F, 3-8-1 Nishi-Kanda
   Chiyoda-ku, Tokyo  101-0065
   Japan

   Phone: +81 3 5215 8451
   Email: yone@jprs.co.jp


   Kazunori Fujiwara (editor)
   JPRS
   Chiyoda First Bldg. East 13F, 3-8-1 Nishi-Kanda
   Chiyoda-ku, Tokyo  101-0065
   Japan

   Phone: +81 3 5215 8451
   Email: fujiwara@jprs.co.jp














YONEYA & Fujiwara        Expires January 7, 2008               [Page 21]


Internet-Draft             UTF8SMTP Downgrade                  July 2007


Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND
   THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS
   OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF
   THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at
   ietf-ipr@ietf.org.


Acknowledgment

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).





YONEYA & Fujiwara        Expires January 7, 2008               [Page 22]