- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу

Что делать, если ваша email-рассылка попала в спам
10 распространенных причин и решений
Екатерина Ткаченко

В 2023 году Одноклассники пресекли более 9 млн подозрительных входов в учетные записи
И выявили более 7 млн подозрительных пользователей
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Подключаю сайт к одному биллингу, саппорт ответит в лучшем случае через сутки, вдруг тут найдутся сообразительные и подскажут, как сделать.
Вводные данные:
В качестве хэша строки (параметр pass2) следует передавать строку, представляющую собой последовательное слияние хексографических представлений MD5 хэшей частей этой строки, разбитой по 16 байт (в кодировке utf-8).
Кто поможет понять логику требуемого действия?
Подключаю сайт к одному биллингу, саппорт ответит в лучшем случае через сутки, вдруг тут найдутся сообразительные и подскажут, как сделать.
Вводные данные:
В качестве хэша строки (параметр pass2) следует передавать строку, представляющую собой последовательное слияние хексографических представлений MD5 хэшей частей этой строки, разбитой по 16 байт (в кодировке utf-8).
Кто поможет понять логику требуемого действия?
Я бы понял это так:
взять строку в utf-8 пароль+дата
разбить ее на куски по 16 байт
для каждого куска посчитать md5
слепить строку из полученных md5 хэшей
два варианта, либо
$hash = md5($pass1 + $date)
либо
$hash = md5($pass1) + md5($date)
ну а вообще конечно такого тех. писателя я б уволил :D
В качестве хэша строки (параметр pass2) следует передавать строку, представляющую собой последовательное слияние хексографических представлений MD5 хэшей частей этой строки, разбитой по 16 байт (в кодировке utf-8).
мало того, что этот алгоритм ущербный, так ещё и "текст немного по-дебильному написан" :)
я понимаю это так:
1. берем строку pass1+date
2. разбиваем на блоки по 16 байт (а не символов)
3. считаем хэши каждого блока.
4. собираем хэши (в шестнадцатеричной форме) в строку, конкатенацией.
То ли я не понимаю, чего хочет автор ТЗ, то ли автор ТЗ не умеет правильно выражать свои мысли.
А это как и зачем?
Уточнение саппорта:
Просим Вас придерживаться алгоритма, описанного в технической документации.
Также обращаем Ваше внимание, что хэш необходимо передавать в верхнем регистре, то есть заглавными буквами, а не строчными. При передаче pass также следует использовать верхний регистр.
Мля, скажи, пусть пришлют пример, если их не затруднит, а то это какой-то ребус.
Наверное очень хороший биллинг, раз для подключения нужно пройти такой тест.
Возможно, это только первая его ступень... ))
dkameleon, ну хэши-то стандартно и есть в hex
LEOnidUKG, символы в utf8 м.б. от 1 до 6 байт, подозреваю, что они не задумываясь написали "байт" вместо "символ", иначе надо перевести все в binary (http://php.net/manual/en/function.utf8-encode.php) разбить по 16 байт, потом перевести обратно в utf-8 (при этом неизвестно что получится) и взять md5. Не верится, что они сделали такой адовый алгоритм.
Всем за помощь большое спасибо.
Итоговый правильный вариант такой:
// т.к. содержит латиницу, цифры и т.п. получается 1 байт = 1 символ
// разбиваем по 16 знаков:
$pass2_1 = md5(mb_substr($pass2, 0, 16, 'utf-8'));
$pass2_2 = md5(mb_substr($pass2, 16, 32, 'utf-8'));
// в верхний регистр также оказывается нужно переводить:
$pass2 = mb_strtoupper($pass2_1.$pass2_2);
anser06, прошу вас. Скажите, что за билинг такой. Для всех, чтобы никогда в жизни с ним не связываться.