【发布时间】:2017-11-08 08:18:27
【问题描述】:
我想为我的应用程序使用非对称加密。
该应用程序基本上会拍一张照片并将其发送到服务器,我还没有编写任何代码,只是作为 POC 进行处理。
我遇到了一个以前解决过的问题,但现在又让我感到困惑。
就像我说的那样,我想使用非对称加密,其中私钥位于我的服务器上,公钥存储在本地并随每个 android 应用程序“运送”(即包括在其资源中)。我想将公钥与ByteOutputStream 或EncryptedOutputStream 一起使用,并将已加密的信息发送到服务器以进行现场解密。
我的问题基本上是加密我发送到服务器的数据的过程有多安全?显然,我知道没有完全安全的东西,但这是一个好习惯吗,有没有某种行业标准的东西?
【问题讨论】:
-
非对称加密设计用于共享公钥。这是 AC 的使命。
-
@NorthernPoet 我稍微调整了问题,希望这能解决我的困惑。谢谢。
-
好的,现在清楚一点了。答案是:选择合适的 AC 算法。我将在答案中复制粘贴一些细节。
-
您应该只使用 TLS。它是行业标准,比尝试实施自己的系统更安全。您是否考虑过经过身份验证的加密? Hmac vs AEAD?前向保密? TLS 有!
标签: java android encryption encryption-asymmetric