我自己的电脑(WIN7 32位旗舰版) 和 客服的电脑(WIN7 32位旗舰版) 加密 不一样 怎么解决?
需要加密的字符串: string s = "100921302202013-06-19";
我的电脑加密后: a7c06abacc9d9def59a6be36decf46d7 (这个是我需要的)
客服的电脑加密后: e26ea9efea1fb7df99d312745376c466
这个 是加密的方法
public static string Md5To32(string str) { string pwd = ""; MD5 md5 = MD5.Create(); byte[] s = md5.ComputeHash(Encoding.Default.GetBytes(str)); for (int i = 0; i < s.Length; i++) { pwd = pwd + s[i].ToString("X2"); } return pwd; }
其中 Encoding.Default.GetBytes(str));我把 Default 修改为 UTF-8、Unicode也不行。
求高手指教。
改成这个呢byte[] s = md5.ComputeHash(Encoding.ASCII.GetBytes(str));
你怎么做的测试?
这个应该跟多少位无关吧!算法如果不会错!那么就是你的字符集问题!导致这样的结果!
自己已解决 是字符串格式的问题