VB.net 的MD5代码

前端之家收集整理的这篇文章主要介绍了VB.net 的MD5代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


原文:http://baike.baidu.com/link?url=VBUqC6fqVp5OB3mhfzlphknuYHwNqtO-VWq0tahehkdWx_ECIWOZCEWw6X0opDTf



Imports System
Imports System.Security.Cryptography
Imports System.Text
Module Example
    ' 哈希输入字符串并返回一个32字符的十六进制字符串哈希。
    Function getMd5Hash(ByVal input As String) As String
        ' 创建新的一个MD5CryptoServiceProvider对象的实例。
        Dim md5Hasher As New MD5CryptoServiceProvider()
        ' 输入的字符串转换为字节数组,并计算哈希。
        Dim data As Byte() = md5Hasher.ComputeHash(Encoding.Default.GetBytes(input))
        ' 创建一个新的StringBuilder收集的字节,并创建一个字符串。
        Dim sBuilder As New StringBuilder()
        ' 通过每个字节的哈希数据和格式为十六进制字符串的每一个循环。
        Dim i As Integer
        For i = 0 To data.Length - 1
            sBuilder.Append(data(i).ToString("x2"))
        Next i
        ' 返回十六进制字符串。
        Return sBuilder.ToString()
    End Function
    ' 验证对一个字符串的哈希值。
    Function verifyMd5Hash(ByVal input As String,ByVal hash As String) As Boolean
        ' 哈希的输入。
        Dim hashOfInput As String = getMd5Hash(input)
        ' 创建StringComparer1的哈希进行比较。
        Dim comparer As StringComparer = StringComparer.OrdinalIgnoreCase
        If 0 = comparer.Compare(hashOfInput,hash) Then
            Return True
        Else
            Return False
        End If
    End Function
    Sub Main()
        Dim source As String = "Hello World!"
        Dim hash As String = getMd5Hash(source)
        Console.WriteLine("进行MD5加密的字符串为:" + source + " 加密的结果是:" + hash + ".")
        Console.WriteLine("验证哈希...")
        If verifyMd5Hash(source,hash) Then
            Console.WriteLine("哈希值是相同的。")
        Else
            Console.WriteLine("哈希值是不相同的。")
        End If
    End Sub
End Module
' 此代码示例产生下面的输出:
'
' 进行MD5加密的字符串为:Hello World! 加密的结果是:ed076287532e86365e841e92bfc50d8c.
' 验证哈希...
' 哈希值是相同的。

猜你在找的VB相关文章