Hz (Charaktercodierung)

Hz Codierung
Mime / Iana Hz-GB-2312
Sprachen) Vereinfachtes Chinesisch, Englisch, Russisch
Erstellt von Pilze Pilze Lee
Standard RFC 1843
Einstufung CJK -Codierung, ASCII -Rüstung, Codierung der variablen Breite, Staatliche Kodierung
Transformationen / codiert GB 2312
Vorausgegangen von Zw
gefolgt von Zitiert, UTF-7, 8bitmime

Das Hz Charakter -Codierung[1] ist ein Codierung von GB 2312 das wurde früher häufig in E -Mail und in E -Mail verwendet und Usenet Postings. Es wurde 1989 von Pilg Fung Lee (entworfenChinesisch: 李楓峰) von Universität in Stanfordund anschließend 1995 in RFC 1843 kodifiziert.[2]

Der hz, kurz für Hanzi (vereinfachtes Chinesisch: 汉字; traditionelles Chinesisch: 漢字; zündete. 'Chinesische Charaktere'), Codierung wurde erfunden, um die Verwendung chinesischer Charaktere per E-Mail zu erleichtern, was zu dieser Zeit nur 7-Bit-Zeichen erlaubte. Daher anstelle von Standard -ISO 2022 -Escape -Sequenzen (wie im Fall von ISO-2022-JP) oder 8-Bit-Zeichen (wie im Fall von EUC), der Hz-Code verwendet nur druckbare 7-Bit-Zeichen, um chinesische Zeichen darzustellen.

Es war auch in Usenet-Netzwerken beliebt, die in den späten 1980er und frühen 1990er Jahren im Allgemeinen keine Übertragung von 8-Bit-Charakteren oder Fluchtfiguren erlaubten.

Geschichte

Hz ersetzte die frühere "ZW" Zw.[3]

Struktur und Verwendung

Im HZ -Codierungssystem wirken die Zeichensequenzen "~ {" und "~}" als Fluchtsequenzen; Alles zwischen ihnen wird als chinesische in GB 2312 codiert (die bedeutendsten Bits werden ignoriert). Außerhalb der Escape -Sequenzen wird angenommen ASCII.

Ein Beispiel wird helfen, die Beziehung zwischen zu veranschaulichen GB 2312, EUC-CNund der Hz -Code:

Verschiedene Formen des GB 2312 -Code (0xD2BB) für das Zeichen "一" (einer)
Bilden Code Mit Fluchtsequenzen Bemerkungen
Kuten / Qūwèi / 区位 bilden 5027 Zone/Station/Row (ku/qū/) 50, Punkt (zehn/wèi/) 27
ISO 2022 Form 5216 3b16 0e16 5216 3b16 0f16 50 + 32 = 82 = 5216
EUC-CN-Form D216 BB16 D216 BB16 5216 ∨ 8016 = D216
Hz Form (Standard) 5216 3b16 7e16 7b16 5216 3b16 7e16 7d16 Erscheint als ~ {R; ~} ohne Hz Decoder
Hz Form (alternativ) D216 BB16 7e16 7b16 D216 BB16 7e16 7d16 EUC Form für zumindest einige Decoder akzeptabel

HZ wurde ursprünglich so konzipiert, dass sie nur als 7-Bit-Code verwendet werden. Wenn es jedoch Situationen erlaubt, umgeben die Fluchtsequenzen "~ {" und "~}" manchmal in EUC-CN dargestellte Zeichen; Mit dieser alternativen Verwendung kann Chinese mit Hilfe der HZ-Decoder-Software oder mit einem System, das EUC-CN versteht, lesbar sein.

Darüber hinaus definiert die Spezifikation dies:

  • Die Sequenz "~~" soll als Codierung eines einzelnen ASCII "~" und, behandelt werden.
  • Der Charakter "~", gefolgt von einer neuen Linie, soll verworfen werden.

Allerdings folgen nicht alle Hz -Decoder diesen beiden Regeln.

Hz -Encoder und Decoder

Der erste Hz -Encoder und Decoder wurden 1989 vom Erfinder des Codes für die geschrieben Unix Betriebssystem.[4]

Das Hztty Programm auch für die Unix Das Betriebssystem war ebenfalls zu den ersten und einer der beliebtesten Hz -Decoder. Es weicht von der Spezifikation ab, da es die Escape -Sequenzen (d. H. "~ {" und "~}") anzeigt, und es behandelt nicht "~~" und "~", gefolgt von einer neuen Zeile speziell. Dies sollte wahrscheinlich die Software erlauben, dass ein Zeichen eine Bildschirmposition (auf einem Textbildschirm) ohne Änderung korrekt funktionieren.

Unterstützung auf Microsoft Windows kam später und eine Reihe von "chinesischen Systemen" von Drittanbietern unterstützt HZ. Diese Systeme bieten möglicherweise die Möglichkeit, die Escape -Sequenzen zu verbergen.

Nachteile

Aufgrund seiner Fluchtsequenzen und außerdem, da seine Fluchtgrenzwerte in ASCII druckbare Zeichen sind, ist es ziemlich einfach, Angriffsbyte-Sequenzen zu konstruieren, die von Hz zu Unicode und Rücken runden. Die Verwendung der HZ -Codierung wird somit durch Malware -Schutzsuiten als misstrauisch behandelt.[5]

Verweise