c#Md5 32位加密结果少了两个0的原因
2017-07-19 15:34
344 查看
今天碰到一个问题, md5加密之后与网站上md5加密少了两位, 仔细看区别是少了两个零
E1ADC3949BA59ABBE56E057F2F883E 我的md5
E10ADC3949BA59ABBE56E057F20F883E 第三方网站的加密
明显第一个和第二个 少了两个零
原因:
把上边 红框内的代码换成X2 问题解决
E1ADC3949BA59ABBE56E057F2F883E 我的md5
E10ADC3949BA59ABBE56E057F20F883E 第三方网站的加密
明显第一个和第二个 少了两个零
原因:
这个是很常见的错误,你字节转换成字符串的时候要保证是2位宽度啊,某个字节为0转换成字符串的时候必须是00的,否则就会丢失位数啊。不仅是0,1~9也一样。 我的代码:
public static string encrypt(string str) { string cl = str; string pwd = ""; MD5 md5 = MD5.Create(); byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(cl)); for (int i = 0; i < s.Length; i++) { pwd = pwd + s[i].ToString("X"); } return pwd; } #endregion }
把上边 红框内的代码换成X2 问题解决
pwd = pwd + s[i].ToString("X2");
相关文章推荐
- C# MD5 32位加密 UTF-8编码
- C# MD5-16位加密和MD5-32位加密
- 在线破解16位和32位的MD5加密结果的网站
- C# MD5-16位加密实例,32位加密实例(两种方法)
- C# MD5 加密方法 16位或32位
- C# MD5-16位加密实例,32位加密实例(两种方法)
- MD5加密32位 C#版 JAVA 版
- C#中MD5 - 16/32位加密实例
- C# MD5-16位加密实例,32位加密实例
- C# MD5-16位加密实例,32位加密实例
- Java 二次MD5 32位小写加密算法与php页面加密结果相同
- Java 二次MD5 32位小写加密算法与php页面加密结果相同
- C# MD5-16位加密实例,32位加密实例(两种方法)(转)
- C# MD5 32位加密 UTF-8编码
- C# MD5 16位和32位加密
- C# MD5-16位加密实例,32位加密实例(两种方法)
- C# MD5 32位加密 UTF-8编码
- 位运算训练05—输入一个32位的整数a,使用按位异或^运算,生成一个新的32位整数b; 使得该整数b的每一位等于原整数a中该位左右两边两个bit位的异或结果
- C#加密解密(DES,AES,Base64,md5,SHA256,RSA,RC4)
- MD5加密32位大写