Visual RFC.
ALL RFCs / RFC 2045
Read the RFC ↗

RFC 2045 / START HERE

MIME message bodies, before the details

MIME: Multipurpose Internet Mail Extensions

MIME extends email so it can describe different content types and carry data beyond simple plain-text mail. This RFC establishes foundational message fields and transfer encodings.

The idea in one picture

  1. Content needs a description

  2. MIME labels and encodes it

  3. Mail software interprets the content

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Email needs to carry text in different character sets and content that cannot travel directly as basic mail text.

A familiar example

A mail app identifies the content type and transfer encoding needed to decode part of a message correctly.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. MIME entity headersMIME headers describe the body entity without replacing SMTP envelope routing.
  2. Content type and charsetType/subtype and parameters identify how recovered content should be interpreted.
  3. Quoted-printable bytesQuoted-printable preserves much readable ASCII while encoding other octets as equals plus hex.
  4. Base64 body encodingBase64 converts body octets into a restricted alphabet suitable for mail transport.
  5. Canonical form and safetyCanonicalization, transfer encoding, and media interpretation are different processing stages.
Start with chapter one →

This introduction explains RFC 2045 (1996). Read the original RFC ↗