【问题标题】:SQLite and Password Encryption, Decryption and UploadSQLite 和密码加密、解密和上传
【发布时间】:2012-06-18 08:34:57
【问题描述】:

我正在 flash builder 中构建一个 android 应用程序,这将允许客户端在应用程序内使用和访问数据库,但在外部阻塞。

案例是获取一个加密的数据库(阻止客户端访问应用程序外部的信息),一个密码(对客户端隐藏)并将其上传到服务器。其中服务器就可以用这个密码解密数据库,然后我打算用PHP来操作数据。

在上传阶段安全传递 SQLite 数据库和密码的最佳方法是什么?

【问题讨论】:

    标签: android database sqlite encryption flash-builder


    【解决方案1】:

    使用 HTTPS 与您的服务器通信。这将自动加密所有流量。还要记住,如果客户端(用户)可以从应用程序访问数据,并且数据在设备上,那么您几乎无法阻止他们复制和访问应用程序外部的数据。只要密码/加密密钥也在设备上,它所要做的就是让它们慢一点。

    【讨论】:

      【解决方案2】:

      创建您的应用程序将使用的 http API。此 API 将强制执行哪些操作是可能的。所以客户端永远不会看到数据库密码,无论是否加密。

      我真的不明白你加密数据库的目的。您是否试图防止服务器被黑客入侵?

      现在其他应用程序将能够使用此 API,并且无法阻止它们。您可以尽可能多地混淆它,并希望饼干太懒了。

      【讨论】:

      • 安卓应用,会让用户向数据库中添加信息。数据库从一开始就会被加密,每次用户想要写入数据库时​​,它都会对其进行解密,然后再次添加信息,然后对其进行加密。我工作的公司不希望用户重新访问他们输入的数据,因为数据输入的趋势变得更有价值
      • 然后将数据库存储在服务器上。并创建一个 add api 调用,例如通过发布到 add.php
      • 但是将数据库存储在应用程序上的全部目的是提高效率,在本地使用它将提供对数据库的高效写入,直到您希望完成客户端 - 将数据库上传到服务器, 可以对其进行整体操作
      • 在这种情况下,您的问题归结为混淆。
      猜你喜欢
      • 2012-10-03
      • 2014-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-01
      • 2016-12-08
      • 2019-05-04
      • 1970-01-01
      相关资源
      最近更新 更多