(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Шифрование базы данных SQLite с помощью SQLCipher. Программирование / Delphi.

Источник: rgblog
Руслан Гайсин

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

Цель: Собрать из исходников SQLCipher библиотеку SQLite с AES-256 шифрованием под Windows.

1) Во первых нам понадобится кросс-компилятор на основе - MinGW + MSYS.

Скачать можно с официального сайта www.mingw.org, на момент написания статьи была доступна версия от 2 августа 2011. Дистрибутив под названием mingw-get-inst-20110802.exe.

Скачиваем и устанавливаем в папку D:\MinGW\ . При установке необходимо установить галочку на пункте "MiniGW Developer Toolkit".

2) Библиотека шифрования из OpenSSL. Через поиск гугл, сразу нашел установщик под название Win32OpenSSL-0_9_8m.exe. При установке указываем, что хотим установить библиотеки в туже папку, в подпапку /bin . Устанавливаем в папку D:\OpenSSL\.

3) Скачиваем библиотеку инструментов Tcl/Tk. Я нашел версию 8.4.1-1 (сборка для MinGW). Файл называется tcltk-8.4.1-1.exe. При установке указываем путь к MiniGW, в нашем случае D:\MinGW\.

4) Находим файл D:\MinGW\bin\tclsh84.exe и переименовываем в tclsh.exe.

5) Скачиваем SQLCipher с официального сайта sqlcipher.net. Нашел у них последнюю бета-версию 1.1.8-19. После скачивания архива, разархивируем его в папку D:\SqlCipher\.

6) Запускаем MSYS, он находится по адресу D:\MinGW\msys\1.0\msys.bat.

7) Выполняем следующие команды в MSYS:

а) переход в папку SqlCipher

cd /d/SqlCipher/

б) настраиваем библиотеку

./configure --disable-tcl --disable-amalgamation CFLAGS="-DSQLITE_HAS_CODEC -I/d/OpenSSL/include /d/OpenSSL/libeay32.dll -L/d/OpenSSL/lib/MinGW" LDFLAGS="-leay32"

в) компилируем

make

г) создаем нашу dll

make dll

Теперь при создании проекта, нам понадобятся две библиотеки dll.

sqlite3.dll - находится в папке D:\SqlCipher\sqlite3.dll

libeay32.dll - находится в папке D:\OpenSSL\libeay32.dll

Теперь при создании проекта, например в Delphi, эти два файла нужно будет скопировать в папку с проектом. Как эти библиотеки использовать мы рассмотрим в следующей статье.

Скачать полученную библиотеку можно по ссылке ниже.

Ссылки по теме


 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Embarcadero »
Написать редактору 
 Рекомендовать » Дата публикации: 22.07.2013 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Nero Platinum 2018 VL 5 - 9 License corporate
Allround Automation PL/SQL Developer - 5 user license
Quest Software. Toad for Oracle Development Suite
IBM Domino Utility Server Processor Value Unit (PVU) License + SW Subscription & Support 12 Months
Oracle Database Personal Edition Named User Plus Software Update License & Support
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Реестр Windows. Секреты работы на компьютере
СУБД Oracle "с нуля"
Компьютерные книги. Рецензии и отзывы
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Excell не печатает :-( (2)
Почему то Excell не печатает страницы в альбомной ориентаций, то есть страница в аольбомной...
 
ODBC: dBase CREATE TABLE... (9)
Есть проблема Из программы на CTD 2.0 PTF3 подключаемся к DBF-файлам Set SqlDatabase='Файлы...
 
Как сменить пароль для схемы SYSTEM? (6)
Как сменить пароль по умолчанию для схемы SYSTEM c 'manager' на свой? То же и для SYS
 
Помощь студентам по программированию (2)
https://xn-d1aqfdigh.xn-p1ai/ Помощь студентам по программированию на языках высокого уровня.
 
Надстройка "Поиск решения" MS Excel (6)
Помогите решить задачу с помощью " поиск решения" мука яйца ...
 
 
 



    
rambler's top100 Rambler's Top100