Zusammenfassung

  • RFC 1557 beschrieb im Dezember 1993 einen Mailtext mit dem Zeichensatznamen ISO-2022-KR: Beginn in ASCII, Zuweisung von KSC 5601 durch ESC $ ) C, Wechsel zu koreanischen Zweibyte-Zeichen mit SO, Rückkehr zu ASCII mit SI.
  • Koreanische Zeichen im Mailkopf nahmen einen anderen Weg: EUC-KR-Bytes, verpackt als B- oder Q-kodiertes Wort nach RFC 1522. Ein korrekt angezeigter Betreff sagt wenig darüber, ob der Textkörper korrekt gelesen wurde.

Der Betreff durfte durch die Seitentür

Eine Terminänderung kommt per E-Mail. Der koreanische Betreff erscheint sauber im Postfach, doch die neue Uhrzeit im geöffneten Text versteckt sich zwischen seltsamen Zeichen. Die beiden Teile kamen gemeinsam an. Erst beim Lesen zeigt sich, dass sie verschiedene technische Ausweise tragen. Wer den Kopf entschlüsselt hat, hat damit den Text noch lange nicht verarbeitet.

Die Trennung liegt im Format selbst. RFC 822 ordnete strukturierte Kopffelder oberhalb einer Leerzeile und den Text darunter an. Kommas, Doppelpunkte und Zeilenumbrüche haben im Kopf eine eigene Bedeutung. Vermittlungssoftware konnte Adressen umstellen oder Zeilen neu umbrechen. Für Schriftzeichen außerhalb von ASCII war der Kopf deshalb ein anderer Arbeitsort als ein fortlaufender Nachrichtentext.

U. Choi, K. Chon und H. Park dokumentierten im Dezember 1993 mit RFC 1557 die koreanische Lösung. Nach ihrer Darstellung war sie 1991 festgelegt worden und in koreanischen IP-Netzen verbreitet. Ihr Text beschreibt einfache Textnachrichten. Er zeichnet ein ungewöhnlich klares Organigramm der Zuständigkeiten: Der Körper benutzt sieben Bit und Schaltzeichen; der Kopf bekommt eine eigene Zeichenkodierung samt Hülle für alte Mailprogramme.

Der Körper startet als ASCII. ESC $ ) C benennt den Zeichensatz KSC 5601, der Hangul, Hanja und weitere Zeichen umfasst. Nach SO werden jeweils zwei Bytes als Zeichen dieses Satzes gelesen; SI schaltet zurück. Der MIME-Name für den Körper lautet ISO-2022-KR. Die Schaltzeichen sind kleine Weichen. Derselbe sichtbare Bytebereich kann hinter der falschen Weiche anders aussehen. Zur korrekten Interpretation gehört daher die Abfolge der Schalter, nicht bloß eine Liste der druckbaren Zeichen.

Eine Stelle im RFC verdient besondere Aufmerksamkeit. Seine erklärende Prosa spricht von der Zuweisung am Anfang einer Zeile vor SO; die formale Grammatik erlaubt, dass eine Zuweisung vor mehreren koreanischhaltigen Zeilen steht. Das Dokument gibt der formalen Syntax bei Widerspruch ausdrücklich Vorrang. Wer ein altes Exemplar prüft, sollte die tatsächlich erhaltene Zuweisung und die Wechsel verfolgen, statt eine Wiederholung in jeder Zeile vorauszusetzen.

Der Körper bleibt siebenbittig. RFC 1557 erklärt deshalb, dass er aus diesem Grund keinen zusätzlichen Content-Transfer-Encoding-Kopf braucht. Die Autoren berichten außerdem, dass damalige koreanische Mailprogramme kein Base64 oder Quoted-Printable über einen bereits so kodierten Körper legten. Das beschreibt die Werkzeuge jener Zeit. Die MIME-Angabe ISO-2022-KR bleibt der Wegweiser für den passenden Decoder.

Oberhalb der Leerzeile gelten andere Regeln. Koreanischer Text im Kopf wird als EUC-KR dargestellt und nach RFC 1522 in ein B- oder Q-kodiertes Wort eingebettet. Dessen Form =?charset?encoding?encoded-text?= besteht außen aus druckbarem ASCII. Ein älteres Programm kann die Hülle weiterreichen; ein kundiger Leser holt die koreanischen Zeichen heraus. Der Kopf nennt EUC-KR, der Körper ISO-2022-KR. Ein einziger Decoder für beide ist ein übereifriger Grenzbeamter mit dem falschen Stempel.

Auf dem Bildschirm verbindet sich alles zu einer Nachricht. Darunter arbeiten zwei getrennte Leseregeln, und beide müssen gelingen. RFC 1557 zeigt diese Nahtstelle in einem Alltagsgegenstand, der sie sonst sorgfältig verbirgt.