C#加密路径里的参数,保护参数隐私安全!

八零后的奋斗

八零后的奋斗

2016-01-29 13:35

C#加密路径里的参数,保护参数隐私安全!,C#加密路径里的参数,保护参数隐私安全!
写过论坛的朋友,特别是把路径放到数据里,然后在服务器端读取数据库里的字段,把路径信息动态的显示在客户端.

    如过直接以
http://xxxx.xxxx.net/ShowForum.aspx?id=2&rootID=0&userName=myUserName

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com)

    就会发现,直接把参数信息显示在Client端了.别有用心的人,可能会对你的服务器进行攻击

    如果在Client这样显示.
http://xxxx.xxxx.net/ShowForum.aspx?bdefEdGa=DEdscFDW&aHJdIDesk=esOddEsA&dsERsdwS=SdEEsaDY

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com)


下面我把这样实现的C#.net代码贴出,如大家要转载,请保留本人的版权。

/*
*Description:加密路径信息后,输出到Client端
*Auther:天很蓝_崇崇
*Email:yc_chongchong@tom.com
*Dates:2005-01-18
*Copyright:ChongChong2008 YiChang HuBei China
*/

using System;
using System.Collections;
using System.ComponentModel;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.IO;
using System.Text;
using System.Text.RegularExpressions;
using System.Data.SqlClient;
using System.Configuration;

//导入自定义的类库
using _3Layer.DataLayer.DataCommon;
using _3Layer.DataLayer.DataCommon.DataAccess;
using Library.ClassLibrary.Crypt.DES;

namespace CHONGCHONG.XML
 public class RenderingXML : System.Web.UI.Page
 {
  /// <summary
  /// 从数据库预生成XML数据源
  /// </summary
  private void PreRenderXML()
  {
   string strSQL = "select语句略去........................;
   myDataLayer.Open();

   RenderingXml="<?xml version='1.0' encoding='gb2312'?rn";
   RenderingXml+="<xmlrn";
   try
   {   
    System.Data.SqlClient.SqlDataReader myDR = (SqlDataReader)myDataLayer.ExecuteReader( strSQL );
    while(myDR.Read())
    {
     RenderingXml+="<TreeNode id='"+myDR["BoardID"]+"'rn";
     RenderingXml+="<NodeText"+myDR["BoardName"]+"</NodeTextrn";
     RenderingXml+="<title"+myDR["Title"]+"</titlern";
     RenderingXml+="<NodeUrl"+EncodeHTML( EncodeParameter( myDR["Link"].ToString() ) )+"</NodeUrlrn";
     RenderingXml+="<child"+myDR["children"]+"</childrn";
     RenderingXml+="<target"+myDR["Target"]+"</targetrn";
     RenderingXml+="</TreeNodern";
    }
   }
   catch(System.Data.SqlClient.SqlException ee)
   {
    return ;
   }
   finally
   {
    myDataLayer.Close() ;  
   }
   RenderingXml+="</xml";
   byte[] bytResult = Encoding.Default.GetBytes( RenderingXml ) ;
   Response.ContentType = "text/xml" ;
   Response.BinaryWrite( bytResult ) ;
  }


  /// <summary
  /// Description:加密路径参数
  /// </summary
  /// <param name="sourParameter"</param
  /// <returns</returns
  private string EncodeParameter( string sourParameter )
  {
   string startString = String.Empty ;
   string endString  = String.Empty ;  
   StringBuilder destParameter = new StringBuilder() ;

   if( sourParameter == null || sourParameter.Equals("") )
   {
    destParameter.Append( String.Empty ).ToString() ;

展开更多 50%)
分享

猜你喜欢

C#加密路径里的参数,保护参数隐私安全!

电脑网络
C#加密路径里的参数,保护参数隐私安全!

Visual C#多线程参数传递浅析

编程语言 网络编程
Visual C#多线程参数传递浅析

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

C#中方法参数的四种类型

电脑网络
C#中方法参数的四种类型

C# 使用匿名函数解决EventHandler参数传递的难题

编程语言 网络编程
C# 使用匿名函数解决EventHandler参数传递的难题

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

浅谈C++函数的参数

编程语言 网络编程
浅谈C++函数的参数

c# 数据库的 sql 参数封装类的编写

编程语言 网络编程
c# 数据库的 sql 参数封装类的编写

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

字符串根据多个字符进行分割的一种方法

字符串根据多个字符进行分割的一种方法

DataGrid脚眉显示合计

DataGrid脚眉显示合计
下拉加载更多内容 ↓