У меня возникли проблемы с преобразованием этого кода 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 выше.
Кто-нибудь может мне с этим помочь?
Очень ценится. Спасибо.
Хэш-функция php возвращает данные, закодированные в шестнадцатеричном, а не в base64.
Return BitConverter.ToString(pwdh).Replace("-", "")
Других решений пока нет …