C# 如何使用C验证magento数据库中的哈希#
我有一个包含从magento数据库导入的客户的数据库,我想知道是否可以使用我已有的哈希,或者唯一的方法是要求所有客户更改他们的密码 我的应用程序使用C#我尝试过使用MD5,但结果不一样 密码:741963 Magento散列:c8cb61663ba8b4adadc16687d5e2a636:W0 C#简单MD5:CDE8E3E58AB6E2D16CBE1A0EE19FE3A3 我读过Magento用的是盐腌土豆条,盐在冒号后面,但我不知道怎么用 如果有人知道如何解决这个问题C# 如何使用C验证magento数据库中的哈希#,c#,magento,encryption,hash,C#,Magento,Encryption,Hash,我有一个包含从magento数据库导入的客户的数据库,我想知道是否可以使用我已有的哈希,或者唯一的方法是要求所有客户更改他们的密码 我的应用程序使用C#我尝试过使用MD5,但结果不一样 密码:741963 Magento散列:c8cb61663ba8b4adadc16687d5e2a636:W0 C#简单MD5:CDE8E3E58AB6E2D16CBE1A0EE19FE3A3 我读过Magento用的是盐腌土豆条,盐在冒号后面,但我不知道怎么用 如果有人知道如何解决这个问题 谢谢 如您所见,在M
谢谢 如您所见,在
Magento
散列中有一个冒号。结肠后的W0
是盐。密码哈希算法是
hash(salt + password)
如果您尝试计算
W0741963
的MD5,您将得到正确的哈希值C8CB61663BA8B4ADADDC16687D5E2A636
以magento方式存储密码。
Magento未使用md5哈希存储密码
它使用的是盐渍md5.:)
让我解释一下,在md5调用用户键入的密码之前,Salt字符串将连接到密码,然后对其进行加密
$orig_pass = 2c433dcfc6e3dd9973195bac308482e3:salted_rdom_val;
$exploded[0]= 2c433dcfc6e3dd9973195bac308482e3;
$exploded[1] = salted_rdom_val;
md5($variable);
md5(passwordsalted_rdom_va);
The output of md5() is 2b339a6b211bc1436cd1e45e2db7f8d6.
这就是magento验证客户密码的方式,您可以调用一些csharp包装器来实现同样的验证 你想删除salt并将md5解密为纯文本吗?我认为你的方法是错误的。应该在密码前面加盐,而不是后面加盐。你有机会检查过吗?我检查过了它和它的盐+密码,就像哈姆雷特说的