使用SQLCipher加密或解密已存在的数据库
1.cd到在安装好sqlcipher文件位置处,使用命令:sqlcipher/Users/leihao/Documents/iPhoneAoi/iPhoneAoiServer/Resource/Data/pl.db//打开待加密数据库。5. 搜索全局搜索 encrypted.db文件 即是已加密文件。解除使用SQLCipher加密的数据库密码。4..exit退出。
·
SQLCipher提供了sqlcipher_export()函数,该函数可以方便的对一个普通数据库导入到SQLCipher加密加密的数据库中,操作方式如下:
-
$ ./sqlcipher plaintext.db
-
sqlite> ATTACH DATABASE 'encrypted.db' AS encrypted KEY 'testkey';
-
sqlite> SELECT sqlcipher_export('encrypted');
-
sqlite> DETACH DATABASE encrypted;
例子:
1.cd到在安装好sqlcipher文件位置处,使用命令:sqlcipher /Documents/iPhoneAoi/iPhoneAoiServer/Resource/Data/pl.db //打开待加密数据库
2.ATTACH DATABASE ‘encrypted.db’ AS encrypted KEY ‘U2FsdGVkX1’;
3.SELECT sqlcipher_export(‘encrypted’);
DETACH DATABASE encrypted;
4. .exit退出
5. 搜索全局搜索 encrypted.db 文件 即是已加密文件
EXAMPLE:
- sqlcipher pl_sec.db
- ATTACH DATABASE ‘jmsec.db’ AS jmsec KEY ‘U2FsdGVkX1’;
- SELECT sqlcipher_export(‘jmsec’);
- DETACH DATABASE jmsec;
解除使用SQLCipher加密的数据库密码
sqlcipher_export()函数同样可以将SQLCipher加密后的数据库内容导入到未加密的数据库中,从而实现解密,操作方式如下:
-
$ ./sqlcipher encrypted.db
-
sqlite> PRAGMA key = 'testkey';
-
sqlite> ATTACH DATABASE 'plaintext.db' AS plaintext KEY ''; -- empty key will disable encryption
-
sqlite> SELECT sqlcipher_export('plaintext');
-
sqlite> DETACH DATABASE plaintext;
EXAMPLE:
- sqlcipher jam.dat
- PRAGMA key = ‘U2FsdGVkX1’;
- .tables
- ATTACH DATABASE ‘pl.db’ AS pl KEY ‘’;
- SELECT sqlcipher_export(‘pl’);
- DETACH DATABASE pl;
更多推荐
已为社区贡献1条内容
所有评论(0)