rough sketch of a potential solution
Keith Moore <[email protected]> Sat, 15 Nov 2003 17:29:42 -0500
| Newsgroups | gmane.ietf.imaa |
|---|---|
| Message-ID | <[email protected]> |
This is intended to be a rough sketch of something which I'm wondering might be a solution. Obviously there are a lot of details to work out, but offhand I think this basic approach looks workable. I'd appreciate it if initial comments on this were about the feasability of the basic approach that could make or break it, rather than about protocol or implementation details. IMHO, IETF WGs often slow themselves down by expecting fully-worked-out specifications for initial proposals. So comments about such details should wait for a detailed specification. Please use your best judgement about whether such comments are appropriate at this stage. -- In a nutshell, there are two parts of the problem: 1. a sender wants to be able to type in a recipient address that is easy to remember and/or transcribe (from paper or sounds) 2. a recipient wants to be able to remember or transcribe a recipient address (to paper or sounds) in such a way that it can be used later, or given to another potential sender Note that the sender and recipient may not share the ability to use language/script in which an address was supplied by the sender. -- Parts of a potential solution: 1. Define a way to list zero or more equivalent addresses (in various languages and/or scripts) for each address in a semder or recipient message header - Every address in a message header would have a distinguished, "fallback" address expressed in (hopefully transcribable) ASCII. These addresses would go in the normal From/Reply-To/To/CC/Bcc etc. fields. - Each of those addresses could optionally have zero or more equivalent local-parts listed, which could be expressed in various languages/scripts. (I say equivalent local-parts instead of equivalent addresses, because it minimizes the potential for problems. For instance, it prevents unscrupulous address mappers from using this as a mechanism to transparently forward mail for certain addresses to sites that haven't agreed to accept it - it also avoids synchronization errors of a similar nature that could occur by accident.) - There could optionally a signature on the mapping, so that it could be verified This would provide a way by which a recipient (with an upgraded MUA) could see the address for each sender and recipient of the message (i.e. those listed in the message header) which was the most readable/ transcribable/memorable TO THAT RECIPIENT of those available. Recipients without upgraded MUAs would see only the fallback addresses. 2. Define an "address mapping service" which could, given an address typed by the sender, produce a list of alternative forms of that address in various languages and scripts. - The server would be reached by converting the typed domain into an IDN, and looking up a SRV record for the address mapping service at that domain. (alternatively: the service could be implement using SMTP and the mapping service provided by the primary MX. this has some advantages - it makes it easy for the primary MX to stay in sync with the mappings, but also some disadvantages - increasing load on the SMTP server and being problematic for domains whose advertised primary MXes are only relays and do not have authorititave information about address mappings) - The addresses returned would be as follows: 1 distinguished fallback address in ASCII 0 or more alternative local-parts, along with language and script indicators. each of these local-parts would be in the same domain as the original. - There could optionally bea signature on the mapping, so that it could be verified This would allow the sender's upgraded MUA to accept a single typed-in address from the sender (in any language/script supported by the mapping service) and obtain a list of alternative forms of that address, along with the ASCII fallback address. The address mapping service could potentially also minimize problems due to multiple ways of representing the same or similar characters in some languages. 3. The IMAA address encoding mechanism, or a similar mechanism for encoding addresses into legal 822-style ASCII addresses Here's how I see these being used by an upgraded MUA: Display - An upgraded MUA will display each address in the form that best suits the recipient's preferences. If no such form is available, the ASCII fallback will be displayed. An MUA doing display of a message WOULD NOT use the address mapping service - both to minimize load on the mapping service and to prevent the mapping service being used as a means to know when the recipient is reading the message. Compose - For each address supplied by the sender, the sender's MUA would attempt to lookup alternative forms of the address. If alternative forms are found, the fallback form would be used in the from/reply-to/To/cc/bcc/etc fields, whereas the alternative forms would be encoded in "equivalent-address" fields. Otherwse (e.g. if the server were not reachable, were not supported, or returned an error), the IMAA encoding of the typed-in address would be used in the from/reply-to/to/cc/bcc/etc field. (alternatively: the sender's mail submission server would do the lookup. this would let the lookup be done in "batch mode" rather than delaying the submission of a message, but it would also prevent sender-signed messages.) Replies - Like Compose, except that the fallback and alternative addresses would be obtained from the message header of the message being replied to. Any newly typed-in addresses would be obtained as in Compose. If the reply were to a message that did not contain alternative addresses, the replying MUA could look up the alternatives using the address mapping service. Submission - In all cases, the fallback form (whether obtained from the mapping service or IMAA-encoded) would be used in the envelope of mail submission and relay protocols. Since the fallback addresses would be used in legacy-format sender and recipient message headers also, this would produce the least-surprising behavior for legacy mail handling software. (alternatively: The format of each addreses used in the envelope would be the IMAA-encoded version of the address which was either (a) the one typed by the message sender, or if the address was obtained from the header of another message, the alternative that is in the language and script preferred by the message sender. that way, any DSNs that were returned would reflect the addresses most meaningful to the sender) Legacy MUAs would display, and reply to, the fallback address forms that were stored in the traditional places in the message header. Replies from legacy MUAs would not contain alternative address forms, but any replies to those replies from upgraded MUAs would contain alternative address forms if they were available.) MTAs do not have to change except that they would somehow need to know about alternative addresses . No matter which alternative is used the message needs to end up at the same mailbox. -- Notes - There's really no need for substantial changes in the existing ASCII-based header format - as moving to UTF-8 headers still wouldn't provide a means of listing alternatives, and this seems to be a necessary feature. - The address mapping service would appear to most benefit sites that had a large portion of usernames in languages using ideographic scripts or using alphabetic scripts that were based on other than the Latin alphabet, and especially sites for which addresses would be difficult to transcribe precisely due to different ways of representing the same or similar characters. Sites have the option of installing an address mapping service or not doing so depending on the benefit they perceive from doing so. In the absence of the address mapping service, IMAA-encoded addresses would be used. The address mapping service basically permits less "ugly" addresses than IMAA-encoded addresses to be substituted when they are available.