iphone - 如何在 iPhone 上打开加密的 SQLITE 数据库?

标签 iphone encryption sqlite openssl sqlcipher

问题应该很清楚吧:)

我遵循了本教程:http://mobileorchard.com/tutorial-iphone-sqlite-encryption-with-sqlcipher/

很高兴知道在添加 key 后我是否以及如何能够打开我的数据库。当我收到以下错误 atm 时:

"file is encrypted or is not a database"

提前致谢!

格茨,

列维昂

最佳答案

创建加密 SQLite 数据库或打开现有加密 SQLite数据库,您必须在打开数据库后立即调用函数sqlite3_key或执行“pragma key=”命令,然后才能执行任何其他数据库操作。

我怀疑您尝试打开现有但加密的 SQLite 数据库,并希望使用上述方法之一对其进行加密。这不起作用,但会导致您遇到错误消息。

要加密现有的未加密的 SQLite 数据库,您必须使用函数 sqlite3_rekey 或“pragma rekey=”命令。

要更改现有加密 SQLite 数据库的加密 key ,您必须打开数据库,然后使用 sqlite3_key(或“pragma key=”),然后应用 sqlite3_rekey(或“pragma rekey=”)。

关于iphone - 如何在 iPhone 上打开加密的 SQLITE 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4715202/

相关文章:

ios - 如何通过列名和数据类型获取值?

ios sqlite api 文档

iphone - UITableViewCell imageView 重复

iPhone - 更换壁纸?

Golang (Go) AES CBC 密文由于某种原因被填充了 16 个 0x00 字节

openssl aes-256-ctr加密文件Java解密

java - SQLite 数据库不向数据库添加信息并且不返回 Java 中的错误

iphone - 将 TTImageView 设置为 TTView 的背景

iphone - 核心图 CPTextLayer : alignment of text with background image as background color

c# - 将字符串加密两次...好、坏还是丑?