Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Программа и CD


Автор: offline 8.4.2005, 11:16
Есть такая задача, но боюсь, что она не осуществимая smile
Я написал небольшую программку и хочу ее продемонстрировать, но не хочу, чтобы она была скопирована на жесткий диск. Т.е. речь идет о защите CD от копирования. Я попытался привязать программу к номеру CD, но CloneCD снимает этот номер и переносит его на новый диск.
Возможно ли получить с CD уникальные данные, которые CloneCD не копирует или может существуют какие либо другие варианты для защиты?

Автор: DDX 8.4.2005, 11:46
kirilllius
ну ты и загнул)
всякие крутые производители только спят и видят, Как бы сделать абсолютную защиту, придумывают всякие старфорсы 1,2,3 и тд и тп... а софт типа alcohol прекрасно всё это снимает, к счастью, а может и к сожалению
найденное решение думаю ты вполне можешь продать за большие бабки

Автор: Snowy 8.4.2005, 11:47
Если клон не снимет, то алкоголь справится.
Люди на планете годами изобретают защиту от копирования, но все тщетно.
Все, что можно прочитать, можно и скопитровать.
Единственное, что могу предложить - блокировать запуск программы не с CD.
То, есть, если запускают с винта, сразу закрываться.

Цитата(kirilllius @ 8.4.2005, 11:16)
хочу ее продемонстрировать, но не хочу, чтобы она была скопирована на жесткий диск

Проверяй тип устройства. Если не CD, то не запускаться.
Кроме того можно встроить TTL. Ограничение на время работы и количество запусков.
Читай раздел на форуме по защите программ.

Автор: DDX 8.4.2005, 11:54
Цитата(Snowy @ 8.4.2005, 11:47)
Единственное, что могу предложить - блокировать запуск программы не с CD.


а как ты поймешь, вдруг запускают с виртуального CD, с образа?
я их тем же алкоголем 10 штук насоздаю
надо проверить, не виртуальный ли CD. как? самому интересно)
если только смотреть физические параметры. вот например, как определяется алкоголевский CD:
"Bus Number 0, Target ID 0, LUN 0"
а обычный:
"Размещение 1 (1)"

(WinXP SP2)


--
немного не в кассу, конечно
но не все же такие умные и сразу обаз снимать полезут.. определить, с CD запущена прога или нет, пожалуй, нормальный вариант...

Автор: ~FoX~ 8.4.2005, 14:12
Есть идея...........при записи проги на СиДи определяем в каких кластера валяется прога. Создаем фало, где эта инфа валяется и дописываем его на тот же диск (можно шифровать). При старте проги тестим на совпадение информации в файле и реальнм размещением проги........Только в реализации тяжело получиться.

Автор: Snowy 8.4.2005, 14:17
Алкоголь скопирует диск с точностью до дырочки.
И расположение будет в том же самом месте.

Автор: ~FoX~ 8.4.2005, 14:33
Snowy
Ты прав........алко120 smile

kirilllius
Тогда.......только законодательным путем защищать свой копирайт.


Автор: offline 8.4.2005, 14:35
Да, задача наверное вообще не реализуемая smile
С виртуальным CD черт с ним, пусть эмулируют. Самое главное, что бы не носилась на диске, т.е нельзя было записать на новый диск, вернее пусть пишут, но работать не будет.
А с вариантом тестирования CD или HDD не пойдет, т.к. после CloneCD получается CD smile


Цитата
Тогда.......только законодательным путем защищать свой копирайт.


Идея хорошая, ну у самого, Delphi smile

Автор: Александра 8.4.2005, 14:42
да как раньше с дискетами делали )) берешь диск, пишешь на него файл, царапаешь в паре мест, далее находишь где царапинки живут и проверяешь их наличие... может поможет :-/

Автор: Snowy 8.4.2005, 14:51
Ой, кто к нам вернулся. Наш Вам "трям с кисточкой". smile
Цитата
царапаешь в паре мест, далее находишь где царапинки живут и проверяешь их наличие... может поможет :-/

Неа. Алкоголь и такие вещи эмулирует.
Пропуск ошибок чтения, эмуляция испорченных секторов, все в комплекте.

Нужно действительно проверять на устройство.
Нужно только поискать, как отличить физический CD от виртуального...

Автор: ~FoX~ 8.4.2005, 15:07
АлександраАлко делает дырочки на раз. smile
Скорее всего проверить на "устройство" можно будет только по наличию на физическом порте.


А проще, ИМХО, пароль поставить или к железу привизаться.

Автор: Snowy 8.4.2005, 15:17
Самое простое - тупо делать проверку на дату и не запускаться, если дата > 30.04.2005, то не запускаться.
Можно конечно и обмануть - перевести время назад.
Но удобство использования программы резко снизится.
Кроме того, программа просто не будет запускаться, а не кричать "кончился триальный период". Поэтому пойди еще догадайся отчего и почему программа перестала запускаться.

Автор: Александра 8.4.2005, 15:18
Snowy
а тогда еше лучше фатал еррор )

а про "дырочки" не знала... это вообше нечто... smile

Автор: ~FoX~ 8.4.2005, 15:34
Snowy
Точно, только делать проверку не на дату, а на время........вплоть до секунды. Тогда даже перестановка дат не поможет.

Автор: Snowy 8.4.2005, 15:39
Цитата
не на дату, а на время........вплоть до секунды.

И что это даст? Разрешить работу только после полуночи? smile

Автор: ~FoX~ 8.4.2005, 15:44
Snowy
Цитата(Snowy @ 8.4.2005, 16:39)
И что это даст? Разрешить работу только после полуночи? 
Связи не уловил.
Я вот что имел ввиду:
1. Определяем время записи программы на CD.
2. Сохраняем.
3. При старте проверяем, если не совпадает, то не пускаемся. smile


Автор: Snowy 8.4.2005, 15:50
Цитата
если не совпадает, то не пускаемся.

Не совпадает с чем???
IMHO алкаш делает полную копию, включая дату и время.
P.S. Я то имел ввиду системную дату.

Автор: Александра 8.4.2005, 15:53
тогда надо еще ключевую дискету к диску короче. надеюсь Алкоголя для дискет нету???

Автор: _hunter 8.4.2005, 16:05
алкоголя нет, но есть туча подобных smile

Автор: offline 8.4.2005, 16:06
Я думаю с датами и царапинами ничего не выйдет smile
Отлавливать тип устройства тоже нет смысла, т.к. пусть эмулируют. А CloneCD создает точную копию, а точная копия итак на CD лежит.
Тут нужно прочитать нечто такое с CD что CloneCD не берет (копирует), но я таких данных не знаю, которые он не читает.
А может существуют внешние программы для защиты CD?

Автор: Snowy 11.4.2005, 07:56
Сдохший номер. Содержимое диска все равно можно скопировать целиком, несмотря ни на что.

Цитата(kirilllius @ 8.4.2005, 16:06)
А может существуют внешние программы для защиты CD?

Ну и как ее доставить пользователю? На том же CD? smile

Если защитить диск не удается даже гигантам индустрии, то куда уж нам...

Единственный способ, запросить у пользователя данные железа, чтобы программа запускалась только на этой машине.
Причем не обязательно спрашивать у пользователя явно.
Можно построить на серийном номере и ключе. Причем ключ будет зависеть от железа.
Но это уже для коммерческих продуктов, возня с реализацией и ключами.
Проще всего вставить 3 уровня защиты:
1. Ограничение на срок: работать до указанной даты.
2. Ограничение на количество запусков.
3. Ограничение на один запуск на каждый сеанс винды (не запускаться второй раз, пока винда не будет перезагружена) (в DRKB есть пример).
Первый и второй вариант лучше делать молча - без сообщений о триале.
Третий с сообщением.

Автор: offline 11.4.2005, 14:35
Да, наверно придётся так и поступить smile

Автор: Dr.No_xXx 13.4.2005, 08:17
1)Любой из ваших способов не сработает
2)Alcohole снимает не все старфорсы
3)Старфорс оснаван на проверке есть ли диск с Cdrome и связан с ним посредством проверки портов.
4)Можешь достать новую версию старфорса и юзать

Автор: Snowy 13.4.2005, 08:23
Dr.No_xXx
Хорошо написал. Но эту тему мы и так уже проехали.
Давно уже обсуждаем другие варианты. Читай на 2 поста выше.

Автор: ~FoX~ 13.4.2005, 08:25
Есть у меня гама, которая пускается только с первого сд в системе, чаще всего эмулированный диск стоит после физических......Но это не вариант слабая защита, т.к. переименовать сидюк не проблема.

Автор: DDX 13.4.2005, 11:37
kirilllius
ну, в общем я думаю ,что подкованного товарища типа тех, что на форуме, никакой защитой не возьмешь
а для остальных, в принципе, наверно достаточно проверки на сидюк.. ну, ещё какие-то контрольные файлы, чтобы так просто нельзя было перекопировать на диск, а только уж образ сдирать

Автор: Dr.No_xXx 13.4.2005, 14:13
Не SNOWY так не пойдет.Надо ведь чтобы и юзер не мог копировать.Надо ...аааа... smile
Можно зашитить очень просто.Сначала в авторане ставится прога которая просматривает процессы.Это надо для того чтобы нельзя было запускать alcohol или CloneCd и т.п.Если прога запущена(я проо alcohol) то авторан закрывается.А чтобы вообще низя было сделать троя который не разрешает запускать alcohol пока именно этот диск в cd-rom.
Как идея?

Автор: p0s0l 13.4.2005, 14:16
http://www.insidepro.com/kk/022/022r.shtml


Автор: Snowy 13.4.2005, 14:41
Цитата(Dr @ 13.4.2005, 14:13)
Можно зашитить очень просто.Сначала в авторане ставится прога которая просматривает процессы.

Ты даешь человеку диск. Он его взял и скопировал.
На своей машине ты сможешь диск защитить таким способом.
Но к другому человеку на машину ты не полезешь.
Например у меня авторан отключен.
Где-то может оно и поможет, но гарантия слабая.
Ну есть у меня алкоголь. Что теперь, программа работать не будет?
И наоборот, если у меня SuperCDCopier, то прога на него не среагирует?


Цитата(p0s0l @ 13.4.2005, 14:16)
http://www.insidepro.com/kk/022/022r.shtml

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

Автор: Dr.No_xXx 13.4.2005, 15:21
1)можно предусмотреть и это.Например запускать трой вместе с прогой
или удалять image диска
2) хотя и нету зашиты которую нельзя бы было сломать у большенства авторан включен.

Автор: ~FoX~ 13.4.2005, 15:52
Цитата(Dr @ 13.4.2005, 16:21)
хотя и нету зашиты которую нельзя бы было сломать у большенства авторан включен.

Не фсегда, а при установке демона он вообще спрашивает будем авторан пускать.

Автор: RA 13.4.2005, 19:01
Для защиты СD успехом пользуется Star-Force
http://www.star-force.ru/protection.phtml?c=12

Автор: offline 15.4.2005, 16:07
Я почитал статью

http://www.insidepro.com/kk/022/022r.shtml

но ничего не получилось у меня smile
Если кто создавал такой диск и получил положительный резутьтат, подскажите, как делать.

Автор: Snowy 15.4.2005, 16:13
Цитата(kirilllius @ 15.4.2005, 16:07)
Если кто создавал такой диск и получил положительный резутьтат, подскажите, как делать.

Его сложно сделать, сложно скопировать, а также вообще сложно заставить вообще работать.
Это защита о двух концах. Я писал выше, почему от нее отказались.

Автор: offline 15.4.2005, 16:17
так выходит, что диск таким способом сделать нельзя?

Автор: Snowy 15.4.2005, 16:29
Можно. Но сложно.
И нет гарантий, что диск после этого будет читаться на другой машине.
И, если не алкоголь, то какая-нить другая прога сможет его в итоге скопировать.
Принцип всего пиратского простой: Все, что можно прочитать - можно скопировать.
При той трудоемкости, это совсем не то, что тебе нужно.

Автор: offline 15.4.2005, 16:40
Ясною smile
Мне нужно было только сделать так, что бы номер диска нельзя было снять, чтобы ехе к ниму привязать. Но, выходит, что нет таких способов. Обидно

Автор: UserNT 15.4.2005, 16:43
Народ!,
в НЕРО есть утилитка "CDSpeed.exe" вроде для теста.

Так вот в пункте меню "Дополнительно->Инф. о диске" высвечивается что-то вроде:

***
Изготовитель: Mitsubishi
Код: 97m34s22f

Тип диска: CD-RW
Загрузка: General
Записываемый слой: Phase Change
Скорости записи: 1X - 4X

Емкость: 74:43:00
656 MB
Дополнительная: n/a
Переполн. емкость: не проверено
***

Так вот мне еще не удалось найти двух дисков с одиннаковыми первыми двумя полями. Вроде инфа уникальная. Так вот как это делает НЕРО хотелось бы узнать!

А еще может у кого есть электронный вариант книги "Техника защиты компакт-дисков от копирования. Касперски К., "БХВ-Петербург" - 2004"
Ссылку для заказа нашел,.... но хочетса халявно получить!
http://books.koenig.ru/binfo.asp?cod=157058&up=6&RP=0&lvl=2&prt=

Автор: offline 15.4.2005, 16:50
т.е. ты имеешь в виду, что

Изготовитель: Mitsubishi
Код: 97m34s22f

это уникально и при дублировании не дублируется. Если так, то действительно интересно, как эти немцы могут это читать?

Автор: UserNT 15.4.2005, 16:58
Вроде того.

Ну я начал с того что почитываю инфу о функциях, которые импортирует "CDSpeed.exe".
Первой, которой заинтересовался так это
DeviceIOControl из "kernel32.dll", но первые попытки не дали результатов!

Автор: offline 15.4.2005, 17:01
Интересно, если написать по мылу в окошке о программе и попросить рассказать, как они это делают, они громко смеяться не будут smile

Автор: Гость_UserNT 15.4.2005, 17:18
А о книге инфу прочли.
Много обещающе....

кстати моя аська: 229239450

Автор: Dr.No_xXx 16.4.2005, 11:55
но при этом через тотже NERO мона посмотреть эту инфу и сделать плагин smile

Автор: Dr.No_xXx 16.4.2005, 12:25
1)мона блокировать виртуальный диск

2)мона удалять вирт диск

3)мона еще делать log файл в который помещается инфа 1 запуска
smile smile smile smile smile smile smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)