如何离线存储密码

时间:2010-09-19 18:56:44

标签: c# security hash passwords windows-phone-7

虽然这是专注于Windows Phone 7,但我猜这个原则是普遍的。我想在我的应用程序中有一个密码保护区域。但是,我的应用程序完全脱机,因此我必须在手机上存储凭据详细信息。我最初的想法是存储密码和盐的哈希值。这会是最好的方式吗?如果是这样,哈希和盐应该以纯文本形式存储,还是有办法确保它们都被加密?我知道手机上的整个计划最终会被破解,但是什么是提高障碍的最佳途径?谢谢你的任何建议

3 个答案:

答案 0 :(得分:2)

就个人而言,我会使用基于设备唯一ID的盐来加密密码(如果可能的话,还有一些自定义用户输入,比如真正的短密码[dog,cat,bob] - 那种东西)。

只是一个建议。如果你觉得它不是最好的,请不要贬低它。

答案 1 :(得分:1)

是的,你应该存储密码和盐的哈希值。如果您不方便以纯文本格式存储这些内容,您也可以对称地加密这些细节。但是你必须在某处存储对称密钥。

在决定采取哪种方法时,请考虑保护/保护的内容的价值以及加密/解密所需的时间(尽管我怀疑这在您的情况下会成为一个问题。)

正如您所提到的,记住安全是一个过程并且不是您可以做的一次而忘记的事情也很重要。定期检查安全实践并及时了解最佳实践和违规行为的变化非常重要。

那就是说,我确实希望手机上约会的安全性至少可以持续好几个月。

答案 2 :(得分:-2)

我只是存储MD5。