La codifica Uuencode/Uudecode

La codifica Uuencode (abbreviazione di Unix-to-Unix encode) è un algoritmo che permette di convertire dati binari codificati su 8 bit in un formato di codifica su 7 bit.

Cos'è la codifica Uuencode

La codifica Uuencode è stata creata in origine per permettere l'invio di file binari grazie al protocollo di posta elettronica uucp. In effetti, il sistema uucp permetteva di convertire i set di caratteri utilizzati fra i diversi sistemi e non permetteva di distinguere i testi del messaggio di un allegato. Così, Uuencode è stato previsto per convertire i file binari in un formato di testo compatibile con la messaggeria e senza comportare i caratteri che rischiano di essere convertiti, cosa che renderà illeggibile l'allegato. La decodifica che consiste nel ritrovare un file binario partendo da un file Uucodificato è detto Uudecodifica (in inglese Uudecoding).

Formato di un file Uudecodificato

Un file in formato Uuencode comincia con una stringa dal formato seguente:

begin mode nome_del_file

.

Principio della decodifica Uuencode

La decodifica Uuencode consiste nel prendere dei gruppi di 3 byte (24 bit) e considerarli come 4 gruppi di 6 bit, rappresentati da dei valori compresi tra 0 e 63. Se ci sono almeno 24 bit nel flusso di entrata, Uuencode completa con degli 0.

Uuencode aggiunge 32 (valore decimale) ad ogni valore, per ottenere un valore corrispondente ad un carattere ASCII stampabile. I dati sono rappresentati su stringhe di 60 caratteri. Così ogni stringa permette di decodificare 45 byte di flusso d'entrata dato che 4 byte di dati in uscita rappresentano 3 byte di dati in entrata. Ogni stringa è preceduta da un carattere che indica il numero di caratteri della stringa stessa.

Infine, una stringa che contenga unicamente uno spazio, seguita da una stringa con una catena di caratteri end. Lo spazio che precede la stringa finale è talvolta sostituito da un carattere ASCII 96 (accento grave), dato che alcuni software di messaggeria cancellano le linee vuote.

Foto: © Pixabay.

I nostri contenuti sono creati in collaborazione con esperti di high-tech, sotto la direzione di Jean-François Pillou, fondatore di CCM.net. CCM è un sito di high-tech leader a livello internazionale ed è disponibile in 11 lingue.
Potrebbe anche interessarti
Il documento intitolato « La codifica Uuencode/Uudecode » dal sito CCM (it.ccm.net) è reso disponibile sotto i termini della licenza Creative Commons. È possibile copiare, modificare delle copie di questa pagina, nelle condizioni previste dalla licenza, finché questa nota appaia chiaramente.