基于XML文件访问控制的电子档案安全保障技术研究
石念峰++韩振英++李宝玲
摘 要:分析了电子档案元数据构成和归档安全性要求,提出了基于XML文件访问控制机制的电子档案安全保障模型(xERSPM)。通过敏感性信息嵌入、文件访问权限控制、XML签名、XML应用防火墙验证等信息安全机制,解决了电子档案访问、传输等操作过程的安全性问题。在xERSPM模型的XML文件访问机制控制下,采用电子档案数据分类封装、数字摘要和XML签名等技术,解决了电子档案封装包持续更新和多次数字签名认证问题。
关键词:电子档案;安全保障;XML签名;访问控制列表;信息安全
电子档案安全保障技术是电子档案的归档、鉴定、处置、移交、利用的根本性保障[1]。由于电子政务系统和档案管理系统的复杂性和多样性,电子档案安全保障通常是一个跨网络的、异构系统之间数据转换和信息共享的安全保障问题。随着电子政务系统和OA系统普及和深入应用[2],如何保障电子档案管理的安全性是电子档案管理工作面临的新挑战。
本文在分析电子档案元数据构成和归档安全性要求的基础上,借助XML文件信息安全和电子档案封装技术,构建基于XML文件访问控制机制的电子档案安全保障模型,以高效保障电子档案安全。
1 电子档案安全保障要点及实现机制
电子档案安全保障的核心目标是维护电子档案的真实性和长期可读性,防止电子档案受损、失真、不可读,保障电子档案与归档时的状态一致[1]。电子档案的真实性包括电子档案归档时来源身份和原始状态是真实可证的和电子档案的保管过程可追溯、可审计性等两个层面的含义[7]。针对电子档案的真实性保障,档案界已经开展很多研究,如数字签名、元数据管理等[2]。电子档案长期可读性要求档案管理系统要对电子档案实体进行一定处理,使之满足长期可读的格式和存储要求,防止其丢失和失效。目前主要保障措施有格式转换和基于封装包的数字迁移等。
电子文件封装技术是一种将电子文件数据实体及其元数据按指定结构打包的技术,例如VEO(Victorian Encapsulated Object)、METS(Metadata Encoding and Transmission Standard)[8]等。由于电子文件封装技术具有资源自包含、自描述、自证明等特性,档案界认为它是一种有效的电子档案安全保障技术。国家档案局2009年颁布的《基于XML的电子文件封装规范DA/T48-2009》(以下简称“DA/T48-2009标准”)采用VEO对电子档案的封装格式、要求制定了规范,是我国电子政务系统普遍采用的一种电子档案安全保障策略。但实践证明,由于在制定元数据和电子档案实体数据XML封装规范时,DA/T48-2009标准没有最大限度地兼顾电子档案的真实性和长期可读性要求,加之存在VEO技术存在内容不易机器处理、封装包随电子档案保管活动的进行多次封装等局限性,导致它并没有得到广泛地应用。
电子档案元数据包括描述性元数据和管理性元数。一方面,电子档案长期可读性主张将电子档案及其元数据进行整体封装;另一方面,完善的元数据记录有利于追溯档案实体生成和管理过程,是确保电子档案真实性的基础,因此管理性元数据要不断被添加到电子档案元数据中。增加元数据使得电子档案面临多次封装,极易造成内在安全保障风险和漏洞。作为一种解决方案,有研究采用分体式METS技术,将电子档案实体数据的二进制内容以外部文件的形式存在,指向电子档案实体数据的链接封装在“文件列表块”中,元数据统一记录在“描述性元数据块”和“管理元数据块”中。[8]分体式METS技术在一定程度上提高了电子档案封装包的稳定性,降低了内在风险。但由于每次更新电子档案封装包都要增加数字签名,使得电子档案部分数据仍要多次封装,而且还导致了电子档案的真实性过分依赖于对第三方的信任。
综上所述,由于目前采用的有些安全保障策略很难兼顾真实性和长期可读性的双重要求,导致电子档案安全保障工作难以高效地开展。因此,如何高效地解决电子档案封装包持续更新问题和多次数字签名认证问题,是电子档案管理系统安全保障的关键。
2 基于XML文件访问机制的电子档案安全保障模型
2.1 模型框架。基于XML文件管理机制的电子档案安全保障模型(XML-based Electronic Records Security Protection Model,xERSPM)由访问权限控制智能体ACA、电子档案封装智能体EREA、XML防火墙、数据资源、可信用户等五个部分构成(如图1所示),各部分功能如下:
(1)访问权限控制智能体(ACA):根据访问权限控制策略,判断用户操作请求是否合法。
(2)电子档案封装智能体(EREA):是一个XML封装模块,ACA决策的实际执行者。EREA的主要职责有三个:①将用户的请求采用XACML协议封装成XML;②按照特定规则将电子档案数据封装成包含敏感性信息的XML文件;③通过XML签名技术,承担电子档案安全性保障工作。
(3)XML防火墙:应用程序级的XML文件防火墙,它可以阻止未经ACA授权或ERAE处理的电子档案流出电子档案管理系统,确保电子档案的安全性。
(4)数据资源:关系型数据库或者XML等格式电子文件的集合,包括电子档案数据库和其它数据库资源。其中,电子档案数据库包括电子档案身份性数据(ERIMD)和电子档案管理性数据(ERMMD)。
(5)可信用户:来自身份确认的用户实体或者应用程序的可信XML文件访问请求。
图1:xERSPM模型的构成
2.2 电子档案访问与封装。xERSPM模型的电子档案访问及XML封装具体流程步骤(如图2所示)为:
Step1:用户通过电子档案管理系统的身份认证系统(Identity Authority System,IAS)确认,成为可信用户,并将电子档案访问请求连同身份验证信息一起提交给电子档案管理系统的ERAE。只有具有IAS签发的合法数字证书的电子档案管理系统(电子政务系统、OA系统等)的用户才能成为可信用户。
Step2:ERAE根据可信用户提交的身份验证信息,从IAS中获得该可信用户的数字证书,按照XACML协议将可信用户的数字证书和电子档案访问请求转换为XML格式(标识为RQxmli)并将RQxmli提交给ACA。
Step3:ACA根据RQxmli中的请求信息,从数据资源中得到相应电子档案访问策略,验证RQxmli的合法性,并将验证结果Reli返回给ERAE。如果用户本次访问请求合法,Reli值为真,否则为假。
Step4:ERAE首先根据RQxmli的用户信息和访问请求,从数据资源中得到电子档案数据{File}i和权限列表ACLi;然后按照散列函数(如MD5)生成{File}i的数字摘要DDi;最后根据XML描述规则将{File}i、ACLi和DDi封装成XML格式的电子文件Filexmli。
图2:xERSPM模型的电子档案访问及XML封装流程
Step5 ERAE使用XML签名算法采用私钥对Filexmli进行XML签名,生成新的XML文件SFilexmli。
Step6: ERAE生成一个对称秘钥SKeyi,使用SM4算法采用SKeyi加密SFilexmli得到密文Cipherxmli。
Step7:ERAE使用SM2算法采用可信用户的公钥加密SKeyi得到密文Cipherskeyi,并将Cipherskeyi和Cipherxmli传输给目标可信用户。
Step8:可信用户得到Cipherskeyi和Cipherxmli后,首先利用私钥解密Cipherskeyi得到SKeyi,然后利用SKeyi解密Cipherxmli得到SFilexmli。
Step9:根据SFilexmli中的ERAE公钥和数字摘要DDi,验证XML签名的真实性和Filexmli的完整性。
Step10:解析XML文件,提取{File}i中的电子档案实体数据、电子档案元数据等数据,按照特定格式解码还原电子档案,完成本次电子档案访问。
2.3 分类封装与XML签名。通常电子档案数据可能是图片、WORD文本、电子表格、多媒体文件,也可能是电子邮件、网页等。在xERSPM模型中,电子档案实体数据及其元数据均被封装成XML文件。为此,首先采用Base64编码器将它们编码为ASCII字符串,然后按照预定格式和要求进行XML文件封装。
为了解决电子档案面临的多次封装问题,在xERSPM模型的XML文件访问控制保障下,本文通过改进分体式METS技术,设计了一种新的电子档案封装技术,即xERSPM封装技术。首先,根据电子档案数据在归档后是否会改变,将电子档案数据分为身份性数据和过程性数据等两大类。身份性数据是电子档案的身份性数据,一经归档就不能改变,它包括电子档案实体数据和描述性元数据两部分内容;过程性数据描述了电子档案的归档、鉴定、处置、移交、利用等环节。然后,将身份性数据和过程性数据分别封装成两个XML文件,即xFile02和xFile01。
在身份性数据文件xFile02中,描述性元数据和档案实体分别封装在“描述性元数据块”和“文件列表块”中,而“文件列表块”记录的是电子档案文件链接。为了保证电子档案的“四性”,首先采用散列函数生成身份性数据的数字摘要,然后采用SM2算法通过私钥加密该数字摘要,将加密结果封装到xFile02的数字签名块中(标识为Signxf02)。同时,在保存xFile02之前,ERAE要先进行XML签名。
在过程性数据文件xFile01中,过程性数据被封装在“管理性元数据块”中。“数字签名块”部分的每一个数字签名由身份性数字摘要和过程性数字摘要组成。xERSPM封装技术要求xFile01封装用户必须对这些元数据进行签名。生成一个数字签名,需要完成3个步骤:首先,根据散列函数生成的xFile01的过程性数字摘要;然后,引用Signxf02得到身份性数字摘要;最后,使用SM2算法使用私钥加密过程性和身份性数字摘要。同时,在保存xFile01之前,ERAE要先进行XML签名。
3 xERSPM模型电子档案安全保障分析
3.1 敏感性信息嵌入与XML签名技术为电子档案长期保存提供了安全保障。xERSPM模型的ERAE在执行基于XML封装时,首先要根据ACA授权从数据资源中得到用户的请求访问的文件资源和访问权限列表,然后生成数字摘要,最后采用XML文件格式封装数字摘要并使用私钥进行XML签名。数字摘要是ERAE通过散列函数生成的,使用私钥进行了签名,因此除了ERAE以外,无论是任何用户都无法篡改XML文件内容以及包含的用户访问权限列表。同时,XML应用防火墙对用户访问权限列表的验证和权限的控制,可以在物理介质层面拦截非法的跨网络文件访问,保证政务网或互联网系统用户无法从电子档案管理系统中非法获得电子档案数据。
3.2 基于SM2和SM4的数字加密为电子档案访问提供了安全保障。通过SM4算法使用对称密钥加密ERAE生成XML文件,不仅提高了XML文件加密的效率,还保证了电子档案管理系统可以满足《GB/T25056-2010证书认证系统密码及其相关安全技术规范》等标准规范提出的新要求。此外,通过SM2算法使用访问请求用户的私钥加密上述对称密钥,使得只有合法用户才能解密对称密钥,进而解密电子档案,保证了电子档案不会被其它用户非法获得。
3.3 分类封装技术和XML签名技术为电子档案的“四性”提供了安全保障。一方面,对于身份性数据, xFile02记录了加密后的身份性数字摘要,保证了身份性数据封装操作的可信性、不可抵赖性和完整性。在身份性数据封装完成后,ERAE会对其XML签名保存,因此除非ACA和ERAE许可,否则任何用户都无法修改或再次生成xFile02,确保了身份性数据的完整性、真实性。另一方面,对于过程性数据,xFile01记录了加密后的过程性数据数字摘要和xFile02的数字签名,保证了电子档案的完整性、可信性和不可抵赖性。在过程性数据封装完成后,ERAE会对其签名保存,确保了身份性数据的完整性、真实性。此外,电子档案的身份性数据和过程性数据分开封装,当电子档案管理活动产生的管理性元数只会导致xFile01多次封装,降低了电子档案安全保障措施的内在安全风险,有利于电子档案永久性保存。同时,在xERSPM模型中,无论是电子档案管理系统用户还是电子政务系统或者互联网用户,对电子档案执行的访问都须经过ERAE、ACA和XML应用防火墙构成的三级安全性认证。因此,即使在缺少权威的第三方CA认证,档案管理系统也可以保证数字签名的真实性。
4 结语
电子档案安全保障是电子政务环境中电子档案管理的关键性技术问题。本文构建的电子档案安全保障xERSPM模型将操作权限列表和数字摘要等作为敏感性信息封装到XML中,并采用SM2非对称加密技术对操作权限列表和数字摘要等敏感性信息加密和签名,不仅可以通过访问权限控制智能体阻止未授权用户获取或操作电子档案,也可以借助XML应用防火墙阻止未经授权的电子档案在企业政务网、企业内网或者互联网上传播,确保了电子档案的安全性和真实性。同时,在xERSPM模型的XML文件访问机制控制下,采用电子档案数据分类封装、数字摘要、XML签名和SM2与SM4混合加密等技术不仅可以兼顾电子档案真实性和长期可读性的双重要求,可以满足我国新时期对电子档案管理系统提出的安全性新要求。
*本文系河南省科技厅科技攻关资助项目 “基于政务网的电子文件管理系统研究”(编号:142102210120)和“基于数据关联分析的网络安管平台研发”(编号:162102210047);河南省科技厅基础前沿资助项目“基于透明加密的网络安全模型及稳定性研究”(编号:142300410014)的阶段成果。
参考文献:
[1]陈永生,侯衡等.电子政务系统中的档案管理:文件归档[J].档案学研究,2015(3):10~20.
[2]冯馨雨,李珂.河南省直单位电子文件形成与归档情况调查报告[J].档案管理2015(2):59~61+44.
[3]陈永生,苏焕宁等.电子政务系统中的档案管理:安全保障[J].档案学研究,2015(4):29~40.
[4]程妍妍.国际电子文件元数据封装方法VEO和METS的比较研究[J].现代图书情报技术, 2011(10): 7~11.
(作者单位:石念峰,韩振英,洛阳理工学院;李宝玲,河南省档案局 来稿日期:2016-08-06)