#asp.net #captcha
#asp.net #капча
Вопрос:
Я видел эту кодировку в изображении ASP captcha, я хочу знать, что это за тип и как его декодировать (если возможно!)
Примеры:
AJKF ==> Qp6TyMd9r7hGWwymcayiwg==
CQQL ==> b0oFR8d/QBNbGT2Ov8gx3g==
У меня не было кода скрипта.
Кодировка взята из URL-адреса изображения captcha при опросе, поэтому мне нужно обновить страницу опроса, чтобы получить новый URL, содержащий декодированную строку.
Комментарии:
1. и при чтении этого скрипта вам не сказали, что это была за кодировка?
2. Можете ли вы кодировать только 4-буквенные строки или любые строки? Например, если используется измененный MD5, кодирование пустой строки может дать вам соль.
3. @schnaader: да, md5 соли, то есть сама соль, если соль выбрана неудачно. ( 1)
4. У меня нет кода или даже инструмента для выполнения такой кодировки.
5. Итак, вы застряли, если только у кого-то нет просветляющей интуиции. Однако, вероятно, это засоленный MD5 🙂
Ответ №1:
Две строки являются представлениями 128-битного значения в Base64, поэтому это может быть своего рода 128-битный хэш входных данных, но, похоже, это не так просто, как MD5 входной строки.
Если это хэш, его будет невозможно декодировать из-за коллизий, хотя вы могли бы, например, вычислить хэши AAAA
… ZZZZ
и создайте таблицу подстановки, а для таких коротких строк вероятность столкновения довольно мала.
Шестнадцатеричные значения, декодированные Base64 (с использованием этого преобразователя):
AJKF ==> Qp6TyMd9r7hGWwymcayiwg== ==> 429E93C8C77DAFB8465B0CA671ACA2C2
CQQL ==> b0oFR8d/QBNbGT2Ov8gx3g== ==> 6F4A0547C77F40135B193D8EBFC831DE
Google не находит совпадений для этих обеих шестнадцатеричных строк, поэтому я предполагаю, что это либо пользовательский хэш, либо входные данные модифицируются (например, солятся).
Комментарии:
1. 1 Если у вас нет функции, а входных данных достаточно много, ‘table’ это.
2. возможно, строка засаливание = хэш md5
3. Я не думаю, что это хэш MD5, из-за представления декодирования ..
Ответ №2:
Завершающий этап процесса кодирования — это base64
, в этом я почти не сомневаюсь, но он должен включать какой-то предыдущий шаг, на котором я не могу четко сфокусироваться. Может быть, какая-то функция хэширования строковых байтов, а затем base64
? Наихудшим случаем может быть некоторое фактическое шифрование, а затем base64
кодирование.
Кто может сказать… Можете ли вы привести нам еще пример? А также, нет ли другого способа решить вашу проблему?
РЕДАКТИРОВАТЬ: Я убежден, что это MD5-хэш строки плюс какая-то неизвестная обработка. Взломать ее довольно сложно.
Комментарии:
1. Это было понятно. Итак, приведите нам больше примеров, т.Е. Что произойдет, если входная строка будет длиннее?
2. Я не думаю, что это хэш MD5, из-за представления декодирования .
3. Но что сопоставляет строку с 128-битной последовательностью? Однако, если вы не предоставите больше примеров, вот мы и застряли.