Фейкова пошта на емодзі- та нелатинських доменах

·

Поштові сервери розуміють лише ASCII. Так було від початку: протокол зʼявився раніше за саму думку, що в домені може бути щось інше. Тому адреса на 🎅.example чи пошта.укр не може дійти до сервера в тому вигляді, як ви її написали. Дорогою вона перетворюється на ASCII-запис, що зветься punycode, — і все інше про такі домени випливає саме звідси.

Як працює переклад

Punycode кодує будь-яке Unicode-імʼя у звичайний ASCII-рядок, що починається з xn--. Він оборотний і однозначний — те саме емодзі завжди дає той самий рядок.

Що ви набираєтеЩо насправді подорожує
🎅xn--8j8h
поштаxn--80adcxbmm

Конвертер punycode переводить в обидва боки. Знадобиться він двічі: спершу — щоб дізнатись, яке саме імʼя шукати в реєстратора, а потім — щоразу, коли якась форма вимагатиме адресу в ASCII.

Переведення емодзі в punycode

Реєстрація: те, про що зазвичай не пишуть

⚠️
Більшість реєстрів не дозволяє емодзі взагалі. Поширені зони — .com, .net, .org і майже кожна країнова — відхиляють їх одразу. Дозволяє їх лише жменька реєстрів, і склад цієї жменьки змінюється. Перевіряйте правила конкретної зони до того, як платити: реєстратор охоче прийме замовлення на імʼя, яке реєстр потім відхилить.

Нелатинські абетки — інший і значно простіший випадок. Інтернаціоналізовані домени кирилицею, грецькою, арабською, китайською та іншими підтримує чимало реєстрів, і поводяться вони як звичайні домени: переклад у punycode такий самий, просто нікого не треба вмовляти його дозволити.

Далі — направити його сюди

Щойно домен зареєстровано, йому потрібен той самий єдиний MX-запис, що й будь-якому іншому, — точні значення тут. Вписуйте запис у тій формі, яку приймає панель вашого реєстратора: одні показують Unicode-імʼя, інші форму xn--, і це те саме.

Де такі адреси ламаються і що з цим робити

У пошті такі адреси працюють, а у формах реєстрації — ні. Перевірки в цих формах писали люди, які виходили з того, що домен виглядає як example.com. Тому емодзі-адресу часто відхиляють як «некоректну» — не тому, що з нею щось не так, а тому, що її просто не передбачили.

Обхід — сама ж форма punycode: набирайте імʼя@xn--8j8h.example замість гарного варіанта. Це та сама адреса — рівно та, яку в будь-якому разі побачить поштовий сервер, — але вона проходить перевірки, що розуміють лише ASCII. Старі телефони й поштові програми, які показують гарну форму квадратиками, — це та сама проблема з тим самим рішенням.

ℹ️
Варто знати заздалегідь: емодзі-домен — приємний трюк, але поганий вибір за замовчуванням. Якщо адреса потрібна для справи, тобто щоб приймати коди від чужих сервісів, беріть звичайний непримітний домен: таким відмовляють значно рідше.

Усі статті