【发布时间】:2012-01-21 06:24:52
【问题描述】:
在@JonSkeet 的帮助下回答了
鉴于此代码:
Dim data1ToHash As Byte() = (New UnicodeEncoding).GetBytes(input)
' 2. Hash the byte array
Dim hashvalue1 As Byte() = CType(CryptoConfig.CreateFromName("MD5"), HashAlgorithm).ComputeHash(data1ToHash)
这个 PHP 不应该产生正确的哈希吗?
$md5 = (md5(utf8_encode($signature), true));
我试过了,但是 md5sum 不匹配。我认为它是编码,但也许它与字节数组有关,任何人都可以对此有所了解吗?仅供参考,我无法更改 VB
比较结果:
在.Net中
For Each b As Byte In hashvalue1
tb.Text = tb.Text & b.ToString() & ","
Next
tb.Text = tb.Text.Trim(",")
在 PHP 中
print_r(unpack('C*', pack('H*', md5($signature))))
根据另一个问题
【问题讨论】:
-
确认您正在散列的数据是相同的。