Multipurpose Internet Mail Extensions: MIMEMIME erweitert den in E-Mail üblichen Zeichensatz (US-ASCII, IA5) um andere Zeichensätze, um E-Mail und andere Protokolle für den internationlen Nachrichtenaustausch einsetzen zu können. Dazu wird das Nachrichtenformat neu definiert, um
MIME ist in fünf RFCs spezifiziert: RFC 2045, RFC 2046, RFC 2047, RFC 2048, RFC 2049. Im ersten RFC 2045 werden die grundsätzliche Konzepte erläutert. Ausgehend von dem SMTP-Standard (RFC 821/822) sollen Probleme bei der Übertragung von Nachrichten verschiedener Typen (Text, Bild, Audio), mit einem größeren Zeichensatz als 7-Bit-ASCII und der Interoperabilität mit anderen Standards, wie X.400, gelöst werden. Dazu werden verschiedene Methoden beschrieben, welche insbesondere dahin gehend gewählt wurden, die Kompatibilität mit dem gegenwärtigen SMTP-Standard zu bewahren.
Nachrichten (E-Mails) kann ein weiteres Feld hinzugefügt werden, welches den MIME-Standard kennzeichnet:
Der Typ einer Nachricht wird durch ein Inhaltstypfeld angegeben, welches durch Parameter modifiziert werden kann.
Inhaltstypen sind u.a. "text", "image", "audio", "video", "application". Um die Nachrichten während der Übertragung beliebig kodieren zu können, wird ein Content-Transfer-Encoding header field angegeben.
Gültige Übertragungsmechanismen sind u.a. "7bit", "8bit", "binary", "quoted-printable" und "base64". Base64Die Base64-Kodierung bildet 3 Bytes mit insgesamt 24 Bits auf 4 6-Bit-Wörter ab. Es werden somit nur noch 64 Zeichen benutzt, um 8-Bit-Daten zu kodieren. Die Zeichen sind:
Das Padding-Zeichen wird benutzt, um weniger als 24 Bits am Ende einer Datenfolge zu kennzeichnen. Jedes nicht vorhandene Byte wird durch durch '=' gekennzeichnet. Eine Base64-Zeile darf nicht länger als 76 Zeichen sein. Dann muss ein CRLF folgen; diese Zeichen sind nicht in dem Base64-Alphabet enthalten sind. Andere als die hier genannten Zeichen sollten nach dem Standard als Fehler interpretiert werden. Quoted-PrintableEin anderes Kodierungsverfahren verwendet in der Regel die US-ASCII-Zeichen. Zeichen, die nicht in diesem Zeichensatz enthalten sind, werden als "=XY" kodiert, wobei XY den Hexadezimalwert des Oktetts angibt. Eine Reihe von Zusatzregeln erlauben die Behandlung von Sonderfällen wie Zeilenumbrüche oder Leerzeichen am Ende einer Zeile.
|