当前位置:编程学习 > C#/ASP.NET >>

在解等,急.求discuz des解密方法

http://blog.csdn.net/qiejinxing/article/details/2045395 这个是网上找的discuz函数

装完论坛放了几天后管理员密码忘记了,密钥是yang1516  密文是RtdU6mExL+SqdGv+3euXiw== 求密码 --------------------编程问答-------------------- /// <summary>
/// 使用给定密钥字符串加密string
/// </summary>
/// <param name="original">原始文字</param>
/// <param name="key">密钥</param>
/// <param name="encoding">字符编码方案</param>
/// <returns>密文</returns>
public static string Encrypt(string original, string key)  
{  
byte[] buff = System.Text.Encoding.Default.GetBytes(original);  
byte[] kb = System.Text.Encoding.Default.GetBytes(key);
return Convert.ToBase64String(Encrypt(buff,kb));      
}


/// <summary> 
/// 解密数据 
/// </summary> 
/// <param name="Text"></param> 
/// <param name="sKey"></param> 
/// <returns></returns> 
public static string Decrypt(string Text,string sKey) 

DESCryptoServiceProvider des = new DESCryptoServiceProvider(); 
int len; 
len=Text.Length/2; 
byte[] inputByteArray = new byte[len]; 
int x,i; 
for(x=0;x<len;x++) 

i = Convert.ToInt32(Text.Substring(x * 2, 2), 16); 
inputByteArray[x]=(byte)i; 

des.Key = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8)); 
des.IV = ASCIIEncoding.ASCII.GetBytes(System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(sKey, "md5").Substring(0, 8)); 
System.IO.MemoryStream ms=new System.IO.MemoryStream(); 
CryptoStream cs=new CryptoStream(ms,des.CreateDecryptor(),CryptoStreamMode.Write); 
cs.Write(inputByteArray,0,inputByteArray.Length); 
cs.FlushFinalBlock(); 
return Encoding.Default.GetString(ms.ToArray()); 



試下這個解密

--------------------编程问答-------------------- 你要先看他用的什么加密方式 --------------------编程问答-------------------- 自己下了个VS 解决了
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,