实现网络安全浏览的系统和方法

文档序号:7740976阅读:84来源:国知局
专利名称:实现网络安全浏览的系统和方法
技术领域
本发明涉及一种基于网络安全浏览电子档案数据的系统及方法,特别涉及协同现 有各种Web服务器端应用程序系统,完成网络安全浏览电子档案数据的系统及方法。
背景技术
随着计算机网络应用的迅猛发展,人们对网络中数据的摄取量日益增大,网络中 真实的虚假的信息让人难以取舍,分辨信息的真伪逐渐成为互联网用户日益关注的核心问 题。电子档案数据本身来源于真实的纸质档案,通过扫描方式存储为光栅图形格式文件,具 备档案的原始性、可靠性、真实性、高安全性等特点,如果在互联网络中公开档案信息将会 大大提高社会生产力(国家早在2008年初就制定了关于档案公开的具体管理办法),但如 何保障可公开电子档案数据在网络中利用时的安全,成为了计算机软件开发领域的重要课 题。现在很多政府、企事业单位针对电子档案的重要性,已经有了深入的了解,但对于 电子档案的安全并不是很重视。以前国家部委中也曾经发生过“档案泄密”事件,引起国家 的高度重视。如何保证电子档案数据在网络中既能方便利用,又能保障数据安全。很多软件公 司也提出了很多解决方案,比较常见的有以下几种1.访问逻辑限定。通过专门的档案管理软件网络系统,对用户身份和权限加以限 定,更深层次的限制是将用户与访问的文件一一捆绑限定,用以保障用户所访问的电子档 案数据安全。但虽说有了逻辑上的限制,大多管理软件系统(如0A、ERP或专门档案管理软 件等系统)最终仍然将电子档案文件下载到本地,供用户浏览使用。不论下载的临时档案 文件的存储目录隐藏多深或档案文件名多么莫名其妙,最终仍然可以被找到,还是无法保 障电子档案文件安全。另外,档案文件的存储信息报漏于网络之中,骇客很容易定位到服务 器中的电子档案文件,对其进行复制、修改等非法操作。2.档案文件解析的IE插件技术。通过专门的档案管理软件网络系统,将电子档案 文件数据拆解后,放置在动态的网页中,然后在客户的浏览器中安装IE插件,通过插件对 脚本或档案数据进行解析,然后重新组织出档案图像,提供给浏览器用户使用。这样做确实 在一定程度上可以保障电子档案数据安全。但仍存在其弊端,其一,电子档案数据通过Http 协议进行传输,在网络中很容易被监听和截取。其二、动态网页中的档案文件数据仍然有本 地存储。其三、从服务器性能角度看,此种方式大大的降低了服务器的运行效率和并发数 量。3.档案文件加密。对电子档案文件进行加密,使用者通过专门的解密方法(如解 密用的USB Key),对档案数据文件进行浏览和使用。但这样实施有很大的弊端,其一,使用 者数量较大时,所需的解密装置较多;其二,解密装置一旦丢失或遗忘,电子档案安全将无 法保障;其三,只要档案文件可以被复制带走,即使加密方法再严谨,也可以通过各种手段 来破解。
综上所述,保障电子档案在网络中安全利用,有待解决的问题如下服务器端电子档案文件安全存储,防止网络骇客非法获取;电子档案数据在网络传输中进行加密,防止被监听和窃取;电子档案数据在客户机中不作本地存储,防止非法复制和传播;在网络带宽不够、电子档案文件存储容量大且多数为光栅图形文件的现状基础 上,要对电子档案文件进行快速浏览。

发明内容
本发明所要解决的技术问题是提供一种基于网络安全浏览电子档案数据的系统 及方法,解决电子档案文件数据从存储、网络传输到浏览器端浏览利用的安全问题。为此,本发明提供一种实现网络安全浏览的系统,包括网络服务器和网络客户端, 其特征在于,网络客户端设置浏览器控件模块,用来发送文件浏览请求和重组网络服务器 传输的文件数据;网络服务器端设置文件解析服务器模块和服务器加密解密模块,用来解 析网络客户端发送的文件传输请求和加密解密传输的文件。其中,所述加密解密模块包括服务器端文件URL (Uniform ResourceLocator,统 一资源定位符)加密解密模块和网络数据包加密解密模块,所述服务器端URL加密解密模 块用来将客户请求访问的文件URL信息进行加密和解密处理;所述网络数据包加密解密模 块,用来将文件解析服务器与客户端浏览器控件间传输的数据包,进行加密和解密处理;进一步的,所述的网络服务器还包括Web服务器,所述Web服务器上设置Web服务 器接口模块,用来实现Web服务器端应用程序与文件URL加解密模块之间的数据传输,同时 实现Web服务器端应用程序和文件解析服务器间信息交互。本发明还提供一种实现网络安全浏览的方法,应用在包括网络服务器和网络客户 端的网络上,其中网络客户端设置浏览器控件模块;网络服务器端设置文件解析服务器模 块和网络服务器加密解密模块,包括如下步骤1)浏览器端控件模块发送文件数据传输请求给文件解析服务器;2)文件解析服务器模块解析所述的文件数据传输请求,网络服务器加密解密模块 将文件的数据片段加密后发送文件的数据片断给浏览器端控件模块;3)浏览器端控件模块接收文件解析服务器端发送来的文件数据片段,进行本地解 析,重新组织为可视的图形数据显示给用户。其中所述的网络上还可以包括Web服务器,用于向文件解析服务器转发Web客户 端的浏览请求。进一步的,所述的网络服务器包含文件URL加密解密模块,能将客户浏览器请求 访问的文件URL信息进行加密和解密处理。应用本发明提供的系统和方法,能有效实现(1)服务器端电子档案文件安全存 储,防止网络骇客非法获取;(2)电子档案数据在网络传输中进行加密,防止被监听和窃 取;(3)电子档案数据在客户机中不作本地存储,防止非法复制和传播;(4)在网络带宽不 够、电子档案文件存储容量大且多数为光栅图形文件的现状基础上,要对电子档案文件进 行快速浏览。


图1是本发明提供的文件URL加密原理图;图2是本发明提供的密钥的结构组成图;图3是本发明提供的浏览控件分层原理图;图4是本发明提供的文件解析服务器的分层原理图;图5是本发明提供的模块布局示意图;图6是本发明提供的工作原理示意图;图7是本发明提供的工作流程图。
具体实施例方式关于网络中安全浏览电子档案数据的方法及原理已经阐明,具体实现的方法和手 段可能多种多样,以下以现有成形的安全浏览电子档案数据系统的实施为例来详细阐述。本发明技术实现所需要搭建硬件环境,如图5所示,选择一台网络主机作为网络 应用程序服务器(本例以Web服务器为例),选择另一台网络主机作为Web客户机。在服 务器上布置Web Server和文件解析服务器,在Web客户机上布置客户端控件。Web Server 作为文件访问请求的“接入点”(web用户通过Webserver查询文件列表,发送文件访问请 求)。Web Server经加密文件URL后,应答给Web客户端用户。Web客户端控件转发加密的 文件URL给文件解析服务器。文件解析服务器解密文件URL后,传输文件数据信息给web 端控件。Web端控件解析传输的数据内容,然后产生新的数据下载请求给文件解析服务器。 如此反复,直至数据内容被彻底的解析完毕后,将数据内容组织成图像数据,显示给Web终 端用户。如上所述,在整个体系中如何保障电子文档的存储、传输和浏览安全。1、文件存储于服务器端,文件URL经加密后发送给Web端用户,防止Web端用户了 解详细的网络文件存储路径信息。2、Web客户端控件不对加密后的文件URL进行本地解密工作,防止Web端用户通 过各种手段对文件URL进行本地跟踪直至破解。3、加密后文件URL串中存放超时时限(TTL)。当超出设置的时限后,系统将不再允 许Web端用户使用该文件URL进行访问,防止Web端用户通过各种手段对文件URL进行本 地跟踪直至破解。4、Web客户端控件采用“边解析、边下载”的方式加载文件数据,防止数据在网络中 传输时被恶意截获。即便网络封包被截获,零散的数据片断并非连续的很难拼凑出完整的 文件信息。另外此种方式大大的提高文件访问效率,例如对于一个多页面的电子文件,正常 浏览需要将文件下载到本地(即在网络中要传输文件的所有页面),而采用“边解析、边下 载”的方式,只需将当前浏览的页面下载浏览即可(即在网络中只传输文件的一个页面), 故该方式的加载速度将大大提高。5、文件解析服务器与Web端控件间传输的网络封包采用“一次性密钥”的方式进 行加密,防止数据在网络中传输时被恶意截获并破解。6、Web客户端控件将解析完成的数据组织成光栅图形后,存于本地的内存中。防 止Web用户通过文件复制方式传播。另外将数据组织成光栅图形方式,防止Web端用户通过各种手段扫描、跟踪、检索文件数据字符串。网络安全浏览电子档案数据系统中,各模块工作原理及使用方法如下A.网络应用服务器接口模块使用方法及工作原理由于本发明技术的实现,以Web Server为例的网络应用服务器端程序与Web用户 间的文件访问交互,因此需要在应用服务器所在主机上安装Web服务器。现今流行的Web 应用服务器程序的开发语言较多(如ASP、JSP、C#、Java等),不论使用何种编成语言,只要 按网络应用服务器模块提供的方法,均可以使用文件URL加解密模块。具体实现以Java语 言为例,定义接口对象,导入接口函数。如下程序片断public class EncryptLibrary{static { System, load (〃 FtsEncrypt.dll" ) ;}public native static int GetProgramPrivateKey();pub lie native static String GetEncrpytPathString (String csPathString, int iAccessPopedom,int IPrivateKey);pub lie native static String GetEncrpytSeedString (String csPathString, int iAccessPopedom,int IPrivateKey);}如上代码,程序经编译后,Web服务器便可以正常使用文件URL加密模块提供的方 法函数,对文件URL进行加密。1. GetProgramPrivateKey 用于获取当前主机系统的随机数;2. GetEncrpytPathString 用于获取加密后的文件 URL。 参数csPathString 为需要加密的文件URL ; 参数iAccessPopedom 为权限限制标志(定义0为限制,1禁止打印限制),此 参数确定浏览器端用户最终对看到的档案图形是否具备打印权限,其控制权交由Web服务 器端应用程序; 参数IPrivateKey 为该服务器主机上产生的随机数,可通过调用 GetProgramPrivateKey ()函数得到。3. GetEncrpytSeedString 用于获取加密后的密钥字符串,其参数定义与 GetEncrpytPathString ()函数定义的参数完全一致,此处不再描述;B.文件URL加密模块的使用方法及工作原理,如图1所示Web服务器端应用程序,首先调用GetProgramPrivateKey ()函数得到随机数,然 后调用 GetEncrpytPathString ()和 GetEncrpytSeedString ()函数,传入相同的参数,得 到加密后的文件相对路径串和密钥字符串,如果传入的随机数不同,加密后的文件URL与 密钥将不匹配。另外,密钥字符串的结构组成如图2所示,加密模块将密钥、系统CPU编码和密钥 有效期限压缩在一个字符串中,以供文件URL解密时校对。C. Web浏览页面端使用方法及工作原理Web服务器端应用程序将加密后文件URL串和密钥字符串,作为参数发送Web客户端浏览器,并启动控件提交网络文件访问请求,例程代码片断如下< ! DOCTYPE HTML PUBLIC" -//W3C//DTD HTML 4. 01 TransitionaV/EN" ><html><head>{document. getElementById( “ FileNetViewer ‘’ ) · InitialNetwork (〃 192.168.10.164〃,6690);document. getElementByld ( “ FileNetViewer “ ). LoadPDFFile(sPath, sSeed, sSeedLength);}〈/script〉</head><body><script type=" text/javascript" >document, write ( “ 〈OBJECT ID = ' FileNetViewer ' WIDTH ='100%' HEIGHT =' 100%' CLASSID=' CLSID :F23F6B56-A291-44AB-A609_2CA83 BD034C1' X/0BJECT>〃 );//document. getElementByld(" PDFNetViewer123" ). innerHTML ;〈/script〉<script type=" text/javascript" >window. setTimeout(" run_download()" ,4000, “ javascript");〈/script〉</body> </html>· $ {sPath}为加密后文件URL串;·$ {sSeed}密钥字符串;· $ {sSeedLength}密钥字符串的长度;· FileNetViewer 为Web浏览器端控件的标识名;· InitialNetwork函数为Web浏览器端控件初始化网络连接函数,其中IP地址 和端口号参数,指定为文件解析服务器的IP地址和端口号。· LoadPDFFile函数为Web浏览器端控件请求文件访问函数,访问的文件类型为
<script type=" text/javascript“ >
〈base href=" <%= basePath% >" > <title>bodyindex</title>
<% i include file=" · ·/include/taglibs. jsp 〃 % >
var sPath =" ${sPath}〃 ; var sSeed = “ ${sSeed}“; var sSeedLength = ${sSeedLength}; function run_download()
7PDF文件格式类型。浏览器将加密后文件URL串和密钥字符串作为参数传输给控件,请求文 件访问浏览。D.客户机端控件的工作原理,如图3所示1. Web浏览器接口 用于客户机端控件接收Web浏览器发送的参数信息,然后初始 化网络。2.网络数据包加解密层用于对网络传输的数据包进行加密或解密操作。3.网络协议层用于解析或产生客户机与服务器间的通讯指令(“握手”)。4.文件数据解析层将服务器发送来的文件数据进行解析,后将文件数据重组, 或提交下一个数据块所在文件中起止位置信息,后给网络协议层产生“缺包”请求。5.文件数据显示层将数据解析层最终产生图像数据显示给用户,同时,接收用 户的包括图像放大、缩小、翻页等界面操作。E.文件解析服务器的工作原理,如图4所示1.网络数据包加解密层用于对网络传输的数据包进行加密或解密操作。2.网络协议层用于解析或产生服务器与客户机间的通讯指令(“握手”)3.线程池管理器用于管理服务器创建的网络服务线程,每一个服务线程包括三 种状态(空闲状态、运行状态、死亡状态),线程池管理器根据每一接收到的网络连接请求, 动态的在池中挑选一个处于“空闲状态”的线程,为该网络连接进行服务,改变其状态为“运 行状态”,当任务完成网络连接断开后,线程池管理器负责回收服务线程,使其保持于“空闲 状态”,当要服务器关闭时,线程池管理器负责销毁每一个服务线程,改变其状态为“死亡状 态”,直到所有服务线程全部被销毁后,服务器方可关闭。使用线程池技术大大的提高了网 络并发效率,但增大了服务器系统内存。4.文件访问层用于与文件系统的交互,其中包括文件及目录的检索、文件的读 取。此文件访问层屏蔽掉了文件的“写”操作,而文件读取时采用的是“共享读”,使多个线 程可以同时访问同一个文件。5.服务器控制管理器用于本地的应用程序与文件解析服务器进程间通讯,从而 达到控制的同步。6. Microsoft Service Manager 接口层Microsoft Service Manager 是微软操作 系统提供的服务管理器的英文名称(是微软NT技术中“小内核大服务”的重要体现),文 件解析服务器端进程以内核程序的方式嵌入到操作系统中,由Windows操作统一管理和维 护,该接口层主要实现文件解析服务器与操作系统提供的服务管理器进行通讯,将服务器 控制权转交给操作系统的服务器管理器。网络安全浏览电子档案数据系统中,具体运行过程如图6工作原理图和图7工作 流程图所示Web浏览器端向Web服务器端应用程序发送文件访问请求(原理图中①步), Web服务器端应用程序接收到请求后,将文件磁盘存储的相对路径信息,通过加密接口函数 “GetEncrpytPathString”和“GetEncrpytSeedString” 的调用,得到完整的加密后文件 URL 串和密钥字符串(原理图中②、③步,流程图中Si)。Web服务器端应用程序将加密后文件 URL串和密钥字符串发送到客户机Web浏览器页面中(原理图中④步),Web浏览器将其作 为参数输入给Web浏览器端控件(流程图中S2)。至此,Web服务器端应用程序所需的工作全部完成,剩下来的就是文件解析服务器与Web浏览器端控件间进行的工作。文件解析服务器与Web浏览器端控件间的交互可划分三个阶段,第一阶段为解密 文件URL阶段。在该阶段中浏览器端控件只作转包工作,而文件解析服务器只作解密文件 URL和文件定位工作。第二阶段为文件数据传输阶段。在该阶段中浏览器端控件要对下载 的数据进行解析、重组的工作,而文件解析服务器定位文件数据区域、读取文件数据、加密 数据缓冲区、发送数据到浏览器端控件。第三阶段为文件数据显示与交互阶段。在该阶段 中浏览器端控件负责显示文件数据,同时接收用户的操作请求。第一阶段Web浏览器端控件接口层,根据接收到的参数初始化网络,并连接文件 解析服务器,文件解析服务器接收到网络连接请求后,由线程池管理器分配一个服务线程 为该连接提供服务。Web浏览器端控件接口层,将加密的文件URL字符串和密钥字符串保存 到控件的临时缓冲区中,然后发送到控件的网络协议层打包(原理图中⑤步),后发送给文 件解析服务器(原理图中⑥步,流程图中S3)。文件解析服务器的网络协议层解析命令,调 用文件URL加密模块,对文件URL进行解密(原理图中⑦步,流程图中S4)。文件解析服务 器将结果反馈给Web浏览器端控件(解密成功、失败、文件不存在或超时,原理图中⑨步,流 程图中S5)。浏览器端控件的网络协议层解析命令,如果服务器端操作失败,则断开网络连 接。至此,Web浏览器端控件与文件解析服务器间,第一阶段文件URL解密工作全部完成, 此时系统已经明确的定位到客户要访问的档案文件的物理路径。第二阶段Web浏览器端控件的网络协议层向服务器发送文件打开请求(流程图中 S6)。文件解析服务器接收到请求后,由文件访问层打开档案文件,读取文件头部的数据,经 由网络数据包加密层加密后,发送给Web浏览器端控件。浏览器端控件接收到文件数据后, 经由网络数据包解密层解密后,传送给文件数据解析层解析数据(流程图中S7),控件根据 解析结果重组成图像数据(流程图中S8),同时确定下一个需要加载的文件数据块区域的 起止地址。如果存在下一个需要加载的文件数据块,则通过网络协议层将数据的起止地址 打包,发送给文件解析服务器(流程图中S6)。文件解析服务器接收到请求后,经由网络协 议层,获取请求的文件数据块的起止地址,后由文件访问层根据起止地址指定的数据区域 读取文件数据,再由网络数据包加密层加密后,发送给Web浏览器端控件。如此反复,直到 控件将当前文件页面所需所有数据重组完成,断开网络连接。至此,Web浏览器端控件与文 件解析服务器间的数据传输已经全部完成。此时,控件中已经获取了完整的一个档案文件 页面图像,且该页面图像存留在内存中。第三阶段Web浏览器端控件将重组合成完全的图像转给文件数据显示层,显示给 用户浏览使用(流程图中S9)。为增加浏览和使用效果,额外的添加了缩放等交互功能,打 印功能可否使用,由Web服务器应用程序在的加密文件URL时所限定。另外,在客户浏览翻页时,浏览器端控件将之前保存的加密的文件URL字符串和 密钥字符串,重新作为访问参数,重复前面所述的第一阶段,而在第二阶段时,为提高访问 速度,浏览器端控件将已知的下一页面数据的起止地址,通过网络协议层将数据的起止地 址打包,发送给文件解析服务器(流程图中S6),之后的步骤与前所提的方式完全相同。到此为止,网络安全浏览电子档案数据的全过程已全部完成。本发明已经根据具体的实施例和附图进行了详细描述,但这些描述并非用于限制 本发明。在不偏离本发明的精神和范围内,可以对其进行修改和改进。
9
权利要求
一种实现网络安全浏览的系统,包括网络服务器和网络客户端,其特征在于,网络客户端设置浏览器控件模块,用来发送文件浏览请求和重组网络服务器传输的文件数据;网络服务器端设置文件解析服务器模块和服务器加密解密模块,用来解析网络客户端发送的文件传输请求和加密解密传输的文件。
2.如权利要求1所述的网络安全浏览系统,其特征在于所述加密解密模块包括服务器 端文件URL (Uniform Resource Locator,统一资源定位符)加密解密模块和网络数据包加 密解密模块,所述服务器端URL加密解密模块用来将客户请求访问的文件URL信息进行加 密和解密处理;所述网络数据包加密解密模块,用来将文件解析服务器与客户端浏览器控 件间传输的数据包,进行加密和解密处理。
3.如权利要求2所述的网络安全浏览系统,其特征在于所述的网络服务器还包括Web 服务器,所述Web服务器上设置Web服务器接口模块,用来实现Web服务器端应用程序与文 件URL加解密模块之间的数据传输,同时实现Web服务器端应用程序和文件解析服务器间 信息交互。
4.一种实现网络安全浏览的方法,应用在包括网络服务器和网络客户端的网络上,其 中网络客户端设置浏览器控件模块;网络服务器端设置文件解析服务器模块和网络服务器 加密解密模块,其特征在于包括如下步骤1)浏览器端控件模块发送文件数据传输请求给文件解析服务器;2)文件解析服务器模块解析所述的文件数据传输请求,网络服务器加密解密模块将文 件的数据片段加密后发送文件的数据片断给浏览器端控件模块;3)浏览器端控件模块接收文件解析服务器端发送来的文件数据片段,进行本地解析, 重新组织为可视的图形数据显示给用户。
5.如权利要求4所述的实现网络安全浏览的方法,其特征在于所述的网络上还包括 Web服务器,用于向文件解析服务器转发Web客户端的浏览请求。
6.如权利要去5所述的实现网络安全浏览的方法,其特征在于所述的网络服务器包含 文件URL加密解密模块,能将客户浏览器请求访问的文件URL信息进行加密和解密处理。
全文摘要
本发明公开了一种实现网络安全浏览的方法,应用在包括网络服务器和网络客户端的网络上,其中网络客户端设置浏览器控件模块;网络服务器端设置文件解析服务器模块和网络服务器加密解密模块,包括如下步骤1)浏览器端控件模块发送文件数据传输请求给文件解析服务器;2)文件解析服务器模块解析所述的文件数据传输请求,网络服务器加密解密模块将文件的数据片段加密后发送文件的数据片断给浏览器端控件模块;3)浏览器端控件模块接收文件解析服务器端发送来的文件数据片段,进行本地解析,重新组织为可视的图形数据显示给用户。应用本发明所提供的实现网络安全浏览的方法,能够保障电子文档的安全浏览。
文档编号H04L29/06GK101924749SQ20101010229
公开日2010年12月22日 申请日期2010年1月28日 优先权日2010年1月28日
发明者赵路 申请人:赵路
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1