校验和使用VB.Net SHA1

时间:2015-03-05 09:09:11

标签: vb.net checksum sha

我有一个密钥:zbPsRqhNg 它需要在vb.net中编码

我使用以下来源:

Friend Overrides Function PostToLender(sData As String) As String
            '' sData contains the XML to post
            '' lendertier.ServiceURL is the URL to post to
            '' so build a checksum from the XML data
            Dim Secret As String = lendertier.Credential1  '' store the secret key in the tier's 1st credential
            Dim hash As HMACSHA1 = New HMACSHA1()
            hash.Key = UTF8.GetBytes(Secret)
            Dim checksum As String = UTF8.GetString(hash.ComputeHash(UTF8.GetBytes(sData)))

            '' append checksum to URL
            lendertier.ServiceURL &= "&checksum=" & checksum

            '' Complete normal processing
            Return MyBase.PostToLender(sData)
        End Function

这不起作用且结果不正确

checksum=%EF%BF%BD%EF%BF%BD&%EF%BF%BDg%EF%BF%BD*(%

应该是

6d91394d2b57ed448f45efcd2aeb773238b9055d

所以我尝试了我认为我做错了:

Dim Secret As String = lendertier.Credential3  '' store the secret key in the tier's 1st credential
Dim hash As New SHA1CryptoServiceProvider()
            HashCore = UTF8.GetBytes(Secret)
Dim checksum As String = UTF8.GetString(hash.ComputeHash(UTF8.GetBytes(sData)))

'' append checksum to URL
            lendertier.ServiceURL &= "?checksum=" & checksum

如果我能得到一些很好的帮助,那么两项工作都没有。

1 个答案:

答案 0 :(得分:0)

认为这就是你要找的东西

Dim checksum As String = Convert.ToBase64String(hash.ComputeHash(UTF8.GetBytes(sData)))