求web.cofing加密的方法。。。。 程序被人偷。我已经把文件和数据库分开放了,但是求把求web.cofing加密的方法。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可以对Web.config中保存的字符串使用MD5加密.这样在web.config中的串就都是乱码了.md5的加密解密程序如下:using System;using System.Text;using System.IO;using System.Security.Cryptography;namespace RentCarCredit.Class{ /************************************************************** * 文件名称: Encrypt.cs * 空间名称: RMCIS.Class * 文件介绍: 此文件为最基本的字符串提供加密解密基类 * 类成员: 名称 注 释 * Encrypt 加密基类 * 记录: 日期 人员 注 释 * 2003/06/20 陈颂雷 设计编制 * *************************************************************/ public class Encrypt { /********************************************************* * 类名称: Encrypt * 类介绍: 加密,解密基类 * 字段成员: 名称 注 释 * 方法成员: 名称 注 释 * strEncrypt 字符串加密基类 * strDecrypt 字符串解密基类 * 记录: 日期 人员 注 释 * 2003/06/23 陈颂雷 设计编制 * ********************************************************/ public static string strEncrypt( string strtext,string strkey) { /********************************************************* * 过程名称: strEncrypt * 过程介绍: 字符串加密基类 * 输入: 名称 注 释 * strtext 加密目标字符串。 * strkey 密匙 * strkey不能为中国字,长度大于等于8个字符。 * 返回: 名称 注 释 * ms.ToArray() 返回加密后的字符串 * Exception 程序异常信息 * 记录: 日期 人员 注 释 * 2003/06/23 陈颂雷 设计编制 * ********************************************************/ Byte[] bykey=new Byte[]{}; Byte[] byIV=new Byte[]{0x12,0x34,0x56,0x78,0x90,0xAB,0xCD,0xEF}; try { bykey=System.Text.Encoding.UTF8.GetBytes(strkey.Substring(0,8)); DESCryptoServiceProvider des=new DESCryptoServiceProvider(); Byte[] byinputArray = Encoding.UTF8.GetBytes(strtext); MemoryStream ms=new MemoryStream(); CryptoStream cs=new CryptoStream(ms,des.CreateEncryptor(bykey,byIV), CryptoStreamMode.Write); cs.Write(byinputArray,0,byinputArray.Length); cs.FlushFinalBlock(); return System.Convert.ToBase64String(ms.ToArray()); } catch (Exception e) { throw new Exception("06000:" + e.Message); } } public static string strDecrypt(string strtext,string strkey) { /********************************************************* * 过程名称: strDecrypt * 过程介绍: 字符串解密基类 * 输入: 名称 注 释 * strtext 解密目标字符串。 * strkey 密匙 * strkey不能为中国字,长度大于等于8个字符。 * 返回: 名称 注 释 * ms.ToArray() 返回解密后的字符串 * NouseException 解密不成功信息 * 记录: 日期 人员 注 释 * 2003/06/23 陈颂雷 设计编制 * ********************************************************/ Byte[] bykey=new Byte[]{}; Byte[] byIV=new Byte[]{0x12,0x34,0x56,0x78,0x90,0xAB,0xCD,0xEF}; Byte[] byInputArray=new Byte[strtext.Length]; try { bykey=System.Text.Encoding.UTF8.GetBytes(strkey.Substring(0,8)); DESCryptoServiceProvider des=new DESCryptoServiceProvider(); byInputArray=System.Convert.FromBase64String(strtext); MemoryStream ms=new MemoryStream(); CryptoStream cs=new CryptoStream(ms,des.CreateDecryptor(bykey,byIV), CryptoStreamMode.Write); cs.Write(byInputArray,0,byInputArray.Length); cs.FlushFinalBlock(); System.Text.Encoding encoding=System.Text.Encoding.UTF8; return encoding.GetString(ms.ToArray()); } catch(Exception) { throw new NouseException("解密不成功"); } } } /*加密调用例子 * try { Response.Write(Encrypt.strEncrypt(this.txtEncrypt.Text,"12345678")); } catch (NouseException ede) { throw new NouseException(ede.Message); } * * 解密调用例子 * * try { Response.Write(Encrypt.strDecrypt(this.txtEncrypt.Text,"12345678")); } catch (NouseException ede) { throw new NouseException(ede.Message); } * */} MD5加密还可以解密吗?怎么我看好像是用的DES加密解密的啊 理论上没有解不开的密.不过就是难度有多少罢了.而MD5加密是dotNet内置的加密算法.使用相对方便.也许也有DES的加密基类,我不太清楚,有那位高人知道,可以给说说,反正程序功能可以实现就可以了. 楼上的,md5是不可逆加密,des或者dsa加密都可以,不过密钥要保存好 .net网站发布后调用类库(dll)的没反应 网络连接中断,如何重新连接数据库 C#程序 C#中WinForm界面的设计可以用什么模式能实现界面的灵活性 求助:各位朋友帮忙看看这段程序 为什么水晶报表10.0工具栏的打印和导出按钮不起作用?这次希望能求到解 Treeview 拖动时候的节点显示问题,在以前的问题中搜不到 本屌新手一枚 求助抓取swf第一帧为图片 Winform打包,数据库问题? 求俄罗斯方块游戏的C#原代码! 无法在发送 HTTP 标头之后进行重定向。 ShowDialog(owner)为什么不管用呢。。。
这样在web.config中的串就都是乱码了.
md5的加密解密程序如下:using System;
using System.Text;
using System.IO;
using System.Security.Cryptography;namespace RentCarCredit.Class
{
/**************************************************************
* 文件名称: Encrypt.cs
* 空间名称: RMCIS.Class
* 文件介绍: 此文件为最基本的字符串提供加密解密基类
* 类成员: 名称 注 释
* Encrypt 加密基类
* 记录: 日期 人员 注 释
* 2003/06/20 陈颂雷 设计编制
* *************************************************************/
public class Encrypt
{
/*********************************************************
* 类名称: Encrypt
* 类介绍: 加密,解密基类
* 字段成员: 名称 注 释
* 方法成员: 名称 注 释
* strEncrypt 字符串加密基类
* strDecrypt 字符串解密基类
* 记录: 日期 人员 注 释
* 2003/06/23 陈颂雷 设计编制
* ********************************************************/ public static string strEncrypt( string strtext,string strkey)
{
/*********************************************************
* 过程名称: strEncrypt
* 过程介绍: 字符串加密基类
* 输入: 名称 注 释
* strtext 加密目标字符串。
* strkey 密匙
* strkey不能为中国字,长度大于等于8个字符。
* 返回: 名称 注 释
* ms.ToArray() 返回加密后的字符串
* Exception 程序异常信息
* 记录: 日期 人员 注 释
* 2003/06/23 陈颂雷 设计编制
* ********************************************************/
Byte[] bykey=new Byte[]{};
Byte[] byIV=new Byte[]{0x12,0x34,0x56,0x78,0x90,0xAB,0xCD,0xEF};
try
{
bykey=System.Text.Encoding.UTF8.GetBytes(strkey.Substring(0,8));
DESCryptoServiceProvider des=new DESCryptoServiceProvider();
Byte[] byinputArray = Encoding.UTF8.GetBytes(strtext);
MemoryStream ms=new MemoryStream();
CryptoStream cs=new CryptoStream(ms,des.CreateEncryptor(bykey,byIV),
CryptoStreamMode.Write);
cs.Write(byinputArray,0,byinputArray.Length);
cs.FlushFinalBlock();
return System.Convert.ToBase64String(ms.ToArray()); }
catch (Exception e)
{
throw new Exception("06000:" + e.Message);
}
}
public static string strDecrypt(string strtext,string strkey)
{
/*********************************************************
* 过程名称: strDecrypt
* 过程介绍: 字符串解密基类
* 输入: 名称 注 释
* strtext 解密目标字符串。
* strkey 密匙
* strkey不能为中国字,长度大于等于8个字符。
* 返回: 名称 注 释
* ms.ToArray() 返回解密后的字符串
* NouseException 解密不成功信息
* 记录: 日期 人员 注 释
* 2003/06/23 陈颂雷 设计编制
* ********************************************************/
Byte[] bykey=new Byte[]{};
Byte[] byIV=new Byte[]{0x12,0x34,0x56,0x78,0x90,0xAB,0xCD,0xEF};
Byte[] byInputArray=new Byte[strtext.Length];
try
{
bykey=System.Text.Encoding.UTF8.GetBytes(strkey.Substring(0,8));
DESCryptoServiceProvider des=new DESCryptoServiceProvider();
byInputArray=System.Convert.FromBase64String(strtext);
MemoryStream ms=new MemoryStream();
CryptoStream cs=new CryptoStream(ms,des.CreateDecryptor(bykey,byIV),
CryptoStreamMode.Write);
cs.Write(byInputArray,0,byInputArray.Length);
cs.FlushFinalBlock();
System.Text.Encoding encoding=System.Text.Encoding.UTF8;
return encoding.GetString(ms.ToArray());
}
catch(Exception)
{
throw new NouseException("解密不成功");
}
}
}
/*加密调用例子
* try
{
Response.Write(Encrypt.strEncrypt(this.txtEncrypt.Text,"12345678"));
}
catch (NouseException ede)
{
throw new NouseException(ede.Message);
}
*
* 解密调用例子
* * try
{
Response.Write(Encrypt.strDecrypt(this.txtEncrypt.Text,"12345678"));
}
catch (NouseException ede)
{
throw new NouseException(ede.Message);
}
*
*/
}