【问题标题】:Encryption and decryption with iOS and PHPiOS和PHP加解密
【发布时间】:2011-10-11 09:20:19
【问题描述】:

我有一个 iOS 应用程序,并计划添加一些其他应用程序,用于存储用户的特定数据。我正在计划在 Apache Web 服务器下编写 PHP 同步服务器,以允许用户创建帐户并跨多个设备同步数据。我没有在我的网络主机上设置 SSL,所以我正在寻找一种在同步期间加密/解密数据的内置方法。

在 PHP 端加密/解密将相当简单,这要归功于 mcrypt。但我还没有找到在 iOS 端进行加密/解密的最佳方法。我发现有些人使用过开源或自定义加密方法,但 Apple API 中有什么东西可以提供一种直接加密/解密数据的方法吗?

【问题讨论】:

标签: php ios encryption


【解决方案1】:

这个问题太多了,我不知道从哪里开始。

设备 A(有更改要同步) 网络服务器(你已经有了) 设备 B(需要 A 的更改) 设备 C(需要 A 的更改)

[1] 加密取决于您发送的内容。

[2] 是否要将数据从设备 A 加密到设备 B 和 C?还是将数据从 A 加密到 Web 服务器就足够了?

如果您需要对它进行端到端加密(A 到 B、C),那么您需要使用对称加密,其中密钥在所有 3 台设备之间共享,而不是在网络服务器之间共享。如果您希望数据只加密到网络服务器,那么您应该使用 SSL(它会快得多)。

[3] 您将如何管理这些加密密钥(假设您不使用 SSL)?

总体而言,这听起来并不安全,加密不是您只需“打开”或“插入”即可获得安全环境的东西。也许您可以告诉我们您的总体目标是什么。

【讨论】:

  • 我已经制定了整体加密方案,只是不确定iOS中有哪些加密方法可用。我有的策略。服务器端代码不会有问题。 iOS 端代码是我需要帮助的地方,特别是只需要指向方法/类/库的指针,这将允许我在 iOS 端编写实现代码。
  • 至于策略,我正在研究端到端加密。我已经制定了如何处理客户端和服务器之间唯一加密密钥的计划。实施不需要超严密的安全性;同步的数据不是特别敏感(没有财务数据、密码等,只有用户注释和与应用功能相关的一些其他数据)。我想让任何试图撬动的人都很难。我的想法应该让事情足够安全。 SSL 加密将是最好的解决方案,但如上所述,我没有它,而且当我的需求是基本的时,它不值得花费。
  • 在任何共享服务器上,SSL 每月不得超过 5 美元。如果安全性比获得 SSL 证书重要。如果安全不值得每月 5 美元,那么数据并不重要,您也不需要加密。正是这些被破坏的加密系统给人以虚假的信心并导致数据泄露。
  • 见鬼,即使是便宜的dreamhost也有每月不到5美元的ssl。 wiki.dreamhost.com/Secure_Hosting#Costs_and_Requirements
  • 我在看证书的成本而不是私有 ip(尽管 $5/mo 有一种加起来的方法)。我不需要用户在每次同步时都面临证书警告,免费证书可能会发生这种情况。付费证书的成本在 150 美元左右。
猜你喜欢
  • 2017-08-12
  • 1970-01-01
  • 2015-02-05
  • 1970-01-01
  • 1970-01-01
  • 2018-01-08
  • 1970-01-01
  • 2015-02-24
相关资源
最近更新 更多