Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как спрятать бд? 
:(
    Опции темы
Teleport
Дата 24.10.2008, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 1
Всего: 6



вот написал тест для студентов. Программа берет вопросы и ответы из БД Access. Я предоставляю мою программу test.exe и файл базы baza.mdb и еще парочка dll. Так вот - как спрятать файл базы данных от шаловливых ручек?
1) можно задать пароль - но это легко ими взламывается. Есть доступные проги. И вообще не хочу этот способ.
2) можно запрятать базу данных куда-нибудь к чертовой матери в папку. Но ведь найдут же... или при переносе приложения - проблемы будут. Вобщем тоже вариант не устраивает.

Есть еще вариант - шифровать записи в БД, но желаю знать возможны ли следующие способы:

1)Может это файл базы данных можно как-нибудь так упаковать или зашифровать чтобы было бы и не ясно, что это вообще такое? Чтобы не поняли как открыть. 

2)Или есть способ вообще само приложение с dll и с базой запаковать в один файл exe - и при этом чтобы все еще и работало! Имею ввиду чтобы данные из базы можно было брать.
Какие советы будут?




--------------------
user posted image
user posted image 
PM MAIL   Вверх
vladimir74
Дата 24.10.2008, 14:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 28.11.2006

Репутация: 2
Всего: 3



проще перенести базу на сервер, тогда студентом придется взламывать его и это уже немного сложнее (хотя в природе невозможного нет)
во вторых при установке на новую систему не надо переносить базу, ну и самому удобнее. не надо со всех компов собирать ответы...
Только вот не помню позволяет ли БД Access многопользовательский режим :( (кажется что то было по жтому поводу). 
Можно конечно переименовать файл во что то с экзотическим именем и засунуть его куда нить в папку виндовса  smile и сделать инсталятор который при установке сам будет все ставить в нужные директории, но ИМХО это не есть гуд   smile 

--------------------
* В доме помешанного не говорят о миксере.* На любой Ваш вопрос у меня есть любой мой ответ.
PM MAIL   Вверх
pseud
Дата 24.10.2008, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



1) шифровать ответы (но надо базу ReadOnly сделать)
или
2) базу на учительский комп (требуется написание простенького сервера приложений)



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
MetalFan
Дата 24.10.2008, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: нет
Всего: 128



запаковать в ресурсы лежащей рядом dll... ну плюс пожать и зашифровать...


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
Teleport
Дата 24.10.2008, 15:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 1
Всего: 6



2 vladimir74 - 
Цитата
но ИМХО это не есть гуд 
 - сам также думаю...
а сервером не знаю - есть ли он там вообще smile)) но попробовать стоит...
2 pseud  - подскажи как реализовать этот простенький сервер приложений? хотя бы в теории по шагам расскажи? Ни разу не сталкивался...

все же интересует вопрос - возможно ли БД засунуть в какой-нибудь dll или  exe при том чтобы она работала нормально  smile  ? Или это глупость я сморозил? smile

Добавлено через 2 минуты и 9 секунд
2 MetalFan - кааак??  smile 
есть test.exe, baza.mdb, 1.dll, 2.dll. Dll с формами другими. Как базу запихнуть в ресурсы?



--------------------
user posted image
user posted image 
PM MAIL   Вверх
pseud
Дата 24.10.2008, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Teleport @  24.10.2008,  15:04 Найти цитируемый пост)
2 pseud  - подскажи как реализовать этот простенький сервер приложений? хотя бы в теории по шагам расскажи? Ни разу не сталкивался...


MIDAS. Пример реализации приложения для просмотра таблицы animals.dbf БД DBDEMOS

тебе, ведь, как раз только "просмотр" нужен.



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Teleport
Дата 24.10.2008, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 1
Всего: 6



2 pseud  не только просмотр...))) мне еще нужно второе приложение будет написать - там преподаватель должен будет редактировать вопросы и ответы. ))))))) спасибо за ссылку - буду осваивать...

Все же если нет сервера в этом классе? Решение:
Шифровать ответы. 
Но хотелось бы еще и саму базу как-нибудь защитить или пожать или запихнуть в ресурсы... Но как сделать?



--------------------
user posted image
user posted image 
PM MAIL   Вверх
MetalFan
Дата 24.10.2008, 16:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Аццкий Сотона
****


Профиль
Группа: Комодератор
Сообщений: 3815
Регистрация: 2.10.2006
Где: Moscow

Репутация: нет
Всего: 128



алгоритм наверное может быть примерно такой:
на время работы программы БД извлекается из ресурсов лежащей рядом библиотеки, распаковывается и расшифровывается, а затем кладется в нужное место, где с ней будет производиться работа...
соотв. при завершении приложения производим обратные действия.
По поводу работы с ресурсами см. функции BeginUpdateResource/UpdateResource/EndUpdateResource


--------------------
There are always someone smarter than you...
PM MAIL   Вверх
vladimir74
Дата 24.10.2008, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 241
Регистрация: 28.11.2006

Репутация: 2
Всего: 3



Teleport, сервером может работать и учительский компьютер. Тогда и база будет там находиться. Главное чтоб в классе была сеть...

Добавлено через 3 минуты и 58 секунд
Цитата(MetalFan @  24.10.2008,  14:07 Найти цитируемый пост)
алгоритм наверное может быть примерно такой:

алгоритм старый smile проблема только в том, что ученички про это уже от свои родителей знают smile и отлично могут поискать базу предварительно запустив программу :( . Ну разве что пересадить всех под дос  smile  smile

Добавлено через 5 минут и 41 секунду
сервер ИМХО лучший выход (даже если придется сначала помучаться). Все остальное  - это временные решения и то что дал я с изменением названия, и твое :(
--------------------
* В доме помешанного не говорят о миксере.* На любой Ваш вопрос у меня есть любой мой ответ.
PM MAIL   Вверх
Teleport
Дата 24.10.2008, 16:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 1
Всего: 6



нет там сети, узнал я. ))))))))))нужно на каждый комп.. вот так)))))))))
по поводу работы с ресурсами нашел вот что - http://delphi.my1.ru/publ/9-1-0-107
если есть еще материалы интересные по работе с ресурсами - прошу выложить. smile))
Спасибо за ответы.  Что я понял из них:

Решений 2:
1) при наличии сети - базу на сервер + шифровать ответы
2) без сети - базу в ресурсы + шифровать ответы.





--------------------
user posted image
user posted image 
PM MAIL   Вверх
pseud
Дата 24.10.2008, 16:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(Teleport @  24.10.2008,  16:29 Найти цитируемый пост)

Решений 2:
1) при наличии сети - базу на сервер + шифровать ответы
2) без сети - базу в ресурсы + шифровать ответы.


1) - можно и не шифровать
2) - как вариант можно написать "несворачиваемое/всегда_сверху_лежащее" приложение
тогда можно и без ресурсов и без шифровки

- еще вариант - запускать винду в режиме очень и очень обрубленных прав, т.е.

пуск + наша_прога и больше ничего на рабочем столе нет.

хотя, ресурсы + шифровать ответы, все-таки, профессиональнее, но дольше

Добавлено через 5 минут и 23 секунды
при импорте из ресурсов можно сохранять в глубоко закопанную папку с рандомайзенным именем, имя файла базы (если Access не против) также рандомайзенное давать.

тогда "умельцы" не смогут найти одинаковые файлы на разных компах для сравнения и идентификации их как файлы базы.

Добавлено через 10 минут и 17 секунд
еще алгоритм:
1. достали базу из ресурса
2. сохранили в виртуальные таблицы 
3. удалили темповую базу
4. работаем с виртуальными таблицами

 да, сложно и медленно. но надежно


--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
Akella
Дата 24.10.2008, 22:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Можно средствами винды.
1. Делаем базу невидимой, или папку с базой.
2. Все работают с правами простых пользователей.
3. средствами политик запрещаем всякие менюшечки, которые управляют папками, можно, например, спрятать меню Сервис из Проводника ну и т.д.
PM MAIL   Вверх
Teleport
Дата 26.10.2008, 13:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 5.7.2008
Где: Прибалтика

Репутация: 1
Всего: 6



итак, сети нету в классе учебном. Будет  не скоро... Так что я решил шифровать ответы и запихать бд в файл ресурсов. 
Вот теперь вопрос - как запихать эту бд в ресурсы?
Шаг первый, насколько я понял - создание файла myres.rc и потом его компиляция в myres.res? Правильно говорю?
Если так, то как будет выглядить этот  myres.rc?  smile 


--------------------
user posted image
user posted image 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0540 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.