Форум » Clipper » Как сделать чтоб базы не читались одинаковыми программами » Ответить

Как сделать чтоб базы не читались одинаковыми программами

Andrey: Доброго времени суток всем. Исходные данные: Есть однотипная задача на несколько фирм. Соответственно у всех структура dbf одинакова. Вопрос: Как сделать чтоб базы одной программы при переносе в другую фирму не читались ? А то можно скопировать базы в одной конторе приносишь в другую, а там какой-нибудь программер просто скопирует в подобную и вот весь приход-расход чужой фирмы видит. Интересно а как в БЭСТе и у 1С предусматривается такая защита ?

Ответов - 25, стр: 1 2 All

Soflog86: По поводу УНИКАЛЬНОГО КЛЮЧА для КАЖДОЙ РАБОЧЕЙ ГРУППЫ (тоесть доступ к ОДНОЙ БАЗЕ ДАННЫХ - т-е. группе файлов ) . Мой собственный подход - то как я сейчас защитил свой продукт ...) 1 . Нужно иметь ПРИВЯЗКУ EXE к компьютеру (либо где то хранить файл привязки НЕСКОЛЬКИХ КОМПОВ к EXE . Для этого нужно написать программу сбора данных о компьютерах , имеющих доступ к нашей БАЗЕ . Можно привязать к ОБЬЕМУ диска "С" либо к данным БИОСА - в общем уникальность компа можно вычислить любым способом - это мелочи ... 2 Полученные данные (с нескольких компов ) нужно записать в какое-то хранилище - но в таком виде чтоб эти данные можно было считать только нашей программой . Я использую простий - но достаточно эффективный на мой взгляд способ . Формирую HEAP-файл-("куча") - это просто ДАМП памяти - либо сгенерированный ХАОТИЧНО набор символов - для усложнения - где-нибудь 30КБ - в него будем записывать в ОПРЕДЕЛЕННЫЕ БАЙТЫ - значения ключей - тоесть можно по какому-то алгоритму . Желательно не подряд а например через байт через 50 байт - новый код и т д . Посимвольное сравнение HEAP-файла ничего ХАКЕРУ не даст - очень много будет расхождений- поэтому сказать где уникальные данные будет НЕВОЗМОЖНО - из 30КВ - 20КВ кардинально отличаются . Логика такова - при загрузке -EXE-шник dsxbckztn КОД_КОМПЬЮТЕРА , на котором запущен - данное значение ищем НА СЕВЕРЕ в HEAP-ФАЙЛЕ . используя алгоритм "выдёргивания по байтно, если нашли такой идентификатор - значит КОМПЬЮТЕР ПРАВИЛЬНЫЙ и РАЗРЕШЕН ДОСТУП . соответственно можно в HEAP-файл записать КОД для криптования БД - он тоже уникальный для КАЖДОГО ВАРИАНТА Б/Д. Какие плюсы ? 1 НЕТ СМЫСЛА КОПИРОВАТЬ EXE (они все-равно у всех одинаковы) 2 НЕТ СМЫСЛА КОПИРОВАТЬ HEAP-файл НЕ ЗНАЯ АЛГОРИТМА ЗАПИСИ И ЧТЕНИЯ КОДОВ . Подбор и сравнение содержимого 100% не даст информации о том ЧТО и ГДЕ записано Минусы : 1 При смене (добавлении компьютеров ) в сеть нужно будет ПРАВИТЬ (добавлять) данные в HEAP-файл 2 Нужна будет специальная программа (писть ручками) .... для ДОБЫЧИ ID-КОПЬЮТЕРА , ГЕНЕРАЦИИ HEAP-файла и записи в него ДАННЫХ . Ну и хранить её нужно будет как ЗЕНИЦУ-ОКО ! Ну ---кто - понял - молодец !

Andrey: Классно !!! А если у тебя задачи в других городах России и Зарубежья ? Как будешь выкручиваться ? А еще связь плохая и нет интернета ?

Soflog86: Нет ИНТЕРНЕТА ???? Ну извините - быстренько в Интернет-кафе . Да очень просто ! Клиенту я высылаю один EXEшник .... Его нужно запускать на КАЖДОМ компе, который предназначен для работы в сети . Он генерирует ID компа и шифрует в файл-пустышку .... Эти готовые файлы я получаю и выделяю из них ID . Затем генерирую им HEAP-файл (или изменяю данные на уже существующем) и отылаю назад .... Скажут - геморно - типа нужно каждого клиента так проработать .... ну ... дай Бог чтоб ОНИ БЫЛИ ПАЧКАМИ ... тогда уж напишу автоматизированную систему генерации и отсылки ....


Andrey: Проще ключ поставить, 470 рублей штука и не париться .....

Soflog86: Andrey - а можно для "не продвинутых" - пояснить с HASP ? Где что и как из Клиппера туда добраться



полная версия страницы