2017-04-13 95 views
-2

我知道关于SALT和哈希密码有很多问题,但我还没有找到一个教程来指导我在VS中使用MVC模式。在Visual Studio中的SALT哈希密码

  • 用户ID(PK,INT,不为空)
  • 密码(VARCHAR(45)非空)
  • 登录ID:

    我现在有一个DB与含有三列的用户表中创建(varchar(8),null)

密码被保存为数据库中的可见字符串。在研究这个问题之后,我认为密码是最简单的二进制代替varchar。有没有人知道一个很好的教程来实现哈希和SALT到我的程序中?根据MVC模式清楚地定义这一点是首选。

+0

[help/on-topic]非常清楚地说*问题要求我们推荐或找到一本书,工具,软件库,教程或其他非现场资源**是堆栈溢出*的话题。 –

回答

0

尽管有人可能会指出可能与您的技术堆栈一起使用的正确库,但MVC与篡改密码没有任何关系。

盐渍化包括使用特定的顺序,并将其附加到用户密码的末尾,然后散列该数据。

这样做的原因是因为散列算法适用于众所周知的字符串很容易可逆。例如,一个人可以对整个字典使用众所周知的散列算法,并将其与用户密码进行比较以确定散列来自哪个散列。虽然一个好的散列函数是一种单向函数(又名根据输出找不到输入),但是如果你有一个映射的字典,你可以很容易地为众所周知的字符串/字符串组合。

例如,密码密码有一个众所周知的散列。当你将一个随机序列附加到结尾(或开始)然后对其进行散列时,结果是一个非常不常见的散列,然后它很难反转。

对不起,没有具体的技术相关,但我想沟通它的一般更高层次的概念,因为过分关注技术失去了更大的图景。

+0

知道它并不隐式使用MVC会更有意义。我没有如何实现它。任何想法的好教程或代码示例? –