关于C# DES 解密的
密文是16进制的,key也是16进制的 求源码 帮助啊。 网上找的都解密错误。 des? 解密 16进制
[解决办法]
其实很多都是对的,你没找到而已。你看下这个可以不
http://download.csdn.net/detail/hu1990728/4520492
[解决办法]
看看介个
[解决办法]
自己调用吧
private static Byte[] KEY_64
{
get
{
return new byte[] { 40, 52, 159, 81, 79, 137, 99, 82 };
}
}
private static Byte[] IV_64
{
get
{
return new byte[] { 98, 55, 32, 117, 156, 60, 59, 81 };
}
}
public static string EncryptCookie(string name)// DES加密 关键字、数据加密
{
//#region DES加密算法
if (name != "")
{
DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
MemoryStream ms = new MemoryStream();
CryptoStream cs = new
CryptoStream(ms, cryptoProvider.CreateEncryptor(KEY_64, IV_64), CryptoStreamMode.Write);
StreamWriter sw = new StreamWriter(cs);
sw.Write(name);
sw.Flush();
cs.FlushFinalBlock();
ms.Flush();
return Convert.ToBase64String(ms.GetBuffer(), 0, Int32.Parse(ms.Length.ToString()));
}
else
{
return "";
}
}
public static string DecryptCookie(string temp)// DES解密
{
try
{
//#region DES 解密算法
if (temp != "")
{
DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider();
//从字符串转换为字节组
Byte[] buffer = Convert.FromBase64String(temp);
MemoryStream ms = new MemoryStream(buffer);
CryptoStream cs = new
CryptoStream(ms, cryptoProvider.CreateDecryptor(KEY_64, IV_64), CryptoStreamMode.Read);
StreamReader sr = new StreamReader(cs);
return sr.ReadToEnd();
}
else
{
return "";
}
}
catch (Exception ex)
{
return ex.Message;
}
}