An email attachment is a computer file sent along with an email message. One or more files can be attached to any email message, and be sent along with it to the recipient. This is typically used as a simple method to share documents and images. A paper clip image is the standard image for an attachment in an email client.
Email standards such as MIME don't specify any file size limits, but in practice email users will find that they can't successfully send very large files across the Internet.
This is because of a number of potential limits:
- Mail systems often arbitrarily limit the size their users are allowed to submit.
- A message will often pass through several mail transfer agents to reach the recipient. Each of these has to store the message before forwarding it on, and may therefore also impose size limits.
- The recipient mail system may reject incoming emails with attachments over a certain size.
The result is that while large attachments may succeed internally within a company or organization, they may not when sending across the Internet.
As an example, when Google's Gmail service increased its arbitrary limit to 25MB it warned that: "you may not be able to send larger attachments to contacts who use other email services with smaller attachment limits".
Note that all these size limits are based, not on the original file size, but the MIME-encoded copy. The common Base64 encoding adds about 33% to the original file size, meaning that an original 20MB file could exceed a 25MB file attachment limit.
Dangerous file types
Email users are typically warned that unexpected email with attachments should always be considered suspicious and dangerous, particularly if not known to be sent by a trusted source.
However, in practice this advice is not enough – "known trusted sources" were the senders of executable programs creating mischief and mayhem as early as 1987 (with the mainframe-based Christmas Tree EXEC), so since the ILOVEYOU and Anna Kournikova worms of 2000 and 2001 email systems have increasingly added layers of protection to prevent potential malware – and now many block certain types of attachments.
History, and technical detail
Originally Internet SMTP email was 7-bit ASCII text only, and attaching files was done by manually encoding 8-bit files using uuencode, BinHex or xxencode and pasting the resulting text into the body of the message.
Modern email systems use the MIME standard, making email attachments more utilitarian and seamless. This was developed by Nathaniel Borenstein and collaborator Ned Freed with the first MIME email attachment being sent by Nathaniel Borenstein on March 11, 1992 and the standard being officially released as RFC2045 in 1996.
With MIME, a message and all its attachments are encapsulated in a single multipart message, with base64 encoding to convert binary into 7-bit ASCII - or on modern mail servers running Extended SMTP, optionally full 8-bit support via the 8BITMIME extension.
- "Setting Message Size Limits in Exchange 2010 and Exchange 2007";
- "Google updates file size limits for Gmail and YouTube", geek.com.
- "Maximum attachment size", mail.google,com.
- "Raw vs. Encoded Email Message Size — What's the Difference?".
- "Some file types are blocked", mail.google.com.
- "You may receive an "Outlook blocked access to the following potentially unsafe attachments" message in Outlook", microsoft.com.
- "How do I use UUencode/BinHex/MIME support?", winzip.com.
- Father of the email attachment, Patrick Kingsley, The Guardian, 26 March 2012
- "The MIME guys: How two Internet gurus changed e-mail forever ", February 01, 2011, Jon Brodkin, Network World
- "MIME & Me (nsb)". Guppylake.com. 1992-03-11. Retrieved 2013-10-31.