编出的MD5密文32位的,怎么才能传为16位啊

gxpang 2005-06-15 03:17:59

如题


MD5代码为

Public Function GetMD5(ByVal str As String) As String
Dim md5 As New MD5CryptoServiceProvider
Dim username As Byte() = (New ASCIIEncoding).GetBytes(str)

'转换为哈希值Byte数组
Dim mdByte As Byte() = md5.ComputeHash(username)
Dim mdString As String = System.BitConverter.ToString(mdByte)
'Dim mdString As String = (New ASCIIEncoding).GetString(mdByte)
mdString = Replace(mdString, "-", "")
Return mdString
End Function


先谢谢啦,在线等!!!!!!!!!!!!!!!
...全文
211 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gxpang 2005-06-16
  • 打赏
  • 举报
回复

MD5不是有 16位和32位十六进制串么, 我就是想要16位的十六进制串啊,怎么取的啦????
gxpang 2005-06-16
  • 打赏
  • 举报
回复

我就是用你的方法,得出来的前16个字符,用暴破工具跑,跑不出明文来啊,不知怎么的!!!!!!!!!!!!!!!!!!!!!
chenyuming2004 2005-06-16
  • 打赏
  • 举报
回复
动网论坛那个MD5加密有些版本是生成16位的,
你去把那个代码抄过来改改就行了。
fanruinet 2005-06-16
  • 打赏
  • 举报
回复
MD5没有16位字符串的,只有32个字符(128个二进制位)这一种
fanruinet 2005-06-15
  • 打赏
  • 举报
回复
不明白你的目的是什么
gxpang 2005-06-15
  • 打赏
  • 举报
回复

??
fancyf(凡瑞)

好像不是 前16个字符,我用暴破的工具测试过,不行的呢
gxpang 2005-06-15
  • 打赏
  • 举报
回复

就是MD5的密文 字符串啊
fanruinet 2005-06-15
  • 打赏
  • 举报
回复
MD5是128位的,你说的“位”是指的字符串的字符数
只取前16个字符不久可以了么
Return mdString.SubString(0, 16)

16,554

社区成员

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

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