Шифроване на SQLite база данни с SQLCipher

шифроване

SQLite е лека, вградена релационна база данни. SQLite по подразбиране съхранява данни във файл в некриптирана форма и днес ще поправим тази ситуация. Разширението SQLite, наречено SQLCipher, ще ни помогне с това.SQLCipher е междуплатформено SQLite разширение. Тойшифрова страниците на нашатабаза данни преди да ги напише, и ги дешифрира при четене.

Цел: Изградете SQLite библиотека с AES-256 криптиране от източници на SQLCipher под Windows.

1)Първо, имаме нужда от крос компилатор, базиран на -MinGW + MSYS.

Изтеглете и инсталирайте в папката D:\MinGW\. Когато инсталирате, трябва да поставите отметка в квадратчето „MiniGW Developer Toolkit“.

2)Библиотека за шифроване отOpenSSL. Чрез търсене в Google веднага намерих инсталатор, наречен 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\ .

7)Изпълнете следните команди в MSYS:

а)отидете в папката SqlCipher

b)настройте библиотеката

d)създайте нашия dll

Сега, когато създаваме проект, имаме нужда от две dll библиотеки.

sqlite3.dll- намира се в папкатаD:\SqlCipher\sqlite3.dll

libeay32.dll- намира се в D:\OpenSSL\libeay32.dll

Сега, когато създавате проект, например в Delphi, тези два файла ще трябва да бъдат копирани в папката на проекта. Ще разгледаме как да използвате тези библиотеки в следващата статия.

Можете да изтеглите получената библиотека от връзката по-долу.