Программа для создания лицензионного файла
Новый файл лицензии для сетевого сервера необходимо создавать только в следующих случаях:
- получение или продление лицензии по подписке;
- добавление подписок для программы с сетевой лицензией;
- добавление программ на сервер сетевых лицензий;
- добавление лицензий к новой версии программы по сетевой лицензии;
- смена сервера сетевых лицензий;
- реконфигурация сервера сетевых лицензий.
Сбор сведений о сервере лицензий
Для создания файла лицензий необходимо иметь следующие сведения.
- В конфигурации с одним сервером: имя узла сервера и его MAC-адрес (двенадцатизначный идентификатор узла)
- В конфигурации с резервными серверами: имена узлов серверов и MAC-адреса главного сервера и двух резервных серверов
- В конфигурации с распределенными серверами:
- количество серверов;
- имена узлов и MAC-адреса всех серверов;
- количество подписок для каждого сервера.
Поиск имени и MAC-адреса узла с помощью утилиты LMTOOLS в ОС Windows
- Войдите в систему с правами администратора на локальном компьютере, нажмите «Все программы» > Autodesk > Network License Manager > LMTOOLS Utility.
- В окне LMTOOLS перейдите на вкладку Systems Settings (Настройки системы).
- Найдите поле Computer/Hostname (Компьютер/Имя хоста). Это окно содержит имя узла.
- Найдите поле Ethernet Address (Адрес Ethernet узла сервера). Двенадцатизначный адрес идентификатора узла, также называемый MAC-адрес.
Поиск имени и идентификатора узла с помощью командной строки в ОС Windows
- Откройте командную строку Windows.
- Введите ipconfig /all. Появится список данных конфигурации.
- В разделе «Настройка протокола IP для Windows» найдите имя узла и запишите его.
- В разделе «Ethernet-адаптер» > «Подключение по локальной сети» введите MAC-адрес без дефисов. MAC-адрес — это двенадцатизначный идентификатор узла.
Поиск имени и идентификатора узла в macOS или Linux
- Откройте окно Терминала.
- Перейдите в папку, в которой установлен файл .lmutil.
- Получите имя узла, введя следующий запрос:
<prompt>./lmutil lmhostid -hostname - Получите идентификатор (MAC-адрес) узла, введя следующий запрос:
./lmutil lmhostid
Создание файла лицензии в учетной записи на портале Autodesk Account
Для создания сетевой лицензии необходимы права администратора. Для программы, на которую требуется сетевая лицензия, также необходимо приобрести подписку с многопользовательским доступом. Если используются разные программы и требуется создать файл лицензии для них всех, это можно сделать для одной программы за раз.
Создание файла лицензии
Сохранение файла лицензии
Получив файл лицензии, сохраните его в папке, где установлен Network License Manager. Имя файла лицензии может быть любым, но его расширение должно быть .lic. Ниже приводятся примеры папок с файлами лицензий для различных операционных систем.
- Windows:C:\Autodesk\Network License Manager\Licenses
- macOS:/Users/<user>/local/flexnetserver
- Linux:/opt/flexnetserver
Подтверждение правильности файла лицензии
После сохранения файла лицензии подтвердите, что он содержит верную информацию. Файл лицензии работает только на компьютере c MAC-адресом, указанным при получении лицензии.
В статье рассматривается процесс защиты программного обеспечения от несанкционированного использования. В частности, приводятся примеры практического применения и внедрения файла лицензии в программный продукт. Использования файла лицензии как источника информации об условиях приобретения программного продукта конечным потребителем.
В мире коммерческого программного обеспечения существуют несколько популярных видов защиты от несанкционированного использования [1]:
– Локальная программная защита. В том числе защита с последующей активацией продукта через Интернет.
– Защита путем переноса части программы в облако. Известный также как подход SaaS (“Software As A Service” — программное обеспечение как услуга).
В свою очередь, локальная программная защита может быть реализована множеством способов, самым популярным из которых является проверка специального серийного ключа продукта. Однако, ключ продукта, зачастую не может нести в себе дополнительную информацию, такую как персональные данные конечного пользователя или какие-либо условия приобретения продукта.
Как быть в случае если программный продукт состоит из несколько частей, которые могут быть или не быть приобретены пользователем? Как разрешить потребителю использовать только часть возможностей программы? Здесь нам на помощь приходит файл лицензии.
Файл лицензии (License file) — текстовый файл, содержащий информацию об условиях использования программного продукта в открытом виде. А также цифровую подпись, гарантирующую целостность и достоверность этой информации.
Рассмотрим пример файла лицензии (Рис. 1). В данном примере мы имеем четыре информационных поля и цифровую подпись (“xxxxxxxxxxxxxxxxxxxxx”) вычисленную по алгоритму RSA-SHA256.
Рис. 1. Файл лицензии
– Version — Версия программного обеспечения для интерпретации файла лицензии.
– App version — Версия программного продукта, подлежащего защите.
– E-mail — Персональная информация пользователя программного обеспечения.
– Valid — Срок действия приобретенной лицензии.
В основе создания и проверки цифровой подписи файла лицензии лежит использование пары криптографических ключей — открытого и закрытого. Закрытый ключ хранится у владельца программного продукта (разработчика ПО) и ни при каких обстоятельствах не должен передаваться третьим лицам. Открытый же ключ, наоборот, распространяется вместе с программным продуктом и доступен всем пользователям программного продукта.
Рассмотрим процесс получения (генерации) файла лицензии на конкретном примере. Будем использовать Open Source библиотеку (с открытым исходным кодом) “nodejs-license-file” для защиты программного обеспечения, разработанного на платформе Electron. Electron — фреймворк позволяющий создавать кроссплатформенные приложения используя веб-технологии, такие как Node.js, HTML, CSS и JavaScript. [2]
Прежде всего установим библиотеку “nodejs-license-file”:
> npm install nodejs-license-file --save --save-exact
Для подключения требуется всего одна строка программного кода:
const licenseFile = require('nodejs-license-file');
Предположим, мы хотим получить точно такой же файл лицензии какой представлен на Рис. 1. Для этого нам потребуется составить шаблон для генерации и передать его вместе с информационными данными в библиотеку — генератор. На Рис. 2 представлен пример программного кода, позволяющий получить содержимое файла лицензии. Результат выполнения этого кода будет выведен в консоль и будет полностью совпадать с содержанием на Рис. 1.
Рис. 2. Программный код для генерации файла лицензии
Из Рис. 2 следует, что для генерации файла лицензии необходим только один ключ из пары криптографических ключей, а именно закрытый ключ.
Далее, рассмотрим процесс проверки лицензионного файла на стороне пользователя программного продукта. Обычно, при первом запуске программы, пользователю предлагается указать путь до файла лицензии. После чего, специальный алгоритм внутри лицензируемого программного обеспечения должен принять решение, является ли содержание файла достоверным и не было ли оно модифицировано с момента генерации. Для этого необходимо проверить цифровую подпись, а именно, соответствует ли подпись тем данным, которые указаны в файле лицензии. В случае если эта проверка проходит успешно, данные можно считать достоверными.
На Рис. 3 показан программный код, необходимый для проверки и извлечения информационных данных из лицензионного файла, при использовании библиотеки “nodejs-license-file”.
Рис. 3. Программный код для проверки и извлечения данных из файла лицензии
Из Рис. 3 следует, что для проверки достоверности и получение информации из файла лицензии необходим только один ключ из пары криптографических ключей, а именно открытый ключ. Результат выполнения кода (изображен на Рис. 4) будет выведен в консоль и будет включать в себя информацию о проверке и все данные из лицензионного файла.
Рис. 4. Результат проверки и разбора лицензионного файла на клиенте
Зачастую при распространении программного продукта, разработчику важно учитывать на каких условиях его продукт был приобретен. В зависимости от этих условий, пользователь получает разный набор возможностей в рамках одного и того же программного продукта. Использование файла лицензии упрощает и защищает процесс получения прав на использование продукта конечным пользователем.
Чтобы создать инсталляционный пакет, выполните следующие действия:
- Подключитесь к нужному Серверу администрирования.
- В дереве консоли в папке Удаленная установка выберите вложенную папку Инсталляционные пакеты .
- Запустите процесс создания инсталляционного пакета одним из следующих способов:
- Выберите пункт Создать → Инсталляционный пакет в контекстном меню папки Инсталляционные пакеты .
- Выберите пункт Создать → Инсталляционный пакет в контекстном меню списка инсталляционных пакетов.
- по ссылке Создать инсталляционный пакет в блоке управления списком инсталляционных пакетов.
В результате запустится мастер создания инсталляционного пакета. Следуйте далее указаниям мастера.
В процессе создания инсталляционного пакета для программы "Лаборатории Касперского" вам может быть предложено ознакомиться с Лицензионным соглашением на эту программу и Политикой конфиденциальности программы. Внимательно прочитайте Лицензионное соглашение, которое заключается между вами и "Лабораторией Касперского", и Политику конфиденциальности. Если вы согласны со всеми пунктами Лицензионного соглашения и Политики конфиденциальности, в блоке Я подтверждаю, что полностью прочитал, понимаю и принимаю установите флажки:
- положения и условия настоящего Лицензионного соглашения ;
- Политику конфиденциальности, которая описывает обработку данных .
Установка программы будет продолжена после установки обоих флажков. После этого создание инсталляционного пакета будет продолжено. Путь к файлу Лицензионного соглашения и Политики конфиденциальности задается в файле с расширением kud или kpd, входящем в состав дистрибутива программы, для которой создается инсталляционный пакет.
При создании инсталляционного пакета для программы Kaspersky Endpoint Security для Mac вы можете выбрать язык Лицензионного соглашения и Политики конфиденциальности.
Во время создания инсталляционного пакета для программы из базы программ "Лаборатории Касперского" вы можете включить автоматическую установку общесистемных компонентов (пререквизитов), необходимых для установки этой программы. Мастер создания инсталляционного пакета отображает список всех возможных общесистемных компонентов для выбранной программы. Если инсталляционный пакет создается для патча (неполный дистрибутив), то в список общесистемных компонентов будут включены все необходимые для развертывания патча составляющие, вплоть до версии с полным дистрибутивом. Впоследствии вы можете ознакомиться с этим списком в свойствах инсталляционного пакета.
После завершения работы мастера созданный инсталляционный пакет будет отображаться в рабочей области папки Инсталляционные пакеты в дереве консоли.
Инсталляционный пакет для удаленной установки Агента администрирования не нужно создавать вручную. Он формируется автоматически при установке программы Kaspersky Security Center и располагается в папке Инсталляционные пакеты . Если пакет для удаленной установки Агента администрирования был удален, то для его повторного формирования в качестве файла с описанием следует выбрать файл nagent.kud, расположенный в папке NetAgent дистрибутива Kaspersky Security Center.
Не указывайте в параметрах инсталляционных пакетов данные привилегированных учетных записей.
Как создать установщик для своего приложения
давно хочу написать установкщик,но весь гугл перерыв не нашел.вот все совреемнные установщики.Как заменить ключ от своего приложения в Google Play?
При попытке публикации обновления для приложения у меня возникает ошибка, говорит что использованы.Как создать окно справки для своего приложения?
подскажите, пожалуйста, леплю интерфейс, как подключить при нажатии f1 справку, или вообще как.Лицензионный ключ для Каспера
Я Касперским мало пользовался, поэтому не знаю. Сначала я его установил, всё нормально работало.Khaker_tt, вам нужен один ключ или механизм проверки правильности введенного ключа? Соответственно нужен и генератор ключа?
Какого вида ключ вы хотите создать? Дайте больше информации.
Yury Komar, Мне нужен механизм проверки правильности введенного ключа.
Добавлено через 35 минут
Допустим такой ключ GYH-NDJ-JDH-hjd-fjd.Добавлено через 13 минут
то есть регистрация для своей программы.Khaker_tt, а как вы создаете этот ключ? или это просто строка текста?
ну тогда самый простой способ - это:
Yury Komar, Нет. Это очень простой способ я по моему неправильно сформулировал вопрос извиняюсь за неудобства. Мне нужно чтобы как то было динамично. Допустим кто та хочет использовать мою программу он должен взят у меня код активации. И этот код должен работать на один компьютер а на другой он уже не рабочий.Решение
Khaker_tt, тогда вы должны попросить и данные о его копьютере, чтобы сформировать ключ именно для этого компьютера, либо завести сетевую базу данных, и хранить количество авторизаций с разных компьютеров с этим серийным номером. это муторно.
проще на основе имени компьютера (например) создавать ключ по определенным правилам, которые будут известны только вам конечно.
разделяете пароль на части, кодируете каждую часть определенным образом, чтобы ключ каждый раз содержал разные символы, но при проверке, удовлетворял условиям кодировки ключа..Добавлено через 21 минуту
Скажем так, вот следующий алгоритм проверки пароля, не очень сложный, но и не такой простой как обычный текст:Просто зашиваете слово, например YURIY (как в данном примере) в ваш пароль и прячете среди других символов, конечно сложность пароля может быть разной, на ваш вкус, я привел просто пример, чтобы натолкнуть на мысль.
Вот такие пароли успешно подойдут для авторизации по данной функции:
m Y S-4 U c-A R 5-Q I 1-q Y 7
S Y m-c U 4-5 R A-1 I Q-7 Y q
a Y URIY-L U M-P R O-S I LK-K Y ARIOДобавлено через 2 минуты
разработайте алгоритм проверки ключа, которые выданы для 1,2 или Unlimited и проверяйте на совпадения какие-то конкретные части пароля.Читайте также: