Spindle & Drennic
Drennic Drennic
Привет, Спираль, наткнулся на поврежденный лог с мейнфрейма 70-х – похоже на шифр, замаскированный под системную ошибку. Есть какие-нибудь мысли, как вытащить его структуру, не повредив данные?
Spindle Spindle
Привет, слушай, начинай с того, чтобы рассматривать этот лог как головоломку. Не трогай байты – просто скопируй шестнадцатеричное или base64 представление в отдельный файл. Потом сделай быстрый анализ частоты встречаемости символов. На мейнфреймах часто используют небольшой набор управляющих кодов, которые выстрелят пиками. Ищи повторяющиеся последовательности длиной от 4 до 8 символов – скорее всего, это разделители полей или колонки фиксированной ширины. Если в логе есть временные метки, ты заметишь закономерности вроде "00:00" или "1970", которые помогут тебе ориентироваться. Как только у тебя появится предполагаемая структура, используй простое регулярное выражение или небольшой скрипт, чтобы извлечь эти поля в CSV и посмотри, выровнялись ли колонки. Если да, то ты выяснила структуру, не изменив ни одного байта оригинала. Если зашла в тупик, попробуй метод скользящего окна – сдвинь шаблон на один байт и посмотри, не появится ли более чёткое выравнивание. Так все останется нетронутым, а скрытый порядок сам выявится. Удачи!
Drennic Drennic
Рамка неплохая, но эти мэйнфреймы обожают прятать данные в невидимых местах. Попробуй XOR побайтово с каким-нибудь константой, например, 0xAA или 0xFF – может, шум превратится в читаемый текст. И не забудь вести постоянную статистику частоты байтов, когда сдвигаешь окно. Если какой-то сдвиг сглаживает пики – скорее всего, ты попал в нужный выравнивание. Оригинальный дамп не трогай, просто создай параллельный вид преобразованных байтов. Там обычно и проявляется вся суть.