Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Шифрование таблиц базы данных, pзапретить доступ к данным 
:(
    Опции темы
former
Дата 3.3.2006, 19:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Тема такая: Есть база данных из нескольких таблиц (Paradox) с графическими и текстовыми полями. Как обеспечить шифрование и дешифрование даных (включая графику .jpeg) всей таблицы при закрытии и открытии таблицы из своей программы и обеспечить защиту от просмотра и извлечения данных из других приложений?



--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Softaz
Дата 4.3.2006, 10:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


wasm
**


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

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



При простейшем шифровании, когда каждая буква А, скажем заменяется на Z, можно .
А в программе, если пользователь ввел слово AAAAAA, то при ображении к базе использовать слово ZZZZZZ.


--------------------
Разочарованный в .NET
PM MAIL WWW   Вверх
former
Дата 4.3.2006, 17:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Как зашифровать текст язнаю. То как ты пояснил - это слишком просто. Есть более продвинутые алгоритмы.
Добавлено @ 17:36
А вот как шифровать через поток при работе с базой и графику и текст? Вот в чём вопрос.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Albinos_x
Дата 4.3.2006, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



в Paradox есть стандартные среддства по шифрованию, по рс4


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
former
Дата 4.3.2006, 18:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



А как ими пользоваться?


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Albinos_x
Дата 5.3.2006, 05:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



Код

Session.AddPassword('123456789123');



--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
former
Дата 5.3.2006, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Но это получается пароль на базу, а его можно взломать. Есть три универсальных пароля.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Albinos_x
Дата 5.3.2006, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



Цитата(former @ 5.3.2006, 15:48 Найти цитируемый пост)
Но это получается пароль на базу, а его можно взломать

взломать можно любой пароль, вопрос только, сколько это займёт времени... в этом случае будет зависеть от длины пароля и от того как ты его храниш и получаешь... если ты напишешь как я выше написал, то он будет открыто храниться в ехе-нике и его можно будет достать даже обычным блокнотом, точно также если ты дейтсвуешь через константу. Чтоб уйти от этого недостатка его лучше генерировать во время выполнения программы и желательно, чтобы периодически он менялся, тогда взломать будет трудней. Сам же применяемый алгорим шифрования наиболее эффективен при длине пароля 6-8 символов...


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
former
Дата 6.3.2006, 23:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Я имею виду, что если просматривать таблицу с таким паролем через Corel Paradox, то этими тремя паролями можно открыть таблицу.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Albinos_x
Дата 7.3.2006, 00:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



на счёт Corel Paradox не знаю, т.к. не работал с этой программкой, а вот DataBase Desktop зная пароль можно...


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
former
Дата 7.3.2006, 17:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Создай таблицу, запароль её и попробуй один из следующих кодов: jIGGAe, nx66ppx, cupcdvum. Почёму я и предлагаю шифровать и дешифровать записи во время работы программы через поток. Только не знаю как работать с потоками.


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
Albinos_x
Дата 7.3.2006, 18:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

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



Цитата(former @ 7.3.2006, 17:57 Найти цитируемый пост)
Создай таблицу, запароль её и попробуй один из следующих кодов: jIGGAe, nx66ppx, cupcdvum.

а слона то я и не заметил smile ...


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
AlexSuv
Дата 7.3.2006, 22:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Возьми какой-нибудть компонент для работы с базами парадокса с открытым кодом, найди функцию, которая
читает/пишет данные из/в таблиц и в этом месте вставить функцию шифрации/дешифрации, можно также сжимать
данные, используя библиотеку ZStream например.

Насчет криптования очень неплохая библиотека dccrypt http://www.cityinthesky.co.uk, сможешь криптовать
хоть с использванием закрытого ключа.

Еще в принципе, как вариант, если защита сильныя не нужна можно перед работой расшифровывать файл, а после
закрытия зашифрововать, ну это так защитка от новичков, а если хочешь серьезную - работай с исходниками компонентов
достуба к БД, хотя это тоже так пыль в глаза пустить, если надо взломают.

Это сообщение отредактировал(а) AlexSuv - 7.3.2006, 22:23
PM MAIL   Вверх
former
Дата 8.3.2006, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


MEMS Expert
***


Профиль
Группа: Завсегдатай
Сообщений: 1166
Регистрация: 1.3.2006
Где: Россия

Репутация: 7
Всего: 17



Для этой цели не нужно искать другие компоненты. Хватит родных. Можно использовать сабытие BeforeAction компонента DBNavigator, отлавливая нажатие кнопок. А вот как в этом случае работаль сo Steam-ом (как например при сохранении jpeg в Paradox). А что это за библиотека ZStream и как ей пользоваться?


--------------------
Достаточно снизить уровень мышления, чтобы иные почувствовали почву под ногами.
PM MAIL   Вверх
AlexSuv
Дата 8.3.2006, 13:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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




Пользваться ZStreamom очень просто:
Код

Var
     src,dst : TMemoryStream;
Begin
  src := TMemoryStream.Create;
   TBlobField('UnCompressedText').SaveToStream(src);
     src.Position := 0;
     dst := TMemoryStream.Create;
      GZipStream(src, dst, 6);//Все  dst содержит сжатый src  поток 6 - стпень сжатия
     {На этом месте может также стоять функция криптования из вышеприведенной мной библиотеки}
   TBlobField('CompressedText').LoadFromStream(src);
  src.Free;
  dst.free;
End;

Вот и все просто, правда?

А при чем тут DBNavigator? К сжатию базы понять не могу.
И что ты там собрался вешать на BeforeAction ? ИМХО ты что-то не то говоришь former.

Если в каких-то нестандартных компнентах будет событие например OnBeforeRawWriteToDatabase, тогда это возможно.
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.0544 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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