Отправляю с сайта письма. Все переходы по ссылкам в письмах должны идти через скрипт с редиректом.
Можно было бы сделать так: site.ru/redirect?token=fkentov35na322k6g52 где token это случайная строка хранимая в БД вместе с URL на который надо редиректить и id письма.
Но писем будет отправляться тысячи и иметь БД таблицу для токенов не хочется. Поэтому я шифрую id письма и URL в строку token и передаю в адресе скрипта, скрипт её расшифровывает и получает URL переадресации.
Все работает, только этот token получается длинный:
При пароле шифрования в 11 символов, такой:
5BRpsImR02MaR2gWlDZS__OyMetPHaG3MtacaX6C5XgO9YornNgBVQD89RAaifdT-3NGqWt9MqB4dGIQhVzeAolw8kky5ELUf7hJ2QaDmQe7J4WPdxMlgvbKncefCrPbx1o_ech-UW87DCuVJAkchE-bf0I8t8W0x1LKoLJSBX_slQV6VYffjhHUQiA5Iz-iQ7UMYrWqUQ
При пароле шифрования в 5 символов, такой:
tFR6K4OibiwsIpIQ3jClkyRhxVaVH9lG0w_hwoMAbDq3qQELIoyXYJAXkR_LPJhFt1tQvbq_e_1YehYQaXMWCUfIqLQSST2yk7zHJq-O4i_1xphtk3dMSxiMhdO-ZNRCAmNZZJTNIZbC7evV3Vs4MpDU4rLw6FeMQJLynplcsJ8cvOxvwenoWw1nxg
В HTML письма ссылки должны быть такие:
<a href="URL">URL</a>
и они будут получаться очень длинные в тексте. Зато злоумышленник не сможет подобрать токен и исказить статистику.
Как это можно улучшить? Другие сервисы ведь тоже используют такой подход?