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) Link
Вот появилось еще одно руководство по сборке SQLCipher нагло у нас скомуниздинное
Link

Ну оно не нагло скомунизденное, а дополненное, потому как в данном руководстве некоторые пункты были пропущены и неопытный человек, который 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) Link
Ну оно не нагло скомунизденное, а дополненное, потому как в данном руководстве некоторые пункты были пропущены и неопытный человек, который MinGW не знает не смог собрать бы.
Пусть так. Я на самом деле не против, да и ссылку на нас они приложили. Это просто первая реакция такая была :) Хотя о каких дополнениях вы говорите так и не понял. :unknown:

Цитата(Гость_AlekseyK_* @ 9.11.2010, 13:36) Link
Собрал примерчик 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) Link
Просто так оно шифровать и не будет. 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) Link
Лучше всего проверить работоспособность при помощи sqlbrowser из демонстрационных примеров Qt

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

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

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

Цитата(igor_bogomolov @ 9.11.2010, 13:27) Link
Вы саму сборку 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) Link
Как её проверить?
Ну как это как? Создать БД и посмотреть файл базы данных в любом текстовом редакторе. Там сразу видно, шифрованная она или нет. Главное про прагму не забудьте.
А нужно это, для того что бы убедиться что с сама sqlcipher собрана и работает так как ожидается. Потом уже двигаться дальше и смотреть что не так с плагином для Qt или приложением

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


Студент
*

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

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




Репутация:   0  


Я понял, проверил - не шифрует. ПО моему у Вас в руководстве кое что пропущено:
Link
Цитата
# 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) Link
Я понял, проверил - не шифрует.
Ну вот, значит проблема в самом sqlcipher. Она достаточно активно развивается. Возможно что то поломали в новой версии, я не в курсе.
Попробуйте связаться с разработчиками Link


ОФФ:


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


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

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


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




RSS Текстовая версия Сейчас: 27.12.2025, 12:31