【问题标题】:Android Encryption/DecryptionAndroid 加密/解密
【发布时间】:2018-10-24 20:07:58
【问题描述】:

加密算法有很多种,其中大部分需要IVKEY明文

在 Android 中,我们必须将其中 3 个添加到我们的代码中。另一方面,Android 是开源的,每个人都可以提取 APK 文件并访问 IVKEY ,这并不安全。

哪些算法更好、更牢不可破,可以在 Java 和 PHP 中应用。我正在做一个类似于 Instagram/Facebook/Twitter 的项目,安全性是此类应用程序的第一个问题。

【问题讨论】:

  • 如果您没有明确定义您的威胁模型,就很难为您的问题推荐解决方案 - 您要保护什么、保护谁以及为什么?我有一种感觉,这只是归结为“使用 HTTPS”。
  • @LukeJoshuaPark 一般来说,我希望在没有 IV 和 KEY 的情况下对所有内容进行加密。当您从 Android 应用程序向服务器发布 ID 时,HTTPS 不能解决问题。用户不得更改 ID。这就是我想加密它的原因。
  • 有什么原因不能加密server-side的ID,然后交给客户端存储?更多信息确实会有所帮助,我仍然不完全理解这个场景。
  • 使用JNI ...

标签: java php android encryption


【解决方案1】:

让我们从基本的东西开始:

  • 切勿在源代码中存储 IV/KEY 或在应用文件系统中未加密
  • 您可能想查看 Android KeyStore 及其支持的操作
  • 您可能需要依赖硬件密钥库的存在(以便用户无法修改本地存储的密钥)

有关更多信息,我建议您查看 OWASP MSTG -- Android 数据存储和 Android 加密 API 可能会让您感兴趣

【讨论】:

  • 您必须能够恢复 IV 才能稍后解密。公开它没有坏处
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-20
  • 2014-01-22
  • 1970-01-01
  • 1970-01-01
  • 2014-10-17
相关资源
最近更新 更多