Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Сравнение СУБД Новый топик    Ответить
 Локальная БД. Защита  [new]
Neogenn
Member

Откуда:
Сообщений: 13
Здравствуйте, третий день не могу найти ответ на свой вопрос.
Собственно необходимо срочно написать программку на C# с ЛОКАЛЬНОЙ базой данных. Не могу найти НИ ОДНОЙ подходящей.

Суть:
2 таблички, отношения многие ко многим. Необходимо усложнить вскрывшему сопоставление строк

Главные требования:
- База данных НЕ должна легко вскрываться сторонней прогой (типа IbExpert)
- Обязан работать запрос вида "select .. . ... .... .... ... LEFT JOIN... .... where ... .... LIKE '%..%' " (соответственно шифрование ДО вноса в БД и запутывание ключей - отпадает)


Желательно:
- Простота установки у клиента (Службы стартовать каждому в лом)
- Наличие ХП
11 мар 12, 09:53    [12223776]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67393
Блог
Neogenn
База данных НЕ должна легко вскрываться сторонней прогой (типа IbExpert)

Надо рассказать авторам, что они сделали крутой хакерский инструмент.

Neogenn
Не могу найти НИ ОДНОЙ подходящей.

Не удивительно. Поскольку Ваше требование означает в точности следующее: нужна СУБД которая нахрен никому не нужна.
11 мар 12, 10:22    [12223889]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Neogenn
Member

Откуда:
Сообщений: 13
softwarer, то есть, по вашему, если БД локальная, то защита от тупого копирования файла, вскрытия и сопоставления данных по айдишникам не нужна вовсе и бессмысленна? Или я написал чтото противоречащее? Можно подвинуться.

В идеале - БД должна работать только с моей прогой, обеспечивающей поиск и выборку. Кажется, наиболее подходящее решение - sqlcipher, но 150$ выделять никто на это не будет. А бесплатных аналогов я не нашел (прога на C#)
11 мар 12, 10:38    [12223962]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67393
Блог
Neogenn, никто не будет писать базу "к которой сложно подконнектиться". Напротив, все стараются сделать это лёгким и с использованием стандартных механизмов, поэтому требование "невскрываемости ибэкспертом" в точности означает "база никому не нужна".

Чтобы защититься от несанкционированного доступа к файлу, нужна поддержка шифрования на уровне базы. Но во-первых, и тут невскрываемость не абсолютная (поскольку есть доступ к программе с зашитым в неё ключом), а во-вторых, поддержка шифрования на уровне базы - сложна и трудоёмка, в бесплатном продукте её вряд ли кто-то будет делать.

Если ваше начальство считает, что эти данные стоят дешевле $150 - совершенно не вижу смысла дёргаться.
11 мар 12, 10:57    [12224083]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Neogenn
Member

Откуда:
Сообщений: 13
softwarer, Собственно к такому выводу я и пришел.
Думаю теперь есть ли смысл перекидыватся с SQLite на firebird изза логина/пароля на вход...

Еще вариант - Может кто подскажет какие-нибудь алгоритмы шифрования текста (Чуть сильнее Цезаря =D), с которым можно будеть выбирать через "Like %...%" Собственно усложнить то нужно прочтение текстовых полей (НО именно по ним будет идти поиск)
11 мар 12, 11:10    [12224156]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67393
Блог
Neogenn
Думаю теперь есть ли смысл перекидыватся с SQLite на firebird изза логина/пароля на вход...

Сомневаюсь, что логин/пароль на вход как-то защищают от вскрытия на уровне файла. Можно погуглить, но почти уверен в ответе.

P.S. Я единственный раз в жизни занимался вскрытием базы, защищённой наподобие упомянутого cipher-а. Справился минут за сорок. С тех пор, надеюсь, стало посложнее, но...
11 мар 12, 12:04    [12224502]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Vladimir Baskakov
Member

Откуда:
Сообщений: 2006
если таблички всего 2, и хочется их прямо вообще совсем защитить - может быть сделать свой движок на файликах? или как-то впихнуть все в кей-вэлью хранилище, с которым "хакерам" будет лень возиться? Данных то много ли?
11 мар 12, 12:33    [12224702]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Ggg_old
Member

Откуда: Одесса
Сообщений: 1342
Вы не описали с какого рода угрозами вщлома/взломщика вы боретесь.
Если ваша прога сетевая и вы боретесь против удаленного доступа к данным, но при этом вам надо, что-бы в базе что-о искалось, то вы просто закрываете доступ пользователя к оригинальным таблицам с данными, а ф-ии поиска зашиваете хранимую процедуру.
Если же у вас взломщик - администратор, который имеет полные привелегии на базу данных, то тут вас ждет облом. Надо будет выбирать либо шифрация (и надо думаьб где при этом еще хранить лючи для расшифровки) и ф-ии поиска придйется делать на клиенте, либо удобство поиска.
11 мар 12, 14:56    [12225704]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Ggg_old
Member

Откуда: Одесса
Сообщений: 1342
и да, поиск по конестуркции LIKE '%..%' не будет использовать индекс, т.е. вы попадаете на сканирование таблицы. В этом случае можно и на клиенте се делать, если можете обесепчить надежное хранение ключа (в чем я сомневаюсь)
11 мар 12, 14:59    [12225729]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Ggg_old
Member

Откуда: Одесса
Сообщений: 1342
а лучше сделать гибрид. Где важная текстовая информация хранится в зашифрованном виде, а вся информация для соединений берется из цифрового открытого ID. Итоговоая выборка передается на клиенте, где зашифрованные поля расшифровываются для отображения локальным ключем. Ключ засунуть в аппаратный токен.
11 мар 12, 15:02    [12225756]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
А зачем это?
По-хорошему, я бы за такое руки бы отрывал нафиг.
11 мар 12, 20:25    [12227924]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Росгоснанораспилтрест
Member [заблокирован]

Откуда: Главпилорама
Сообщений: 2421
Или возьми FVMas: "если я не буду летать - то НИКТО НЕ БУДЕТ".
11 мар 12, 20:29    [12227935]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54761

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

А как же Oracle Vault?..

Posted via ActualForum NNTP Server 1.5

11 мар 12, 20:30    [12227940]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Neogenn
Member

Откуда:
Сообщений: 13
Ggg_old, Будет небольшая програмка, обеспечивающая поиск и выборку.
Необходимо чтобы пользователи данной программы не могли меняться своими файлами БД. т.е. если я дам свой файлик другому юзверю - программа на том компе его не съест....
"Защиту" (обратите внимание на кавычки) БД - достаточно будет обеспечить цезарем и путанием ключей (т.е. для выборки), либо вытаскиванием таблицы связей в отдельный файл... В общем, сейчас буду думать.
Информация в строках не несет никакой секретности. Хочется скрыть именно связи.

Ну а насчет перепрыгивания на FireBird только изза наличия ХП - я еще подумаю...
12 мар 12, 07:21    [12229136]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Ggg_old
Member

Откуда: Одесса
Сообщений: 1342
если объем таблицы связей небольшой, то ее можно хранить зашифрованной каким-то простым алгоритмом, но индивидуальным для каждого пользователя ключем. Для поиска клиент вызывает хранимку и передает ей в том числе свой шифровальный ключ. В хранимке этим ключем таблица связей расшифровывается в сессионную временную таблицу, по ней осуществляется поиск, результат отдается обратно, а таблица грохается. Функции расшифровки можно реализовать в виде расширенной хранимки (DLL), что-бы никто не ковырялся в ее кишках.
12 мар 12, 11:32    [12230132]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
softwarer
Member

Откуда: 127.0.0.1
Сообщений: 67393
Блог
Dimitry Sibiryakov
А как же Oracle Vault?..

А что в нём кардинально усложняет работу с БД? Входящее в него шифрование базы - как раз иллюстрация к "сложно, дорого, в бесплатном решении вряд ли будет".
13 мар 12, 10:43    [12236802]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Andrey Sribnyak
Member

Откуда: Киев
Сообщений: 600
Neogenn,

Как вариант:SQL Server Express LocalDB

автор
SQL Server Express LocalDB is a new lightweight edition of Express that has all its programmability features, yet runs in user mode and has a fast, zero-configuration installation and short list of pre-requisites. The LocalDB edition of SQL Server is targeted to program developers. LocalDB installation copies a minimal set of files necessary to start the SQL Server Database Engine. Once LocalDB is installed, developers initiate a connection by using a special connection string. When connecting, the necessary infrastructure is automatically created and started, enabling the application to use the database without complex or time consuming configuration tasks. Developer Tools can provide developers with a SQL Server Database Engine that lets them write and test Transact-SQL code without having to manage a full server instance of SQL Server. An instance of SQL Server Express LocalDB can be managed by using the SqlLocalDB.exe utility. SQL Server Express LocalDB should be used in place of the SQL Server Express user instance feature which is deprecated


http://msdn.microsoft.com/en-us/library/hh510202(v=sql.110).aspx
13 мар 12, 13:04    [12238201]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54761

Andrey Sribnyak
Как вариант:SQL Server Express LocalDB

Ну, какой же это вариант, когда "Developer Tools can provide developers with a SQL Server
Database Engine that lets them write and test Transact-SQL code". Аффтар хочет как раз,
чтобы люди с Developer Tools жестоко обламывались.

Posted via ActualForum NNTP Server 1.5

13 мар 12, 14:02    [12238874]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Andrey Sribnyak
Member

Откуда: Киев
Сообщений: 600
Dimitry Sibiryakov
Аффтар хочет как раз,
чтобы люди с Developer Tools жестоко обламывались.



Кто ему мешает хранить зашифрованные данные? При физическом доступе только самописный вариант
13 мар 12, 14:28    [12239193]     Ответить | Цитировать Сообщить модератору
 Re: Локальная БД. Защита  [new]
Dimitry Sibiryakov
Member

Откуда:
Сообщений: 54761

Andrey Sribnyak
Кто ему мешает хранить зашифрованные данные?

Ты вообще топик-то читал? Он хочет по ним LIKE '%...%' делать.

Posted via ActualForum NNTP Server 1.5

13 мар 12, 14:42    [12239381]     Ответить | Цитировать Сообщить модератору
Все форумы / Сравнение СУБД Ответить