Библиотека для канонизации (нормализации, но НЕ только очистки) адресов электронной почты

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

Я надеялся найти библиотеку, которая попыталась бы выполнить нормализацию, чтобы позволить найти некоторые дубликаты из больших наборов адресов электронной почты. Цель здесь - найти как можно больше дубликатов. Учитывая, насколько это полезно для нескольких целей (в моем случае это простое обнаружение злоупотреблений, поскольку учетные записи злоупотреблений обычно (пытаются) просто повторно использовать определенные учетные записи), я думаю, что могут быть существующие решения.

Итак, какие вещи может изменяться? Я знаю по крайней мере такие вещи, как:

  • часть имени домена нечувствительна к регистру (согласно DNS); но локальная часть может быть или не быть, это зависит от почтового провайдера (например, Gmail считает регистр нечувствительным)
  • у многих доменов есть псевдонимы (googlemail.com эквивалентен gmail.com)
  • некоторые провайдеры электронной почты разрешают другие варианты, которые они игнорируют (Gmail, например, игнорирует любые точки в адресе электронной почты!)

В идеале это будет на Java, хотя языки сценариев также будут работать (инструмент командной строки)

10
задан StaxMan 8 July 2011 в 20:07
поделиться