如何解码Salt+;c#中的哈希密码?
我不熟悉asp.NETMVC语言。我看到这段代码如何解码Salt+;c#中的哈希密码?,c#,cryptography,C#,Cryptography,我不熟悉asp.NETMVC语言。我看到这段代码使用System.Security.Cryptography我在Google中搜索的内容是用来制作salt+hash密码的 我的问题是它能用c#解码吗?简短的回答:不 另见 正确腌制的散列无法还原,这就是这样做的目的 简短回答:不 另见 正确腌制的散列无法还原,这就是这样做的目的 你这样说是对的 简而言之,答案是否定的。哈希提供了一个用于隐藏数据的单向接口,而as加密提供了一个用于数据加密/加密数据解密的双向接口 散列不能被“解密”的唯一方法,我松
使用System.Security.Cryptography
我在Google
中搜索的内容是用来制作salt+hash
密码的
我的问题是它能用c#解码吗?简短的回答:不
另见
正确腌制的散列无法还原,这就是这样做的目的 简短回答:不
另见
正确腌制的散列无法还原,这就是这样做的目的 你这样说是对的 简而言之,答案是否定的。哈希提供了一个用于隐藏数据的单向接口,而as加密提供了一个用于数据加密/加密数据解密的双向接口 散列不能被“解密”的唯一方法,我松散地使用这个术语,就是通过散列方法强制执行。通过使用相同的散列方法运行一组密码和salt组合,直到找到与原始散列匹配的密码和salt组合。然而,使用强散列方法和密码+盐,这几乎是不可能完成的任务 有益的讨论: 编辑: 您提供的在线加密程序的链接使用称为对称密钥算法的方法。这意味着一个密钥用于数据的加密和解密
你这样说是对的 简而言之,答案是否定的。哈希提供了一个用于隐藏数据的单向接口,而as加密提供了一个用于数据加密/加密数据解密的双向接口 散列不能被“解密”的唯一方法,我松散地使用这个术语,就是通过散列方法强制执行。通过使用相同的散列方法运行一组密码和salt组合,直到找到与原始散列匹配的密码和salt组合。然而,使用强散列方法和密码+盐,这几乎是不可能完成的任务 有益的讨论: 编辑: 您提供的在线加密程序的链接使用称为对称密钥算法的方法。这意味着一个密钥用于数据的加密和解密 不,不容易 散列将获取一些文本并生成一个数字(通常) 例如,md5散列
password => 5f4dcc3b5aa765d61d8327deb882cf99
根据散列的性质,没有简单的方法可以从数字返回到原始文本“password”
但是,对于半聪明的黑客来说,你可以使用所有单词的字典生成哈希,并在合理的时间内破解大多数哈希密码,因为人们使用常用的单词和符号组合。因此,如果您碰巧得到一个哈希密码列表,您可以对其运行字典攻击。任何使用“password”作为密码的人都会得到相同的哈希值
因此,作为一种防御,如果您为每个用户添加了一些独特的文本,例如Salt,您的用户名,那么现在您就更难了:-
要散列的字符串变成“Yukkipassword
”,散列到52fbd06f5b93a51b3f3cd9e807a9f61c
现在,每个使用“密码”作为密码剑的人也会有不同的散列,因此很难通过字典攻击密码。不,不容易
散列将获取一些文本并生成一个数字(通常)
例如,md5散列
password => 5f4dcc3b5aa765d61d8327deb882cf99
根据散列的性质,没有简单的方法可以从数字返回到原始文本“password”
但是,对于半聪明的黑客来说,你可以使用所有单词的字典生成哈希,并在合理的时间内破解大多数哈希密码,因为人们使用常用的单词和符号组合。因此,如果您碰巧得到一个哈希密码列表,您可以对其运行字典攻击。任何使用“password”作为密码的人都会得到相同的哈希值
因此,作为一种防御,如果您为每个用户添加了一些独特的文本,例如Salt,您的用户名,那么现在您就更难了:-
要散列的字符串变成“Yukkipassword
”,散列到52fbd06f5b93a51b3f3cd9e807a9f61c
现在,每个使用“密码”作为密码剑的人也会有不同的散列,而且很难通过字典攻击密码如果没有,谷歌的目的是什么?哦,亲爱的。完全不同的事情。请务必阅读维基百科页面。读一本书,布鲁斯·施奈尔是一个很好的来源。如果没有,谷歌的目的是什么?哦,亲爱的。完全不同的事情。请务必阅读维基百科页面。读一本书,Bruce Schneier是一个很好的信息来源。为什么我可以在谷歌在线看到加密解码器?@Yukki,那是不同的,那是使用一个key@Yukki这将使用使用密钥加密数据的加密方法。然后,可以使用用于加密该数据的同一密钥对其进行解码/解密。密钥?你能详细说明一下吗?不,你的问题是关于salt+散列,密钥和公钥/私钥加密是一个主题,你可以在谷歌上找到很多关于你自己的信息。为什么我可以在谷歌上看到加密的在线解码器?@Yukki,这是不同的,那是用一个key@Yukki这将使用使用密钥加密数据的加密方法。然后,可以使用用于加密该数据的同一密钥对其进行解码/解密。密钥?你能详细说明一下吗?不,你的问题是关于salt+散列,密钥和公钥/私钥加密是一个主题,你可以在谷歌上找到很多关于你自己的信息。所以你不可能正确解码?。如果可能的话,那么解码它需要很多时间?没错,在大量散列密码中需要很长时间。但是,对于一个人来说,很好地猜测盐可能是什么是可行的。(取决于您设法获取的数据)。Salt应该尽量比用户名更复杂。例如,你可能会使用用户、注册日期、电子邮件等,但黑客可能会获得