MIME and S/MIME definition


Can someone explain to me - in layman's terms - what MIME and S/MIME are? In particular, how they fit around Exchange/ email clients and anything they affect regarding message size?

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.


MIME stands for Multipurpose Internet Mail Extensions, and is essentially a system which extends the original email specification to support modern day emailing technologies. For example, the MIME system enables non-text attachments (images, for example) to be sent quite safely through email. It also enables you to send emails containing non-ASCII text; the original specification, written many years ago, even before the first Windows computer, supported ASCII text only. http://email.about.com/cs/standards/a/mime.htm

S/MIME is a further extension to the MIME standards, which was developed by RSA and enables a MIME email to be digitally signed and encrypted for secure transmission over the web.

With relation to message size, the introduction of MIME means users can send non-text attachments more easily. While it could be done before, the process was manual. With MIME, it is automated, which is just about the only impact on message size I can think of. However, MIME has been used for such a long time it is really considered as though it is standard anyway.

kam_ukAuthor Commented:
Hi Matt

Thanks...so is this like a form of compression?

Not really. Essentially it automates the procedure of attaching files to emails, images in signatures, using non-ASCII and international characters and many other things.

Take an example. Long before my time when emails were first introduced and the RFC for them was written, the RFC was a little restrictive. Based on that RFC, only ASCII text can be used, and if you wanted to attach a file to an email, you'd have to open your image file in a Text Editor to see the raw make-up, manually copy the data to the message, send it and then the person at the other end would have to automatically convert the data back into the appropriate file... a little tedious!

So the MIME system was introduced which automates the attaching of files, and extends the RFC, which essentially means that a MIME-capable email utility can process attachments automatically and work in foreign alphabets and languages. The term 'MIME type' originated from this system. As you know, every document has a MIME type - an HTML file is text/html, an Excel Workbook I believe is application/vnd.ms-excel (although Microsoft's MIME types can get a bit complicated!). The MIME type is inserted by the sending email client when it processes the attachment, to tell the remote end (which also abides by the MIME specification) what type of file to convert the attachment back to.

I hope this makes sense.

Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

kam_ukAuthor Commented:

So if the message was just plain text, there would be any MIME encoding/decoding?

And the MIME encoding/decoding only takes place at the first mail server and the last? So, if the mail went from;

User > Exchange1 > SMTP Gateway > INTERNET > SMTPGateway2 > Exchange2 > Recipient

MIME encoding is only involved at Exchange1 and Exchange2?



Plain Text = ASCII = No MIME required. MIME is only necessary when a feature we love and use, but that isn't included in the RFC, is used.

> User > Exchange1 > SMTP Gateway > INTERNET > SMTPGateway2 > Exchange2 > Recipient

As far as I am aware, that is correct. An SMTP relay server just relays the mail, so it's not going to need to encode and decode it when it has no reason to do so.


Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
kam_ukAuthor Commented:
Excellent answers, and thanks for your patience :)

Don't worry about it. We both gain in the long run, and that's the main thing!

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Email Protocols

From novice to tech pro — start learning today.