Le standard MIME

Qu’est-ce que MIME ?

Conçu à une époque où le courrier électronique se limitait à du texte, le protocole SMTP impose certaines restrictions sur le contenu des courriers électroniques : il ne doit être composé que de caractères ASCII, les lignes ne peuvent pas excéder 1000 caractères et la taille totale du contenu ne peut pas excéder une certaine dimension. Une containte un peu problématique pour envoyer des e-mails multimédia !

L’extension MIME a donc été conçue pour remédier à cet inconvénient.

MIME est une spécification d’Internet, permettant d’échanger des textes écrits dans des langues différentes (et utilisant des ensembles de caractères différents) ainsi que des documents de tous types (images, sons, vidéos…), entre des machines de systèmes différents (PC, Mac, Linux, Unix, etc.).

Avec MIME, vous pouvez donc transmettre de façon transparente à tous les destinataires connectés à Internet des messages contenant par exemple:

  • des textes contenant des caractères autres que l’ASCII, par exemple des caractères accentués
  • du texte enrichi (gras, souligné, couleur…)
  • des images
  • des sons
  • des fichiers

En pratique, comment fonctionne MIME ?

MIME prend en charge votre message électronique. Il en encode les différentes parties (texte principal, pièces jointes) et place dans l’entête les informations pour que le logiciel qui réceptionne le message puisse le décoder.

Un exemple ? Si vous éditez le « code source » du message (consultez la page sur le code source du message pour savoir comment faire), vous voyez apparaître la véritable nature du courrier, sans décodage par la messagerie.

Dans l’entête du message

Mime-version: 1.0 Annonce que le message utilise MIME et précise la version utilisée
Content-type: multipart/mixed; boundary= »E5F934616F3D7E91EBA02022″ Annonce que le message est composé de plusieurs parties hétérogènes

Corps du message

This is a multipart MIME message
   –Boundary_(E5F934616F3D7E91EBA02022)
Content-type: text/plain; charset=iso-8859-1
Content-transfer-encoding: quoted-printable
Première partie du message : on nous annonce que va suivre un texte, encodé en quoted printable
Ci-joint le sch=E9ma que j’avais promis de t’envoyer. Bonne r=E9ception ! S=E9b Le texte en question : le quoted printable est identifiable aux =E9
   –Boundary_(E5F934616F3D7E91EBA02022)
Content-type: image/gif; name=schema.gif
Content-transfer-encoding: base64
Content-disposition: attachment; filename=schema.gif
Content-description: schema.gif
Seconde partie du message : ici il s’agit d’une image au format gif, encodée en base64.
R0lGODdhEAAQAPAAAAAAAP///ywAAAAAEAAQ AAACKIyPqcCt2NyDINR5mMW5Xi5x1pdEhjai IZqe7KtubibT44lFbE6KUwEAOw== L’image (encodée) en question : le base64 est identifiable à l’utilisation exclusive des caractères A-Z, a-z, +, /, et =)
   –Boundary_(E5F934616F3D7E91EBA02022)– Fin

Quelles sont les différents formats et encodage utilisés ?

Quelques formats MIME courants:

  • text/plain : ensemble des caractères US-ASCII seulement
  • test/richtext : textes avec mises en évidences (gras, soulignés…)
  • audio/basic
  • application/postscript
  • image/gif

Les principaux encodages :

  • Le Quoted-Printable
    Utilisé pour le texte uniquement. Les caractères accentués sont remplacés par des signes = suivis du code hexadécimal du caractère (par exemple =E9 pour « é »…).
  • Le Base64
    Les caractères 8 bits sont codés sur 6 bits : un groupe de 3 octets (soit 24 bits) devient ainsi 4 ensembles de 6 bits, les 6 bits représentant un sous-ensemble de l’US-ASCII : A-Z, a-z, +, /, et =.

 

Nous vous recommandons également :

Bénéficiez du soutien de la communauté Arobase.org dans les forums

Sur Arobase.org

  • La RFC 2047 qui définit le standard MIME

Abonnez-vous à Arobase.org

Messageries, logiciels, applications, services : Arobase.org explore l'univers du courrier électronique. Pour suivre l'actualité de l'e-mail et recevoir nos trucs & astuces, rejoignez-nous sur les réseaux sociaux et abonnez-vous à notre newsletter mensuelle.

Postez un commentaire

Vous voulez donner votre avis ou apporter une précision ? Laissez-nous un commentaire !
Attention : si vous avez un problème particulier à résoudre, cherchez de l'aide et attendez une réponse rapide et personnalisée, nous vous conseillons de vous rendre de préférence dans les forums.

Votre adresse email ne sera pas publiéeLes champs requis sont surlignés *

*

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Au fait, vous aussi, vous pouvez afficher votre propre avatar dans les commentaires.