January 19, 2020

Decoding challenge - Dreamer

Мечтают ли андроиды cимулякры об электро рекурснутых овцах?

Таким вопросом встречает нас первое испытание. Кроме него на картинке часы с временем 07:02 и две овцы, лежащие под одеялом.

С испытанием мы ещё незнакомы и плохо представляем формат, но всё же замечаем, что узор на одеяле неоднороден и напоминает два штрих-кода, наложенных перпендикулярно друг другу. Значит, первым делом нужно их достать. Режем, выбираем подходящие кусочки.

Пытаемся прочитать каждый из них, и не получаем ничего внятного. Придется читать теорию. Кодировок штрих-кодов много, однако самые распространенные, EAN/UPC структурно отличаются от того, что у нас есть: в этих кодах определенная последовательность линий в начале, середине и конце. А вот Code128, похоже, нам подходит: смотрим на толщины линий.

Начнем: Чёрная – 2. Белая – 1. Черная – 1. Таким образом получаем первые 6 символов 211232. Это стартовый символ шифровки Code128С. Во второй же части, расположенной вертикально, находим завершающую последовательность 2331112, поэтому соединяем две части, расположив их правильно (Еще одна подсказка, в какую сторону повернуть штрих-код, расположенный вертикально - часы и головы овец, ведь тогда они будут расположены "нормально").

Код 128С кодирует двузначные числа от 00 до 99. Начинаем преобразовать, и получаем набор чисел "69 87 72 84 72 82 75 80 79 78 69 73 69 87 72 84 72 82 75 80 79 78 69 73 82 73 67 79 78 69 84 72 82 65 82 30". Последний является проверочным символом, и нам не требуется. Замечаем, что все остальные числа лежат в диапазоне 65–87. Опытные декодеры сразу поняли, что этот диапазон, скорее всего, принадлежит десятичным значениям латинского алфавита в таблице ASCII - таблицы кодировки, которая используется для кодирования текстов, например, в наших компьютерах. Неопытным, возможно, пришлось прежде погуглить, или попросить подсказку.

Тем не менее, это вручную мы переводить уже не будем, а воспользуемся одним из конвертеров. Вот что должно было получиться: ewhthrkponeiriconethrar. Пока что это не похоже на пасскод, который мы привыкли видеть в формате ***##кодовоеслово###**, но в центре всё же есть слово oneiric. Оно есть в списке используемых в кодах слов, да ещё и сочетается по смыслу со словом dreamer, так что, похоже, мы на верном пути. Дальше замечаем, что "one" встречается ещё раз, а также дважды повторяется "thr". Такую буквенную кодировку цифр Ниантик любит использовать, как мы ещё не раз увидим. one превращается в 1, а thr раскрывается до three и становится тройкой. ewh3kponeiric13ar - наше последнее слово. Пора проверять! Ждём, пока ввод пасскодов наконец заработает, и получаем искомую медию!


Написал - Kramushka, оформил - NikaKor. Специально для канала @investigaterussia

Поддержать выход новых статей: