MIME significa «Multipurpose Internet Mail Extensions». Suena complicado y sin sentido, pero MIME amplía las capacidades originales del correo electrónico de Internet de una manera emocionante.
Los mensajes de correo electrónico han sido definidos por el RFC 822 (y posteriormente por el RFC 2822) desde 1982, y probablemente seguirán obedeciendo esta norma durante mucho tiempo.
Índice de contenidos
Nada más que texto, texto sin formato
Desafortunadamente, el RFC 822 tiene una serie de deficiencias. En particular, los mensajes que se ajusten a esa norma no deben contener nada más que texto ASCII simple.
Para enviar archivos (como imágenes, documentos de procesador de texto o programas), primero hay que convertirlos a texto plano y luego enviar el resultado de la conversión en el cuerpo de un mensaje de correo electrónico. El destinatario tiene que extraer el texto del mensaje y convertirlo de nuevo al formato de archivo binario. Este es un proceso engorroso, y antes de MIME todo tenía que hacerse a mano.
MIME corrige este problema adjunto al RFC 822 y también permite utilizar caracteres internacionales en los mensajes de correo electrónico. Con la limitación del RFC 822 a texto plano (inglés), esto no había sido posible antes.
La falta de estructura
Además de estar limitado a caracteres ASCII, el RFC 822 no identifica la estructura de un mensaje ni el formato de los datos. Puesto que está claro que siempre se obtiene un solo dato de texto sin formato, esto no era necesario cuando se definió el estándar.
MIME, por el contrario, le permite enviar varias piezas de datos diferentes en un mensaje (por ejemplo, una imagen y un documento de Word), y le indica al cliente de correo electrónico del destinatario el formato en el que se encuentran los datos para que pueda tomar decisiones inteligentes al mostrar el mensaje.
Cuando usted obtiene una imagen, ya no tiene que darse cuenta de que se puede ver con un visor de imágenes. Su cliente de correo electrónico muestra la imagen en sí o inicia un programa en su ordenador que puede hacerlo.
Construcción y ampliación del RFC 822
Ahora, ¿cómo funciona la magia MIME? Básicamente, emplea el engorroso proceso de enviar datos arbitrarios en texto plano descrito anteriormente. La norma de mensajes MIME no sustituye a la norma establecida en el RFC 822, sino que la amplía. Los mensajes MIME tampoco pueden contener nada más que texto ASCII.
Esto significa que todos los datos del correo electrónico deben estar codificados en texto plano antes de enviar el mensaje, y deben ser decodificados de nuevo a su formato original en el extremo receptor. Los primeros usuarios de correo electrónico tenían que hacerlo manualmente. MIME lo hace por nosotros cómodamente y sin problemas, normalmente a través de un proceso inteligente llamado codificación Base64.
Vida como un mensaje de correo electrónico MIME
Cuando usted redacta un mensaje en un programa de correo electrónico capaz de MIME, el programa hace aproximadamente lo siguiente:
- Si el mensaje está en texto ASCII sin formato, lo deja en blanco y sólo le dice al cliente de correo electrónico del destinatario que no espere más que texto sin formato.
- Si el mensaje contiene uno o más archivos adjuntos y un cuerpo con formato HTML, cada parte se examina y se trata por separado.
En primer lugar, se determina el formato de los datos. Esto es necesario para indicar al cliente de correo electrónico del destinatario qué hacer con los datos y para garantizar una codificación adecuada para que no se pierda nada durante la transferencia.
A continuación, los datos se codifican si están en un formato que no sea texto ASCII simple. En el proceso de codificación, los datos se convierten al texto sin formato adecuado para los mensajes RFC 822.
Finalmente, los datos codificados se insertan en el mensaje y se informa al cliente de correo electrónico del destinatario de qué tipo de datos esperar: ¿Hay apegos? ¿Cómo se codifican? ¿En qué formato estaba el archivo original?
Al final del destinatario, el proceso se anula. En primer lugar, el cliente de correo electrónico lee la información que ha sido añadida por el cliente de correo electrónico del remitente: ¿Tengo que buscar archivos adjuntos? ¿Cómo los decodifico? ¿Cómo manejo los archivos resultantes? Luego, cada parte del mensaje es extraída y decodificada si es necesario. Finalmente, el cliente de correo electrónico muestra las partes resultantes al usuario. El cuerpo de texto plano se muestra en línea en el cliente de correo electrónico junto con el archivo adjunto de la imagen. El programa también adjunto al mensaje se muestra con un icono de adjunto, y el usuario puede decidir qué hacer con él. Puede guardarlo en algún lugar de su disco o iniciarlo directamente desde el programa de correo electrónico.