农业信息化的过程中,基干动态服务页面技术(ASP)的农业信息系统发展迅速,然而面临的安全性问题也日益突出。为此我们提出了一种基于ASP的农业信息系统进行多重加密的方法——软加密技术,从而使得我们在农业信息化的道路上走得更为稳健和安全。
基于ASP的农业信息系统中软加密技术的应用
软加密技术是指通过软件编程来实现系统数据的加密,在基于ASP的农业信息系统中脚本技术是实现加密的一种重要的技术手段。
1、使用JavaScnpt脚本技术对WEB页面进行初步加密
JavaScript脚本技术是WEB页面中嵌入HTML语言使用的描述性语言。通过JavaScript脚本可以简便的完成大多数的交互功能,同时也可以直接在客户端完成一定的处理。例如:对于用户表单的提交不用传输到服务器端对用户提交的事件进行响应,利用客户端的JavaScript脚本的应用子程序就可以直接处理。从而我们可以利用这个特点对网页进行初步加密。
(1)利用JavaScript脚本实现密码校验
对于静态页面,我们可以通过以下JavaScript脚本子程序实现密码校验,同样,如果对于动态页面我们只需要将下面程序中的相应密码变量(如password)替换为服务器端数据库中获取的字段(具体子程序略):
以上子程序中使用了while循环,并且是死循环,也就是说,如果密码校验不正确就无法进行下一步操作,比较常用的右键和菜单查看源文件的方法这时就无法使用。但是可以重新开启页面去查看源文件,于是我们可以利用JavaScript脚本禁止右键功能。
(2)利用JavaScript脚本禁止右键功能
下面程序我们捕捉鼠标按键信息,对其进行识别,针对鼠标右键的按下操作弹出警告。
通过上面的JavaScript脚本子程序可以禁止右键的快捷菜单弹出,从而让非法用户无法查看源文件,也就无法看到静态页面的代码。
(3)利用JavaScript脚本控制密码输入次数
以上子程序通过JavaScript脚本控制输入密码的次数(程序中用n来设置),以防止非法用户通过算码器等软件穷举密码。 2、利用网页制作框架技术与JavaScript脚本技术结合进行双重加密 利用JavaScript脚本对网页进行加密的好处是可以在客户端就解决一定的问题,而不需要特别的服务器端程序(如ASP、JSP、PHP、CGI等)支持,也就不要访问服务器数据库,从而可以减轻服务器的数据访问压力。然而,网页代码如果被有一定编程经验的非法用户看到了,那么也比较容易识别出JavaScript脚本中静态的密码,即使是动态页面从服务器端获取的密码在源代码中,也可能暴露数据库的地址,从而有可能被非法用户获取数据库内容。 针对这样情况的一种简单可行的解决方法是结合网页框架技术和JavaScript脚本技术进行双重加密。为了不让非法用户查看网页文件的源代码,我们可以使用障眼法,利用框架网页使得非法用户看到的只是父框架的源代码,而不是我们要保护的真正登录页面的源代码。具体算法如下: 首先,建立首页,选取该页面的类型为框架页面,一般取名为index.html。 然后,给该页面内嵌框架只需调整为一个,取名为mian.html,并将其长宽属性设置为100%。从而使得父框架和真正登录页面看起来是同—个。 最后,在内嵌框架页面中使用以下JaVaScript脚本代码禁止鼠标右键菜单。
这样一来,即使使用菜单命令所看到的源代码也只是父框架页面的代码,而这个页面中没有任何有用的信息。
3、利用FLASH的Action Script脚本对页面进行保护
随着FLASH技术的不断发展,其作用也不仅仅局限在制作动画。FIASH中的Action Script 2.0脚本使得它对于链接的保护具有特定的作用。
我们可以利用FLASH提供的动态文本来完成密码校验的功能,首先设置两个动态文本,对其变量属性设置分别设置为a、b(如图1),登录为按钮,用于触发Action Script脚本。在对应的Action Script脚本中,针对登录按钮上的单击动作触发以下代码:
if(a==”用户名”and b==“密码")then {
GetURL==“success URL”}//用户名和密码正确,连接目标地址链接Else IGetURL==“lost URL”}//用户名和密码不确,连接错误地址链接导出动画,插入到网页中就可以了,由于FLASH文件无法直接看到源码,所以对于保护链接来说是一个很好的工具。如果非法用户查看源文件,只能看到页面HTML代码,得不到有效代码。
4、对后台数据库采用加密算法
对于数据采用加密算法,即使非法用户能够进入数据库,所获取的用户名和密码也是加密后的密文,而不是真正的用户名和密码。这样的数据加密算法比较多,例如常用的公钥算法、DES算法、替代算法等。我们这里简单介绍一下替代算法的一种:取用户名和密码的明文字符的ASCII码的二进制,然后全部对其进行一定位数的左移位或右移位运算,然后再还原为字符形式,这样得到的就是密文字符。
5、综合运用多类型脚本对基于ASP的农业信息系统进行多重加密
综上所述,我们综合运用以上加密方法就可以实现基于ASP的农业信息系统的多重安全机制。例如:我们可以利用FLASH MX 2004生成登录的SWF文件;然后将其插入登录网页,该网页再内嵌到框架网页中,同时对数据库采用加密算法。这样多重的安全机制将大大加强我们系统的安全性。
小知识之ASP
ASP是动态服务器页面(Active Server Page)外语缩写。是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是 .asp。现在常用于各种动态网站中。