问题描述
publicStringencryptPWD(StringsPassword){bytecResult[]=newbyte[16];StringsResult="";try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(sPassword.getBytes());cResult=md.digest();for(inti=0;i<cResult.length;i++){if(cResult[i]<0)cResult[i]+=128;StringsTemp=Integer.toHexString(cResult[i]).toUpperCase();if(cResult[i]<16)sTemp="0"+sTemp;sResult=sResult+sTemp;}}catch(Exceptione){sResult="";}returnsResult;}
解决方案
解决方案二:
publicstringencryptPWD(stringsPassword){byte[]cResult=newbyte[16];stringsResult="";try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(Encoding.Default.GetBytes(sPassword));cResult=md.digest();for(inti=0;i<cResult.Length;i++){if(cResult[i]<0)cResult[i]+=128;stringsTemp=cResult[i].ToString("x").toUpperCase();if(cResult[i]<16)sTemp="0"+sTemp;sResult=sResult+sTemp;}}catch(Exceptione){sResult="";}returnsResult;}
不知道行不行。。。错了不要找我~~~
解决方案三:
C#就现成的MD5类,直接可以生成;
解决方案四:
顶。。
解决方案五:
引用1楼woyaojuzi的回复:
C#codepublicstringencryptPWD(stringsPassword){byte[]cResult=newbyte[16];stringsResult="";try{MessageDigestmd=MessageDigest.getInstance("MD5");md.update(Encoding.Default.GetBytes(sPassword));cResult=md.digest();for(inti=0;i<cResult.Length;i++){…
好像C#里没有MessageDigest类吧
解决方案六:
C#里有现成的MD5可以使用publicstringisToMyPass(stringPath){stringpass="";MD5md5=MD5.Create();byte[]s=md5.ComputeHash(Encoding.UTF8.GetBytes(Path));for(inti=0;i<s.Length;i++){pass=pass+s[i].ToString("X");}returnpass;}
解决方案七:
是没有。这个应该程序中自定义的类吧~~~c#中MD5加密是这样的:stringpwd=System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(strPwd+mySessionID,"MD5");
解决方案八:
以上各位的方法我都试过了。。唉。。遗憾的是都不行。。这段java代码是反汇编过来的。不知道是不是代码不全还是对方有加入一些特殊性。
解决方案九:
看方法名似乎是将字符串加密成MD5,那也许你可以舍弃那段方法,直接使用c#提供的类进行加密好了~~只是建议
解决方案十:
引用2楼changjiangzhibin的回复:
C#就现成的MD5类,直接可以生成;
解决方案十一:
引用9楼zspsys的回复:
引用2楼changjiangzhibin的回复:C#就现成的MD5类,直接可以生成;