Сообщество программистов Autodesk в СНГ

ADN Club => AutoLisp / VisualLISP и DCL => Тема начата: Виталий от 22-03-2015, 17:17:03

Название: Программная защита на VLisp
Отправлено: Виталий от 22-03-2015, 17:17:03
Уважаемые спецы и коллеги, кто подскажет или выложит проверенный код (листинг) получающий ID компьютера желательно на Visual Lisp'е (если вообще такое возможно) или на си (для использоваия в arx или сразу в arx коде). Т.е. нужно уже готовое, существующее решение.   
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 22-03-2015, 19:02:35
1. Почему вопрос о защите приложения находится в разделе Магазин Приложений? Ему тут не место.
2. Сомневаюсь, что кто-то будет выкладывать своё Know-How защиты приложения. Во-первых, это интеллектуальная собственность. Во-вторых, он таким образом подвергнет риску вскрытия свою систему защиты.
3. Средствами VisualLisp можно сделать только примитивную систему защиты, так как у VisualLisp есть очень ограниченные средства взаимодействия с Windows, которые по большому счету могут и должны отключаться системным администратором.
4. Что понимается под ID компьютера? Например, MAC-адрес легко меняется штатными средствами Windows.
Название: Re: Программная защита на VLisp
Отправлено: Алексей Кулик от 22-03-2015, 19:25:04
Что такое "ID компьютера"? ID HDD? MAC? Серийный номер видеокарты?
Некоторые из этих данных получить можно (используя VLISP и, например, некоторые элементы WinAPI), но сами по себе они не гарантируют никакой защиты.
Название: Re: Программная защита на VLisp
Отправлено: Виталий от 22-03-2015, 19:48:18
Что такое "ID компьютера"? ID HDD? MAC? Серийный номер видеокарты?Некоторые из этих данных получить можно (используя VLISP и, например, некоторые элементы WinAPI), но сами по себе они не гарантируют никакой защиты.
Без привязке к машине купят приложение скажем за 10$, авторизуют его и выложат свою авторизацию в интернет и все. Поэтому нужен надежный идентификатор компьютера, чтобы приложение с его авторизацией работало только на компьютере покупателя это же очевидно. Поэтому нужен ID все равно откуда ID HDD, MAC, МАМА, главное чтобы было надежно и неизменяемо. Вариантов в интернете куча, но здесь интересует VLISP, какой ID лучше доставать и как на нем делать.
О самой защите речи не идет, это дело скажем личное, но без данной информации не придумать что-то более менее простое и относительно надежное.
Название: Re: Программная защита на VLisp
Отправлено: Алексей Кулик от 22-03-2015, 19:54:03
Ок, человек купил ПО, проходит время - у него "летит" материнская плата. Или HDD. Или сетевуха. Или он пытается перенести легально (!) купленное (!) ПО с одного компа на другой.
Я думаю, принимаясь за решение вопроса защиты, надо еще и эти моменты "прорабатывать".
P.S. Понадобится - сломают все равно. Самое главное - не дожить до того сладкого момента, когда из $1000 цены программы 99.9% составляет защита.
Название: Re: Программная защита на VLisp
Отправлено: Виталий от 22-03-2015, 20:02:12
Ок, человек купил ПО, проходит время - у него "летит" материнская плата. Или HDD. Или сетевуха. Или он пытается перенести легально (!) купленное (!) ПО с одного компа на другой.
Думаю, это решается очень легко. Запрос на обновление авторизации должен прийти с email пользователя - меняют комп и т.п. не часто.
Название: Re: Программная защита на VLisp
Отправлено: Алексей Кулик от 22-03-2015, 20:06:13
А переносят лицензии очень часто. Рабочий ноут - рабочий комп - домашний ноут - домашний комп - рабочий стационар
Легко!
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 22-03-2015, 20:19:47
главное чтобы было надежно и неизменяемо
Такого нет. Если бы было, то не было бы:
Вариантов в интернете куча
Можешь мне поверить. Когда-то я достаточно серьезно занимался системой защиты, так как МАЭСТРО (http://adn-cis.org/forum/www.maestrogroup.com.ua), одним из разработчиков которого я был, активно продавался. И не на lisp, а на C++, у которого значительно больше возможностей.
Так вот если сейчас занятся созданием системы защиты, то времени и ресурсов на неё потрачено будет не меньше чем на саму программу.
Название: Re: Программная защита на VLisp
Отправлено: Алексей Кулик от 22-03-2015, 20:26:20
Не меньше? Звучит немного оптимистично, мне кажется :)
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 22-03-2015, 22:15:53
Не меньше? Звучит немного оптимистично, мне кажется :)
Ну это зависит от сложности самого приложения. Но в большинстве случаев для создания стойкой системы защиты требуется значительно большая квалификация и глубокие знания Windows. Часто выгоднее отдать создание системы защиты специалисту или использовать (купить) готовую.
Название: Re: Программная защита на VLisp
Отправлено: АлексЮстасу от 12-08-2015, 22:12:43
У меня та же проблема - как защитить. Плюс, что я не программист.
Защитить для варианта раздачи через инет, в т.ч. через Autodesk Exchange Apps.
Может быть посоветуете этих самых специалистов или где искать готовые варианты?
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 13-08-2015, 00:53:19
Думаю, что этот вопрос для раздела Вакансии для программистов (http://adn-cis.org/forum/index.php?board=38.0)
Название: Re: Программная защита на VLisp
Отправлено: Владимир Шу от 08-09-2015, 16:39:36
Александр Ривилис, а можно, так сказать, "упасть на хвост".
Автодеск вполне себе неплохо защищает свои продукты, можно ли программно узнать номер лицензии и привязываться к нему?

ЗЫ.
Упасть на хвост, это и в отношении темы и в отношении защиты.
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 08-09-2015, 17:18:11
Автодеск вполне себе неплохо защищает свои продукты
Хм...
можно ли программно узнать номер лицензии
Что ты понимаешь под номером лицензии? Серийный номер AutoCAD? Запросто:
Код - Auto/Visual Lisp [Выбрать]
  1. (getvar "_PKSER")
Только что это тебе даст?
Название: Re: Программная защита на VLisp
Отправлено: Владимир Шу от 08-09-2015, 17:28:40
Я не правильно выразился, я о том что на картинке "Код запроса" или "Код активации"
Если я правильно понимаю они зависят от конкретного компьютера и от конкретной лицензии.
Вот как получить что то подобное и использовать в виде защиты для программ?
Извините, вам запрещён просмотр содержимого спойлеров.
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 08-09-2015, 17:38:04
Понятно, что алгоритм получения пар "код запроса - код ответа" тебе никто не даст. Но информацию о коде запроса ты можешь поискать в C:\Documents and Settings\All Users\Application Data\Autodesk\Adlm. В этом каталоге может быть куча xml-файлов, хранящая код запроса в виде:
Код - XML [Выбрать]
  1. <req>DRLZ P004 JFW8 66FJ L0WL WWS1 WZJ1 4XPZ</req>
С другой стороны кто угодно и когда угодно может эту информацию отредактировать.
Название: Re: Программная защита на VLisp
Отправлено: Владимир Шу от 08-09-2015, 17:58:32
У меня такой файл один.
Но если таких файлов много, можно как то ассоциировать этот файл с автокадом в котором запущена защищаемая программа?
Еще вопрос, что будет если этот код руками поменять? Как отреагирует автокад? (Я боюсь это делать на рабочей машине, автокад лицензионный и если лицензия слетит, мне спасибо не скажут =(, а активацию там неделю ждать... )

С другой стороны кто угодно и когда угодно может эту информацию отредактировать.
т.е. Автокад не проверяет эту запись?
Название: Re: Программная защита на VLisp
Отправлено: Александр Ривилис от 08-09-2015, 19:52:53
Еще вопрос, что будет если этот код руками поменять? Как отреагирует автокад?
Думаю, что этот файл создаётся и используется только при запросе активации.
т.е. Автокад не проверяет эту запись?
Думаю, что не проверяет.
Название: Re: Программная защита на VLisp
Отправлено: Дима_ от 08-09-2015, 21:41:57
А какой смысл ее проверять - он должен проверять совпадают-ли уникальный набор параметров системы с подписанной autodesk'ом копией - то есть этот "ключ" - это неких хеш Вашей системы - Вы его шлете autodesk'у, а он его подписывает закрытым ключом и высылает Вам. Может этот параметр как-то еще и используется - но грош цена такой защите - если он проверят по нему.