Multipurpose Internet Mail Extensions (MIME) is an Internet standard that extends the functionality of email to support non-text attachments.
Today we take for granted the ability to format text in an email and attach virtually any type of content or file to an email for transmission across the Internet. However, this wasn't always the case. Before MIME support was widespread in email clients, emails could only contain 7-bit ASCII plain text. In order to send any type of non-text content, the file would have to be manually encoded using a utility like uuencode, and the resulting text pasted into the body of an email message. The email recipient would then have to copy the text out of the email and use a utility program to decode the encoded text.
MIME added support for formatted text in an email message and made the process of sending non-text content much simpler. In effect, MIME ushered in the era of modern email. MIME was developed by Nathaniel Borenstien and Ned Freed in the early 1990s and the first MIME attachment was sent on March 11, 1992.
Frequently Asked Questions
How does MIME work?
MIME streamlines the process of sending non-text files by allowing non-text files to be attached to an email message without requiring that they be manually converted into plain text and pasted into the body of the message. MIME doesn't really change the way that email is transmitted. Instead, MIME automates the process of converting binary files into plain text, inserting the plain text into an email message, and then decoding the files upon receipt.
Here's a simplified description of what happens when an email with an attachment is sent over an email system that supports the MIME standard:
- The sender types a message, formats it, attaches files for transmission, and hits “send”.
- The email client converts the formatted message into plain text, convert the attached files into plain text, and combines the email message and the encoded files into a single plain text message which is transmitted to the recipient.
- A MIME header is attached to the message letting the recipient's email client know that the message should be interpreted according to the MIME standard.
- The recipients email client decodes the plain text message, splits the message and file apart, and reformats both to match the format used by the sender.
- When the recipient opens the email, they receive a formatted email message and are able to view or download and any file attachments in their original format.
Prior to widespread support for MIME, sending email attachments was a fairly technical process that limited the potential usability of email to transmit binary content. However, once MIME was adopted, anyone with the ability to perform basic computer tasks was suddenly capable of transmitting files using email. It's not a stretch to say that without MIME or another comparable technology email would not enjoy the widespread usage and popularity it enjoys today.
Is MIME used just for email?
MIME was designed to be used with SMTP mail messages. However, it also proved to be useful for identifying the type of content included in a web page, and is commonly used any time a web server transmits a file to help the recipients browser identify the best application to use to access the content.