Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Работа для программиста > Фриланс
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.06.2010, 12:23   #1
maijor
Новичок
Джуниор
 
Регистрация: 03.06.2010
Сообщений: 0
По умолчанию написать setup

очень срочно нужно написать следующую защиту от копирования:
есть исходная программа, при ее запуске должен считываться номер жесткого диска и сравнивать с занесенным номером, при их совпадении программа доступна для выполнения (привязка к железу)
но что бы все-таки была возможность запуска программы на др. компьютерах нужно написать setup, считывающий номер жесткого диска и заносящий его в исходную программу.
необходимо написать на с++builder

Последний раз редактировалось maijor; 03.06.2010 в 14:57.
maijor вне форума Ответить с цитированием
Старый 03.06.2010, 14:07   #2
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

Пиши, обсудим
ICQ: 494 101 230
TwiX вне форума Ответить с цитированием
Старый 03.06.2010, 15:08   #3
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Пишите black.fregat@gmail.com
Black Fregat вне форума Ответить с цитированием
Старый 03.06.2010, 18:12   #4
MMM_Corp
Пользователь
 
Регистрация: 24.03.2010
Сообщений: 17
По умолчанию

Это делается не так!

Инсталятор не столь важен,
при запуске программы проверять в фале рядом ключ сгенерированный от чегото (винта напр. номера) и сравнивается, такую проверку нужно выполнять с некотрой периодичностью, чтобы так просто не получилось ее ломануть.
Конечно это не суперзащита, но кое как убережёт.

Дальнейшая консультация - платная.
MMM_Corp вне форума Ответить с цитированием
Старый 03.06.2010, 18:53   #5
codemo
Новичок
Джуниор
 
Регистрация: 19.05.2010
Сообщений: 0
По умолчанию

setup не нужен, можно написать несложную защиту при условии, что код не будут дизассемблировать (если это критично - есть средства шифрования exe-шника, защиты от дизассемблирования, ещё надёжнее использовать несимметричное шифрование). Схема такая - программа при запуске вычисляет сигнатуру окружения, в неё может входить не только серийнки винта, но и например названием операционной системы (чтобы запретить ставить программу на один винт под разными операционками), марка материнки (чтобы запретить переносить винт на другой комп и запускать её на там), и т.п. Эта сигнатура (в алфавитно-цифровом виде) пересылается регистратору (или звонится на телефон регистратора). Регистратор по этой сигнатуре вычисляет хэш и возвращает клиенту. Клиент вычисляет хэш от сигнатуры и сравнивает с присланным, если совпадают - сохраняет хэш сигнатуры в файл.
При запуске программа ищет файл с хэшом сигнатуры. Если не находит - появляется дилог регистрации (см. выше), в котором показывается сигнатура и требуется ввести ключ от регистратора (хэш сигнатуры). Если файл находит, то оттуда берётся хэш, и сравнивается с хэшем вычисленным на текущей сигнатуре. Если совпадают - ок, работаем, иначе - диалог регистрации.

Эта схема неустойчива к атаке дизассемблирования, т.е. если посмотреть исходники, то можно воссановить процедуру вычисления хэша, а значит можно написать генератор ключей. Я уж не говорию про возможность просто поставить переход в обход кода защиты. Поэтому в программе однозначна дожна быть защита от просмотра и модификации. Такие средства (в том числе бесплатные) в сети есть.
codemo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Setup.exe zzzzz Общие вопросы Delphi 7 31.08.2009 02:45
DOS SETUP XP JAD! Windows 1 18.07.2009 23:58