一个VB.NET等效的PHP哈希函数

时间:2015-05-27 02:51:15

标签: php vb.net hash sha256

我无法将此PHP代码转换为VB。

$hashpw = hash('sha256', $salt.$password.$salt)

我有这个VB代码

Public Function HashPassword(ByVal Password As String, ByVal Salt As String) As String
    Dim pwd As String = Salt & Password & Salt
    Dim hasher As New Security.Cryptography.SHA256Managed()
    Dim pwdb As Byte() = System.Text.Encoding.UTF8.GetBytes(pwd)
    Dim pwdh As Byte() = hasher.ComputeHash(pwdb)
    Return Convert.ToBase64String(pwdh)
End Function

但似乎我从数据库中检索的密码不等于上面VB代码的返回值。密码使用上面的PHP代码加密。

任何人都可以帮我吗? 非常感谢。谢谢。

1 个答案:

答案 0 :(得分:1)

php hash函数返回以十六进制编码的数据而不是base64。

Return BitConverter.ToString(pwdh).Replace("-", "")