求VB.NET的MD5算法调用

如图,我现在要做的是首先将用户密码进行MD5加密存入数据库,之后在textbox2中输入密码,然后进行MD5加密,再比较两个md5加密之后的字符窜是否匹配。这个具体应该怎... 如图,我现在要做的是首先将用户密码进行MD5加密存入数据库 , 之后在textbox2中输入密码,然后进行MD5加密,再比较两个md5加密之后的字符窜是否匹配。这个具体应该怎么做, 求个正确的md5函数以及函数调用例子。
MyConnection.Open()
MyCommand1 = New SqlCommand("select login.power from login where login.name='" & TextBox1.Text & "' and login.password='" & textbox2.text & "'", MyConnection)
展开
 我来答
tystq
推荐于2018-03-13 · TA获得超过1201个赞
知道小有建树答主
回答量:943
采纳率:100%
帮助的人:829万
展开全部

下面是完整的类,可以设置任意密码

'DES及md5加密解密----添加引用中添加对system.web的引用。
Imports System.Security.Cryptography
Imports System
Imports System.Text
Imports System.Web
''' <summary>
''' DES加密类
''' </summary>
''' <remarks></remarks>
Public Class DESEncrypt
    Public Sub DESEncrypt()
    End Sub
    Public Shared Function Encrypt(ByVal Text As String) As String
        Return Encrypt(Text, "12345678")
    End Function
    Public Shared Function Encrypt(ByVal Text As String, ByVal sKey As String) As String
        Dim des As New DESCryptoServiceProvider()
        Dim inputByteArray As Byte()
        inputByteArray = Encoding.Default.GetBytes(Text)
        des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))
        des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))
        Dim ms As New System.IO.MemoryStream()
        Dim cs As New CryptoStream(ms, des.CreateEncryptor(), CryptoStreamMode.Write)
        cs.Write(inputByteArray, 0, inputByteArray.Length)
        cs.FlushFinalBlock()
        Dim ret As New StringBuilder()
        Dim b As Byte
        For Each b In ms.ToArray()
            ret.AppendFormat("{0:X2}", b)
        Next
        Return ret.ToString()
    End Function
    Public Shared Function Decrypt(ByVal Text As String) As String
        Return Decrypt(Text, "12345678")
    End Function
    Public Shared Function Decrypt(ByVal Text As String, ByVal sKey As String) As String
        Dim des As New DESCryptoServiceProvider()
        Dim len As Integer
        len = Text.Length / 2
        Dim inputByteArray(len - 1) As Byte
        Dim x, i As Integer
        For x = 0 To len - 1
            i = Convert.ToInt32(Text.Substring(x * 2, 2), 16)
            inputByteArray(x) = CType(i, Byte)
        Next
        des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))
        des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))
        Dim ms As New System.IO.MemoryStream()
        Dim cs As New CryptoStream(ms, des.CreateDecryptor(), CryptoStreamMode.Write)
        cs.Write(inputByteArray, 0, inputByteArray.Length)
        cs.FlushFinalBlock()
        Return Encoding.Default.GetString(ms.ToArray())
    End Function
End Class
'以下是调用方法
Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click '加密
        Dim str_Encrypt As String = DESEncrypt.Encrypt("你要加密的文本,可以是任意长度", "密码,可以很长,如果省略这个参数就是默认的12345678")
    End Sub
    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click '解密
        Dim str_Decrypt As String = DESEncrypt.Decrypt("你要解密的文本, 可以是任意长度", "加密时用到的密码,如果省略这个参数就是默认的12345678")
    End Sub
百度网友a5eb3e1
2013-09-26 · TA获得超过4448个赞
知道大有可为答主
回答量:3486
采纳率:60%
帮助的人:2645万
展开全部
Function MD5hash(data() As Byte) As Byte()
    ' This is one implementation of the abstract class MD5.
    Dim md5 As New MD5CryptoServiceProvider()
       
    Dim result As Byte() = md5.ComputeHash(data)
       
    Return result
End Function

MD5CryptoServiceProvider 类 

命名空间:System.Security.Cryptography
程序集:mscorlib(在 mscorlib.dll 中)

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式