一段java的代码改写成c#代码? 现在有如下一段java代码String content="xxxff";String str=DigestUtils.md5Hex(content.getBytes("utf-8"));改写成c#代码。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 String content = "xxxff"; MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); String str = System.Text.Encoding.Default.GetString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(content))); 楼上这是加密的java方法吧以下是C#中加密的方法。 直接将要加密的字符串传进入就可以了。public static string Encrypt(string text) { Rijndael crypt = Rijndael.Create(); byte[] key = new byte[32]{0XA6,0X7D,0XE1,0X3F,0X35,0X0E,0XE1,0XA9,0X83,0XA5,0X62,0XAA,0X7A,0XAE,0X79,0X98, 0XA7,0X33,0X49,0XFF,0XE6,0XAE,0XBF,0X8D,0X8D,0X20,0X8A,0X49,0X31,0X3A,0X12,0X40}; byte[] iv = new byte[16] { 0XF8, 0X8B, 0X01, 0XFB, 0X08, 0X85, 0X9A, 0XA4, 0XBE, 0X45, 0X28, 0X56, 0X03, 0X42, 0XF6, 0X19 }; crypt.Key = key; crypt.IV = iv; MemoryStream ms = new MemoryStream(); ICryptoTransform transformEncode = new ToBase64Transform(); //Base64编码 CryptoStream csEncode = new CryptoStream(ms, transformEncode, CryptoStreamMode.Write); CryptoStream csEncrypt = new CryptoStream(csEncode, crypt.CreateEncryptor(), CryptoStreamMode.Write); System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding(); byte[] rawData = enc.GetBytes(text); csEncrypt.Write(rawData, 0, rawData.Length); csEncrypt.FlushFinalBlock(); byte[] encryptedData = new byte[ms.Length]; ms.Position = 0; ms.Read(encryptedData, 0, (int)ms.Length); return enc.GetString(encryptedData); } 以下是解密的方法。希望对你有用public static string Decrypt(string text) { Rijndael crypt = Rijndael.Create(); byte[] key = new byte[32]{0XA6,0X7D,0XE1,0X3F,0X35,0X0E,0XE1,0XA9,0X83,0XA5,0X62,0XAA,0X7A,0XAE,0X79,0X98, 0XA7,0X33,0X49,0XFF,0XE6,0XAE,0XBF,0X8D,0X8D,0X20,0X8A,0X49,0X31,0X3A,0X12,0X40}; byte[] iv = new byte[16] { 0XF8, 0X8B, 0X01, 0XFB, 0X08, 0X85, 0X9A, 0XA4, 0XBE, 0X45, 0X28, 0X56, 0X03, 0X42, 0XF6, 0X19 }; crypt.Key = key; crypt.IV = iv; MemoryStream ms = new MemoryStream(); CryptoStream csDecrypt = new CryptoStream(ms, crypt.CreateDecryptor(), CryptoStreamMode.Write); ICryptoTransform transformDecode = new FromBase64Transform(); CryptoStream csDecode = new CryptoStream(csDecrypt, transformDecode, CryptoStreamMode.Write); System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding(); byte[] rawData = enc.GetBytes(text); csDecode.Write(rawData, 0, rawData.Length); csDecode.FlushFinalBlock(); byte[] decryptedData = new byte[ms.Length]; ms.Position = 0; ms.Read(decryptedData, 0, (int)ms.Length); return (enc.GetString(decryptedData)); } 什么是非空白字母 求解决窗体隐藏方法和系统托盘方法之间的"冲突"? 窗口切换问题 问一下有关委托的问题 VS2005的工具箱里没有Mainmenu这个控件 !!!VS中运行结果不一致的问题!!! 关于用vs2005编写c# winform程序时;对*.Designer.cs文件中几行初始代码的理解? 数据访问层怎么写比较好,用静态方法还是非静态方法 vs.net的调试功能突然不能用了 各位前辈,请指教 …………………………求,给个思路就行 如何在FORM的scroll出现的时候,就自动滚动到SCROLL的最底端?
String content = "xxxff";
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
String str = System.Text.Encoding.Default.GetString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(content)));
以下是C#中加密的方法。 直接将要加密的字符串传进入就可以了。
public static string Encrypt(string text)
{
Rijndael crypt = Rijndael.Create();
byte[] key = new byte[32]{0XA6,0X7D,0XE1,0X3F,0X35,0X0E,0XE1,0XA9,0X83,0XA5,0X62,0XAA,0X7A,0XAE,0X79,0X98,
0XA7,0X33,0X49,0XFF,0XE6,0XAE,0XBF,0X8D,0X8D,0X20,0X8A,0X49,0X31,0X3A,0X12,0X40};
byte[] iv = new byte[16] { 0XF8, 0X8B, 0X01, 0XFB, 0X08, 0X85, 0X9A, 0XA4, 0XBE, 0X45, 0X28, 0X56, 0X03, 0X42, 0XF6, 0X19 }; crypt.Key = key;
crypt.IV = iv;
MemoryStream ms = new MemoryStream();
ICryptoTransform transformEncode = new ToBase64Transform();
//Base64编码
CryptoStream csEncode = new CryptoStream(ms, transformEncode, CryptoStreamMode.Write); CryptoStream csEncrypt = new CryptoStream(csEncode, crypt.CreateEncryptor(), CryptoStreamMode.Write); System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
byte[] rawData = enc.GetBytes(text); csEncrypt.Write(rawData, 0, rawData.Length);
csEncrypt.FlushFinalBlock(); byte[] encryptedData = new byte[ms.Length];
ms.Position = 0;
ms.Read(encryptedData, 0, (int)ms.Length);
return enc.GetString(encryptedData);
}
public static string Decrypt(string text)
{
Rijndael crypt = Rijndael.Create();
byte[] key = new byte[32]{0XA6,0X7D,0XE1,0X3F,0X35,0X0E,0XE1,0XA9,0X83,0XA5,0X62,0XAA,0X7A,0XAE,0X79,0X98,
0XA7,0X33,0X49,0XFF,0XE6,0XAE,0XBF,0X8D,0X8D,0X20,0X8A,0X49,0X31,0X3A,0X12,0X40};
byte[] iv = new byte[16] { 0XF8, 0X8B, 0X01, 0XFB, 0X08, 0X85, 0X9A, 0XA4, 0XBE, 0X45, 0X28, 0X56, 0X03, 0X42, 0XF6, 0X19 }; crypt.Key = key;
crypt.IV = iv; MemoryStream ms = new MemoryStream(); CryptoStream csDecrypt = new CryptoStream(ms, crypt.CreateDecryptor(), CryptoStreamMode.Write); ICryptoTransform transformDecode = new FromBase64Transform();
CryptoStream csDecode = new CryptoStream(csDecrypt, transformDecode, CryptoStreamMode.Write); System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
byte[] rawData = enc.GetBytes(text);
csDecode.Write(rawData, 0, rawData.Length);
csDecode.FlushFinalBlock(); byte[] decryptedData = new byte[ms.Length];
ms.Position = 0;
ms.Read(decryptedData, 0, (int)ms.Length);
return (enc.GetString(decryptedData));
}