【发布时间】:2016-11-10 05:39:56
【问题描述】:
我正在构建一个 swift 应用程序并拥有用户帐户。我需要安全地保存他们的信息(密码),我已经读过使用加盐哈希作为密码是安全的,但我想知道是否建议使用它并将哈希密码存储在我的 icloud 工具包(我的数据库)中
【问题讨论】:
标签: swift security encryption hash passwords
我正在构建一个 swift 应用程序并拥有用户帐户。我需要安全地保存他们的信息(密码),我已经读过使用加盐哈希作为密码是安全的,但我想知道是否建议使用它并将哈希密码存储在我的 icloud 工具包(我的数据库)中
【问题讨论】:
标签: swift security encryption hash passwords
如果您需要原件,建议将密码存储在钥匙串中。如果您只需要存储一个哈希进行验证,请将其加盐并将其存储为 SHA-256 HASH(并将盐保存在钥匙串中,也可能是哈希)。
如果您需要在 iOS 设备上的数据库中输入密码,并且无论出于何种原因钥匙串对您不起作用,您应该使用 SQLCipher,并让用户输入数据库密码来解锁它,而不是存储任何地方的数据库密钥。如果你走这条路,请在用户输入上使用密钥派生函数,例如 PBKDF2。
通常,假设您存储的任何密码都是安全问题。尽量不要自己存储它们。
【讨论】: