UUencode

altes Unix-Dateiformat, das Binärdateien mit ASCII-Zeichen kodiert
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 1. März 2004 um 12:01 Uhr durch Mikue (Diskussion | Beiträge) (populär -> verbreitet {neutraler}). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Uuencode war das erste verbreitete Programm, das es ermöglichte, Binärdateien (also z.B. Bilder oder Programme) so umzuwandeln, dass sie nur noch aus "druckbaren ASCII-Zeichen" bestehen und dadurch problemlos per e-Mail verschickt werden konnten, wo nur ASCII-Zeichen erlaubt sind.

Das Prinzip ist dabei ähnlich wie beim heute für e-Mail-Anhänge übliche Base64-Verfahren: Drei Bytes der Binärdatei (=24 bit) werden auf viermal 6 Bit aufgeteilt und den 6-bit-Werten werden druckbare ASCII-Zeichen zugeordnet. Erste Versionen von Uuencode benutzten dabei einfach die ASCII-Zeichen mit Wert 32-95.

Da das ASCII-Zeichen mit Wert 32 aber das Leerzeichen ist, und dieses den Mailversand oft nicht heil übersteht, wurde statt dessen das ASCII-Zeichen mit dem Wert 96 ("`") genommen.

Uuencode benutzt ein spezielles Format für die kodierte Datei:

begin modus  dateiname
länge&nbsp daten
länge&nbsp daten
...
länge&nbsp daten
`
end

Als modus werden dabei die Dateirechte, wie sie unter Unix üblich sind, als 3- oder 4stellige Oktalzahl geschrieben. Der Dateiname ist der Name der Originaldatei, ohne Verzeichnis.

Jede Datenzeile beginnt mit einer 1-Byte-Längenangabe, die angibt, wie viele Originalbytes in dieser Zeile kodiert wurden. Die Zahl zw. 1 und 63 wird dabei ebenfalls uu-kodiert, also als Zeichen von "!" bis "_". Üblich sind 45 Byte (also der Wert "M") die in 60 Zeichen kodiert werden.

Um das Ende der Datei anzuzeigen, muss stets eine "Leerzeile" kodiert werden, die nur das Längenbyte 0 (kodiert "`") enthält. Abschließend folgt eine Zeile mit dem Schlüsselwort end.

Siehe auch: Kermit