![]() |
1. Заголовок или название темы должно быть информативным !
2. Все тексты фрагментов программ должны помещаться в теги [code] ... [/code] или [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ" и используйте ПОИСК !
4. НЕ используйте форум для личного общения!
5. Самое главное - это раздел теоретический, т.е. никаких задач и программ (за исключением небольших фрагментов) - для этого есть отдельный раздел!
![]() |
Славик |
![]()
Сообщение
#1
|
Гость ![]() |
Всем привет. И спасибо за быстрые отклики в предыдущих темах.
Я искал на вашем форуме, но не нашел... по поводу вопроса: Можно ли взломать ".exe" файл созданный на Турбо паскале 7 ? (чтобы был виден алгоритм) Как это можно сделать? Можно ли защитить файл от взлома, и как? Или хотябы, при взломе, "не дать" прочитать часть или весь алгоритм. Просьба обьяснить это попонятней, поскльку я новичок в программировании. |
![]() ![]() |
Romtek |
![]()
Сообщение
#2
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 303 Пол: Мужской Реальное имя: Роман Репутация: ![]() ![]() ![]() |
Вот ещё исходник на FPC (Free Pascal), который легко переделать для любого другого компилятора.
Функция замера текущего тика процессора (времени) GetClock реализуется с помощью функции GetTickCount из модуля Windows. Модуль Windows подключается именно по этой причине. Для портирования в ТП7 нужно заменить реализацию замера тика (времени) в функции GetClock на свою (можно через GetTime). Модуль MD5 можно взять отсюда: http://wikisource.org/wiki/MD5_Hash Идея такова: вы вводите пароль в виде строки, специальная функция проверки сверяет пароль и потом выдаёт ответ в boolean о корректности. Сверка паролей делается при помощи известного алгоритма MD5, который выполняет односторонние преобразования и выдаёт хеш (hash). Кроме проверки хешей вводимых строк проверяется ещё и наличие отладочных инструментов (debugger). Если между точкой ввода и проверкой хешей замечена разница во времени, большая 10 тиков (на самом деле, без отладки она вообще = 0), то меняется адрес точки входа в функцию проверки хешей. Тогда программа "вылетит" с ошибкой. Пароль: "test" {$IFDEF FPC} Этот код не претендует на реальную защиту программ и выполняет функцию пособия для разработки более серьёзной защиты. Сообщение отредактировано: Romtek - 21.07.2005 23:15 -------------------- Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
|
![]() ![]() |
![]() |
Текстовая версия | 16.07.2025 23:27 |