Как работает многоцелевое расширение почты Интернета (MIME)

MIME расшифровывается как Multipurpose Internet Mail Extensions. MIME расширяет оригинальные возможности электронной почты в Интернете полезным и содержательным способом.

Сообщения электронной почты были определены в RFC 822 (и позже RFC 2822) с 1982 года, и они, вероятно, еще долго будут придерживаться этого стандарта. MIME расширяет стандарты RFC 822 за пределы того, что предполагалось почти 40 лет назад.

Ничего, кроме простого текста

RFC 822 страдает рядом недостатков. В частности, сообщения, соответствующие этому стандарту, не должны содержать ничего, кроме простого текста ASCII.

Чтобы отправлять такие файлы, как изображения, документы текстового процессора или программы, вы должны сначала преобразовать их в простой текст, а затем отправить результат преобразования в текст сообщения электронной почты. Получатель должен извлечь текст из сообщения и снова преобразовать его в двоичный формат файла. Это громоздкий процесс, и до MIME все это нужно было делать вручную.

MIME исправляет эту проблему, связанную с RFC 822, и позволяет также использовать международные символы в сообщениях электронной почты. С ограничением RFC 822 на простой (английский) текст эта возможность была невозможна раньше.

Недостаток структуры

Помимо ограничения ASCII-символами, RFC 822 не идентифицирует структуру сообщения или формат данных. Поскольку с текстовыми данными все приходит в один блок, детальная структурная топография не была необходима, когда первоначальный стандарт вступил в силу.

MIME, напротив, позволяет отправлять несколько частей данных различных единиц в одном сообщении (скажем, изображение и документ Word) и сообщает клиенту электронной почты получателя, в каком формате находятся данные, чтобы они могли сделать разумный выбор при отображении сообщения. ,

Когда вы получаете изображение, вам больше не нужно понимать, что его можно просматривать с помощью средства просмотра изображений. Ваш почтовый клиент либо отображает само изображение, либо запускает программу на вашем компьютере, которая может.

Построение и расширение RFC 822

Теперь, как работает магия MIME? По сути, он использует громоздкий процесс отправки произвольных данных в виде простого текста. Стандарт сообщений MIME не заменяет стандарт, изложенный в RFC 822, но расширяет его. Сообщения MIME также не могут содержать ничего, кроме текста ASCII.

Это означает, что все данные электронной почты все еще должны быть закодированы в виде простого текста перед отправкой сообщения, и оно должно быть снова декодировано в исходный формат на принимающей стороне. Ранние пользователи электронной почты должны были сделать это вручную. MIME делает это для нас комфортно и без проблем, обычно с помощью интеллектуального процесса, называемого кодированием Base64.

Жизнь как сообщение электронной почты MIME

Когда вы составляете сообщение в почтовой программе, поддерживающей MIME, программа выполняет примерно следующее:

  • Если сообщение только в текстовом формате ASCII, оно оставляет его в покое и только сообщает клиенту электронной почты получателя, что он не ожидает ничего, кроме простого текста.
  • Если сообщение содержит одно или несколько вложений и тело с форматированием HTML, каждая часть рассматривается и обрабатывается отдельно.

Сначала определяется формат данных. Этот шаг необходим, чтобы сообщить почтовому клиенту получателя, что делать с данными, и обеспечить правильное кодирование, чтобы ничего не терялось во время передачи.

Затем данные кодируются, если они имеют формат, отличный от простого текста ASCII. В процессе кодирования данные преобразуются в простой текст, подходящий для сообщений RFC 822.

Наконец, закодированные данные вставляются в сообщение, и клиент электронной почты получателя информируется о том, какие данные следует ожидать: есть ли вложения? Как они закодированы? В каком формате был оригинальный файл?

На стороне получателя процесс полностью изменен. Во-первых, почтовый клиент считывает информацию, добавленную почтовым клиентом отправителя: нужно ли искать вложения? Как мне их декодировать? Как мне обработать полученные файлы? Затем каждая часть сообщения извлекается и декодируется при необходимости. Наконец, почтовый клиент отображает полученные детали пользователю. Текстовое тело в почтовом клиенте отображается в виде текста вместе с вложением изображения. Программа, также прикрепленная к сообщению, отображается со значком вложения, и получатель может решить, что с ним делать. Она может сохранить его где-нибудь на своем диске или запустить прямо из почтовой программы.

Ссылка на основную публикацию