以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 请问MD5 32位加密算法 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=43529) |
-- 作者:iliksou -- 发布时间:2013/12/9 16:28:00 -- 请问MD5 32位加密算法 请问MD5 32位加密算法? |
-- 作者:iliksou -- 发布时间:2013/12/9 16:49:00 -- 顶一下 |
-- 作者:有点甜 -- 发布时间:2013/12/9 19:53:00 -- 把下面的代码写到全局代码,然后调用 msgbox(MD5("12345678", 32)) Public Function MD5(ByVal strSource As String, ByVal Code As Int16) As String Dim dataToHash As Byte() = (New System.Text.ASCIIEncoding).GetBytes(strSource) Dim hashvalue As Byte() = CType(System.Security.Cryptography.CryptoConfig.CreateFromName("MD5"), System.Security.Cryptography.HashAlgorithm).ComputeHash(dataToHash) Dim ATR As String = "" Dim i As Integer Select Case Code Case 16 \'选择16位字符的加密结果 For i = 4 To 11 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next Case 32 \'选择32位字符的加密结果 For i = 0 To 15 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next Case Else \'Code错误时,返回全部字符串,即32位字符 For i = 0 To 15 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next End Select Return ATR End Function |
-- 作者:iliksou -- 发布时间:2013/12/10 19:37:00 -- 谢谢! |
-- 作者:iliksou -- 发布时间:2013/12/10 19:59:00 -- 经测试,完全正确。 |
-- 作者:Hopenight -- 发布时间:2017/5/6 18:01:00 -- 以下是引用有点甜在2013/12/9 19:53:00的发言: 把下面的代码写到全局代码,然后调用 msgbox(MD5("12345678", 32)) Public Function MD5(ByVal strSource As String, ByVal Code As Int16) As String Dim dataToHash As Byte() = (New System.Text.ASCIIEncoding).GetBytes(strSource) Dim hashvalue As Byte() = CType(System.Security.Cryptography.CryptoConfig.CreateFromName("MD5"), System.Security.Cryptography.HashAlgorithm).ComputeHash(dataToHash) Dim ATR As String = "" Dim i As Integer Select Case Code Case 16 \'选择16位字符的加密结果 For i = 4 To 11 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next Case 32 \'选择32位字符的加密结果 For i = 0 To 15 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next Case Else \'Code错误时,返回全部字符串,即32位字符 For i = 0 To 15 ATR &= Hex(hashvalue(i)).PadLeft(2, "0").ToLower Next End Select Return ATR End Function 学习了,谢谢! [此贴子已经被作者于2017/5/6 18:04:00编辑过]
|