VB.NET MD5值计算

sinat_25869705 2020-07-09 08:22:12
例如:
数据:10 00 90 03 00 35 72 30 30 30 30 30 30 30 30 30 30 30 30 09 56 23 01 00 10 10 13

最终MD5计算为:
MD5-16 : 96A6D9C2146BA87E
MD5-32 : 3BF9933796A6D9C2146BA87EB266BC69

有大神用VB.NET做过MD5值计算实例么?网上找不到相关源代码
...全文
8890 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
sinat_25869705 2020-07-13
  • 打赏
  • 举报
回复
.NET Framework 我写的应用界面的。就提示未定义类型
hztltgg 2020-07-13
  • 打赏
  • 举报
回复
你用的是什么?.NET Framework?还是.NET Core?版本多少? 正常情况下,这两个都是自动引用的,是命名空间没写完整吗?错误的自动提示有让你导入命名空间吗?
sinat_25869705 2020-07-13
  • 打赏
  • 举报
回复
引用 9 楼 贵阳老马马善福专业维修游泳池堵漏防水工程 的回复:
https://www.cnblogs.com/kangjin/p/6093453.html
MD5CryptoServiceProvider() StringBuilder() 这些都是提示未定义
hztltgg 2020-07-13
  • 打赏
  • 举报
回复
命名空间导入没?截个图吧
hztltgg 2020-07-10
  • 打赏
  • 举报
回复
确定是这个数据?哪些数据是byte数组吧? 算出来不对呀,我算的是 B6-4C-17-9C-C1-53-87-0E-6B-E4-6E-D5-1D-0F-D8-EE
threenewbee 2020-07-10
  • 打赏
  • 举报
回复
https://www.cnblogs.com/kangjin/p/6093453.html
hztltgg 2020-07-10
  • 打赏
  • 举报
回复
还真是去空格的字符串,整的和字节数组一样,绕蒙了。
  • 打赏
  • 举报
回复
引用 6 楼 sinat_25869705 的回复:
[quote=引用 4 楼 大西瓜一块五一斤♏ 的回复:]你这个值应该不是直接加密出来的吧,你用你那程序输123456试试看加密出来是什么值,对比这里的值
不是加密的 12 34 56 MD5-16 : 49BA59ABBE56E057 MD5-32 : E10ADC3949BA59ABBE56E057F20F883E[/quote] 那就是去掉空格的加密数据。。

        Dim contentText = "10 00 90 03 00 35 72 30 30 30 30 30 30 30 30 30 30 30 30 09 56 23 01 00 10 10 13".Replace(" ", "")

        Dim md5 = New System.Security.Cryptography.MD5CryptoServiceProvider

        Dim md5_16 = BitConverter.ToString(md5.ComputeHash(Encoding.UTF8.GetBytes(contentText)), 4, 8).Replace("-", "")
        Dim md5_32 = BitConverter.ToString(md5.ComputeHash(Encoding.UTF8.GetBytes(contentText))).Replace("-", "")

        Console.WriteLine(md5_16)
        Console.WriteLine(md5_32)
sinat_25869705 2020-07-10
  • 打赏
  • 举报
回复
引用 4 楼 大西瓜一块五一斤♏ 的回复:
你这个值应该不是直接加密出来的吧,你用你那程序输123456试试看加密出来是什么值,对比这里的值
不是加密的 12 34 56 MD5-16 : 49BA59ABBE56E057 MD5-32 : E10ADC3949BA59ABBE56E057F20F883E
sinat_25869705 2020-07-10
  • 打赏
  • 举报
回复
引用 3 楼 hztltgg 的回复:
不知道你用的什么工具,md5处理只要调用自带的库即可

    Public Function GetMd5() As String

        Dim Data As Byte() = {10, 0, 90, 3, 0, 35, 72, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 9, 56, 23, 1, 0, 10, 10, 13}

        Dim Md5 = New System.Security.Cryptography.MD5CryptoServiceProvider

        Dim a = BitConverter.ToString(Md5.ComputeHash(Data))

        Return a.ToString

    End Function
12 34 56 MD5-16 : 49BA59ABBE56E057 MD5-32 : E10ADC3949BA59ABBE56E057F20F883E 你试下对的到么
  • 打赏
  • 举报
回复
你这个值应该不是直接加密出来的吧,你用你那程序输123456试试看加密出来是什么值,对比这里的值
hztltgg 2020-07-10
  • 打赏
  • 举报
回复
不知道你用的什么工具,md5处理只要调用自带的库即可

    Public Function GetMd5() As String

        Dim Data As Byte() = {10, 0, 90, 3, 0, 35, 72, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 9, 56, 23, 1, 0, 10, 10, 13}

        Dim Md5 = New System.Security.Cryptography.MD5CryptoServiceProvider

        Dim a = BitConverter.ToString(Md5.ComputeHash(Data))

        Return a.ToString

    End Function
sinat_25869705 2020-07-10
  • 打赏
  • 举报
回复
引用 1 楼 hztltgg 的回复:
确定是这个数据?哪些数据是byte数组吧? 算出来不对呀,我算的是 B6-4C-17-9C-C1-53-87-0E-6B-E4-6E-D5-1D-0F-D8-EE
不是吧,工具是回复这个,不确定是否准确

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧