帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP编程
对ASP脚本源代码进行加密
作者:佚名 发布时间:2005-04-02 来源:不详
  目前,ASP(Acive Server Pages)技术已风靡全球,在Internet上几乎处处都能看到它的身影。它给开发商提供了基于脚本的直观、快速、高效的应用开发手段,极大地提高了开发的效果。应用这种技术,不需要进行复杂的编程,就可以开发出专业的动态Web网站。

   凡事有利必有弊,由于由于ASP脚本是采用明文(plain text)方式来编写出来的,所以开发人员辛辛苦苦开发出来的ASP应用程序,一旦发布到运行环境中去或交付用户使用后,就很难保证这些“源代码”不会被流传出去。我们如何能保护我们开发出的ASP源代码呢?

   在这里我们采用微软提供的一个加密脚本的程序:SCRENC.EXE,这个程序可以在笔者网站(http://www.zhengwei.net)上下载。这是一个运行在DOS PROMAPT的命令工具,它使脚本设计者可以对最终的脚本进行编码,从而使 Web 主机和 Web 客户不能查看或修改它们的源代码。不过有一点需要注意的是加密后的程序要求用户的游览器必须使用Internet Explorer 5.0以上的版本。加完密后的脚本变成类似于如下的内容:

  

   脚本加密程序只对脚本代码进行加密,文件的其他内容不动且以普通文本形式显示。要使用脚本加密程序,以通常方法对文本进行开发和调试,然后使用该实用程序对最终的脚本进行加密。 脚本加密程序在源代码中使用标记来标识加密开始的位置。

   对于 Visual Basic Scripting Edition (VBScript),如下示例显示了如何使用编码标记来显示普通文本的版权信息:

  

   在 JScript 中,加密标记如下:

  

   当脚本加密程序被调用时,在开始标记前,脚本块内的内容保持不变,而其他内容被加密。因此,如果开始标记被省略,则脚本编码块内的所有内容均被加密,但如果开始标记在脚本加密块的最后,则不对任何内容进行加密。

   在编码发生后。您应该知道 标记或 <% ... %>标记内包含有效的 HTML 和内嵌脚本块。使用该格式的应用程序包括 Microsoft? Internet Information Services (IIS)。识别文件扩展名有 .asp、.asa 和 .cdx。

    HTML。该格式由一个包含有效的 HTML 和内嵌脚本块的文本文件组成。使用该脚本格式编写的应用程序包括 Microsoft FrontPage?, Microsoft? Visual InterDev? 和所有虚拟的 Web 设计器及浏览器。识别文件扩展名有 .htm 和 .html。

    普通文本。该格式由只包含脚本而无两端标记的文本文件组成。使用该脚本格式编写的应用程序包括 Windows? Scripting Host (WSH) 和 Microsoft? Outlook?。 识别文件扩展名有 .js 和 .vbs,经加密后,分别变为 .jse 和 .vbe。

    脚本小程序。该格式由一个在 标记中包含有效脚本小程序的文本文件组成。识别文件扩展名有 .sct 和 .wsh。

   示例

    如下是使用脚本加密程序的一个例子以及对其结果的简单解释:

    对输入文件 test.html 进行加密,生成输出文件 encode.html,使用:

     screnc test.html encode.html

    对输入文件 test.htm 进行加密,并用编码后的输出文件覆盖输入文件,使用:

     screnc /f test.htm

    对当前目录中的所有 .ASP 文件进行加密,并把编码后的输出文件放在c:temp中,使用:

     screnc *.asp c:temp

    对当前目录中的所有 .ASP 文件进行加密,并把编码后的输出文件放在c:temp中,使用:

     screnc /e asp *.* c:temp

    对输入文件 test.htm 进行加密,并生成输出文件 encode.htm,确保没有指定语言属性的脚本块使用 VBScript,使用:

     screnc /l vbscript test.htm encode.htm

    对当前目录中的所有脚本小程序文件进行加密,并不经信息显示就用编码后的文件覆盖这些文件,使用:
    
     screnc /s /f *.sct

   要点 :经过编码后,如果您改动加密后的文本,哪怕只改动一个字。脚本的完整性就会丢失,从而不能再使用。
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·在ASP中使用数据库
·使用ASP脚本技术
·通过启动脚本来感受ASP的力量
·学习使用ASP对象和组件
·解析asp的脚本语言
·初看ASP-针对初学者
·ASP开发10条经验总结
·ASP之对象总结
·ASP与数据库应用(给初学者)
·关于学习ASP和编程的28个观点
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统