Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Демо версия программы

976
18 февраля 2011 года
mikhalych
198 / / 04.01.2009
Здравствуйте уважаемые друзья.
У меня как и у многих других форумчан класический вопрос.
Я написал програмку HelloWorld на .NET е. Хочу сделать демо версию с количеством запусков допустим 30-40 раз (то есть клиент не смог запускать программу больше 30 раз. так как это всего лиш демо версия)
Где разумнее всего будет хранить количество запусков программы. Чтобы было как можно надежнее ? Я знаю что найти место где храниться это переменное и взломать программу все равно будет не сложно для взломщиков, но все таки защита нацелена на рядовых юзверов а не на хакеров.

Поиск в гугле по этому вопросу не привел ни к одному результату по теме. Надеюсь на вашу помощь, советов и пинков в нужном направлении.
63K
18 февраля 2011 года
50bites
24 / / 12.12.2010
:) поделись знанием, что можно такого написать (если сил хватило только "hello world" откомпилить) что так срочно надо защищать количеством запусков??

ну а если по делу то просто пиши/читай файл и не парься, в текущий каталог проги или что то типа %USERPROFILE%\AppData\Local\Temp или %SystemRoot%\TEMP (будь внимателен при выборе каталога если твоя прога будет запущена не под админом а под ограниченной учеткой то у нее может не быть прав доступа в каталогу)
976
21 февраля 2011 года
mikhalych
198 / / 04.01.2009
Цитата: 50bites
:) поделись знанием, что можно такого написать (если сил хватило только "hello world" откомпилить) что так срочно надо защищать количеством запусков??



HelloWorld это так к примеру я сказал.

5
21 февраля 2011 года
hardcase
4.5K / / 09.08.2005
А если забить на ерунду с количеством запусков и просто ограничить функционал в программе?
8.2K
21 февраля 2011 года
bagie2
299 / / 26.10.2008
могу рассказать как это бывает делают. программа записывает сразу в два места: реестр (HKCU) и desktop.ini в какой-то стандартной папке типа Мои документы. ну и если данные в разных хранилищах не совпадают, то берем минимальное количество запусков которое считали из одного и записываем принудительно во другие. но всё равно это не спасет, но немного "попариться" придется. главное замаскироваться под данные о которых даже и не подумаешь. ну, например, хранить в старшем слове dword'а количества запусков а в младшем - позицию окна и параметр обозвать именно WindowLeft, WindowTop и т.д.) или кол-во запусков разбить на части и также хранить как часть совершенно другой по смыслу конфигурации программы при этом дублируя кол-во запусков в 3-4 местах скажем.

кроме того не рекомендую сразу при запуске приложения проверять этот счетчик, дабы сложнее было запалить regmon\filemon'ом. записать в код несколько проверок, одна из них например в TLS Callback, второая при запуске, третья по таймеру или по User Mode APC и т.д. при этом при проверке также не предпринимать никаких действий сразу а откладывать эти данные на потом, допустим радомно через N-секудн после запуска завершать приложение с сообщением и чтобы за вывод окна о окончании работы программы отвечало несколько ветвей код дублирующих друг друга (лучше даже сами формы продублировать) и каждый раз исполнялся разный код чтоб защитить себя от патча(усложнить эту работу).
241
21 февраля 2011 года
Sanila_san
1.6K / / 07.06.2005
Только особо не увлекайтесь с усложнением: защита вряд ли должна стоить дороже программы. Ну и вообще, где анализ угроз, оценка рисков? Как вы вообще защиту проектируете, не зная этих величин?
976
23 февраля 2011 года
mikhalych
198 / / 04.01.2009
Спасибо
63K
09 марта 2011 года
2k9software
26 / / 09.03.2011
Счётчик можно хранить где Вам удобно. Например в параметрах приложения (My.Settings).

Что касается защиты:
Главная задача - замаскировать часть кода, отвечающую за чтение и сравнение значения счётчика.
Как это сделано у меня можете подглядеть на моём блоге о shareware в Рунете.
Для уменьшения читаемости исх. кода после декомпиляции, используйте обфускаторы.
63K
09 марта 2011 года
2k9software
26 / / 09.03.2011
bagie2, И после этих всех навесов Hello, World будет весить 500+ Кб.;)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог