网站建设资讯

NEWS

网站建设资讯

vb.net获取md5 vbnet main

VB.NET 获取文件MD5值

Public Function md5(ByVal a As String) As String

创新互联公司是一家专业的成都网站建设公司,我们专注网站设计、网站制作、网络营销、企业网站建设,外链一元广告为企业客户提供一站式建站解决方案,能带给客户新的互联网理念。从网站结构的规划UI设计到用户体验提高,创新互联力求做到尽善尽美。

Dim tempmd5 As System.Security.Cryptography.MD5 = New System.Security.Cryptography.MD5CryptoServiceProvider()

Dim bytResult() As Byte = tempmd5.ComputeHash(System.Text.Encoding.Default.GetBytes(a))

Dim strResult As String = BitConverter.ToString(bytResult)

strResult = strResult.Replace("-", "")

Return strResult

End Function

如果要计算文件的就把参数改成字节数组就可以了,然后获取文件GetBytes()传进去就可以了。

求VB.NET的MD5算法调用

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

'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

vb.net 怎么获取一个文件夹所有文件的MD5值

VB可使用DriveListBox 控件,DirListBox 控件和FileListBox 控件组合使用获取文件夹里的文件数量(包括文件夹)。 DriveListBox 控件 在运行时,由于有 DriveListBox 控件,所以可选择一个有效的磁盘驱动器。

加密解密高手进!VB.NET 谁能给一个MD5或其他的加密算法

这个是我之前写的。在需要时调用即可。

Public Shared Function Encrypt(ByVal Text As String, ByVal sKey As String) As String

Dim provider As New DESCryptoServiceProvider()

Dim bytes As Byte() = Encoding.[Default].GetBytes(Text)

provider.Key = Encoding.ASCII.GetBytes(FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))

provider.IV = Encoding.ASCII.GetBytes(FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8))

Dim stream As New MemoryStream()

Dim stream2 As New CryptoStream(stream, provider.CreateEncryptor(), CryptoStreamMode.Write)

stream2.Write(bytes, 0, bytes.Length)

stream2.FlushFinalBlock()

Dim builder As New StringBuilder()

For Each num As Byte In stream.ToArray()

builder.AppendFormat("{0:X2}", num)

Next

Return builder.ToString()

End Function

希望能帮到你


网站栏目:vb.net获取md5 vbnet main
转载来于:http://cdweb.net/article/doidped.html