Sugar ORM 指定加密密钥
Sugar ORM specifying encryption key
我正在尝试使用 Sugar ORM 及其扩展进行数据库加密。我目前正在使用清单元标记指定加密密钥:
<meta-data
android:name="ENCRYPTION_KEY"
android:value="<key>" />
这是存储密钥的安全方式吗,因为我将它存储在清单中?如果没有,我能否以某种方式从应用程序内部以编程方式设置它?
编辑:我尝试了 this 指南,但它不起作用,数据库未加密。
我终于找到了解决办法。我使用了上面 Github link 中的示例项目并将其提取到磁盘上。我使用 Android studio 将其转换为 Gradle 风格的项目。我将所有代码复制到这个新项目中,并进行了迁移所需的所有重构。之后,如果您有旧的应用程序实例,则需要清除数据,并且它神奇地起作用了。这似乎是配置问题,并且缺少有关该项目分支的信息。
编辑:此外,如果您想动态注入密钥,则需要覆盖一些 类 并自行手动注入。
我正在尝试使用 Sugar ORM 及其扩展进行数据库加密。我目前正在使用清单元标记指定加密密钥:
<meta-data
android:name="ENCRYPTION_KEY"
android:value="<key>" />
这是存储密钥的安全方式吗,因为我将它存储在清单中?如果没有,我能否以某种方式从应用程序内部以编程方式设置它?
编辑:我尝试了 this 指南,但它不起作用,数据库未加密。
我终于找到了解决办法。我使用了上面 Github link 中的示例项目并将其提取到磁盘上。我使用 Android studio 将其转换为 Gradle 风格的项目。我将所有代码复制到这个新项目中,并进行了迁移所需的所有重构。之后,如果您有旧的应用程序实例,则需要清除数据,并且它神奇地起作用了。这似乎是配置问题,并且缺少有关该项目分支的信息。
编辑:此外,如果您想动态注入密钥,则需要覆盖一些 类 并自行手动注入。