|
74 / 74 / 23
Регистрация: 07.11.2013
Сообщений: 539
|
|
Одноразовая офлайн лицензия для программы25.02.2016, 23:09. Показов 5025. Ответов 9
Метки нет (Все метки)
Во многих программах используется активация. Вот у меня возникла необходимость сделать её для своей. Как сделать так, чтобы одним ключом или файлом лицензии можно было активировать только одну копию программы, которая не обязательно должна быть подключена к интернету. С интернетом всё просто, можно проверить активирована ли она уже, а как без него?
0
|
|
| 25.02.2016, 23:09 | |
|
Ответы с готовыми решениями:
9
Лицензия для программы Не может быть получена лицензия для запуска программы |
|
71 / 58 / 31
Регистрация: 05.09.2013
Сообщений: 666
|
|
| 26.02.2016, 09:10 | |
|
Если только связать ключ с конкретным экземпляром ПО. Но, опять таки, эту программу можно будет активировать на любом компьютере, и много раз...
0
|
|
|
74 / 74 / 23
Регистрация: 07.11.2013
Сообщений: 539
|
||||||
| 31.03.2016, 11:59 [ТС] | ||||||
|
Я нашел на что описаться в плане железа - на UUID. Он меняется только при смене мат. платы. Узнать его можно так:
Кликните здесь для просмотра всего текста
И так, у нас есть четыре ситуации: 1) Активация программы, когда есть интернет 2) Активация без интернета 3) Проверка активации с интернетом 4) Проверка без интернета Недавно я узнал про асимметричное шифрование (на примере RSA). Классная вещь =) Их вроде и так используют для создания лицензионных ключей, осталось только разобраться с некоторыми деталями. И так, ключ - сообщение, зашифрованное с помощью RSA (или другим асимметричным алгоритмом). На счёт того, что он будет длинным, я не беспокоюсь. Мне в этом плане очень понравилось решение аваста: сделать "файл лицензии" (текстовый файл с ключом, который будет открываться моей программой): 1) Тут всё вроде несложно. Пользователь оплачивает, затем получает ключ. При активации программа проверяет, есть ли он в базе и если есть и его ещё не активировали (или активировали, но на этом же компьютере), то активация проходит. 2) Тут уже посложнее. Допустим, на основе UUID и email (или ещё какого-то идентификатора пользователя) генерируется какой-то код, который я потом расшифровываю обратно в UUID и email (для этой части RSA идеально подходит), и если этот пользователь оплатил, генерирую ключ, который привязан к его компьютеру (можно активировать только на нём). Далее пользователь просто активирует программу этим ключом. 3) Это не интересно. Зачем постоянно лазить в интернет без необходимости? Думаю, это нужно будет делать где-то раз в месяц (на всякий случай. вдруг ключ забанят или ещё что). После активации любым способом ключ привязывается к компьютеру. И так, сначала проверяется есть ли ключ в базе и привязан ли он к текущему компу, если нет, сообщается об ошибке активации. 4) Здесь проверка состоит только из последнего пункта предыдущей: проверяется привязан ключ к текущему компу, если нет, сообщается об ошибке активации. Ну как вам? =) Теперь пара вопросов: Как привязать ключ к компьютеру после активации через интернет, чтобы этот процесс нельзя было подделать? Ведь эту модификацию, как и её проверку, должна осуществлять сама программа => это можно взломать.. RSA подходит, если пользователь передаёт что-то мне, а какой алгоритм использовать для передачи ключа пользователю?
0
|
||||||
|
9 / 9 / 7
Регистрация: 15.03.2015
Сообщений: 34
|
|
| 31.03.2016, 12:15 | |
|
Еще можно проверять на одновременно включенные программы, как Касперский. А вообще без хорошего обфускатора на c# это будет очень легко все взломать.
0
|
|
|
74 / 74 / 23
Регистрация: 07.11.2013
Сообщений: 539
|
|||
| 31.03.2016, 12:32 [ТС] | |||
|
0
|
|||
|
9 / 9 / 7
Регистрация: 15.03.2015
Сообщений: 34
|
||
| 31.03.2016, 12:44 | ||
|
0
|
||
|
74 / 74 / 23
Регистрация: 07.11.2013
Сообщений: 539
|
|
| 31.03.2016, 13:09 [ТС] | |
|
Mifort, можешь посоветовать какой-нибудь (желательно бесплатный)?
0
|
|
|
9 / 9 / 7
Регистрация: 15.03.2015
Сообщений: 34
|
|
| 31.03.2016, 13:22 | |
|
Вот неплохой обзор, а из не перечисленных мне больше всего понравился ILProtector. Бесплатные же в большинстве своем просто усложняют чтение кода, но не препятствуют ему.
P.S. Вот еще говорят неплохой.
1
|
|
|
74 / 74 / 23
Регистрация: 07.11.2013
Сообщений: 539
|
|
| 31.03.2016, 14:57 [ТС] | |
|
Mifort, спасибо =) Но об этом потом. Сейчас мне больше интересно реализовать лицензию к которой нельзя будет сделать генератор ключей. Есть предложения по изложенному выше?
0
|
|
|
0 / 0 / 0
Регистрация: 04.04.2016
Сообщений: 7
|
|
| 22.12.2017, 13:05 | |
|
Mifort прав. Я так и делал.
0
|
|
| 22.12.2017, 13:05 | |
|
Помогаю со студенческими работами здесь
10
Распространение программы, лицензия
Лицензия программы и определенный срок действия
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|