【问题标题】:how to make validation more safe in wpf desktop app?如何在 wpf 桌面应用程序中使验证更安全?
【发布时间】:2017-06-10 12:39:51
【问题描述】:

在我的 wpf 测试程序中,我有一个密码框,当用户尝试登录并输入一个字符串到密码框时,如何将此字符串与加密密码进行比较以验证用户的身份以及如何使此比较过程更安全。 我的困惑是:我是否应该将密码解密为纯文本,然后直接与用户输入的字符串进行比较,比如使用等式来确认两个变量是否相等?我个人认为如果我这样做的话,应该应用更安全的编程技能,这种技能是什么?

【问题讨论】:

  • 在数据库中存储加密密码。从用户那里获取输入,对其进行加密并比较两个字符串。在 StackOverflow 中搜索“wpf 密码框”,了解如何处理密码框控件。

标签: c# wpf


【解决方案1】:

嗯..当他输入时,它是纯文本的......但你不应该将它们存储为文本,你通常会添加盐并将它们散列,并保留盐。
然后你会对输入做同样的事情,如果两个哈希匹配,你让他们登录......

示例:
密码:错误密码 然后你添加一个盐(你可以使用一组,或者生成一个,用谷歌搜索)。 假设您的盐是:YummySalt。然后将 passtord+salt 传递给哈希方法:Hash(password+salt)

你会得到一些哈希值,比如说:oanuh835930notihaoneu340

您将其保存在数据库中,当用户输入密码时,您生成盐(或仅使用固定的盐),对其进行散列,并将其与数据库中的散列进行比较。

【讨论】:

    猜你喜欢
    • 2018-03-25
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-15
    • 1970-01-01
    • 2012-11-18
    • 1970-01-01
    相关资源
    最近更新 更多