Commune · Littérature

Uuencode

Les programmes uuencode et son symétrique uudecode sont des programmes de conversion de données binaires en texte, disponibles sur la quasi-totalité des systèmes Unix/Linux, ils permettent de convertir sans dégradation des données binaires en vue de leur transmission via un support qui ne le permettrait pas normalement. Ces deux programmes et l'algorithme qu'ils implémentent ont été portés sur un très grand nombre de systèmes d'exploitation.

Lire la suite

Le nom uuencode vient de Unix to Unix Encoding. Ces deux programmes ont été écrits avant l'utilisation massive d'Internet afin en particulier que la suite logicielle uucp puisse transporter de manière fiable des fichiers binaires. Cette suite logicielle permet des communications inter-serveurs via modem et était initialement conçue pour échanger du texte simple (en n'utilisant qu'une partie des 128 caractères ASCII). Ils ont été principalement utilisés pour la transmission de messages (courrier électronique et forums Usenet) mais aujourd'hui leur utilisation est largement remplacée par les extensions MIME et en particulier l'encodage base64 (qui emploie un jeu de caractères plus portable dans le flux encodé). Le programme uuencode produit un flux de texte (une succession de caractères ASCII) dont la première ligne est : où <mode> et <nom> sont remplacés respectivement par la valeur octale représentant les droits d'accès à placer sur le fichier décodé et par le nom du fichier à construire lors du décodage. Le flux de données encodées se termine par une ligne contenant juste le texte : Entre ces deux lignes seuls les 65 caractères suivants peuvent être rencontrés : le caractère noté es ci-dessus est le caractère ASCII représentant une espace et dont le code numérique est 32. Les autres caractères portent les codes numériques allant de 32+1 à 32+64. Le programme d'encodage lit le fichier d'origine par groupe de trois octets (éventuellement complété par des octets de valeur nulle si le nombre d'octets à encoder n'est pas multiple de 3), puis convertit ces trois octets (soit 24 bits) en quatre groupes de 6 bits chacun, ensuite à chaque groupe de 6 bits (qui représente en base 10 un nombre compris entre 0 et 63) est ajoutée la valeur 32, la valeur résultante est alors le code ASCII de l'un des caractères présentés plus haut, ce caractère est employé par l'encodeur dans le flux de sortie.

Texte : Wikipédia, CC BY-SA 4.0. ·

Touche pour fermer

Confirmation