Текущий архив: 2003.02.06;
Скачать: CL | DM;
ВнизУникалный идентификатор HDD Найти похожие ветки
← →
aleksander (2002-11-21 11:11) [0]Нужно привязать прогу к винчестеру. Подскажите, что можно использовать и как это получить. Спасибо.
← →
DC-AC (2002-11-21 13:21) [1]А нужно ли ? И если привязывать - то не только к винту. Пожалейте пользователя, винты в последнее время очень часто дохнут.
Прочитайте лучше это для начала :
msts (06.09.02 11:05)
Если сможешь решить эту задачу (привязка программы к "рабочему месту") смело проси за это 10 000 000$ как ни как сотни фирм и десятки корпораций тратят на решение этой проблемы миллионы баксов и кстати абсолютный результат = 0 иначе ты бы не сидел на XP Professional и точно не юзал Delphi :(
но конечно есть относительный результат состовляющий 17% от абсолютного, но это так отступление (которое ты и так знаешь)
в общем возьми ручку и лист бумаги (так делают все матера :))- раздели его по полам линией с одной стороны опиши типовую конфигурацию "рабочего места" - установленного на него програмного и аппаратного обеспечения (если прога стоящая то и особенные требования найдутся) на другой половине опиши какие изменения (и какова их степень) приводит к тому что теперь это _другое_ рабочее место и есть основание заявить о необходимости переустановки проги в общем решил для себя - что
значит "запустили прогу на другом компе"
(в качестве источника я бы использовал глобальную таблицу атомов, если установленна винда)
далее определился бы с форматом хранения этой информации и способа интеграции в код программы для наибольшей зависимости (придется написать свой линковщик)(можно использовать java П-код и генерить на нем часть проги - выполнять в другом потоке исползуя какую нибудь JVM)
далее я бы применил нейронные сети (в частности распознования образов) для анализа этого описания - что позволяет сделать более мягкую проверку на изменения конфигурации, с каждым запуском нужно сохранять результат анализа то есть новую конфигурацию (получится как бы фотография компа с шумом - а твоя прога будет распозновать в ней тот комп на который ее поставили и если не узнает то заявить о переустановки, но комп стареет/изменяется но если эти изменения затронули 50 из 1000 атрибутов то это нормально иначе... ) при этом должно быть накопление (в разумных пределах) результатов анализа и переодической смены эталона с которым сравнивать - комп стареет а прога его узнает (как человек постоянно видящий другого не замечает изменений а стоит возникнуть перерыву - то уже нужно узнавать)
что дают нейронные сети (НС) - сложность трассировки (прямо скажем нихрена непонятно) интеграция в нее своего кода (полезного так сказать) достаточно проста в связи с компонентной архетиктурой делфы, так же можно сделать зависимость от степени узнования - степень ограничений на функциональность проги,
так как в НС нет прямых переходов - если иначе - то банальная замена инструкций не поможет крякеру, снимок проги из памяти тоже, знание НС "не дает нихрена" (Цой) , в общем полиморфная прога на критериях зависящих от конфигурации компа.
осталось защитить генератор НС - для этого система будет состоять из 3х частей
1 - программа установки - ПУ
2 - сама программа - П
3 - генератор НС - ГНС
клиенту высылается ПУ и П - она формирует предварительное описание (ПО) раб места - передает разработчику - на основе этого ПО - генератор формирует НС и высылает назад - ПУ вшивает НС в П (ну вариации на твое усмотрение), таким образом разработчику нужно защищать только ГНС
если НС имеет 1000 узлов/нейронов помноженных на 10 связей-синапсов и того 10 000 конструкций - если/иначе - крякеру будет грусно
а теперь представь на сколько должна быть стоящей твоя прога?
а с другой стороны можно потратить 5 месяцев - наваять ~ 35 000 строк кода в скомпиленном виде ~15кб - сделать компонент для дельфы и продать за выше указанную сумму какой нибудь корпорации
← →
aleksander (2002-11-21 13:27) [2]а все же...
← →
Song (2002-11-21 13:33) [3]Программы есть такие, но не факт что они будут работать со всеми машинами (главная загвоздка драйвера).
Вот например: http://www.sources.ru/asm/devid32.shtml
← →
Dimich1978 (2002-11-21 16:46) [4]Если привязываешь прогу к винту, то тогда тебе необходимо выстроить так скажем "защиту":
Высылаешь файл exe потребителю, он его запускает и ты получаешь файлик зашифрованный с описанием винта(ID винта).
Дальше раскордируешь у себя, и если денежки на счет пришли ты высылаешь прогу заточенную именно под винт потребителя.
Или еще вариант, пишешь генератор ключей на основе данных снимаемых с винта. Т.е. ты определил ID винчестера вводишь его в свой генератор и высылаешь его пользователю(если тот денежки заплотил). Правда одна проблема...построить генератор
Может это и бред, но в принципи реальный.
← →
Anatoly Podgoretsky (2002-11-21 16:53) [5]Dimich1978 © (21.11.02 16:46)
В могилу, денежки не придут, задержка в получении ключа свыше пары часов верная потеря денежек, проблемы у клиентов в будущем с компьютером также потери бизнеса.
← →
aleksander (2002-11-21 17:55) [6]механизм у меня есть, проблема получить это что-то уникальное. чтобы под всеми виндами работало
← →
Денис (2002-11-23 08:00) [7]Есть такие исходники!!!
Хорошо работают.
Причем работают и под Win9x/ME
и под WinNT/W2K/XP.
Токмо они на VC
← →
cyborg (2002-11-23 11:02) [8]Если программа сетевая и соединяется с такими же копиями, можно сделать очень простую защиту, проверку на различие регистрационного кода, ели регистрационные коды равны, то соответственно не работать как надо. И так пользователи не смогут одну копию программы использовать на нескольких машинах.
← →
Aleksander (2002-11-23 12:06) [9]Денис, где бы такие исходники взять???
← →
Alex Gor (2002-11-25 03:02) [10]Вы че все такие тупые?
человек просит конкретную вещь, а вы начинаете строить из себя билов гейтсов. Не знаете как получить серийный номер диска, так молчите.
А для тех, кому это интересно могу посоветовать:
WinAPI -> GetVolumeInformation
удачи
← →
Naum (2002-11-25 04:18) [11]Alex Gor - серийный номер винчестера и тома - это разные вещи...
← →
mumu (2002-11-25 07:20) [12]http://home.earthlink.net/~akonshin/files/IdeSN.zip
← →
mumu (2002-11-25 07:21) [13]и еще это
http://home.earthlink.net/~akonshin/files/IdeInfo2.zip
← →
Alex Konshin (2002-11-26 05:32) [14]Ну и тогда уж и это:
http://home.earthlink.net/~akonshin/files/ScsiSN.zip
Короче идите ко мне на http://home.earthlink.net/~akonshin/index.html
там все это есть. Если есть вопросы - пишите mailto:akonshin@earthlink.net
← →
ga3 (2002-11-28 04:31) [15]бляха да чо вы в натуре ни хрена конкретного не скажете человеку? я вот говорю вам: ЕСТЬ ТАКОЙ КОМПОНЕНТ. у меня есть:-) называется он IceLicense Protection поищите на торри описание - кипятком будете писать, так вам его захочется. он помимо контроля за аппаратной частью компа (проц, мать, видюха, винт в комплексе) осуществляет контроль за сетью, т.е. за кол-вом компофф, на которых прога одновременно запущена. шифрует память, встроен антидебуг, криптография там страшнейшая ну и еще много чего умеет делать. подбор ключа брутфорсом на компе с 12 процессорами Alpha занимает более 2 месяцев - сам пробовал. генератор лицензий в комплекте. вобщем, мечта щароварщика.
P.S. бесплатно не дам.
← →
ga3 (2002-11-28 04:42) [16]2 DC-AC:
если ты такой умный, почему ты до сих пор не богатый? начитаются книжек мля сам ни хера не понимает что написал небось.
2 Alex Konshin:
ты в штатах живешь? если в штатах или канаде, стукнись ко мне в асю 667449 есть предложение.
← →
unknown_ (2002-11-28 17:50) [17]2 Alex Konshin:
Спасибо за неплохие примеры.
2 Aleksander:
Существует проблема определения SN SCSI винта в Win9x и без администраторских прав в WinNT/2000. По крайней мере, я пока толкового решения не видел.
Старайся делать решение без использования драйверов.
Некоторые советуют использовать WMI для определения SN винта - не верь, работает не везде.
2 ga3:
У тебя со SCSI все работает нормально?
← →
Alex Konshin (2002-11-28 20:27) [18]Для SCSI действительно есть проблема на NT/2K/XP без прав Администратора. SPTI не дает читать s/n если нет прав, и драйвер свой тоже не поставить. Реально конечно можно попробовать забороться, но мне уже было влом исследовать - не нужно было.
Например, можно использовать ASPI, если он установлен, что сейчас уже редкость - он не поддерживаться майкрософтом.
Также будут проблемы с физическими RAID-массивами, у меня таких под рукой нет и потому не на чем экспериментировать. Я думаю, что там как-нибудь можно через контроллер добраться до самих винтов, но проверить не могу.
← →
ga3 (2002-11-29 01:50) [19]2unknown:
а ты скачай триал и посмотри как оно все работает. у меня везде все нихт работало, даже в НТ подобных системах под гвестом.
← →
Naum (2002-11-29 04:23) [20]А крык для IceLicense Protection где-нибудь валяется?
← →
DC-AC (2002-12-02 08:04) [21]ga3 :
Ух какие мы... Я аж весь задрожал...
Я-то всё прекрасно понимаю, даже лежит это всё (гибкий алгоритм отслеживания основных компонентов системного блока, учитывающий возможности пользовательских апгрейдов и вычисление ID компьютера) в черновиках, всё не могу собраться под NT-совместимые системы код переделать. Но в то же время я уже года два продаю свой софт (узкоспециализированный правда) с микропроцессорным LPT-ключом собственной разработки. И никаких проблем с пользователями и у них никаких проблем с моим софтом. Если тебе охота к чему-нибудь прицепиться, то скажу по секрету : код, определяющий HDD s/n через smartvsd.vxd или devid.dll валяется сейчас на каждом углу инета.
Что скажешь ?
Ы ?
← →
Anatoly Podgoretsky (2002-12-02 08:13) [22]Наверно из за того, что "узкоспециализированный", а так верный путь к потере клиентов, особенно корпоративных, где апгрейд частое явление.
← →
DC-AC (2002-12-02 09:05) [23]Не понял, причём здесь апгрейд, я же с ключом продаю. Просто я прилагаю НЕМНОГО БОЛЬШЕ ;-) сил и времени (по сравнению с теми, кто размещает на http://www.shareware.ru/ и иже с ними), чтобы найти покупателя на свою программу. Но если он соглашается, то цена программы должна гарантировать по крайней мере отсутствие проблем с установкой, многоплатформенностью (Win95/98/ME/NT/2K/XP) и переносом на другой компьютер вместе с ключом :0)
Страницы: 1 вся ветка
Текущий архив: 2003.02.06;
Скачать: CL | DM;
Память: 0.51 MB
Время: 0.01 c