UTF-8 ist eine effiziente Verschlüsselung von Unicode-Zeichenfolgen und optimiert die Verschlüsselung von ASCII-Zeichen zur Unterstützung der textbasierten Kommunikation.
Das WebSphere MQ Telemetry Transport-Protokoll verwendet eine Untergruppe von UTF-8. Unterstützt werden nur einzelne Bytezeichen (nicht erweitert).
Das Format der UTF-Zeichenfolge wird in der nachfolgenden Tabelle dargestellt.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
Byte 1 | Nachrichtenlänge MSB | |||||||
Byte 2 | Nachrichtenlänge LSB | |||||||
Bytes 3 ... | Verschlüsselte Zeichendaten |
Die Nachrichtenlänge gibt die Anzahl der Bytes von verschlüsselten Zeichenfolgenzeichen an, nicht die Anzahl der Zeichen. Bei ASCII-Zeichenfolgen sind diese jedoch identisch. In der nachfolgenden Tabelle wird das Format der verschlüsselten Zeichen für die ASCII-Codes 0x01 bis 0x7F gezeigt.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
0 | ASCII-Zeichencode |
Die ASCII-Textzeichenfolge OTWP beispielsweise wird in UTF-8 verschlüsselt, wie in nachfolgender Tabelle gezeigt.
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|
Byte 1 | Nachrichtenlänge MSB (0x00) | |||||||
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
Byte 2 | Nachrichtenlänge LSB (0x04) | |||||||
0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | |
Byte 3 | 'O' (0x4F) | |||||||
0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | |
Byte 4 | 'T' (0x54) | |||||||
0 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | |
Byte 5 | 'W' (0x57) | |||||||
0 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | |
Byte 6 | 'P' (0x50) | |||||||
0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
Die Java-Datenstrommethoden writeUTF() und readUTF() verwenden dieses Format.