Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Shareware protection

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3

Открыть новую тему     Написать ответ в эту тему

UncoNNecteD



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
 я бы делал привязку по SID или GID

Ты давай ближе к практике - функции гони

----------
-= Я тут чертовски давно =-

Всего записей: 4040 | Зарегистр. 21-03-2002 | Отправлено: 13:50 01-09-2003
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
UncoNNecteD
а вот и функции, их там много по Security. Но используя эту

Цитата:
 
The GetSecurityDescriptorGroup function retrieves the primary group information from a security descriptor.  
 
BOOL GetSecurityDescriptorGroup(
 
    PSECURITY_DESCRIPTOR pSecurityDescriptor, // address of security descriptor
    PSID *pGroup, // address of pointer to group security identifier (SID)
    LPBOOL lpbGroupDefaulted // address of flag for default
   );
 
 
Parameters
 
pSecurityDescriptor
 
Points to a SECURITY_DESCRIPTOR structure whose primary group information the function retrieves.  
 
pGroup
 
Points to a pointer to a SID structure identifying the primary group when the function returns. (A SID is a security identifier.) If the security descriptor does not contain a primary group, the function sets the pointer pointed to by pGroup to NULL and ignores the remaining output parameter, lpbGroupDefaulted. If the security descriptor contains a primary group, the function sets the pointer pointed to by pGroup to the address of the security descriptor's group SID structure and provides a valid value for the variable pointed to by lpbGroupDefaulted.  
 
lpbGroupDefaulted
 
Points to a flag set to the value of the SE_GROUP_DEFAULTED flag in the SECURITY_DESCRIPTOR_CONTROL structure when the function returns. If the value stored in the variable pointed to by the pGroup parameter is NULL, no value is set.  
 

и адльше по ссылкам можно получить то что надо. Хотя может я и ошибаюсь.


----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 01:31 02-09-2003
EAS



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ИМХО

Цитата:
GetSecurityDescriptorGroup function retrieves the primary group information from a security descriptor

Почему-то у меня есть подозрения что SID/GID генерится примерно как GUID, и при перестановке системы будут сложности с повторым использованием оплаченного ранее ключа.

Всего записей: 441 | Зарегистр. 18-07-2003 | Отправлено: 03:10 02-09-2003
ShIvADeSt



Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
EAS  

Цитата:
Почему-то у меня есть подозрения что SID/GID генерится примерно как GUID, и при перестановке системы будут сложности с повторым использованием оплаченного ранее ключа.
тут ты полностью прав. Я только не могу понять в чем проблема. Парень хочет, чтобы его ПО не использовалось другими людьми. Если они переставляют Оси каждый день, то пусть постоянно связываются с разработчиком. Это конечно грубо, но в связи с недостаточным знанием асма я не могу предложить как получить данные о биосе.  
. Меня просто попросили привести функции и вот вам результат... Я еще конечно подумаю, к чему еще привязываться (в смысле железа).

----------
И создал Бог женщину... Существо получилось злобное, но забавное...

Всего записей: 3956 | Зарегистр. 29-07-2003 | Отправлено: 08:50 02-09-2003
EAS



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Если они переставляют Оси каждый день, то пусть постоянно связываются с разработчиком

Только вот у разработчика тоже дополнительная головная боль появляется -- поди заочно разбирайся, они ОСь переставили или софтину на другой комп поставили .

Цитата:
в связи с недостаточным знанием асма я не могу предложить как получить данные о биосе

Не ты один .  
Но если замахиваться на серьезные шаровары, видимо надо с этим делом разбираться, по крайней мере с идентификацией железа.

Всего записей: 441 | Зарегистр. 18-07-2003 | Отправлено: 03:17 03-09-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
кстати, эт тож трабл. бо софт, который я юзал, генерил кей по всему железу, а при смене джойстика (эт не прогон), ругался, что хард-блин-варе иди не соответствует. пиплы ругались и требовали новый кей. а потом просек фишку, что на 5 машинах стоит, а оплачено 3...

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 17:33 05-09-2003
EAS



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
при смене джойстика (эт не прогон), ругался, что хард-блин-варе иди не соответствует

Ну и правильно, нефиг в офисе джойстику делать . А вообще, нужно думать к чему привязываться. Имхо, оптимально HDD и MB: если уж их поменяли можно и покричать, что комп другой . Или как-то допускать замену одной/двух железок.

Всего записей: 441 | Зарегистр. 18-07-2003 | Отправлено: 01:47 06-09-2003 | Исправлено: EAS, 01:56 06-09-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
 А вообще, нужно думать к чему привязываться. Имхо, оптимально HDD и MB

оптимально, или неоптимально - это все конечно хорошо, но вопрос КАК?

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 20:45 08-09-2003
kishik



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
оптимально, или неоптимально - это все конечно хорошо, но вопрос КАК?

http://www.winsim.com/diskid32/diskid32.html - фриварная утилита с исходниками для получения информации о жестком диске. Для NT/2K/XP использует device i/o controls, для 9x/ME - vxd-шку, исходники которой также прилагаются. Но автор честно предупреждает, что с этой утилитой могут быть проблемы.
 
В MSDN есть также статья о том, как получить MAC-адрес ethernet адаптера (весьма распространенный способ привязки к компу). Называется "Getting the MAC Address for an Ethernet Adapter" (можно в google найти, если что). Есть люди, которые для получения MAC-адреса (или почти уникального числа, привязанного к компьютеру, если нет сетевой карты) советуют брать 6 последних байтов из GUID-ов, сгенерированных функциями UuidCreateSequential(Win2k/WinXP/2003 Server)/UuidCreate(для всех остальных).
 
К volume id через GetVolumeInformation привязываться тоже можно (хоть и ненадежно).
 
Удачи.

Всего записей: 27 | Зарегистр. 07-09-2003 | Отправлено: 23:14 08-09-2003
Pupsik

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
пиплы ругались и требовали новый кей. а потом просек фишку, что на 5 машинах стоит, а оплачено 3...

Ну и как вы будете определять, что они не ставят на другую машину, а меняют на этой?
Вот позвонили тебе и сказали: ой, у нас винт полетел, а сами ставят на другую.
И что?
 
Может там сидят не такие крутые крякеры и можно просто писнуть что-то в реестр?
 
PS: С мамы вообще серийник не выковырить. Т.е. выковырить можно, но это сильно зависит от фирмы, модели и прочего.
PPS: Интересно, зачем для чтения BIOS надо знать ассемблер?


----------
Ума нет - считай коллега.

Всего записей: 553 | Зарегистр. 13-03-2003 | Отправлено: 12:51 09-09-2003
BugFixer

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pupsik

Цитата:
Интересно, зачем для чтения BIOS надо знать ассемблер?  

А в бейсике не нашлось такой функции...  

Всего записей: 482 | Зарегистр. 02-08-2003 | Отправлено: 12:55 09-09-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ, а кто из вас на Шарпе пишет? я в принципе вместе с конторой перешел на Шарп, а потом лично и дома поюзал и жутко зауважал данное творение от микрософт. так вот мне б на Шарпе реализацию протекции, и чтоб не через АПИ, а через какую-нибудь assembly. или от стороннего разработчика, коль в дотНЕТ не найдется...

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 21:02 09-09-2003
MetroidZ



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Хочу заметить, что из вопроса как защитить программу тут все удалились в вопросы:1 Как запаковать программу. 2 Откуда взять ID какой нибудь. Вместе с тем интересует вопрос, как защитить программу от крайне лёгкого тогда - revers инжениринга.

Всего записей: 1795 | Зарегистр. 12-07-2003 | Отправлено: 13:38 13-09-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MetroidZ

Цитата:
 как защитить программу от крайне лёгкого тогда - revers инжениринга.

ну так то тот же армадилло, аспротект и т.д. - они криптуют код и делают вызовы функций не столь явными (e.g. GetPassword()). для .НЕТ платформы я нашел утилиту (она в 2003 студии идет в комплекте, но полудемо), зовется dotfuscator - она то и криптует код. а вот как зашареварить прогу под дотнет я пока еще не выяснил

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 12:40 14-09-2003
MetroidZ



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Промолчу про распаковщики UN(аспротект,...).
Но ведь стоит запустить отладчик (и код программы остаётся незащищенным). Надо всё же самому ещё научится первую ступень защиты сделать.

Всего записей: 1795 | Зарегистр. 12-07-2003 | Отправлено: 22:20 14-09-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ага, а еще веб странички самому бацать, модерить десяток форумов на них, дизайном заниматься и написать свою ось, чтоб было круто. и всего за десяток другой лет...

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 21:44 15-09-2003
vladiko

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dotBY
Попробуй установи им InCD и пропиши очередность файлов программы в алгоритме копировать его они не смогут так как меняется структура диска, а очередность они не знают.
Но для етого надо CDRW и InCD им установить (ну добавишь к цене программы)
Вообщем пробуй что-дь вариантов море. Хотя Нет защиты которую нельзя взломать.
Попробуй путать их чтоб-было сложнее

Всего записей: 1 | Зарегистр. 12-10-2003 | Отправлено: 03:41 15-10-2003
ppch

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ИМНО все-таки лучший способ защиты - использовать HASP'ы. Тогда и прогу привязывать к компу не надо (а значит не надо мучаться это они веник меняют или на другой комп ставят), и отвечать на вопросы типа "А вот завтра ты свалишь в америку, а нам что тогда с твоей прогай делать?".
 
Может кто поделится инфой про хаспы - как их программировать, встраивать, и где их вообще брать?
 

Всего записей: 102 | Зарегистр. 18-04-2003 | Отправлено: 14:37 15-10-2003
dotBY



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
и пояснит, что вообще такое хасп, а то сколько программлю - ни разу не сталкивался

Всего записей: 164 | Зарегистр. 19-08-2003 | Отправлено: 20:16 15-10-2003
MetroidZ



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HASP - защита программ электронным ключом. Но самые известные программы всё же умудряются всё равно взломать.

Всего записей: 1795 | Зарегистр. 12-07-2003 | Отправлено: 00:22 16-10-2003
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Shareware protection


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru