Протоколы IMAP, POP3, SMTP и какой из них выбрать при ручной настройке почтового клиента
Как правило, при ручной настройке почтовых клиентов пользователю предлагается самостоятельно выбрать протокол для работы с электронной корреспонденцией. Выбирать чаще всего приходится между POP3 и IMAP , поскольку альтернативы третьему почтовому протоколу SMTP не предусматривается. На этом этапе у пользователя может возникнуть вопрос: какому протоколу отдать предпочтение и чем вообще они отличаются.
Ну что же, давайте разбираться.
Для отправки и получения электронной почты сегодня используются три основных набора правил, или иначе протокола. Таковыми являются IMAP, POP3 и SMTP, причем первые два отвечают за получение и сортировку писем, тогда как третий протокол отвечает за их отправку.
SMTP
SMTP, или простой протокол передачи почты — довольно старый сетевой протокол, описанный еще в 1982 году и предназначенный для отправки электронной почты в сетях TCP/IP . В настоящее время протокол уже не так «прост», поскольку за 40 лет своего существования он претерпел ряд изменений: последнее обновление, включающее масштабируемое расширение ESMTP он получил в 2008 году.

Позиционируется SMTP как протокол отправки электронной почты, но это имеет место лишь на почтовых клиентах пользовательского уровня, тогда как на почтовых серверах и промежуточных агентах пересылки он может использоваться как для отправки, так и для приема электронной почты. На пользовательских ПК протокол выполняет две основные задачи: проверяет локальные настройки и выдает разрешение на отправку данных и, собственно, выполняет саму отправку. SMTP использует порты 25 (соединение без шифрования) и 465 (соединение с шифрованием) с SSL/TLS . Используется SMTP во всех почтовых клиентах без предоставления альтернативы.
IMAP
Протокол прикладного уровня для доступа к электронной почте IMAP используется многими почтовыми клиентами по умолчанию как более продвинутый, нежели POP3. Служит для приема и сортировки почтовых данных, в отличие от POP3, протокол не предусматривает хранение электронных писем на конечном устройстве, вместо этого данные всегда загружаются непосредственно с сервера при каждом просмотре почты пользователем. Опционально протокол поддерживает также и отправку почты с помощью команды APPEND , но поскольку команда не обеспечивает должного уровня безопасности, применения она не нашла.

Управление почтой с использованием протокола IMAP осуществляется с помощью отправки с компьютера или любого другого устройства специальных команд, при этом все операции с почтой (открытие, присвоение статуса, удаление и прочее) выполняется на сервере. К преимуществам IMAP относится возможность смены почтового клиента без смены email, доступ к почте как с ПК, так и с мобильного устройства, а также обеспечение более высокого уровня безопасности компьютера. Активное подключение к интернету при работе с протоколом IMAP обязательно, используемые порты — 143 без шифрования и 993 (SSL/TLS) с шифрованием.
POP3
Менее популярным протоколом приема почтовых данных является POP3 , который, в отличие от IMAP, сохраняет электронные письма на устройство-клиент. Такой подход имеет свои плюсы, но есть у него также и недостатки. Плюс прежде всего для сервера, поскольку полученное пользователем сообщение автоматически удаляется с сервера, благодаря чему серверное хранилище не переполняется. Плюс для пользователя в том, что просмотреть и отредактировать полученную корреспонденцию пользователь может в оффлайн-режиме, без подключения к интернету.

В свою очередь, к недостаткам протокола можно отнести повышенную степень угрозы для устройства-клиента, как-никак, загружаемые на ПК письма могут содержать вредоносный код. Кроме того, во избежание потери полученных данных, пользователям приходится регулярно создавать резервные копии почты. POP3 использует порты 110 (незащищенное соединение) и 110 (шифрованное соединение) . Сегодня протокол считается устаревающим, но по-прежнему поддерживается большинством крупнейших почтовых провайдеров.
IMAP или POP3
Теперь, зная преимущества и недостатки обоих протоколов, можно делать определенный вывод. Если вы имеете гарантированный доступ в интернет и хотите пользоваться разными устройствами для доступа в сеть, используйте IMAP. Отдать предпочтение IMAP имеет смысл также в том случае, когда нужно организовать общий доступ к электронному ящику. А еще IMAP защитит от потери почтовых данных, если только критический сбой не произойдет на сервере. Если же у вас нет постоянного доступа к интернету или вы хотите работать с почтовыми данными непосредственно на локальном устройстве, вам больше подойдет протокол POP3.
«Как это работает»: знакомство с SSL/TLS
Мы достаточно часто рассказываем о разных технологиях: от систем хранения до резервного копирования. Помимо этого мы делимся собственным опытом оптимизации работы нашего IaaS-провайдера — говорим об управленческих аспектах и возможностях для улучшения usability сервиса.
Сегодня мы решили затронуть тему безопасности и поговорить об SSL. Всем известно, что сертификаты обеспечивают надежное соединение, а мы разберёмся в том, как именно это происходит, и взглянем на используемые протоколы.

/ Flickr / David Goehring / CC-BY
SSL (secure sockets layer — уровень защищённых cокетов) представляет собой криптографический протокол для безопасной связи. С версии 3.0 SSL заменили на TLS (transport layer security — безопасность транспортного уровня), но название предыдущей версии прижилось, поэтому сегодня под SSL чаще всего подразумевают TLS.
Цель протокола — обеспечить защищенную передачу данных. При этом для аутентификации используются асимметричные алгоритмы шифрования (пара открытый — закрытый ключ), а для сохранения конфиденциальности — симметричные (секретный ключ). Первый тип шифрования более ресурсоемкий, поэтому его комбинация с симметричным алгоритмом помогает сохранить высокую скорость обработки данных.
Рукопожатие
Когда пользователь заходит на веб-сайт, браузер запрашивает информацию о сертификате у сервера, который высылает копию SSL-сертификата с открытым ключом. Далее, браузер проверяет сертификат, название которого должно совпадать с именем веб-сайта.
Кроме того, проверяется дата действия сертификата и наличие корневого сертификата, выданного надежным центром сертификации. Если браузер доверяет сертификату, то он генерирует предварительный секрет (pre-master secret) сессии на основе открытого ключа, используя максимально высокий уровень шифрования, который поддерживают обе стороны.

Сервер расшифровывает предварительный секрет с помощью своего закрытого ключа, соглашается продолжить коммуникацию и создать общий секрет (master secret), используя определенный вид шифрования. Теперь обе стороны используют симметричный ключ, который действителен только для данной сессии. После ее завершения ключ уничтожается, а при следующем посещении сайта процесс рукопожатия запускается сначала.
Алгоритмы шифрования
Для симметричного шифрования использовались разные алгоритмы. Первым был блочный шифр DES, разработанный компанией IBM. В США его утвердили в качестве стандарта в 70-х годах. В основе алгоритма лежит сеть Фейстеля с 16-ю циклами. Длина ключа составляет 56 бит, а блока данных — 64.
Развитием DES является алгоритм 3DES. Он создавался с целью совершенствования короткого ключа в алгоритме-прародителе. Размер ключа и количество циклов шифрования увеличилось в три раза, что снизило скорость работы, но повысило надежность.
Еще был блочный шифр RC2 с переменной длиной ключа, который работал быстрее DES, а его 128-битный ключ был сопоставим с 3DES по надежности. Потоковый шифр RC4 был намного быстрее блочных и строился на основе генератора псевдослучайных битов. Но сегодня все эти алгоритмы считаются небезопасными или устаревшими.
Самым современным признан стандарт AES, который официально заменил DES в 2002 году. Он основан на блочном алгоритме Rijndael и скорость его работы в 6 раз выше по сравнению с 3DES. Размер блока здесь равен 128 битам, а размер ключа — 128/192/256 битам, а количество раундов шифрования зависит от размера ключа и может составлять 10/12/14 соответственно.
Что касается асимметричного шифрования, то оно чаще всего строится на базе таких алгоритмов, как RSA, DSA или ECC. RSA (назван в честь авторов Rivest, Shamir и Adleman) используется и для шифрования, и для цифровой подписи. Алгоритм основан на сложности факторизации больших чисел и поддерживает все типы SSL-сертификатов.
DSA (Digital Signature Algorithm) используется только для создания цифровой подписи и основан на вычислительной сложности взятия логарифмов в конечных полях. По безопасности и производительности полностью сопоставим с RSA.
ECC (Elliptic Curve Cryptography) определяет пару ключей с помощью точек на кривой и используется только для цифровой подписи. Основным преимуществом алгоритма является более высокий уровень надежности при меньшей длине ключа (256-битный ECC-ключ сопоставим по надежности с 3072-битным RSA-ключом.
Более короткий ключ также влияет на время обработки данных, которое заметно сокращается. Этот факт и то, что алгоритм эффективно обрабатывает большое количество подключений, сделали его удобным инструментом для работы с мобильной связью. В SSL-сертификатах можно использовать сразу несколько методов шифрования для большей защиты.
Хеш и MAC
Цель хеш-алгоритма — преобразовывать все содержимое SSL-сертификата в битовую строку фиксированной длины. Для шифрования значения хеша применяется закрытый ключ центра сертификации, который включается в сертификат как подпись.
Хеш-алгоритм также использует величину, необходимую для проверки целостности передаваемых данных — MAC (message authentication code). MAC использует функцию отображения, чтобы представлять данные сообщения как фиксированное значение длины, а затем хеширует сообщение.
В протоколе TLS применяется HMAC (hashed message authentication code), который использует хеш-алгоритм сразу с общим секретным ключом. Здесь ключ прикрепляется к данным, и для подтверждения их подлинности обе стороны должны использовать одинаковые секретные ключи, что обеспечивает большую безопасность.
Все алгоритмы шифрования сегодня поддерживают алгоритм хеширования SHA2, чаще всего именно SHA-256. SHA-512 имеет похожую структуру, но в нем длина слова равна 64 бита (вместо 32), количество раундов в цикле равно 80 (вместо 64), а сообщение разбивается на блоки по 1024 бита (вместо 512 бит). Раньше для тех же целей применялся алгоритм SHA1 и MD5, но сегодня они считаются уязвимыми.
Разговоры об отказе от SHA1 велись достаточно давно, но в конце февраля алгоритм был официально взломан. Исследователям удалось добиться коллизии хешей, то есть одинакового хеша для двух разных файлов, что доказало небезопасность использования алгоритма для цифровых подписей. Первая попытка была сделана еще в 2015, хотя тогда удалось подобрать только те сообщения, хеш которых совпадал. Сегодня же речь идет о целых документах.
Сертификаты бывают разные
Теперь, когда мы разобрались, что представляет собой протокол SSL/TLS и как происходит соединений на его основе, можно поговорить и о видах сертификатов.
Domain Validation, или сертификаты с проверкой домена, подходят для некоммерческих сайтов, так как они подтверждают только веб-сервер, обслуживающий определенный сайт, на который был осуществлен переход. Этот вид сертификата самый дешевый и популярный, но не может считаться полностью безопасным, так как содержит только информацию о зарегистрированном доменном имени.
Organization Validation, или сертификаты с проверкой организации, являются более надежными, так как подтверждают еще регистрационные данные компании-владельца. Эту информацию юридическое лицо обязано предоставить при покупке сертификата, а удостоверяющий центр может связаться напрямую с компанией для подтверждения этой информации. Сертификат отвечает стандартам RFC и содержит информацию о том, кто его подтвердил, но данные о владельце не отображаются.
Extended Validation, или сертификат с расширенной проверкой, считается самым надежным. Собственно, зеленый замочек или ярлык в браузере означает как раз то, что у сайта есть именно такой сертификат. О том, как разные браузеры информируют пользователей о наличии сертификата или возникающих ошибках можно почитать тут.
Он нужен веб-сайтам, которые проводят финансовые транзакции и требуют высокий уровень конфиденциальности. Однако многие сайты предпочитают перенаправлять пользователей для совершения платежей на внешние ресурсы, подтвержденные сертификатами с расширенной проверкой, при этом используя сертификаты OV, которых вполне хватает для защиты остальных данных пользователей.
Кроме того, сертификаты могут различаться в зависимости от количества доменов, на которые они были выданы. Однодоменные сертификаты (Single Certificate) привязываются к одному домену, который указывается при покупке. Мультидоменные сертификаты (типа Subject Alternative Name, Unified Communications Certificate, Multi Domain Certificate) будут действовать уже для большего числа доменных имен и серверов, которые также определяются при заказе. Однако за включение дополнительных доменов, свыше определенной нормы, потребуется платить отдельно.
Еще существуют поддоменные сертификаты (типа WildCard), которые охватывают все поддомены указанного при регистрации доменного имени. Иногда могут потребоваться сертификаты, которые будут одновременно включать не только несколько доменов, но и поддомены. В таких случаях можно приобрести сертификаты типа Comodo PositiveSSL Multi-Domain Wildcard и Comodo Multi-Domain Wildcard SSL или (лайфхак) обычный мультидоменный сертификат, где в списке доменов указать также и нужные поддоменные имена.
Получить SSL-сертификат можно и самостоятельно: пара ключей для этого генерируется через любой генератор, например, бесплатный OpenSSL. И такой защищенный канал связи вполне получится использовать для внутренних целей: между устройствами своей сети или приложениями. Но вот для использования на веб-сайте сертификат необходимо приобретать официально, чтобы в цепочке подтверждения сертификатов обязательно имелся корневой сертификат, браузеры не показывали сообщений о небезопасном соединении, а пользователи были спокойны за свои данные.
P.S. Дополнительно по теме из блога IaaS-провайдера 1cloud:
- Кириллические домены и SSL-сертификаты
- Цепочки SSL-сертификатов
- Зачем покупать SSL-сертификат
- Как узнать, из чего состоит SSL-сертификат
- SSL SSL-ю рознь: какой сертификат выбрать
Протоколы электронной почты и файлового обмена.
Электронная почта существуют уже более двух десятилетий: до 1990 года она использовалась преимущественно в научных организациях, в 90-е — получила широкую известность и стала использоваться повсеместно. По самым скромным оценкам в мире более 50 миллионов человек пользуются услугами электронной почты. В целом же трафик электронной почты занимает только 3.7% всего сетевого. Как и любой форме коммуникаций, электронной почте присущ определенный стиль и набор соглашений. В частности, общение по электронной почте носит неформальный и демократичный характер.
Электронная почта даёт возможность посылать и получать сообщения, отвечать на письма корреспондентов автоматически, используя их адреса, рассылать копии письма сразу нескольким получателям, переправлять полученное письмо по другому адресу, использовать вместо адресов (числовых или доменных имен) логические имена, создавать несколько подразделов почтового ящика для разного рода корреспонденции, включать в письма текстовые файлы, пользоваться системой «отражателей почты» для ведения дискуссий с группой ваших корреспондентов и т.д.
Развитие технологии Internet привело к появлению современных протоколов для обмена сообщениями, которые предоставляют большие возможности для обработки писем, разнообразные сервисы и удобство в работе. Так, например, протокол SMTP, работающий по принципу клиент-сервер, предназначен для отправки сообщений с компьютера к адресату. Обычно доступ к серверу SMTP не защищается паролем, так что можно использовать для отправки писем любой известный сервер в сети. В отличие от серверов для отправки писем, доступ к серверам для хранения сообщений защищается паролем. Поэтому необходимо использовать сервер или службу, в которой существует учётная запись. Эти серверы работают по протоколам POP и IMAP, которые различаются способом хранения писем.
В соответствии с протоколом POP3 поступающие на определенный адрес сообщения хранятся на сервере до того момента, пока они не будут в течение очередного сеанса загружены на компьютер. После загрузки сообщений, можно отключиться от сети и приступить к чтению почты. Таким образом, использование почты по протоколу POP3 является наиболее быстрым и удобным в использовании.
Протокол IMAP удобен тем людям, которые пользуются постоянным подключением к сети. Сообщения, поступившие на адрес, также хранятся на сервере, но, в отличие от POP3, при проверке почты сначала будут загружены только заголовки сообщений. Само письмо можно будет прочитать после выбора заголовка сообщения (оно загрузиться с сервера). Ясно, что при коммутируемом соединении работа с почтой по этому протоколу приводит к неоправданным потерям времени.
Существует несколько протоколов приема передачи почты между многопользовательскими системами.
Краткое описание некоторых из них: SMTP (Simple Mail Transfer Protocol) — это сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP, причем передача должна быть обязательно инициирована самой передающей системой. POP, POP2, POP3 (Post Office Protocol) — три достаточно простых невзаимозаменяемых протокола, pазpаботанные для доставки почты пользователю с центрального mail-сеpвеpа, ее удаления с него и для идентификации пользователя по имени/паролю. POP включает в себя SMTP, который используется для передачи почты, исходящей от пользователя. Почтовые сообщения могут быть получены в виде заголовков, без получения письма целиком. IMAP2, IMAP2bis, IMAP3, IMAP4, IMAP4rev1 (Internet Message Access Protocol).
- IMAP осуществляет хранение почты на сеpвеpе в файловых диpектоpиях, а также предоставляет клиенту возможность производить поиск строк в почтовых сообщениях на самом сеpвеpе.
- IMAP2 — используется в редких случаях.
- IMAP3 — несовместимое ни с чем pешение, не используется.
- IMAP2bis — pасшиpение IMAP2, позволяет сеpвеpам pазбиpаться в MIME-стpуктуpе (Multipurpose Internet Mail Extensions) сообщения, используется до сих пор.
- IMAP4 — пеpеpаботанный и pасшиpенный IMAP2bis, который можно использовать где угодно.
- IMAP4rev1 — pасшиpяет IMAP большим набором функций, включая те, котоpые используются в DMSP (Distributed Mail System for Personal Computers).
ACAP (Application Configuration Access Protocol) — протокол, pазpаботанный для работы с IMAP4; добавляет возможность поисковой подписки и подписки на доски объявлений, почтовые ящики и используется для поиска адресных книг.
DMSP (или PCMAIL) — протокол для приема/отправки почты, особенность которого заключается в том, что пользователь может иметь более одной рабочей станции в своем пользовании. Рабочая станция содержит статусную информацию о почте, диpектоpию, через которую происходит обмен, которая при подключении к серверу обновляется до текущего состояния на mail-сеpвеpе.
MIME — стандарт, определяющий механизмы для отправки разного рода информации с помощью электронной почты, включая текст на языках, отличных от английского, для которых используются символьные кодировки, отличные от ASCII, а также 8-битный бинарный контент, такой как картинки, музыка, фильмы и программы.
- Схема работы почтовых протоколов стека TCP/IP
- SMTP
- Авторизация клиент проходит процедуру аутентификации
- Транзакция клиент получает информацию о состоянии почтового ящика, принимает и удаляет почту.
- Обновление сервер удаляет выбранные письма и закрывает соединение.
- Письма хранятся на сервере, а не на клиенте. Возможен доступ к одному и тому же почтовому ящику с разных клиентов. Поддерживается также одновременный доступ нескольких клиентов. В протоколе есть механизмы с помощью которых клиент может быть проинформирован об изменениях, сделанных другими клиентами.
- Поддержка нескольких почтовых ящиков (или папок). Клиент может создавать, удалять и переименовывать почтовые ящики на сервере, а также перемещать письма из одного почтового ящика в другой.
- Возможно создание общих папок, к которым могут иметь доступ несколько пользователей.
- Информация о состоянии писем хранится на сервере и доступна всем клиентам. Письма могут быть помечены как прочитанные, важные и т. п.
- Поддержка поиска на сервере. Нет необходимости скачивать с сервера множество сообщений для того чтобы найти одно нужное.
- Поддержка онлайн-работы. Клиент может поддерживать с сервером постоянное соединение, при этом сервер в реальном времени информирует клиента об изменениях в почтовых ящиках, в том числе о новых письмах.
- Предусмотрен механизм расширения возможностей протокола.
- Наиболее известные WEB-клиенты работы с почтой.
- отправка писем без участия SMTP-сервера (компьютер пользователя выступает в роли SMTP-сервера);
- возможность установки пароля на аккаунт;
- настройка приёма почты с нескольких E-mail адресов в один аккаунт;
- сортировщик писем на основе фильтров;
- создание и редактирование шаблонов новых писем;
- работа с диспетчером писем (управление сообщениями на сервере);
- возможность шифрования сообщений;
- удобная адресная книга, интегрированная в интерфейс;
- RSS-агрегатор .
- работа с файловой системой (сохранение, добавление вложений файлов любых форматов, работа с адресной книгой, сохранение истории загрузок на диск в .txt, проигрывание заданной мелодии);
- возможность работы с кодировками и транслитом;
- просмотр html, wml, pda и xml-подобных страниц в виде текста без ссылок и изображений с возможностью настройки шрифта;
- огромное количество параметров и гибкая настройка;
- программа распространяется бесплатно.
- является полноценным Органайзером, предоставляющим функции календаря, планировщика задач, записной книжки и менеджера контактов;
- позволяет отслеживать работу с документами пакета Microsoft Office для автоматического составления дневника работы;
- может использоваться как отдельное приложение, так и выступать в роли клиента для почтового сервера Microsoft Exchange Server, что предоставляет дополнительные функции для совместной работы пользователей одной организации: общие почтовые ящики, папки задач, календари, конференции, планирование и резервирование времени общих встреч, согласование документов.
- Настройки безопасности в почтовых системах: TLS, SSL, цифровая подпись, сертификат. Понятие СПАМ. TLS ( англ. Transport Layer Security) — криптографический протокол, обеспечивающий безопасную передачу данных между пользователями в сети Интернет. TLS-протокол основан на Netscape SSL-протоколе версии 3.0 и состоит из двух частей — TLS Record Protocol и TLS Handshake Protocol. Различие между SSL 3.0 и TLS 1.0 незначительные, поэтому далее в тексте термин «SSL» будет относиться к ним обоим.Большинство современных браузеров поддерживает данный протокол.TLS Working Group, основанная в 1996 году, продолжает работать над протоколом. SSL, используя криптографию, предоставляет возможности аутентификации и безопасной передачи данных через Интернет. Часто происходит лишь аутентификация сервера, в то время как клиент остается неаутентифицированным. Для взаимной аутентификации каждая из сторон должна поддерживать инфраструктуру открытого ключа (PKI), которая позволяет защитить клиент-серверные приложения от перехвата сообщений, редактирования существующих сообщений и создания поддельных. SSL включает в себя три основных фазы:
- Диалог между сторонами, целью которого является выбор алгоритма шифрования
- Обмен ключами на основе криптосистем с открытым ключом или аутентификация на основе сертификатов.
- Передача данных, шифруемых при помощи симметричных алгоритмов шифрования
- Для обмена ключами и проверки их подлинности применяются комбинации алгоритмов: RSA (асимметричный шифр), Diffie-Hellman (безопасный обмен ключами), DSA (алгоритм цифровой подписи) и алгоритмы технологии Fortezza.
- Для симметричного шифрования: RC2, RC4, IDEA, DES, Triple DES или AES;
- Для хэш-функций: MD5 или SHA.
- Удостоверение источника документа. В зависимости от деталей определения документа могут быть подписаны такие поля, как «автор», «внесённые изменения», «метка времени» и т. д.
- Защиту от изменений документа. При любом случайном или преднамеренном изменении документа (или подписи) изменится хэш, следовательно, подпись станет недействительной.
- Невозможность отказа от авторства. Так как создать корректную подпись можно лишь, зная закрытый ключ, а он известен только владельцу, то владелец не может отказаться от своей подписи под документом.
- Злоумышленник может попытаться подделать подпись для выбранного им документа.
- Злоумышленник может попытаться подобрать документ к данной подписи, чтобы подпись к нему подходила.
- Злоумышленник может попытаться подделать подпись для хоть какого-нибудь документа.
- Злоумышленник, укравший закрытый ключ, может подписать любой документ от имени владельца ключа.
- Злоумышленник может обманом заставить владельца подписать какой-либо документ, например используя протокол слепой подписи.
- Злоумышленник может подменить открытый ключ владельца (см. управление ключами) на свой собственный, выдавая себя за него.
- для проверки подписи владельца (аутентификация)
- для шифрования посылаемых ему данных (конфиденциальность)
- Конфиденциальность соединения. После предварительного диалога определяется секретный ключ, который используется для симметричной криптографии (например, DESили rc4)
- Партнеры идентифицируют друг друга с помощью асимметричных криптографических методов (например, RSA или DSS)
- Обеспечение надежности соединения. Пересылка включает в себя контроль целостности сообщений с применением кода аутентификации MAC (Message Autentification Code) и хэш функций (SHA или MD5).
- digitally-signed (шифрование электронной подписи)
- stream-ciphered (поточное шифрование)
- block-ciphered (блочное шифрование)
- publick-key-encrypted (шифрование с помощью открытого ключа),
В Интернете для доставки электронной почты машина-источник устанавливает TCP-соединение с портом 25 машины приемника. Этот порт прослушивается почтовым демоном, и их общение происходит с помощью протокола SMTP (Simple Mail Transfer Protocol простой протокол электронной почты). Этот демон принимает входящие соединения и копирует сообщения из них в соответствующие почтовые ящики. Если письмо не возможно доставить, отправителю отправляется сообщение об ошибки, содержащее первую часть этого письма.

MTA (Mail Transfer Agent) — агент передачи почты — является основным компонентом системы передачи почты Internet, который представляет данный сетевой компьютер для сетевой системы электронной почты. Обычно пользователи работают не с MTA, а с программой MUA (Mail User Agent) — клиентом электронной почты. Схематично принцип взаимодействия показан на рисунке.
Протокол SMTP представляет собой простой ASCII протокол. Установив ТСР-соединение с портом 25. передающая машина выступающая в роли клиента, ждет запроса принимающей машины, работающей в режиме сервера. Сервер начинает диалог с того что посылает текстовую строку, содержащую его идентификатор и сообщающую о его готовности (или неготовности) к приему почты. Если сервер не готов, клиент разрывает соединение и продолжает попытку позднее.
Если сервер готов принимать почту, клиент объявляет, от кого поступила почта и кому она предназначается. Если получатель почты существует, сервер дает клиенту добро на пересылку сообщения. Затем клиент посылает сообщение. А сервер подтверждает его получение. Контрольные суммы не проверяются, так как протокол ТСР обеспечивает надежный байтовый поток. Если у отправителя есть еще почта. Она также отправляется. После передачи всей почты в обоих направлениях соединение разрывается.
В результате такой сессии письмо будет доставлено адресату user1@company.tld, но не будет доставлено адресату user2@company.tld, потому что такого адреса не существует.
Из-за проблем со спамом, почти все современные сервера игнорируют команды VRFY и EXPN, как раскрывающие информацию о пользователе.
Для решения некоторых проблем. Был разработан расширенный протокол SMTP, ESMTP. Клиенты, желающие использовать его, должны начинать сессию связи с посылки приветствия EHLO вместо HELO. Если команда не принимается сервером, значить, сервер поддерживает только обычный протокол SMTP и клиенту следует работать в обычном режиме. Если же EHLO принято, значить, установлена сессия ESMTP и возможна работа с новыми параметрами и командами.
Post Office Protocol Version 3 — протокол почтового отделения, версия 3 — это сетевой протокол, используемый почтовым клиентом для получения сообщений электронной почты с сервера. Обычно используется в паре с протоколом SMTP.
Предыдущие версии протокола (POP, POP2) устарели. Альтернативным протоколом для сбора сообщений с почтового сервера является IMAP. По умолчанию использует TCP-порт 110. Существуют реализации POP3-серверов, поддерживающие TLS и SSL.

После установки соединения протокол РОР3 проходит три последовательных состояния
Не смотря на то, что протокол РОР3 действительно поддерживает возможность получения одного или нескольких писем и оставления их на сервере, большинство программ обработки электронной почты просто скачивают все письма и опустошают почтовый ящик на сервере.
Пользователю, имеющему одну учетную запись у одного провайдера и всегда соединяющегося с провайдером с одной и той же машины, вполне достаточно протокола РОР3. Этот протокол используется повсеместно благодаря его простоте и надежности. Но у многих пользователей есть одна учетная запись в учебном заведении или на работе, но они хотят иметь к ней доступ и из дома, и с места работы (учебы), и во время командировки те из разных мест. Хотя протокол РОР3 и позволяет разрешить такую ситуацию. Но проблема в том что при таком использовании электронной почты вся корреспонденция пользователя очень быстро распространится по случайным машинам, с которых он получал доступ в Интернет, и некоторые из этих компьютеров могут вообще не принадлежать пользователь.
Это неудобство привело к созданию альтернативного протокола для получения почты, IMAP.
IMAP (англ. Internet Message Access Protocol) — интернет-протокол прикладного уровня для доступа к электронной почте.
IMAP предоставляет пользователю богатые возможности для работы с почтовыми ящиками, находящимися на центральном сервере. Почтовая программа, использующая этот протокол, получает доступ к хранилищу корреспонденции на сервере так, как будто эта корреспонденция расположена на компьютере получателя. Электронными письмами можно манипулировать с компьютера пользователя (клиента) без необходимости постоянной пересылки с сервера и обратно файлов с полным содержанием писем.
IMAP был разработан для замены более простого протокола POP3 и имеет следующие преимущества по сравнению с последним:
Текущая версия протокола имеет обозначение IMAP4rev1 (IMAP, версия 4, ревизия 1). Протокол поддерживает передачу пароля пользователя в зашифрованном виде. Кроме того, IMAP-трафик можно зашифровать с помощью SSL.
Eudora Mail — клиент электронной почты, который появился еще на заре Интернета, когда электронная почта была чуть ли не единственным средством общения.
Evolution — графическая клиентская программа управления электронной почтой, контактами и временем для платформы Linux. Разработана и поддерживается фирмой Novell. Содержит календарь, систему планирования временем, адресную книги, поддерживает все распространенные почтовые протоколы IMAP, POP, SMTP.
Fidolook — клиент электронной почты, который является встраиваемым дополнением к Outlook Express из состава пакета Internet Explorer. Существенно расширяет такие возможности Outlook Express, как цитирование сообщений, шаблоны сообщений, настройка заголовков сообщения, возможности работы с папками новостей, импорт и экспорт сообщений.
Foxmail! — бесплатная программа для работы с электронной почтой для ОС Windows. Разрабатывается китайской корпорацией TenCent. Поддерживает протоколы SMTP, POP3 и RSS. Основные возможности:
KMail — клиент электронной почты, распространённый в операционных системах семейства *nix. Поддерживает SMTP, POP3, IMAP, локальные почтовые ящики, а также существует поддержка, антивирусов, антиспама, пользовательских фильтров.
M2 — внутреннее название почтового и новостного клиента, встроенного в браузер Opera и официально называемого Opera Mail. Его интерфейс отличается от остальных почтовых клиентов с целью обеспечения лучшей интеграции с Opera, а также имеется фильтр спама, поддержка POP3 и IMAP, новостных групп, RSS и Atom новостных лент.
MailMan — почтовый клиент для мобильных устройств и телефонов, является java приложением. Основные возможности:
Microsoft Outlook — компьютерная программа-органайзер с функциями почтового клиента, входящая в пакет офисных программ Microsoft Office. Основные возможности:
Mozilla Thunderbird — бесплатная, свободно распространяемая программа для работы с электронной почтой и группами новостей. Является составной частью проекта Mozilla. Поддерживает протоколы SMTP, POP3, IMAP, NNTP, RSS, работает в Windows, Mac OS X и Linux, причём набор возможностей и расположение элементов управления на всех платформах одинаковые.
Outlook Express — программа для работы с электронной почтой и группами новостей, которая поставляется в составе ОС Windows, начиная с Windows 95 OSR 2.5, а также вместе с браузером Internet Explorer, начиная с версии 4.0. Новая версия Outlook Express, включенная в состав Windows Vista вместе с Internet Explorer 7.0, носит название Windows Mail. Название Outlook Express предполагает, что эта программа является «облегчённой» версией Microsoft Outlook и, в отличие от Outlook Express, не имеет функций для работы с группами новостей.
The Bat! — условно-бесплатная программа для работы с электронной почтой для ОС Windows. Разрабатывается молдавской компаниией RitLabs. Поддерживает протоколы SMTP, POP3, IMAP, имеет довольно развитую систему фильтрации сообщений и поддерживает большое количество кириллических кодировок. Существуют две версии программы: Home и Professional. В версии Professional имеется возможность проверки орфографии, шифрации сообщений и биометрической аутентификации.
В первой фазе клиент и сервер обсуждают выбор криптографического алгоритма для дальнейшего использования. В данной версии протокола доступны следующие алгоритмы:
SSL (англ. Secure Sockets Layer — протокол защищённых сокетов) — криптографический протокол, обеспечивающий безопасную передачу данных по сети Интернет. При его использовании создаётся защищённое соединение между клиентом и сервером. SSL изначально разработан компанией Netscape Communications, в настоящее время принят IETF как стандарт. Поддерживается всеми популярными браузерами. Использует шифрование с открытым ключом для подтверждения подлинности передатчика и получателя. Поддерживает надёжность передачи данных за счёт использования корректирующих кодов и безопасных хэш-функций. SSL состоит из двух уровней. На нижнем уровне многоуровневого транспортного протокола (например, TCP) он является протоколом записи и используется для инкапсуляции (то есть формирования пакета) различных протоколов. Для каждого инкапсулированного протокола он обеспечивает условия, при которых сервер и клиент могут подтверждать друг другу свою подлинность, выполнять алгоритмы шифрования и производить обмен криптографическими ключами, прежде чем протокол прикладной программы начнёт передавать и получать данные. Для доступа к страницам, защищённым протоколом SSL, в URL вместо обычного префикса (schema) http, как правило, применяется префикс https (порт 443), указывающий на то, что будет использоваться SSL соединение. Так как операции шифрования / расшифрования требуют много вычислительных ресурсов, чтобы снизить нагрузку на веб-серверы, используют аппаратные SSL-ускорители. Для работы SSL требуется, чтобы на сервере имелся SSL-сертификат. Электронная цифровая подпись (ЭЦП)— реквизит электронного документа, предназначенный для удостоверения источника данных и защиты данного электронного документа от подделки.
Цифровая подпись обеспечивает:
Возможны следующие угрозы цифровой подписи:
При использовании надёжной хэш-функции, вычислительно сложно создать поддельный документ с таким же хэшем, как у подлинного. Однако, эти угрозы могут реализоваться из-за слабостей конкретных алгоритмов хэширования, подписи, или ошибок в их реализациях. Тем не менее, возможны ещё такие угрозы системам цифровой подписи:
Сертификат (сертификат открытого ключа, сертификат ЭЦП) — цифровой или бумажный документ, подтверждающий соответствие между открытым ключом и информацией, идентифицирующей владельца ключа. Содержит информацию о владельце ключа, сведения об открытом ключе, его назначении и области применения, название центра сертификации и т. д. Открытый ключ может быть использован для организации защищённого канала связи с владельцем двумя способами:
Существует две модели организации инфраструктуры сертификатов: централизованная (PKI) и децентрализованная (PGP). В централизованной модели существуют корневые центры сертификации, подписи которых обязан доверять каждый пользователь. В децентрализованной модели каждый пользователь самостоятельно выбирает, каким сертификатам он доверяет и в какой степени.
Спам (англ. spam) — сообщения, массово рассылаемые людям, не выразившим желание их получать. В первую очередь термин «спам» относится к электронным письмам.
Протокол Secure Socket Layer
Для обеспечения безопасного доступа к WEB-серверам разработан протокол SSL. Этот протокол является доминирующим для шифрования обмена между клиентом и сервером (http://home.netscape.com/eng/ssl3/ssl-toc.html). Протокол SSL имеет два уровня: протокол записей (SSL Record Protocol) и протокол диалога (SSL Handshake Protocol). Последний позволяет клиенту и серверу идентифицировать друг друга и согласовать использование определенного алгоритма шифрования и обменяться ключами.
Протокол SSL реализует следующие функции:
| Версия | Источник | Описание |
| SSLv2.0 | Стандарт разработчика (корпорация Netscape) | Первый реализованный протокол SSL |
| SSLv3.0 | Устаревший проект стандарта (корпорация Netscape) | Ревизия протокола с целью предотвращения специфичных атак, добавление не-RSAшифров и цепей сертификатов. |
| TLSv1.0 | Предложенный стандарт (IETF) | Ревизия протокола SSLv3.0. УровеньMACобновлен доHMAC. Добавлены дополнение блоков для блочных шифров, стандартизован порядок сообщений, расширены предупредительные сообщения. |
| Параметр | Описание параметра |
| Session identifier | Произвольная последовательность байтов, выбранная сервером чтобы идентифицировать активную сессию |
| peer certificate | Сертификат партнера — X509.v3. Этот элемент может быть равен нулю |
| compression method | Алгоритм, используемый для сжатия информации перед шифрованием |
| cipher spec | Спецификация алгоритма шифрования данных (например, нуль или DES) и алгоритм MAC (например MD5 или SHA). Она определяет криптографические атрибуты, такие как hash_size. |
| Master secret | 48-байтовый секретный код, общий для клиента и сервера |
| is resumable | Флаг, указывающий, что сессия может использоваться для формирования новых соединений |
Состояние соединения характеризуется следующими параметрами.
| Параметр | Описание параметра |
| server and client random | Последовательность байтов, выбираемая сервером и клиентом для каждого соединения |
| server write mac secret | Секретный код, используемый в MAC-операциях с данными, записанными сервером |
| client write MAC secret | Секретный код, используемый в MAC-операциях с данными, записанными клиентом |
| server write key | Ключ шифрования данных шифруемых сервером и дешифруемых клиентом |
| client write key | Ключ шифрования данных шифруемых клиентом и дешифруемых сервером |
| initialization vectors | Когда используется блочный шифр в режиме CBC, для каждого ключа поддерживается инициализационный вектор (IV). Это поле устанавливается первым в процессе стартового диалога. |
| sequence numbers | Каждая из сторон поддерживает свои номера по порядку для переданных и полученных сообщений для каждого из соединений. Когда партнер посылает или получает сообщение change cipher spec, соответствующее число, характеризующее номер обнуляется. Значение номера не может превышать 2 64 -1. |