【问题标题】:Can anyone access what is inside Assests folder?任何人都可以访问 Assets 文件夹中的内容吗?
【发布时间】:2011-10-19 05:10:32
【问题描述】:

我想为某家公司开发一个应用程序。该应用程序主要是特定数据库中的搜索工具。

我有两种方法来开发这个应用程序:

  1. 将 DB 文件包含到 assest 文件夹中并使用它。
  2. 使用 API 进行搜索。 (我的搜索工具有一个 API。您可以使用浏览器搜索数据库)。

我更喜欢第一个选项。问题是我的客户希望他们的数据库文件不能被未经授权的人访问。他们对这个问题非常认真。

如果我使用第一个选项开发应用程序:

  1. 任何人都可以从 .apk 文件或其他任何地方检索数据库数据吗?
  2. 如果我将 DB 文件放入 assest 文件夹,它是否不安全?

如果答案是肯定的,那么我可以避免让最终用户使用互联网在我的工具中进行搜索吗?我可以避免使用选项 2 吗?即是否有任何安全的方式来包含数据库而不用担心我提到的安全问题?

提前致谢。

【问题讨论】:

    标签: android security android-assets


    【解决方案1】:

    是的,如果您的 .apk 文件的 asset directory 中有 .db 文件或任何其他文件,那么任何人都可以access it by unpacking the .apk file。

    但是,如果您询问其他应用程序,则它不会访问您的应用程序的 .db 文件,该文件对您的包是私有的。

    【讨论】:

    • 用户也可以在root设备上轻松浏览应用资源资源的内容。所以我建议不要把任何敏感信息放在那里,特别是如果它是加密的。
    • 非常感谢。你向我澄清了一些问题。
    • 你能谈谈我的问题的第二部分吗? Is there any secure way to include the DB without worrying about the security issue?.
    • @iturki - 如果您将 .db 文件放在应用程序的内部存储中,那么没有人可以访问您的数据库文件,请在根设备中接受。所以我认为使用加密文件并在私有模式下将解密密钥保存在应用程序的共享首选项中。并且每当您想使用解密时,请使用它。谢谢。
    • 加密解密方法似乎是我唯一的选择。谢谢老兄。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-30
    • 2017-03-28
    相关资源
    最近更新 更多