为什么C# md5 32位加密算法,密码明文会出现31位
2015-02-09 17:39
267 查看
public string returnmima(string str) { string ps = ""; MD5 md5 = MD5.Create(); byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str)); for (int i = 0; i < s.Length; i++) { ps += s[i].ToString("x"); } return ps; } 这个是我的代码。 要加密的字段:1234abcd 结果为: ef73781effc577410f87fe2f437a435 但是真确应该为:ef73781effc5774100f87fe2f437a435 当中怎么多了个0,我怎么就少了个0????
这个是很常见的错误,你字节转换成字符串的时候要保证是2位宽度啊,某个字节为0转换成字符串的时候必须是00的,否则就会丢失位数啊。不仅是0,1~9也一样。因此把那个ps += s[i].ToString("x"); 改为ps += s[i].ToString("x2");就ok了。
相关文章推荐
- 为什么md5 c#32位加密算法,密码明文会出现不够32位
- 为什么md5 c#32位加密算法,密码明文会出现不够32位
- 使用C# 用MD5进行密码加密源代码
- C# MD5 加密方法 16位或32位
- C#.net实现密码加密算法的语句
- 谁能告诉我,密码为什么那么多明文。。
- 用MD5处理明文密码加密
- C#几种加密算法,包括MD5
- c# MD5 加密登录密码
- C# MD5-16位加密实例,32位加密实例(两种方法)(转)
- 单相可变长度的MD5密码加密算法.
- 用C# 实现 Zen Cart 的用户密码加密算法
- C#.net实现密码加密算法的语句
- C#执行js中的函数的问题,以sohu邮箱登陆密码js的MD5为例
- 为什么会出现这样的提示?错误在哪里?asp.net(C#)(2)
- 【转】C#256位加密算法,可以轻松创建密盘,破解密码需要100万年!!!
- C#:使用MD5对密码进行加密!
- 为什么会出现这样的提示?错误在哪里?asp.net(C#)(1)
- C# MD5-16位加密和MD5-32位加密
- C#.net实现密码加密算法的语句