我在已经创建的应用程序的文档目录中有一个 sqlite 文件(它可能是加密的或未加密的),现在在更新版本中我必须检查它以进行解密,如果发现文件已加密,那么我们将使用它解密后发现未加密,我们就简单使用吧。
有什么办法吗?
最佳答案
根据 "The SQLite Database File Format" , 每个 SQLite 文件都以字节“SQLite format 3”开头,后跟一个 nul 终止符。
假设加密打乱了文件的所有字节,可以读取前16位 字节并检查它们是否与上面的字符串匹配。
但更简单的方法是使用 sqlite3_open()
或以下方法之一打开文件
相关公开电话。如果失败并显示错误代码 SQLITE_CORRUPT
,您可以假设
该文件已加密,因此您将其解密并再次打开。
关于ios - 如何以编程方式知道任何文件是否加密?- iPhone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20017927/