Vb.net visualbasic中SHA-1散列函数的语法解释
上面是VB.NET的SHA1哈希函数Vb.net visualbasic中SHA-1散列函数的语法解释,vb.net,visual-studio-2010,Vb.net,Visual Studio 2010,上面是VB.NET的SHA1哈希函数 Function getSHA1Hash(ByVal strToHash As String) As String Dim sha1Obj As New Security.Cryptography.SHA1CryptoServiceProvider Dim bytesToHash() As Byte = System.Text.Encoding.ASCII.GetBytes(strToHash) bytesTo
Function getSHA1Hash(ByVal strToHash As String) As String
Dim sha1Obj As New Security.Cryptography.SHA1CryptoServiceProvider
Dim bytesToHash() As Byte = System.Text.Encoding.ASCII.GetBytes(strToHash)
bytesToHash = sha1Obj.ComputeHash(bytesToHash)
Dim strResult As String = ""
For Each b As Byte In bytesToHash
strResult += b.ToString("x2")
Next
Return strResult
End Function
请有人解释一下上面的代码(visualbasic.NET),特别是下面的几行-
bytesToHash = sha1Obj.ComputeHash(bytesToHash)
For Each b As Byte In bytesToHash
strResult += b.ToString("x2")
SHA1创建一个表示strToHash值的哈希(字节数组)。foreach只是将这个字节数组转换成字符串。创建一个包含哈希的字节数组
bytesToHash = sha1Obj.ComputeHash(bytesToHash)
循环遍历刚刚创建的每个字节
For Each b As Byte In bytesToHash
将每个字节的十六进制值附加到字符串
strResult += b.ToString("x2")
ToString的十六进制格式见此: