DKIM и DMARC: как доказать подлинность писем
Коротко: DKIM криптографически подписывает исходящую почту, DMARC определяет, что получателям делать с письмами, не прошедшими SPF или DKIM; вместе они затрудняют подделку отправителя.
Подробнее: Почтовый протокол SMTP сам по себе не проверяет отправителя: любой может написать «from: boss@company.com». Три метода дополняют друг друга, чтобы получатели могли распознавать подделки: SPF, DKIM и DMARC. Они публикуются как записи DNS домена отправителя.
Подробности
SPF вкратце
SPF перечисляет серверы, которым разрешено отправлять почту от имени домена. Получатель проверяет, входит ли доставивший сервер в список. Слабость: он касается только технического адреса отправителя (envelope) и ломается при пересылке.
DKIM: цифровая подпись
Отправляющий почтовый сервер подписывает части сообщения (заголовки и тело) закрытым ключом. Подпись находится в заголовке DKIM-Signature. Получатель берёт открытый ключ из DNS и проверяет подпись; если сообщение изменено в пути, проверка не проходит.
DMARC: политика
DMARC требует, чтобы SPF или DKIM согласовывались с доменом отправителя, и задаёт действие при неудаче: none (только отчёт), quarantine (в папку спама) или reject (отклонить). Кроме того, владельцу домена отправляются отчёты.
См. также: SPF, фишинг, электронная почта, записи DNS