ICANN认证国际域名顶级注册机构
网站建设,域名注册,空间租用,软件销售,广告设计 域名注册,空间租用, 网站建设,东莞网页设计,域名注册,网站推广,网站开发,网页设计 网站推广,,百度推广,新浪推广,雅虎推广,网易推广 标志设计,画册设计,包装设计,VI策划,企业形象顾问 连邦软件加盟店,提供销遥行,管家婆,速达,用友ERP,诺顿等软件报价及销售 建站必读 腾达网络,上网帮助中心, 腾达为东莞等地,提供网站建设,网站推广,广告设计,软件销售等优质服务!
建站必读


 
 
当前位置:首页 -> 建站必读 -> ASP技术
巧用ASP技术保护DHTML源代码(转)
巧用ASP技术保护DHTML源代码

2001-8-18  动网先锋  



DHTML使得我们能够开发出功能强大的Web应用客户端,它具有跨浏览器兼容、可交互和可移植等特点。它的缺点是用户能

够直接查看JavaScript代码。本文介绍如何运用ASP技术保护DHTML代码,防止有人窃取你的DHTML代码。

传统保护技术

众所周知,Web本质上是一种不安全的媒介。当用户访问Web应用或者打开Web页面时,所有客户端的代码(HTML,

JavaScript源文件以及CSS样式)一般都要下载到客户端缓冲区。用户只需点击一下“查看源文件”就可以查看、分析和复

制这些代码。

MSDN摘录了Wrox《Instant JavaScript》一书的部分内容,它指出了保护JavaScript代码的几种方法,具体请参见这

里。

客户端JavaScript代码保护方法主要可以分成如下几类:

a)Microsoft的方法:Microsoft通过发布Windows Script Engine Version 5.0来解决客户端源代码保护问题。源代码通

过一个ActiveX层编码(不是加密)。请参见Script Encoding with the Microsoft Script Engine Version 5.0。

这种方法的缺点是经过编码的代码只有IE 5.0+才能解码,而且他们坦率承认编码过程并非简单易行。如果你使用的是其他

浏览器(包括IE浏览器的早期版本),你就不能通过浏览器访问脚本代码。

b)模糊代码(Code Obfuscation):一些共享软件,比如Jammer以及JMyth,企图通过让代码变得难于阅读、让变量名字

变得杂乱去防止有人偷窃JavaScript代码。这种方法的缺点在于,任何有决心的程序员都能够用全局搜索和替换工具轻松

地打破这种保护,因为这只需把那些含义模糊的变量名字改成含义明确的变量名字即可。关于JAMMER的更多说明,请参见

这里。

c)加密:有许多方案、工具能够有效地加密JavaScript代码。加密客户端JavaScript代码最主要的问题在于用来解密的脚

本代码往往很容易取得,导致对代码实施反向工程非常容易。显然,这种方法不能阻止任何认真的程序员获取源代码。虽

然我们可以用Java作为加密和解密过程的中间工具,但遗憾的是,Applet会给Web页面增加不必要的额外负荷,而且它会因

为浏览器所用Java虚拟机版本的不同而无法正常运行。相对而言,DHTML却意味着快速、小巧、通用和可移植。

一种新方法

在试验WML(Wireless Markup Language)时,我想到了一种保护客户端源代码的新方法。在基于ASP的WML页面中,服务器

端代码会有如下内容:



< % Response.ContentType = "text/vnd.wap.wml" % >

< ?xml version="1.0" encoding="iso-8859-1"? >

< !DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"

"http://www.wapforum.org/DTD/wml_1.1.xml" >

< wml >

......



可以看到,我们首先发送了一个WML头,使得无线浏览器认为该ASP页面实际上是一个WML页面。这种技术同样可以用来保护

JavaScript源文件(.js文件)。

Netscape随着JavaScript 1.2的发布引入了对JavaScript源文件的支持。大多数支持该版本JavaScript的浏览器都支持

JavaScript源文件(Internet Explorer 3.0+,Netscape 3.0+以及Opera 5.0)。动态HTML(DHTML)由JavaScript和CSS

混合构成。CSS样式使得开发者能够自由地在浏览器窗口中表现各种页面元素,而JavaScript则提供了控制浏览器本身的必

要功能。JavaScript是DHTML的关键组成部分。

下面我们通过例子来说明这种新的DHTML源代码保护方法。这个例子涉及三个文件:index.asp,js.asp以及global.asa。

global.asa定义了一个auth会话变量,该变量用于验证请求JavaScript源文件的页面起源是否合法。这里选择使用会话变

量的原因在于它用起来比较方便。



global.asa



Sub Session_OnStart

Session("auth") = False

End Sub



我曾经试过用HTTP_REFERER系统变量来验证发出请求的页面起源是否合法,后来发现这个变量可以通过telnet伪造,而且

某些浏览器未能在运行时正确地显示出HTTP_REFERER变量。



index.asp



< % Session("auth") = True

Response.Expires = 0

Response.Expiresabsolute = Now() - 1

Response.AddHeader "pragma","no-cache"

Response.AddHeader "cache-control","private"

Response.CacheControl = "no-cache"

% >

< html >

< head >

< title >测试页面< /title >

< script language="Javascript" type="text/javascript" SRC="js.asp" >< /script >

< /head >

< body >

< script language="Javascript" >te
 
 
本站关键词:
|东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作||东莞google推广|东莞关键词推广|东莞网站推广策划|东莞域名申请|东莞主机申请|东莞空间申请|横沥网站建设网页制作|常平网站建设网页制作|虎门网站建设网页制作|厚街网站建设网页制作|长安网站建设网页制作|石龙网站建设网页制作|
域名注册 | 虚拟主机 | 网站建设 | 网站推广 | 广告设计 | 帮助中心 | 软件中心 | 关于腾达
东莞市腾达信息工程有限公司      本站网络实名: 东莞网站建设
地址:东莞市新城市中心区第一国际B座610   邮编:523007
电话:0769-22026071 22026072 传真:0769-22026076 24小时服务热线:13712032014
© 2002~2005 腾达网络   版权所有