Alles im Ascii-Format: Aufbau einer E-Mail
Das Format der Mail hat sich seit der ersten Standardisierung kaum verändert, zumal es flexibel genug ist, optionale Erweiterungen aufzunehmen. Die Zeichencodierung ist heute noch wie vor 40 Jahren Ascii. Der Grund dafür ist, dass Mailserver über SMTP nur in Ascii kommunizieren können. Auch Sonderzeichen, Umlaute und binäre Anhänge müssen in den simplen Zeichensatz konvertiert und decodiert werden. Diese Aufgabe übernimmt das Mailprogramm beziehungsweise der Webmail-Dienst.
Eine E-Mail besteht aus drei Teilen. Der knappe "Envelope" enthält den tatsächlichen Absender und Empfänger einer Nachricht und wird nur von den MTAs benötigt, nicht aber vom Mailprogramm. Der ausführliche "Header" einer E-Mail enthält Informationen für den Empfänger, etwa den Namen des Absenders, Antwortadresse und den zurückgelegten Pfad der E-Mail. Im "Body" ist schließlich die eigentliche Nachricht untergebracht.
Diese Aufteilung erlaubt eine schnelle Verarbeitung: MTAs, die Hunderte von Mails pro Sekunde empfangen und weiterleiten, brauchen nur die knappen Angaben im Envelope lesen und nicht den gesamten Header. Leider gab diese effiziente Einteilung auch einem unangenehmen Phänomen Auftrieb: Werbemails, Spam. Spammer konnten den Header fälschen, um frühe Spam-Filter auszutricksen, denn für die Zustellung muss nur der Envelope korrekt sein.
Durch serverseitige MTA-Erweiterungen mittels Authentifizierung über Smart-Hosts, strikten Weiterleitungsfiltern, dem Sender Policy Framework (SPF) und leistungsfähigeren Mail-Servern konnte die Spamflut eingedämmt werden.
Das Domain-Name-System als Adressbuch
Woher weiß ein MTA, der gerade über SMTP eine neue Mail bekommen hat, wohin diese gehen soll? Das Domain Name System spielt nicht nur beim Zugriff auf Web- oder FTP-Server eine zentrale Rolle, sondern auch beim Mailversand. Für E-Mails sind im DNS spezielle Einträge vorgesehen: Die "MX-Records" (Mail Exchange Records) identifizieren den Zielserver und dessen Adressen.
Dazu fragt eine MTA im DNS nach einer Domain und erhält eine Liste mit Servern (Mail Exchanger), die Nachrichten für die Ziel-Domain entgegennehmen. Jeder Mail Exchanger ist mit einer 16 Bit langen Priorität versehen. Der SMTP-Server versucht nun, in der Reihenfolge der Priorität dem entsprechenden Server die Nachricht zu übermitteln. Prinzipiell kann eine Nachricht über mehrere SMTP-Server laufen. Meist überquert sie aber nur zwei SMTP-Server.
Sicherheit: Verschlüsselung der Protokolle
SMTP ist leider unsicher: Die Mail Transfer Agents kommunizieren im Klartext, und dieser kann von Zwischenstationen abgehört werden. Für den sicheren Mailversand gibt es heute eine serverseitige SMTP-Erweiterung mit TLS-Verschlüsselung (Transport Layer Security). TLS ist eine Weiterentwicklung des verbreiteten SSL (Secure Sockets Layer), und moderne Mailprogramme unterstützen verschlüsseltes SMTP beim Versand der Nachrichten.
Beim Empfang über POP und IMAP besteht das zusätzliche Problem, dass sogar die Authentifizierungsdaten offen über das Internet gesendet werden, und TLS gibt es deshalb auch für POP und IMAP. Allerdings könnten direkt beteiligte Mail-Server den Mailinhalt immer noch mitlesen und auswerten, da nur das Protokoll verschlüsselt ist. Deshalb hat der Informatiker Phil Zimmermann bereits 1991 das asymmetrische Verschlüsselungsverfahren PGP (Pretty Good Privacy) entwickelt, für das es auch die Open-Source-Variante GPG gibt. Auch das kommerzielle Kryptosystem S/MIME von RSA Data Security erlaubt sicher verschlüsselte Mails. Diese Verschlüsselungsverfahren erleben derzeit, nach den Abhörskandalen der letzten Jahre, eine wahre Renaissance. (PC-Welt)