crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

8 страниц V  « < 2 3 4 5 6 > »   
Ответить в данную темуНачать новую тему
> SQLite и криптография, например SQLCipher
512es
  опции профиля:
сообщение 17.9.2010, 15:10
Сообщение #31


Участник
**

Группа: Участник
Сообщений: 135
Регистрация: 31.10.2008
Пользователь №: 407

Спасибо сказали: 5 раз(а)




Репутация:   0  


хмм.. а можно как то сделать патч SQLCipher'а, который накладывается на обычные сорцы склайта?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_AlekseyK_*
сообщение 9.11.2010, 13:31
Сообщение #32





Гости








    


Цитата(igor_bogomolov @ 14.9.2010, 7:33) *
Вот появилось еще одно руководство по сборке SQLCipher нагло у нас скомуниздинное
http://www.qtcentre.org/wiki/index.php?tit...ryption_support

Ну оно не нагло скомунизденное, а дополненное, потому как в данном руководстве некоторые пункты были пропущены и неопытный человек, который MinGW не знает не смог собрать бы.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_AlekseyK_*
сообщение 9.11.2010, 13:36
Сообщение #33





Гости








    


Собрал примерчик SQL Widget Mapper, всё работает, но... не шифрует ничего: файлы (с шифрацией - QSQLCIPHER и без - QSQLITE) на вид совершенно одинаковы и SQLite Expert свободно "шифрованный" файл открывает. Что я мог сделать не так?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 9.11.2010, 14:02
Сообщение #34


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(Гость_AlekseyK_* @ 9.11.2010, 13:31) *
Ну оно не нагло скомунизденное, а дополненное, потому как в данном руководстве некоторые пункты были пропущены и неопытный человек, который MinGW не знает не смог собрать бы.
Пусть так. Я на самом деле не против, да и ссылку на нас они приложили. Это просто первая реакция такая была :) Хотя о каких дополнениях вы говорите так и не понял. :unknown:

Цитата(Гость_AlekseyK_* @ 9.11.2010, 13:36) *
Собрал примерчик SQL Widget Mapper, всё работает, но... не шифрует ничего
Просто так оно шифровать и не будет. query.exec("pragma key = 'password';"); сделали?

Лучше всего проверить работоспособность при помощи sqlbrowser из демонстрационных примеров Qt
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AlekseyK
  опции профиля:
сообщение 9.11.2010, 14:25
Сообщение #35


Студент
*

Группа: Участник
Сообщений: 22
Регистрация: 9.11.2010
Пользователь №: 2176

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(igor_bogomolov @ 9.11.2010, 13:02) *
Просто так оно шифровать и не будет. query.exec("pragma key = 'password';"); сделали?

Конечно, я в Вашем примере принципиального ничего не менял (его пока тестирую):
query.exec("pragma key = '12345';");

Только попробовал 2 варианта:
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLCIPHER");
    //QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE");

    QString tableName = "test_crypted.db";
    //QString tableName = "test_plain.db";

    if (!QFile::exists(tableName)) {
....

Результат одинаков и SQLite свободно оба варианта читает.

Цитата(igor_bogomolov @ 9.11.2010, 13:02) *
Лучше всего проверить работоспособность при помощи sqlbrowser из демонстрационных примеров Qt

Что-то я такого не нашёл? И потом как он мне может помочь здесь? Шифрования нет.

P.S. Прошу прощения, sqlbrowser я нашёл.

P.P.S. SqlBrowser свободно читает "зашифрованный" файл.

Цитата(igor_bogomolov @ 9.11.2010, 13:27) *
Вы саму сборку sqlcipher проверяли. Если из командной строки (имею в виду консоль шифрованой sqlite) БД создать, она шифруется?

Как её проверить? Драйвер собрался, виден? По какой причине она может не шифровать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 9.11.2010, 14:27
Сообщение #36


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата
И потом как он мне может помочь здесь?

Что бы удобнее было тестироваться. Просто с sqlbrowser ничего компилировать не надо. Только сам plagin sqlchipher. Запросы вводятся в поле ввода. Находится он в %QTDIR%/demos/sqlbrowser

Вы саму сборку sqlcipher проверяли. Если из командной строки (имею в виду консоль шифрованой sqlite) БД создать, она шифруется?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AlekseyK
  опции профиля:
сообщение 9.11.2010, 14:32
Сообщение #37


Студент
*

Группа: Участник
Сообщений: 22
Регистрация: 9.11.2010
Пользователь №: 2176

Спасибо сказали: 0 раз(а)




Репутация:   0  


Драйвер собрался, виден!

Как её проверить? Драйвер собрался, виден. По какой причине она может не шифровать?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 9.11.2010, 14:36
Сообщение #38


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(AlekseyK @ 9.11.2010, 14:25) *
Как её проверить?
Ну как это как? Создать БД и посмотреть файл базы данных в любом текстовом редакторе. Там сразу видно, шифрованная она или нет. Главное про прагму не забудьте.
А нужно это, для того что бы убедиться что с сама sqlcipher собрана и работает так как ожидается. Потом уже двигаться дальше и смотреть что не так с плагином для Qt или приложением

Цитата(AlekseyK @ 9.11.2010, 14:32) *
Драйвер собрался, виден!
Я говорю не про драйвер для Qt. А про сам sqlcipher
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AlekseyK
  опции профиля:
сообщение 9.11.2010, 15:05
Сообщение #39


Студент
*

Группа: Участник
Сообщений: 22
Регистрация: 9.11.2010
Пользователь №: 2176

Спасибо сказали: 0 раз(а)




Репутация:   0  


Я понял, проверил - не шифрует. ПО моему у Вас в руководстве кое что пропущено:
http://sqlcipher.net/documentation
Цитата
# You must define SQLITE_HAS_CODEC and SQLITE_TEMP_STORE=2 in your application when including SQLCipher


Цитата
./configure --enable-tempstore=yes CFLAGS="-DSQLITE_HAS_CODEC" LDFLAGS="/path/to/libcrypto.a"
make


P.S. А нет, не пропущено, опять прощу прощения.

Похоже, что путь к заголовкам OpenSSL у меня был неверно указан, версия OpenSSL поменялась, теперь нужно так:
Цитата
./configure --prefix=/qt/src/plugins/sqldrivers/sqlcipher --disable-tcl --disable-amalgamation
CFLAGS="-DSQLITE_HAS_CODEC -I/c/OpenSSL-Win32/include /c/Windows/System32/libeay32.dll"

Пересобрал, но всё равно не шифрует. Есть идеи?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
igor_bogomolov
  опции профиля:
сообщение 9.11.2010, 15:19
Сообщение #40


Профессионал
*****

Группа: Сомодератор
Сообщений: 1215
Регистрация: 22.3.2009
Из: Саратов
Пользователь №: 630

Спасибо сказали: 235 раз(а)




Репутация:   29  


Цитата(AlekseyK @ 9.11.2010, 14:52) *
Я понял, проверил - не шифрует.
Ну вот, значит проблема в самом sqlcipher. Она достаточно активно развивается. Возможно что то поломали в новой версии, я не в курсе.
Попробуйте связаться с разработчиками http://groups.google.com/group/sqlcipher


ОФФ:


Ого. Почитал сейчас в google группе и сходил по ссылке (тык). В общем из-за того что народ мучается и не умеет собирать это дело под windows они начали продавать уже скомпилированную версию за 100 баксов. Фигасе


Цитата
Пересобрал, но всё равно не шифрует. Есть идеи?
Больше нет. Либо что то изменилось с последнего момента как я её собирал, либо вы где то ещё ошиблись при сборке. Проверить сейчас возможности нет, нет винды на работе
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

8 страниц V  « < 2 3 4 5 6 > » 
Быстрый ответОтветить в данную темуНачать новую тему
Теги


7 чел. читают эту тему (гостей: 7, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 27.11.2024, 3:04