Используя этот код на стороне JavaScript и
Using sha As New SHA256Managed
Using memStream As New MemoryStream(Encoding.ASCII.GetBytes("Hello World!"))
Dim hash() As Byte = sha.ComputeHash(memStream)
Dim res As String = Encoding.Default.GetString(hash)
End Using
End Using
Мне не удалось воссоздать один и тот же хэш для тех же значений с этими двумя битами кода.
Реализация JavaScript возвращает 7f83b1657ff1fc53b92dc18148a1d65dfc2d4b1fa3d677284addd200126d9069
, а пример VB.NET возвращает ƒ±eñüS¹-ÁH¡Ö]ü-K£Öw(JÝÒ mi"
.
Чего мне не хватает?Я предполагаю, что это связано с кодировкой символов?
Решение: это было одно простое изменение:
Using sha As New SHA256Managed
Using memStream As New MemoryStream(Encoding.ASCII.GetBytes("Hello World!"))
Dim hash() As Byte = sha.ComputeHash(memStream)
Dim res As String = BitConverter.ToString(hash)
End Using
End Using