Форум программистов, компьютерный форум, киберфорум
Криптография
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7

Возможно ли определить алгоритм шифрования

28.09.2015, 17:10. Показов 1731. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть пары шифрованный - не шифрованный текст.
Зашифрованные данные не длинные (названия).
Обращение к ним очень частое, расшифровка на каждом обращении, так что должно быть что-то простое и быстрое.
Подскажите в какую сторону смотреть?
(Возможно первые буквы большие в расшифрованном тексте)
C36A852C3B8A64 - стартер
3DBEC74FE62EAE9D0A - термостат
9DC457C7A93BBF24EF - генератор
16E5134A216E00ED - радиатор
55DBA22B63 - капот
87CB580D63 - крыша
2988A7D6B899 - панель
4E993414EA2627EF - тахометр
5CF1556079 - радио
F62272AAAF76 - серьга
4DCB982AABA90F - маховик
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.09.2015, 17:10
Ответы с готовыми решениями:

Определить алгоритм шифрования
A ------------- B -------- C --------------D 12012 27.11.2019 0002701 16eab9baddd_119_mgtd ...

Определить алгоритм шифрования
Доброго времени суток форумчане я тут новенький прошу помогите определить алгоритм шифрования или расшифровать ...

Определить алгоритм шифрования
Всем доброго времени суток, столкнулся со следующей проблемой есть зашифрованный пароль ...

11
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.09.2015, 17:38
Цитата Сообщение от santa239 Посмотреть сообщение
в какую сторону смотреть?
Похоже на XOR с размером строки.

Сопоставьте сначала строки одного размера. Не исключено, что шифртекст записан в обратном порядке, т.е. перед дешифровкой строку следует перевернуть.

Не по теме:

Возможно, лучшим вариантом было бы изучение самой программы.

0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
28.09.2015, 18:05  [ТС]
изучение самой программы крайне затруднено старфорсем

Добавлено через 11 минут
16E5134A216E00ED - радиатор
4E993414EA2627EF - тахометр
на перевертыш с ксором не похоже, тогда бы совпадали первые или последние байты
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.09.2015, 18:29
В данном случае - нет, так как первые буквы различны, а XOR, обычно, делается "бегущим": первый байт с размером, второй - с первым итд. (CBC mode).
0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
28.09.2015, 18:48  [ТС]
спасибо за наводку сейчас буду пробовать, еще насчет "перевернуть строку"
это 55DBA22B63 -> 632BA2DB55 или 36B22ABD55
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.09.2015, 19:01
632BA2DB55
0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
28.09.2015, 21:08  [ТС]
Данная идея ни к чему не привела.
Может еще есть идейки, что можно проверить?
или я забыл какие-нибудь кодировки однобайтовые?

internal class Program{
private static byte[] Cbc(int[] arr, int key){
var rez = new List<byte>();
var prev = key;
for (int i = 0; i < arr.Length; i++){
prev = arr[i] ^ prev;
rez.Add((byte)prev);
}
return rez.ToArray();
}

private static bool IsLetters(string msg){
return msg.ToCharArray().All(Char.IsLetter);
}

private static void Main(string[] args){
var encoders = new[]{Encoding.GetEncoding("utf-7"), Encoding.GetEncoding("utf-8"), Encoding.GetEncoding("koi8-r"), Encoding.GetEncoding(1251), Encoding.GetEncoding(866)};
var encoded = new[]{0x5c, 0xF1, 0x55, 0x60, 0x79};//{0x55, 0xDB, 0xA2, 0x2B, 0x63};
var encodedInv = encoded.Reverse().ToArray();
var lst = new List<string>();
for (int i = 0; i < 256; i++){
var bytes1 = Cbc(encoded, i);
var bytes2 = Cbc(encodedInv, i);
foreach (var enc in encoders){
var msg1 = enc.GetString(bytes1);
var msg2 = enc.GetString(bytes2);
if (IsLetters(msg1)) {
lst.Add(msg1);
}
if (IsLetters(msg2)) {
lst.Add(msg2);
}
}
}
foreach (var line in lst){
Console.WriteLine(line);
}
Console.Read();
}
}
0
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
28.09.2015, 22:35
Кодировка не имеет значения (если символы не смешиваются) - она просто будет учтена константами преобразования.

Не по теме:

А с идеями старый анекдот вспоминается, про лечение и ветеринара:
- Доктор, все передохли.
- Как жаль, а у меня еще столько идей осталось.


Например, часто используются варианты ROL/ROR ... расписывайте побитово и медитируйте.

И, вместо листинга на невменяемом языке, приведите лучше еще примеры пар - может что-то и увидится...
0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
29.09.2015, 03:01  [ТС]
Нашел 2 схожих последовательности судя по всему разница что-то типа нижний-задняя, но почему байты разнесены по последовательности?
4CA613D0C06D906E5AC8EFB5CA661B86CB20B23C6CD88FCFC77888DEEB790CA906E651A90F
4CA613D0C06D906E5AC8EFB5CADC1B86CB03B23CAAD823CFC77888DEEB790CA906E651A905

Добавлено через 1 час 51 минуту
Еще интересная тройка. К сожалению при таких длинных шифровках гарантировать точную расшифровку нельзя, могут быть перестановки слов и сокращения.

15C377B20DED5EC8714214C71EA667E365C828F6 35E30D1F3241839CDAB6
15C377B20DED5EC87142C8C71EA679E365C828F6 BCE30D1F77BA0E9CDAB6
15C3D6B20DED5EC87142D5C71EA67137FAC828F6 39E3A71FC8129C9CD4B6

Усилитель порога передний прав
Усилитель передней стойки прав
Усилитель бампера передний лев

Добавлено через 1 час 18 минут
E3049ADF50 49 E4EDC758 8F 61 38 E072D0AE9510
E3049ADF50 4B E4EDC758 67 61 9E E072D0AE9510

Судя по всему:
Блок управления ABS
Блок управления АБС

Строки равные по длине "близкие" до кодирования "близки" и после кодирования.
Отличая в длине хотя бы на символ полностью меняет зашифрованную последовательность, даже для очень "близких" строк.
0
653 / 161 / 64
Регистрация: 08.04.2015
Сообщений: 412
29.09.2015, 06:29
Очевидно, что это не простой ксор. Также очевидно, что это не какое-нибудь типовое потоковое шифрование типа RC4 или оракловского Encode/Decode, т. к. в них одинаковые первые символы текста должны давать одинаковые первые байты шифра.

Можно было бы предположить, что здесь какой-нибудь блочный алгоритм в режиме CFB или OFB, но последние примеры это опровергают. Получается, это что-то самоизобретенное, и без анализа ПО не обойтись.
0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
29.09.2015, 11:51  [ТС]
Все потоковые алгоритмы отметаются, при попадании первого не равного символа, должна меняться вся оставшаяся последовательность, а это явно не так.
Сейчас выглядит как-то так:
1. шафл всей строки
2. по байтовая кодировка
3. ксор по длине (попробую проверить данное предположение)
0
0 / 0 / 0
Регистрация: 28.09.2015
Сообщений: 7
03.10.2015, 01:13  [ТС]
научился кодировать определенные строки вот что получил
аа - CE 1С
аб - CF 1C
ав - CC 1C
ад - CD 1C
бд - 60 1D

Разгрести так и не смог

Взял более длинное и менял по 1 букве начиная с конца
Ремонт - 5B C0 CF 85 A7 AB
Ремонс - 5B C0 CF 14 A7 AB
Ремокт - 5С C0 CF 99 A7 AB
Ремпнт - 50 C0 CE 68 A7 AB
Ренокт - 79 C1 10 4E A7 AB
В общем видно следующее: после шифрования имеется перестановка, а именно Ремонт-нмотРе, а шифрование блочное после того как натыкаемся на неверный символ бьются и все после него с учетом перестановки.

Подкиньте идейку плз...

Добавлено через 36 минут
Зачем перемешивать байты после шифрования?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.10.2015, 01:13
Помогаю со студенческими работами здесь

Определить алгоритм шифрования
Добрый день, анализирую вредоносное по и никак не могу определить вид шифрования. Возможно это чтото самопальное, но думаю скорее...

Нужно определить алгоритм шифрования
Помогите определить алгоритм шифрования. На входе в программу десятичные значения (слева), на выходе - hex (справа). Алгоритм должен быть...

Определить алгоритм шифрования пар двубайтовых значений.
Есть пары 2-байтовых значений. Пример: 4AE8 - 169C BF84 - FC44 4B28 - 151C 8B1F - 9572 F0C2 - 62C8 BB55 - F5E6 BAED -...

Нужно определить еще один алгоритм шифрования
Помогите определить алгоритм шифрования. Слева исходное значение, справа - закодированное 100 f4 101 39 102 7e 103 c3 104 08 ...

Как определить алгоритм шифрования файла имея файл и дешифровщик
Собственно, вопрос описан в заголовке. Подозреваю, что для этого нужно дизассемблировать шифровщик, вот только в ассемблере я не силен....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru