Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
ВнизЗащита Найти похожие ветки
← →
Durak (2002-04-02 17:23) [0]Плиззз, срочно, все кто может, умоляю, подскажите как защетить прогу, чтою её могли читать только с дискеты, а на диск перекинуть не могли, ПЛИЗЗЗ
← →
Alx2 (2002-04-02 17:29) [1]Прога - файл. Если можно прочитать с дискеты, то можно и записать куда-нибудь. Вопрос можно поставить по-другому: как сделать, чтобы прога запускалась только с дискеты, или, точнее, только с определенной дискеты. А тут решений множество, как и способов их обойти....
← →
olookin (2002-04-02 17:32) [2]А мне в голову пришло такое решение. При старте программы проверять диск, с которого она запущена (Application.ExeName). И если диск не А, то выключать программу.
← →
yaJohn (2002-04-02 17:36) [3]Так чтобы не смогли - нельзя. Смогут. Но крови попортить можно.
Напиши все в виде ДЛЛ. Сам EXE занимается только загрузкой ДЛЛ по фиксированному пути (например a:\mydll.dll) и запуском стартовой процедуры.
Можно файл ДЛЛ урезать до границы кластера + 1, а перед загрузкой - увеличивать до оригинального размера. Под ДОС это даже работало. Но это очень длинная тема.
Методов - масса и все ломаются.
← →
Anatoly Podgoretsky (2002-04-02 17:54) [4]olookin © (02.04.02 17:32)
Это не препятствует "на диск перекинуть не могли"
← →
olookin (2002-04-02 17:56) [5]Anatoly Podgoretsky
Да, но ведь и программа работать не будет. Задача, получается решена.
← →
Reindeer Moss Eater (2002-04-02 18:05) [6]> olookin
subst A: C:\Folder With A Stolen Program
И имя диска у Application.ExeName будет как раз A:
:)
← →
olookin (2002-04-02 18:11) [7]Reindeer Moss Eater
Ну тогда я согласен с yaJonh:
Так чтобы не смогли - нельзя. Смогут.
← →
yaJohn (2002-04-02 18:12) [8]2 Reindeer Moss Eater
А это уже под силу только хакеру. :)
← →
Chris (2002-04-02 20:09) [9]Есть еще вариант. Проверять серийный номер дискеты или жесткого диска.
http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622197&n=15
← →
Alexander Ionov (2002-04-03 02:14) [10]Куда вы все порулили? По-моему решается все достаточно просто.
1. Выковыриваем имя диска из Application.ExeName
2. Скармливаем его функции GetDriveType. Если она вернула DRIVE_REMOVABLE, то продолжаем работать (это будет либо обычный дисковод, либо Zip-drive), если же что-то другое - посылаем и выходим.
Блокировать переписывание файла программы с дискеты просто не имеет смысла.
← →
Sat7 (2002-04-03 09:57) [11]По-моему тебе надо не просто с дискеты, а именно сопределенной дискеты. :)
У тебя есть exe-шник, который нужно защитить и куча дискет, куда ты его запишешь и откуда он должен работать.
Делается все на самом деле просто. Просто под каждый новый диск будет свой exe-шник. Дополнительно пишется небольшой патчер, который считывает серийный номер дискеты и патчит им тот файл(защищаемый exe-шник), который будет записан на дискету. В еxе-шнике такой кусок кода:
...
GetVolumeInformation(...,@res,...); // res - переменная DWORD, имя устройства "A:\" слэш в конце обязателен.
if res<> 122323455 then close;
...
Форматируешь дискету, запускаешь патчер, который берет с нее сер. номер и прописывает в exe-шник вместо 122323455. Потом копируешь пропатченный файл на дискету и ...все. Можно даже тип устройства не проверять GetDriveType().
← →
Anatoly Podgoretsky (2002-04-03 10:36) [12]olookin © (02.04.02 17:56)
Задача работоспособности не ставалась, была задача о защите от копирования. Я не знаю зачем такая задача нужно, для меня и тот и другой диски и мне без разницы с какого я ее буду читать, кроме скорости конечно.
Sat7 © (03.04.02 09:57)
Существуют программы, которые при копировании не изменяют серийный номер, приходилось с этим бороться. Но если речь идет об защите, любой начинающий взломщик сделает необходимый серийный номер за несколько секунд, пользуясь только обычным инструментом.
А вот зачем Дураку это нужно, он не объясняет :-(
← →
Sat7 (2002-04-03 10:48) [13]Anatoly Podgoretsky © (03.04.02 10:36)
Само собой, что все это ломается за несколько часов (минут :))), но в данной ситуации, по-моему, лучше вряд ли что-то можно придумать. Разве что только на диске дырки делать. Физические... Да и это скопируют. Вместе с серийным номером. Хотя от большинства узеров (и не только) спасет.
Durak (02.04.02 17:23)
Попробуй нестандартный формат, разные длины секторов, число секторов на дорожке поменяй. Это покруче будет.
← →
Anatoly Podgoretsky (2002-04-03 10:59) [14]Sat7 © (03.04.02 10:48)
Зачем нам обсуждать посторонний вопрос, для этого надо создать отдельную ветвь.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.04.15;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.005 c