发明内容
本发明利用XML数据作为跨平台数据交换中介,通过Web Service技术作为通信方式,提供了一种异构涉密电子政务系统电子文件数据交换与共享系统。
本发明采用如下技术方案:
一种涉密电子文件数据交换与共享系统包括:一个数据交换中心、数个数据交换中心客户端。数据交换中心主要由数据交换模块、数据存储模块和数据安全模块组成,它是实现异构涉密电子政务系统电子文件数据共享和交换的中心;数据交换中心客户端由政府各个部门的本地涉密电子政务系统和数据交换中心本地代理组成;数据交换中心本地代理主要由数据交换模块和数据安全模块组成,它为本地涉密电子政务系统提供统一Web数据访问接口。客户端通过Web数据接口与数据交换中心交互,整个交互过程遵循统一的Web Service消息协议,消息与数据均采用标准的XML格式。针对保密工作的特殊性,数据交换中心设有数据安全模块和数据交换日志审计模块,数据安全模块提供细粒度的数据加密、解密、分层控制访问权限、数字证书、电子签章、数字签名等服务,保障涉密电子文件交换过程的安全性和合法性。数据交换日志审计模块对数据交换的日常操作进行自动登记,系统管理员可以根据日志对工作人员进行审计,为泄密事件的认定、泄密责任的追究提供依据。
优选的,数据交换中心由多个服务模块组成,其结构包括:
(1)数据存储模块:与数据库进行联接并通过数据库访问接口将接收到的电子文件数据存入数据库或从数据库查询用户请求的电子文件数据。
(2)数据管理模块:与数据存储模块联接,主要任务是对涉密电子文件及其属性进行新增、删除、查询、修改等操作。
(3)数据交换模块:与数据管理模块联接,实现数据交换的核心功能,提供数据转换和交换功能。
(4)数据目录模块:与数据管理模块联接,提供数据交换中心电子文件目录服务。处理用户提交的涉密电子文件查询请求,返回查询结果。
(5)数据安全模块:与数据交换模块、数据目录模块联接,提供细粒度的数据加密、解密、分层控制访问权限、数字证书、电子签章、数字签名等服务。最大程度地降低涉密电子文件数据在跨单位交换时泄密的风险保障涉密,电子文件交换过程的安全性和合法性。
(6)数据交换日志审计模块:与数据安全模块联接,对数据交换的日常操作进行自动登记,登记的内容包括操作人、操作时间、操作内容等。数据交换中心系统管理员可以根据日志对工作人员进行审计,为泄密事件的认定、泄密责任的追究提供依据。
(7)消息处理模块:与数据交换日志审计模块联接,统一处理数据交换中心客户端与数据交换中心的所有交互消息,对消息进行解析,调用数据安全模块对消息内容进行数据加密、解密、控制访问权限检查、签名校验处理。
(8)Web数据访问接口:与消息处理模块联接,数据交换中心向客户端提供的网络通信接口。包括基于XML的消息格式、消息的传送方式。
优选的,数据交换中心本地代理由多个服务模块组成,其结构包括:
(1)数据访问模块:提供与本地涉密电子政务系统的数据访问接口,使数据交换中心本地代理与本地涉密电子政务系统能够顺利完成数据访问。
(2)数据交换模块:与数据访问模块联接,主要是将本地涉密电子政务系统数据与标准的XML数据进行互相转换。
(3)数据安全模块:与数据交换模块联接,提供细粒度的数据加密、解密、分层控制访问权限、数字证书、电子签章、数字签名等服务。
(4)数据交换日志审计模块:与数据安全模块联接,对本地数据交换的日常操作进行自动登记,登记的内容包括操作人、操作时间、操作内容等。本地涉密电子政务系统管理员可以根据日志对工作人员进行审计,为泄密事件的认定、泄密责任的追究提供依据。
(5)消息处理模块:与数据交换日志审计模块联接,统一处理数据交换中心的所有交互消息,对消息进行解析,调用数据安全模块对消息内容进行数据加密、解密、签名校验处理。
(6)Web数据访问接口:与消息处理模块联接,客户端向数据交换中心提供的网络通信接口。
本发明还公开了一种应用于上述系统的异构涉密电子政务系统电子文件数据交换方法,其按如下步骤进行:
(1)第一机关A向数据交换中心提交查阅其他机关涉密电子文件请求;
(2)数据交换中心将自己的数字证书(公钥)通过政府专用网络发送给第一机关A;
(3)第一机关A收到数据中心应答后,构建请求文件消息(消息包含请求机关名、被请求机关名、电子文件信息等)、本机关的数字证书发送给数据交换中心;
(4)数据交换中心对请求消息进行处理,通过数据目录模块查询请求的电子文件,如果含有请求的电子文件,转到步骤(10),否则继续步骤(5);
(5)数据交换中心向第二机关B提交查阅涉密电子文件请求;
(6)第二机关B将自己的数字证书(公钥)通过网络发送给数据交换中心;
(7)数据交换中心向第二机关B发送请求文件消息、数据交换中心的数字证书;
(8)第二机关B对请求消息进行处理,如果同意第一机关A的请求信息,则通过数据交换中心本地代理模块,将电子文件数据生成标准XML格式数据,对电子文件制定细粒度的数据加密与分层控制访问权限策略;然后,构建同意请求消息发送给数据交换中心;否则发送拒绝请求消息;
(9)数据交换中心收到第二机关B的同意请求消息后,对消息进行分析,对用户制定的细粒度的数据解密,设置分层控制访问权限,将XML数据转换为本地数据格式存储到数据交换中心;
(10)分析请求电子文件的控制访问权限,如果第一机关A符合权限,则将电子文件数据转换为标准XML数据,并利用第一机关A的数字证书公钥对XML数据进行加密发送给第一机关A;如果第一机关A不符合权限,则向其发送拒绝请求消息;
(11)第一机关A的数据交换中心代理收到数据中心应答消息后,将XML数据转换为本地数据格式存储到本地数据库。
优选的,当数据交换中心接到电子文件请求消息时,确定请求的文件在数据中心存在后,细粒度的涉密电子文件加密方法与分层控制访问权限方法按照以下步骤:
(1)根据文件请求消息,分析出请求的机关a、部门d、人员p;
(2)对电子文件eD的每个数据块eDi,检查请求机关、部门或者人员是否有权限访问请求eDi,
checkPermission(eDi,eDi c,a,d,p)
得到请求机关、部门或者人员具有访问权限的电子文件数据块eDi,eDj,…,eDk;
(3)对eDi,eDj,…,eDk利用存储的公钥进行加密,
eDi s=Encrypt(eDi,ak,dk,pk)
得到加密后的部分文件eDs p=eDi s∪eDj s∪…∪eDk s;
(4)对加密后的部分文件进行数字签名后,发送给请求机关;
(5)请求机关接收到电子文件后,利用自己的私钥对电子文件的每个数据块进行解密,得到解密后的电子文件。
本发明涉密电子文件数据交换与共享系统具有以下有益效果:
(1)数据交换中心实现数据存储功能,各政府机关的本地涉密电子政务系统与数据交换中心通过网络连接,能够完成涉密电子文件数据交换、涉密电子文件查询、涉密电子文件管理。
(2)为每个本地涉密电子政务系统配置一套数据交换中心本地代理系统,该本地代理能够完成数据转换、数据安全、消息处理等标准服务,提供统一Web数据访问接口,降低了本地涉密电子政务系统的开发难度、开发成本和维护成本。
(3)本地涉密电子政务系统与数据交换中心通过Web Service技术实现通信,以XML技术作为信息和数据交换技术,屏蔽了各机关单位涉密电子政务系统的异构性。
(4)用户可以对电子文件制定细粒度的数据加密,分层控制访问权限策略,数据交换中心确保用户制定的策略得到执行,保证本地涉密电子政务系统与数据交换中心数据传输的安全和访问权限的控制。同时,数据交换中心提供数字证书、电子签章、数字签名服务,确保数据交换双方身份的真实性。从而可以保障涉密电子文件交换过程的安全性和合法性。
(5)数据交换中心能够对涉密电子文件进一步进行数据挖掘、分析,为政府制定相关政策提供数据支持。
具体实施方式
下面结合附图详细说明本发明的具体实施方式。
本发明涉密电子文件数据交换与共享系统主要解决异构涉密电子政务系统中电子文件数据交换与共享问题,其使跨部门保密工作能够安全、有效地展开,整个涉密电子文件数据交换与共享系统总体框架如图1所示,该系统由一个数据交换中心、数个数据交换中心客户端组成。数据交换中心主要由数据交换模块、数据存储模块与数据安全模块组成,它是实现异构涉密电子政务系统电子文件数据共享和交换的中心;数据交换中心客户端由政府各个部门的本地涉密电子政务系统和数据交换中心本地代理组成;数据交换中心本地代理主要由数据交换模块与数据安全模块组成,它为本地涉密电子政务系统提供统一Web数据访问接口。客户端通过Web数据接口与数据交换中心交互,整个交互过程遵循统一的Web Service消息协议,消息与数据均采用标准的XML格式。
数据交换中心包括多个服务模块,其结构如图2所示:
(1)数据存储模块:与数据库联接并通过数据库访问接口将接收到的电子文件数据存入数据库或从数据库中查询用户请求的电子文件数据。
(2)数据管理模块:与数据存储模块联接,其对涉密电子文件及其属性进行新增、删除、查询、修改等操作。
(3)数据交换模块:与数据管理模块联接,实现数据交换的核心功能,提供数据转换和交换功能。
(4)数据目录模块:与数据管理模块联接,提供数据交换中心电子文件目录服务。处理用户提交的涉密电子文件查询请求,返回查询结果。
(5)数据安全模块:与数据交换模块、数据目录模块联接,提供细粒度的数据加密、解密,分层控制访问权限,数字证书、电子签章、数字签名服务。最大程度降低涉密电子文件数据在跨单位交换时泄密的风险保障涉密,电子文件交换过程的安全性和合法性。
(6)数据交换日志审计模块:与数据安全模块联接,对数据交换的日常操作进行自动登记,登记的内容包括操作人、操作时间、操作内容等。数据交换中心系统管理员可以根据日志对工作人员进行审计,为泄密事件的认定、泄密责任的追究提供依据。
(7)消息处理模块:与数据交换日志审计模块联接,统一处理数据交换中心客户端与数据交换中心的所有交互消息,对消息进行解析,调用数据安全模块对消息内容进行数据加密、解密、控制访问权限检查、签名校验处理。
(8)Web数据访问接口:与消息处理模块联接,其是数据交换中心向客户端提供的网络通信接口,包括基于XML的消息格式、消息的传送方式。
数据交换中心本地代理由多个服务模块组成,其结构如图3所示,包括:
(1)数据访问模块:提供与本地涉密电子政务系统的数据访问接口,使得数据交换中心本地代理与本地涉密电子政务系统能够顺利完成数据访问。
(2)数据交换模块:与数据访问接口联接,主要是将本地涉密电子政务系统数据与标准的XML数据进行互相转换。
(3)数据安全模块:与数据交换模块联接,提供细粒度的数据加密、解密,分层控制访问权限,数字证书、电子签章、数字签名等服务。
(4)数据交换日志审计模块:与数据安全模块联接,对本地数据交换的日常操作进行自动登记,登记的内容包括操作人、操作时间、操作内容等。本地涉密电子政务系统管理员可以根据日志对工作人员进行审计,为泄密事件的认定、泄密责任的追究提供依据。
(5)消息处理模块:与数据交换日志审计模块联接,统一处理与数据交换中心的所有交互消息,对消息进行解析,调用数据安全模块对消息内容进行数据加密、解密、签名校验处理。
(6)Web数据访问接口:与消息处理模块联接,其是客户端向数据交换中心提供的网络通信接口。
异构涉密电子政务系统的数据交换流程如图4所示:假设两个机关部门之间需要进行涉密电子文件的交换,其流程如下:
(1)机关A向数据交换中心提交查阅其他机关涉密电子文件请求。
(2)数据交换中心将自己的数字证书(公钥)通过网络发送给机关A。
(3)机关A收到数据中心应答后,构建请求文件消息(消息包含请求机关名、被请求机关名、电子文件信息等)、本机关的数字证书发送给数据交换中心。
(4)数据交换中心对请求消息进行处理,通过数据目录模块查询请求的电子文件,如果含有请求的电子文件,转到步骤(10),否则进行步骤(5)。
(5)数据交换中心向机关B提交查阅涉密电子文件请求。
(6)机关B将自己的数字证书(公钥)通过网络发送给数据交换中心。
(7)数据交换中心向机关B发送请求文件消息、数据交换中心的数字证书。
(8)机关B对请求消息进行处理,如果同意机关A的请求信息,则通过数据交换中心本地代理,将电子文件数据生成标准XML格式数据,对电子文件制定细粒度的数据加密与分层控制访问权限策略。然后构建同意请求消息发送给数据交换中心。否则发送拒绝请求消息。
(9)数据交换中心收到机关B的同意请求消息后,对消息进行分析,对用户制定的细粒度的数据解密,设置分层控制访问权限,将XML数据转换为本地数据格式存储到数据交换中心。
(10)分析机关A请求的电子文件的控制访问权限,如果机关A拥有访问权限,则将电子文件数据转换为标准XML数据,并利用机关A的数字证书公钥对XML数据进行加密发送给机关A。如果机关A不符合权限,则向其发送拒绝请求消息。
(11)机关A的数据交换中心代理收到数据中心应答消息后,将XML数据转换为本地数据格式存储到本地数据库。
为了保证本地涉密电子政务系统与数据交换中心数据传输的安全和访问权限的控制,本发明提出一种细粒度的涉密电子文件加密与分层控制访问权限方法,用户可以对电子文件进行细粒度加密和设置分层访问权限。数据交换中心确保用户制定的策略得到执行,保障涉密电子文件交换过程的安全性和合法性。本发明提出的细粒度的涉密电子文件加密方法与分层控制访问权限策略原理如图5所示。
本发明将涉密电子文件分为文件基本信息与文件正文,文件基本信息与文件正文分为多个数据块,每个数据块作为独立的访问控制单元。对于每个数据块,用户需要为其设置分层访问权限和细粒度的数据加密策略。对于分层访问权限设置,本发明按照机关、部门、人员三层来划分,用户也可以按照自己的需求划分层次。如图5所示,机关A拥有文件基本属性的访问权限,但并不是机关A中的所有部门都有权限访问,用户可以继续设置机关中那个部门或者那个人员有权限访问文件基本信息。设置完访问权限后,需要保存相应机关、部门或者人员的公钥,以便在文件交换时对文件块进行加密。本发明提出的细粒度的涉密电子文件加密方法与分层控制访问权限策略允许用户只对电子文档中的部分信息根据不同机关的、不同部门、不同人员的权限来加密,避免了对整个文件进行加密,不仅有利于涉密电子文件的安全共享,也提高了系统的效率。
假设电子文件用eD来表示,eD1,eD2,…,eDn为电子文件的各个数据块,则eD=eD1∪eD2∪…∪eDn。
每个文件数据块的分层控制访问权限用eDn c来表示。
eDn c={[a1,(d1,d2,…,dn),(p1,p2,…,pn)],[a2,(d1,d2,…,dn),(p1,p2,…,pn)],…,[an,(d1,d2,…,dn),(p1,p2,…,pn)]}
a代表机关,d代表部门,p代表人员。
每个文件数据块的加密公钥用eDn k来表示,
ak代表机关的加密公钥,dk代表部门的加密公钥,pk代表人员的加密公钥。
加密后的电子文件用eDs来表示,eD1 s,eD2 s,…,eDn s为电子文件的加密后数据块,则eDs=eD1 s∪eD2 s∪…∪eDn s。
当数据交换中心接到电子文件请求消息时,确定请求的文件在数据中心存在后,按照以下步骤对电子文件进行处理。
(1)根据文件请求消息,分析出请求的机关a、部门d、人员p。
(2)对电子文件eD的每个数据块eDi,检查请求机关、部门或者人员是否有权限访问请求eDi,
checkPermission(eDi,eDi c,a,d,p)
得到请求机关、部门或者人员具有访问权限的电子文件数据块eDi,eDj,…,eDk。
(3)对eDi,eDj,…,eDk利用存储的公钥进行加密,
eDi s=Encrypt(eDi,ak,dk,pk)
得到加密后的部分文件eDs p=eDi s∪eDj s∪…∪eDk s。
(4)对加密后的部分文件进行数字签名后,发送给请求机关。
(5)请求机关接收到电子文件后,利用自己的私钥对电子文件的每个数据块进行解密,得到解密后的电子文件。
本领域普通技术人员应当认识到,以上实施例仅是用来说明本发明,而并非作为对本发明的限定,只要在本发明的范围内,对以上实施例的变化、变形都将落在本发明的保护范围。