MIME-Standard (Multipurpose Internet Mail Extensions)

MIME ist ein Standard für das Format von E-Mails. Er erweitert die Möglichkeiten der Datenübertragung.

Was ist MIME?

MIME (Multipurpose Internet Mail Extensions) ist ein Standard, der 1991 von den Laboratorien Bell Communications vorgeschlagen wurde, um die begrenzten Möglichkeiten von E-Mails auszuweiten. Er macht es vor allem möglich, Dateien in E-Mails einzufügen (Bilder, Ton, Text usw.). Er wurde erstmals in den RFC 1341 und 1342 von Juni 1992 festgelegt.

MIME benutzt Header, um den Typ des Mailinhalts und die verwendete Codierung zu beschreiben.

MIME erweitert E-Mails um die folgenden Funktionalitäten :

Möglichkeit, mehrere Objekte (Anhänge) in eine Nachricht einzufügen;

unbegrenzte Länge der Nachricht;

Möglichkeit, andere Zeichensätze (Alphabete) als den ASCII-Code zu verwenden;

Verwendung von rich text (Formatierung der Nachrichten, Schriftarten, Farben usw.);

binäre Anhänge (ausführbare Dateien, Bilder, Audio- oder Videodateien usw.), die auch aus mehreren Teilen bestehen können;

MIME verwendet spezielle Header-Anweisungen, um das im Body verwendete Format zu beschreiben, damit der Mail-Client die Nachricht richtig interpretieren kann:

MIME-Version: Ziegt die Version des in der Nachricht verwendeten MIME Standards an (typischerweise Version 1.0).

Content-type: Beschreibt den Typ und Untertyp der Dateien. Er kann eine sogenannte Charset-Einstellung haben, die durch einen Strichpunkt getrennt ist und den verwendeten Zeichensatz angibt.

Content-transfer-encoding: Gibt an, welche Codierung im Body der Nachricht verwendet wird.

Content-ID: Ist eine einzigartige Kennung eines Teils der Nachricht.

Content-description: Enthält zusätzliche Informationen über den Inhalt der Nachricht.

Content-disposition: Gibt die Eigenschaften des Anhangs an, vor allem den Namen, welcher der Datei über das Attribut filename zugeteilt wird.

Wichtigste MIME-Typen

MIME-Typen, die im Header als Content-Type vorkommen, werden verwendet, um Dokumente im Anhang einer Mail zu beschreiben. Ein MIME-Typ ist folgendermaßen aufgebaut:

Content-type: erster_mime_typ/mime_unter_typ

Ein GIF-Bild hat dann zum Beispiel den folgenden MIME-Typ:

Content-type: image/gif

Die wichtigsten Datentypen, die manchmal auch "diskrete Datentypen" genannt werden, sind die folgenden.

text: lesbare Textdaten
text/rfc822 [RFC822], text/plain [RFC2646], text/html [RFC2854]

image: binäre Dateien, die digitale Bilder darstellen
image/jpeg, image/gif, image/png

audio: digitale Tondateien
audio/basic, audio/wav

video: Videodateien
video/mpeg

application: andere binäre Daten
application/octet-stream, application/pdf

MIME-Typen werden auch im Web verwendet zur Beschreibung von Dokumenten, die über das HTTP-Protokoll übertragen werden. Bei einer Übertragung zwischen einem Webserver und einem Internetbrowser sendet der Webserver zunächst den MIME-Typ der Datei, die an den Browser gesendet wird, damit dieser weiß, wie er die Datei anzeigen muss.

Codierungsformate

Um binäre Dateien zu übertragen, schlägt MIME fünf Codierungsformate vor, die im Header verwendet werden können und unter Transfer-encoding angezeigt werden:

7bit: Textformat auf 7 Bits codiert (für Nachrichten ohne Akzente)

8bit: Textformat auf 8 Bits

quoted-printable: Empfohlenes Format bei Nachrichten, die ein
Alphabet verwenden, das auf mehr als 7 Bits codiert ist (zum Beispiel mit Akzenten).

base64: Empfohlenes Format für den Versand von Binärdateien im Anhang.

binary: Binärformat (nicht empfohlen)

MIME ist sehr flexibel und kann auch mit fremden Codierungsformaten verwendet werden, zum Beispiel mit BinHex (geschütztes Format, das Apple gehört), uuencode und xxencode.

Codierung von Headern

Die Benutzung der Kopfzeile Transfer-encoding bestimmt ein Verschlüsselungsformat für das Textfeld, löst aber nicht das Problem der Verschlüsselung der Kopfzeilen selbst (zum Beispiel bei der Betreffzeile).

Um Header in einem Alphabet mit mehr als 7 Bits codieren zu können und so zum Beispiel Akzente in der Betreffzeile zu erlauben, schlägt der MIME-Standard das folgende Format vor:

=?charset?codierung?ergebnis?

charset steht für den verwendeten Zeichensatz.

codierung gibt die gewünschte Codierung mit zwei möglichen Werten an.

Q steht für quoted-printable.

B steht für für base64.

ergebnis bezeichnet den nach der gewählten Methode codierten Text.

Es folgt ein Beispiel in Quoted-Printable-Codierung mit dem französischen Satz Comment ça marche? (zu Deutsch "Wie geht das?") als Betreff der Nachricht:

Subject: Comment =?ISO-8859-1?Q?=E7a_marche_=3F?=

Zusammengesetzte Nachrichten

Durch den MIME-Typ multipart ermöglicht der MIME-Standard das Erstellen zusammengesetzter Nachrichten. Das sind Nachrichten mit mehreren Anhängen, die auch verschachtelt sein können.

Zu diesem Zweck kann man mit MIME einen Trenner (boundary) festlegen. Das ist ein beliebiger String, der als Attribut von Content-type im Header festgelegt wird:

Content-type: multipart/mixed;
boundary="------------020005090303070203010601"

Jeder Trenner grenzt einen Inhalt ab, der mit den Headern Content-type und Content-encoding beginnt. Es ist sehr wichtig, dass der Wert dieses Trenners nicht im Inhalt der Nachricht vorkommt.

Es gibt mehrere Arten von Boundaries:

multipart/mixed definiert eine Folge mehrerer Elemente.

multipart/alternative definiert verschiedene Alternativen für dieselbe Nachricht, zum Beispiel eine Nachricht im Text- und HTML-Format. Ist der E-Mail-Client imstande, die formatierte Nachricht anzuzeigen und entsprechend konfiguriert, zeigt er die HTML-Version an. Andernfalls wird die Textversion angezeigt.

multipart/parallel ist für Daten, die zeitgleich dargestellt werden (zum Beispiel Ton und Bild).

multipart/signed definiert eine digitale Signatur für die Daten der Nachricht.

multipart/related definiert untereinander verbundene Informationen.

Liste der MIME-Typen

Die MIME-Typen werden von der Orgagnisation IANA (Internet Assigned Numbers Authority) standardisiert. Dies ist eine nicht vollständige Liste der geläufigsten MIME-Typen:

MIME-Typ Dateityp Zugehöriger Anhang
application/atom+xml Dateien im Format ATOM atom
application/iges CAS-Dateien iges
application/javascript Javascript-Dateien js
application/dxf AutoCAD-Dateien dxf
application/mp4 MPEG4-Dateien mp4
application/iges CAO-IGES-Austauschformat igs, iges
application/octet-stream Nicht interpretierte binäre Dateien bin
application/msword Dateien im Format Microsoft Word doc
application/pdf Adobe-Acrobat-Dateien pdf
application/postscript PostScript-Dateien ai, eps, ps
application/rtf Rich-Text-Format rtf
application/sgml SGML-Dateien sgml
application/vnd.ms-excel Tabellendateien im Format Microsoft Excel xls
application/vnd.ms-powerpoint Vortragsfolien-Dateien im Format Microsoft Powerpoint ppt
application/xml XML-Dateien xml
application/x-tar komprimierte TAR-Dateien tar
application/zip komprimierte ZIP-Dateien man
audio/basic einfache Audiodateien au, snd
audio/mpeg MPEG-Audio-Dateien mpg, mp3
audio/mp4 MPEG-4-Audio-Dateien mp4
audio/x-aiff AIFF-Audio-Dateien aif, aiff, aifc
audio/x-wav WAVE-Audio-Dateien wav
image/gif GIF-Bilder man
image/jpeg JPEG-Bilder jpg, jpeg, jpe
image/png PNG-Bilder png
image/tiff TIFF-Bilder tiff, tif
image/x-portable-bitmap Bitmap-PBM-Dateien pbm
image/x-portable-graymap Graymap-PBM-Dateien pgm
image/x-portable-pixmap Pixmap-PBM-Dateien ppm
multipart/x-zip ZIP-Archivdateien zip
multipart/x-gzip GNU-ZIP-Archivdateien gz, gzip
text/css Stylesheet css
text/csv Textdateien mit Komma-Trennung csv
text/html HTML-Dateien htm, html
text/plain Textdateien ohne Formatierung txt, g, h, c, cc, hh, m, f90
text/richtext Rich-Text-Dateien rtx
text/rtf Textdateien im Rich-Text-Format rtf
text/tab-separated-value durch Tabulator getrennte Textdateien tsv
text/xml XML-Dateien xml
video/h264 H.264-Videos h264
video/dv Videos im Format DV dv
video/mpeg MPEG-Videos mpeg, mpg, mpe
video/quicktime QuickTime-Videos qt, mov
video/msvideo Microsoft-Windows-Videos avi

Foto: © Anita Ponne - Shutterstock.com

Unsere Inhalte werden in Zusammenarbeit mit IT-Experten erstellt, unter der Leitung von Jean-François Pillou, Gründer von CCM.net. CCM ist eine führende internationale Technologie-Webseite und in elf Sprachen verfügbar.
Lesen Sie auch
Das Dokument mit dem Titel « MIME-Standard (Multipurpose Internet Mail Extensions) » wird auf CCM (de.ccm.net) unter den Bedingungen der Creative Commons-Lizenz zur Verfügung gestellt. Unter Berücksichtigung der Lizenzvereinbarungen dürfen Sie das Dokument verwenden, verändern und kopieren, wenn Sie dabei CCM deutlich als Urheber kennzeichnen.