【问题标题】:What Ways Are There To Store Passwords in iOS (For Jailbroken Apps)?有哪些方法可以在 iOS 中存储密码(对于越狱应用程序)?
【发布时间】:2011-08-11 15:23:04
【问题描述】:

我对此进行了很多研究,但人们只提到了 iOS 钥匙串。但是,我在使用钥匙串存储密码时遇到了一个问题:

  • 就我所读的内容而言,钥匙串的行为会根据您对应用程序进行代码设计的方式而有所不同。由于我不会对应用程序进行代码设计,所以在尝试使用没有任何签名配置文件的 Keychain 时,我恐怕会发现很多石头。

那么在 iOS 中存储密码的其他替代方法是什么?我正在制作两个真正需要为用户锁定密码的应用程序。

【问题讨论】:

  • 对用户的密码锁定是什么意思?当我第一次运行您的应用程序时,我创建了一个密码?还是您想要某种只有注册用户才能使用该应用的注册系统?
  • 想想一个“日记”应用程序。您不希望任何人访问该应用程序。但是,是的,当有人第一次运行我的应用程序时,请创建一个密码。

标签: iphone objective-c ios4 jailbreak


【解决方案1】:

在您的“日记”应用程序示例中,无需存储密码。只需使用symmetric-key algorithm 来加密和解密数据。因此只有用户知道密码,甚至您的应用也不知道。

保存:

  • 将“日记”对象转换为 NSData
  • 用户输入密码来加密 NSData
  • 将加密的 NSData 写入文件

加载:

  • 从文件中读取加密的 NSData
  • 用户输入密码来解密 NSData
  • 将 NSData 转换为“日记”对象

【讨论】:

    【解决方案2】:

    我在我的一个应用程序中使用了 Keychain,并且我使用了 SFHFKeychainUtils 类,这使得使用 Keychain 变得更加容易。参考这篇博客:

    http://gorgando.com/blog/tag/sfhfkeychainutils

    钥匙串是一种安全的密码存储方式,因为存储值是加密的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-02-21
      • 2012-07-19
      • 1970-01-01
      • 2011-11-29
      • 1970-01-01
      • 1970-01-01
      • 2012-08-26
      • 1970-01-01
      相关资源
      最近更新 更多