|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
Способ защиты лицензии программы17.04.2015, 14:12. Показов 9599. Ответов 30
Метки нет (Все метки)
Доброго времени суток.
Стоит следующая задача: Есть программный продукт написанный на .Net 4. Продажа предполагается по 1 экз. на 1 заказчика. Необходимо предусмотреть способ защиты от использования копий программы. Предполагается вариант с ключём, генерируемым программой на основе серийника(?) материнки и процессора ПК, на котором впервые запускается программа. Этот ключ отсылается разработчикам, в ответ приходит лицензионный ключ, с которым программа работает. Стоит заметить, что компьютер вполне может не иметь доступ в сеть, по этому возможность авторизации программы у разработчика при запуске не рассматривается. Сейчас неважен алгоритм по которому генерируются ключи. Важен сам подход. Я вижу следующие проблемы данного подхода: 1) При замене железа (например, при выходе из строя или после апгрейда) программа перестаёт работать. Решение - повторный запрос ключа у разработчиков 2) Исходя из первого пункта есть возможность мухлежа. Поскольку разработчики не могут лично проверить действительно ли произведён апгейд первого ПК, или держатели скопипастили программу на другую машину. Поскольку этот метод защиты - первое, что пришло в голову при постановке задачи, предполагаю, что есть более надёжные варианты. Буду благодарен за идеи.
0
|
|
| 17.04.2015, 14:12 | |
|
Ответы с готовыми решениями:
30
Созданиец лицензии программы
Создание процесса из программы для защиты основного от несанкционированного завершения |
|
|
|||
| 17.04.2015, 14:54 | |||
|
0
|
|||
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 17.04.2015, 14:58 [ТС] | |
|
insite2012, лицензия 1 на 1 покупателя (такая особенность программы, больше не надо). Но, опять таки-из-за специфики покупатели и потенциальные покупатели вполне могут быть знакомы и по дружбе могут злостно нарушить копирайт. Предыдущая версия защищалась поставкой usb-ключа, но с ними был определённый геморой и было решено, что это уже не наш метод. Вот и изыскиваем более тонкий подход.
0
|
|
|
|
||
| 17.04.2015, 15:05 | ||
|
Ведите базу клиентов, отслеживайте, кто купил лицензию. Естественно, будут и потери, но с этим надо смириться, если такие гиганты как мелкомягкие мирятся))) Тут главное тонко поймать грань между стоимостью программы и ее полезностью, чтобы купить лицензию, пользоваться и (если будут обновления) получать их, или просто смухлевать, но без каких-либо гарантий. Могу сказать по своему опыту, я именно так и делаю. Может, кто-то и сломал мою программу, но пока я об этом не слышал. Кто хочет - покупает и впоследствии получает более свежую версию абсолютно бесплатно.
0
|
||
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 17.04.2015, 15:14 [ТС] | |
|
Специфика программы практически не предусматривает обновлений. Предыдущая версия больше 10 лет работала без существенных изменений. Да и объёмы продаж далеко не от дяди Билла, чтобы можно было мириться даже с единичными случаями мухлежа.
Как я понял пока ничего лучше, чем жёсткая привязка к железу цивилизация не придумала?
0
|
|
|
|
|||
| 17.04.2015, 15:19 | |||
|
0
|
|||
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
||
| 17.04.2015, 15:23 [ТС] | ||
|
Но для грамотного инженера (наша основная ЦА) установка службы - рутинное дело.
0
|
||
|
|
||
| 17.04.2015, 15:29 | ||
|
0
|
||
|
Master of Orion
|
|
| 17.04.2015, 19:03 | |
|
aquaMakc, жалко, что вам это прямо щас требуется
Потому как на подходе .Net Native, и уж сишарпный код, по которому прошелся С++ оптимизатор, где логика на 2/3 будет сгенерированна компилятором на основе вашего кода (анрол циклов, перестановка операций,....), где черт ногу сломит, ломануть было бы весьма затруднительно. А так - C# не преназначен для написания подобных программ. Даже если вы напишете свою логику привязки к железу никто не мешает декомпилировать, посмотреть, что там происходит, и собрать назад. Вон пример с PVS-Studio на днях показал, как оно бывает. И обфускация тут не поможет. Я и сам баловался, сломал один известных в некоторых кругах продукт, да как взломал, получил доступ ко всей клиентской базе, со всеми емейлами, телефонами, ключами... Мог их удалять, добавлять свои, редактировать... Короче, полный доступ. Правда я этого делать не стал, ибо в образовательных целях делал. Но факт есть факт. Даже на плюсах программы ломаются, что уж говорить про шарп, где метаданные хранят абсолютно всю информацию о сборке.
0
|
|
|
|
|||||
| 17.04.2015, 19:49 | |||||
![]()
0
|
|||||
|
Кодогенератор
200 / 200 / 51
Регистрация: 15.06.2011
Сообщений: 794
|
||
| 17.04.2015, 21:04 | ||
|
при повторной генерации ключа (типа после апгрейда/поломки) - сравниваете данные что были присланы в предыдущий раз, и текущие - если есть какие ниб совпадения, - клиент не врет, если нет, то или системник поменял, или мошенник.
0
|
||
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 17.04.2015, 21:29 [ТС] | |
|
Вопрос не в декомпиляции программы. А в защите от использования не тем, кто её приобрёл. Пока самой жизнеспособной идеей есть - сбор информации о системе через WMI, шифрование, отправка разработчикам (руками пользователей по электронке), генерация ключа (алгоритм ещё даже не обдумывался). При запуске программы производится сравнение параметров системы с ключём. Всё совпадает - работает. Не совпадает - закатываем истерику и отказываемся работать
0
|
|
|
|
||
| 17.04.2015, 21:37 | ||
|
Я для себя придумал нечто вроде универсального способа, который работает для всех программ, которые я написал (и напишу в будущем), и вместе с тем не создает двух одинаковых ключей.
0
|
||
|
|
|||||||
| 17.04.2015, 21:40 | |||||||
|
Самая простенькая защита у меня была:
0
|
|||||||
|
|
|
| 17.04.2015, 21:42 | |
|
0
|
|
|
|
||
| 17.04.2015, 21:48 | ||
|
Правда GetApp в нативной уже DLL-ке прятался. Ну, короче, обычная магия с этим треклятым NET
![]() Добавлено через 1 минуту
0
|
||
|
|
|
| 17.04.2015, 21:50 | |
|
0
|
|
|
|
||||
| 17.04.2015, 21:57 | ||||
0
|
||||
| 17.04.2015, 21:57 | |
|
Помогаю со студенческими работами здесь
20
Посоветуйте способ "защиты от дурака" Способ защиты документа от сохранения Красивый способ защиты базы данных Аксесса! Как и где взять программу для защиты двд видеодиска от копирования. Хоть какой нибудь способ? Взлом лицензии программы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|