Zusammenfassung

  • 00 bis 7F blieben ausschließlich ASCII-Zeichen vorbehalten; das erste Oktett zeigte die Länge, Folgeoktette begannen mit 10, und FE/FF kamen nicht vor.
  • RFC 2044 erklärte die erhaltene numerische Reihenfolge ausdrücklich für kulturell ungültig und behandelte Sicherheit nicht. Ein MIME-Label UTF-8 benennt ein Schema, nicht dessen erfolgreiche Ausführung.

Ein alter Parser musste kein griechisches Alpha erkennen, um einen Schrägstrich oder ein NUL-Byte korrekt zu behandeln. Kritisch war, dass ein unbekanntes Mehrbyte-Zeichen nicht zufällig denselben ASCII-Wert in seinem Inneren trug. Genau diese Schnittstelle machte RFC 2044 lokal prüfbar.

Unicode 1.1 und ISO/IEC 10646 beschrieben UCS-2, ISO 10646 zusätzlich UCS-4. Programme mit Sieben- oder Achtbit-Annahmen konnten feste 16- oder 32-Bit-Einheiten nicht ohne Weiteres verarbeiten. UTF-8 ließ ASCII unverändert und erlaubte anderen Werten, durch Komponenten zu fließen, die hohe Bits lediglich weiterreichten.

Die Sequenz enthielt ihre eigene Grenzkarte

ASCII verwendet 0xxxxxxx. Bei längeren Folgen entspricht die Zahl führender Einsen im ersten Oktett der Gesamtlänge; darauf folgt eine Null. Jedes weitere Oktett beginnt mit 10. Wer mitten in einem Zeichen startet, kann Folgeoktette überspringen und den nächsten Anfang finden.

Auch FE und FF passen in keine erlaubte Form. Diese negative Eigenschaft ist nützlich, ersetzt aber keine Prüfung von Länge, Folgeform und rekonstruiertem Wert.

RFC 2044 kodiert „A≢Α.“ als 41 E2 89 A2 CE 91 2E. 41 und 2E bleiben die ASCII-Werte. Daraus lassen sich Zeichengrenzen und Codewerte gewinnen, aber weder Sprache noch Schriftart, Normalisierung, Absicht oder Eignung als Identifikator.

Maschinenordnung ist keine kulturelle Ordnung

Der RFC hält fest, dass die lexikografische Reihenfolge von UCS-4 erhalten bleibt. Für einen binären Index ist das bequem. Im selben Punkt schränkt der Text die Aussage ein: Diese Reihenfolge sei nur begrenzt interessant, weil sie kulturell in beiden Darstellungen ungültig ist.

Namen benötigen Sprachregeln für Akzente, Großschreibung, Ligaturen und Kontraktionen. Deterministische Byteordnung ist kein universelles Alphabet. Die Spezifikation beschrieb eine Eigenschaft, ohne ihr kulturelle Autorität zu verleihen.

Ein Charset-Label prüft keine Bytes

RFC 2044 schlug UTF-8 als MIME-Charset vor. MIME bot den Platz für die Deklaration; frühere Unicode/MIME-Arbeit trennte bereits Repertoire, Oktettserialisierung und Transferkodierung.

Das Label wählt den erwarteten Decoder. Es erkennt keine abgeschnittene oder illegale Folge, keine Veränderung durch einen Relay und authentifiziert den Absender nicht. Die heutige IANA-Registrierung führt UTF-8 mit MIBenum 106, Alias csUTF8 und RFC 3629 als Referenz. Das ist Registry-Identität, kein Prüfbericht.

Sechs Oktette gehören zur Geschichte

RFC 2044 war Informational und ausdrücklich kein Internetstandard; der Datatracker führt ihn als Legacy. RFC 2279 ersetzte ihn im Standards Track, RFC 3629 wiederum RFC 2279.

Die Fassung von 1996 erlaubte ein bis sechs Oktette. RFC 3629 beschränkt UTF-8 auf U+10FFFF und ein bis vier Oktette, verbietet Surrogate und überlange Formen. Eine alte Fünfoktettform ist heute kein gültiges UTF-8. Dass die Errata-Suche keinen Eintrag zu RFC 2044 zeigt, ändert die Ablösung nicht.

Sicherheit lag außerhalb des Versprechens

RFC 2044 sagt lediglich, Sicherheitsfragen würden nicht behandelt. RFC 3629 beschreibt später illegale Folgen, überlange Kodierungen, Puffergrenzen und verschieden kodierte, gleich erscheinende Zeichenfolgen. RFC 5198 behandelt NFC-Normalisierung als zusätzliche Regel.

ASCII-Erhaltung beweist daher keinen sicheren Parser. Auffindbare Grenzen beweisen keine heutige Gültigkeit. Gültiges UTF-8 beweist keine Normalisierung; gültige Codepunkte beweisen keine Identität, korrekte Glyphen oder Verständnis.

Heng Lus Minimum-Initial-Specification-Perspektive hält den gemeinsamen Teil klein und deterministisch. Running-Code Primacy verlangt Implementierung und Beobachtung als Adoptionsbeleg; Reality Layers verhindern, dass Dokument oder Label zu einem nicht ausführbaren Ergebnis hochgestuft werden. RFC 2044 war stark, weil es Syntax bewahrte und Bedeutung nicht beanspruchte.

Quellen