Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->编程语言 ->ASP ->正文

网站安全之ASP程序加密/解密方法大揭密

来源:Linuxdby.com 作者:Webmaster 时间:2007-04-23 点击: [收藏] [投稿]

  对文件 lacl.htm加密,并生成输出文件 ulacl.htm,确保没有指定语言属性的脚本块使用 VBScript

  /e defExtension 可选。指定待加密文件的文件扩展名。缺省状态下,Script Encoder能识别asa,asp,cdx,htm,html,js,sct和vbs文件。 screnc /e asp 11\*.* f:\labxw-jm

  对11目录中的所有.ASP 文件进行加密,并把编码后的输出文件放在f:\labxw-jm目录中

  (2)操作举例

  例如要加密当前目录中的lacl.asp文件,生成加密文件ulacl.asp,则在DOS下输入命令:

  screnc lacl.asp ulacl.asp

  对当前目录中的所有 .ASP 文件进行加密,并把编码后的输出文件放在f:\labxw中,则使用命令:

  screnc *.asp f:\labxw

  2、使用组件加密asp

  以上被screnc加密过的程序,是可以解密的(解密方法下文有介绍),如果你想彻底保护自己的asp代码,可以通过开发activex dll组件的方法进行保护。

  Dll文件是被编译过的机器代码,如果没有源项目文件,是不可能被反编译的,所以组件加密这种方法最安全,也不可能被破解。下面我们来举例说明操作过程,例如你要保护以下asp代码:

  set rs=server.createobject("adodb.recordset")
  sql="select * from gq where xs=1 order by date asc"
  rs.open sql,conn,1,1
  if rs.eof and rs.bof then
  response.write"<A HREF=new0.asp?lbid=gqx ><%= gqx %></A>"
  else
  Response.Write ""
  end if
  set rs=nothing
  conn.close
  set conn=nothing

  可以把它们改写成VB组件,然后在ASP文件中调用组件即可。操作步骤如下:

  (1)新建一个vb6的activex dll项目

  在属性窗口中,命名你的库模块和项目文件(例如项目名lacl,模块名disp),以后在asp文件中,调用的对象名将为lacl_disp

  选择vb6中的项目菜单中的references ,选中microsoft activex data objects 2.0 library

  (2)编写VB组件

  接下来把<欲保护的asp代码>改写成VB组件,代码如下:

  public function html_combo(disp_table as string) as string
  dim outstring as string
  dim conn as adodb.connection
  dim rst as adodb.recordset
  dim sqlstring as string
  set conn = createobject("adodb.connection")
  set rst = createobject("adodb.recordset")
  sqlstring = "select * from " & disp_table & " where xs=1 order by date asc"
  '以上是在VB中打开数据库操作,数据库中的表名、字段名,你可以根据自己的需要修改
  conn.open "dsn=sumnet"
  rst.open sqlstring, conn, 3, 3
  if rst.eof and rst.bof then
  outstring = "

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:ASP读取XML数据文件的方法   下一篇:如何在ASP程序中使用Telnet协议

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号