Делаем привязка к железу в Delphi

(Ответов: 6, Просмотров: 6158)
  1. Banned
    • Регистрация: 09.01.2012
    • Сообщений: 254
    • Репутация: 32
    Как вы уже знаете я делаю софт на Delphi . И я задумывался вопросом как привязать софт к железу, и я нашел выход.Теперь делюсь им с вами.
    Как это все происходит, спросите вы, отвечаю!
    Пользователь получает ваш продукт и генератор серийного номера. Затем он запускает генератор который выводит код текущего компьютера, после чего клиент сообщает его вам. Вы, используя генератор лицензий создаете уникальный файл на основе полученного кода и после оплаты передаете его пользователю. В свою очередь он помещает его в папку с вашей программой и запускает её. Приложение запустится только в том случае если существует корректный файл лицензии.
    Как это все подключить, его Модуль:
    Для того, чтобы постоянно не переписывать защитный код, я решил создать отдельный модуль - BindEx. С помощью него можно произвести быструю привязку к железу в несколько строк кода. Шифрование/сжатие файла лицензии производится библиотекой Zlib, которая использует комбинацию алгоритма LZ77 и алгоритма Хаффмана. Сам серийный номер преобразуется в хэш через алгоритм MD5.
    http://i018.radikal.ru/1201/3d/36bec7d8968b.png
    Описание модулей

    Disk
    1

    property Disk: char write FDisk;

    Свойство, принимающее в качестве значения, букву диска для которой будет формироватся серийный номер (по умолчанию - C).

    KeyFile
    1

    property KeyFile: string write FKeyFile;

    Свойство, принимающее в качестве значения, имя файла лицензии (по умолчанию - key.lic).

    Salt
    1

    property Salt: string write FSalt;

    Свойство, принимающее в качестве значения, добавочное секретное слово (соль) для создания уникального серийного номера (по умолчанию пусто).

    CreateKeyFile
    1

    procedure CreateKeyFile(ASerial: string);

    Процедура создает файл лицензии на основе серийного номера ASerial.

    CheckNow
    1

    procedure CheckNow;

    Процедура проверяет файл лицензии и если он неверный завершает работу.

    GetDiskSerial
    1

    function GetDiskSerial: string;

    Функция возвращает серийный номер текущего компьютера.

    В архиве вы также найдете пример реализации типичного приложения с использованием модуля BindEx.

    Всем спасибо с вами был Антошка! Удачи Smile
    • 1

    Спасибо сказали:

    OKyJIucT(09.01.2012),
  2. Гуру Аватар для viotur
    • Регистрация: 14.03.2010
    • Сообщений: 3,170
    • Репутация: 2818
    Антон Богатко, хорошо, когда среди пользователей форума появляется грамотный программист))) Хотелось бы увидеть примеры ваших работ и тему по написанию программ в коммерческом разделе.
    • 0
  3. Super Moderator Аватар для TbIKBA
    • Регистрация: 04.08.2011
    • Сообщений: 2,002
    • Репутация: 1574
    • Webmoney BL: ?
    viotur, явный копипаст ведь.

    Цитата Сообщение от Антон Богатко Посмотреть сообщение
    В архиве вы также найдете пример реализации типичного приложения с использованием модуля BindEx
    В каком архиве?

    http://tdlite.ru/delphi/bind-hardware-delphi/ вот источник, если что.
    • 0
  4. Banned
    • Регистрация: 09.01.2012
    • Сообщений: 254
    • Репутация: 32
    viotur,есть работы (два обменика вк )сылки?

    ---------- Сообщение добавлено 14:37 ---------- Предыдущее 14:36 ----------

    TbIKBA,у меня в архиве
    • 0
  5. Дипломник
    • Регистрация: 08.01.2012
    • Сообщений: 129
    • Репутация: 15
    Это все отлично, но... "тема не раскрыта".

    1. Что является "железным" ключом привязки? Что ваш модуль (точнее то что запускает клиент) анализирует? Сер-намбер процессора? MAC сетевой карты? Что?
    2. Гораздо важнее - что если клиент ПОСЛЕ привязки задумает проапгрейдить свой компьютер, что делать будете? Еще раз генерация-связь с вами-ответ от вас-активация? Кисленько, честно говоря... Я бы, конечно, подобный продукт с порога не отверг бы, но на альтернативы глянул бы определенно...
    • 0
  6. Banned
    • Регистрация: 09.01.2012
    • Сообщений: 254
    • Репутация: 32
    процессор...есть способ отвязки от железа!

    ---------- Сообщение добавлено 15:25 ---------- Предыдущее 15:22 ----------

    SamMan,нужно будет написать создателю...чтобы отвязать...
    • 0
  7. Гуру Аватар для viotur
    • Регистрация: 14.03.2010
    • Сообщений: 3,170
    • Репутация: 2818

    Комментарий модератора: viotur

    1. Тема закрыта до возвращения ТС
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Привязка BL webmoney к вашему аккаунту
Обсуждение форума и ваши предложения 392 23.01.2021 19:41
Региональная привязка зарубежных сайтов
Yahoo, MSN,BING... 2 05.06.2011 14:22
Долгая привязка домена
Хостинг и Серверы 5 29.01.2010 13:35
Региональная привязка в Google
Прочее 19 16.09.2009 18:11

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры