一段java的代码改写成c#代码?

Jelindu 2011-04-14 12:01:03
现在有如下一段java代码
String content="xxxff";
String str=DigestUtils.md5Hex(content.getBytes("utf-8"));

改写成c#代码。
...全文
119 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Carpathia 2011-04-14
  • 打赏
  • 举报
回复

String content = "xxxff";
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
String str = System.Text.Encoding.Default.GetString(md5.ComputeHash(System.Text.Encoding.UTF8.GetBytes(content)));

Jelindu 2011-04-14
  • 打赏
  • 举报
回复
自己搞定了,我就按照顺序给分了
ColinMelody 2011-04-14
  • 打赏
  • 举报
回复
(.net侠客)


好棒!
蓝小修 2011-04-14
  • 打赏
  • 举报
回复
以下是解密的方法。希望对你有用
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));
}
蓝小修 2011-04-14
  • 打赏
  • 举报
回复
楼上这是加密的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);
}
kingdom_0 2011-04-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 carpathia 的回复:]

C# code

String content = "xxxff";
MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider();
String str = System.Text.Encoding.Default.GetString(md5.ComputeHash(System.T……
[/Quote]怎么不行?
Jelindu 2011-04-14
  • 打赏
  • 举报
回复
貌似不行

110,567

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧