王凤英,张 方,张 伟
(山东理工大学 计算机科学与技术学院,山东 淄博 255049)
基于医疗健康大数据的安全起源模型与可信性验证算法
王凤英,张 方,张 伟
(山东理工大学 计算机科学与技术学院,山东 淄博 255049)
面对医疗健康大数据,使用者或决策者难以判定其来源及是否可信.为了得到可信的数据,需要知道它的安全起源,同时确保数据起源的安全.针对上述问题,提出了基于W3C PROV的安全数据起源模型PROV-S,研究安全起源关系图中的各种标注对象,定义了安全起源伴生节点、安全伴生关系、触发关系以及各组件之间的关联关系.在安全模型PROV-S的基础上,以安全关系类的完整性子类为例,提出了一级完整性设计和验证方案,给出了具有实现可信性的完整性验证方案,并分析了其特点.通过对模型与可信性方案的安全及效率分析表明,建立的模型能保证医疗健康数据的安全性,完整性验证方案能保证数据来源的可信性.
医疗健康大数据; 安全起源模型; 可信性验证; 安全伴生关系
目前大数据的应用在电子商务、出行、医疗、养老等方面都有大量的应用.医疗健康大数据被用来辅助临床决策、指导临床治疗和新药研发.大数据带来便利的同时也存在着安全隐患.大数据的底层是由小的元数据组成的,要追溯大数据的来源,就离不开元数据的溯源.
近几年,元数据(后面简称数据)起源在国际上已成为研究的热点问题,研究集中在模型建立、语义描述、工作流、查询、起源系统实现等.文献[1]介绍了PROV数据起源模型,以及其在Web环境中的简单应用.国际上也召开了一些相关学术会议,最具影响力的会议是 International Provenance and Annotation Workshop (IPAW).目前IPAW[2](每两年召开一次)已经成为研究数据起源最有影响力的国际会议.
文献[3]发表了The open provenance model(OPM,开放起源模型),构建了一套独立的技术规范和图形符号,并进行了形式化描述,基本上形成了业界起源信息交换的标准雏形.Sahoo等[4]提出了Provenir模型,Provenir在语义规则上处理得更完善.Luc Moreau等[5]提出了The open provenance model core specification(OPMCS,开放起源模型核心规范).在Provenir基础上, 结合W3C OWL-DL标准化,推出PROV家族、包括核心数据模型(PROV-DM)等,得到W3C的认可,PROV家族从此成为W3C标准中的一个成员.于W3C已经把PROV作为数据起源技术规范--建议标准,目前学术界普遍把PROV作为数据起源的标准,最新版本见文献[6].
国内外的学者、专家已经注意到了安全数据起源这一源头关键问题,近来已经成为信息安全重要的研究内容之一.Hasan等[7]主要考虑安全起源面临的问题和挑战,以及如何保护起源数据,明确强调了安全起源信息的不可逆性,初步建立了安全起源模型.文献[8]主要说明基于数据源在云计算中实现安全数据取证.文献[9-10]已建立了起源链安全模型、开放安全起源模型.基于这两类模型,研究了起源的完整可信性、保密性、起源审核密钥分发、安全起源在电子商务中的应用等.文献[11]研究了属于安全范畴的医疗大数据的风险自适应的访问控制模型.
医疗健康领域的电子病历属性要求:当发生医疗纠纷时,如果患者怀疑电子病历的真实性,医院要拿出足够充分的证据来证明电子病历的真实可靠性;如果院方的有关人员篡改了电子病历,通过技术手段能找出篡改的痕迹.从技术上讲,电子病历系统是可以记录各种操作痕迹的(完善的操作日志).但电子病历系统的使用者、软硬件的归属方都是医院,因此也存在系统日志被修改或删除的可能性.这样仅仅通过基本的病历信息系统达不到安全的目的,要通过增加基本病历信息的关联信息—起源信息,进行牵制、制约,防止基本病历信息的篡改,甚或即使基本病历信息被篡改也能被发现、被恢复.在这种情况下,要求保证病例起源信息的可信性、完整性、抗抵赖性.以前的医疗及其大数据方面的研究中,有些只考虑PROV但没考虑安全起源问题;要么研究起源的安全问题,但没有与PROV结合;还有些考虑医疗大数据访问控制.本文的研究,将在PROV的基础上研究安全大数据起源模型以及可信性验证方案.
面对医疗健康大数据,提出了基于W3C PROV的安全数据起源模型PROV-S,为可信数据来源奠定基础;并研究了安全起源关系图中的各种标注对象,定义了安全起源伴生节点、安全伴生关系、触发关系以及各组件之间的关联关系,实现数据及其来源的强制绑定关系.
1.1 与起源节点伴生的安全起源伴生节点
图1(a)是一条简单的起源链,包括两个节点P1和P2,这条起源链表示P2起源于P1.为了使起源信息安全,定义安全起源伴生节点如下:
定义1 定义节点S是起源节点P的安全起源伴生节点,S与P是伴生关系,每一个起源节点后紧跟着一个相应的安全伴生节点.
图1(b)是增加了安全伴生节点后的起源链,每一个起源节点后面紧跟着一个伴生的安全起源节点,P1伴生的安全起源节点是S1(简称安全起源节点),P2伴生的安全起源节点是S2.
产生P1后立刻产生安全起源节点S1;同样地,产生P2后立刻产生安全起源节点S2.产生安全起源节点S2所使用的数据,其一来自P2,其二来自产生P2时收集的数据,其三来自由于特殊安全需要在产生P2时额外收集的数据.增加了安全起源节点后,后面起源节点的产生既可以利用前面节点的信息,又可利用安全起源节点的数据(在已经产生的前提下).比如,图1(b)中P2的产生可以同时利用P1和S1的数据.增加了安全起源节点后,典型的节点产生时间顺序关系是:P1、S1、P2、S2.当然,可能出现的情况是S1的产生已开始,但还未结束,P2已经开始,见图1(c).
图1 安全起源链
1.2 基于W3CPROV-DM的安全数据起源模型
PROV的核心结构关注的是起源描述中的基本起源结构,像满足安全需求的一些高级应用却不能够被图2中定义的三类基本节点和七个基本的依赖关系捕捉到,需要将这些基本节点和关系进行拓展才能满足安全需求.由于W3CPROV-DM是一个开放的系统,支持扩展.定义扩展结构的机制包括:子类型、扩展关系、可选的识别和新型关联关系等.
本节将建立安全数据起源模型PROV-S,研究安全起源关系图中的各种标注对象,确立标注对象以及对应的实例,定义安全起源节点各组件之间的新型关系.在PROV-S中标注的对象可以是安全起源关系图、子图、节点、边、角色,甚至是一个标注.一个标注对象可以含有多个标注实例,一个标注对象必须有唯一的标识符.
为了实现起源信息的安全性,将在PROV-DM核心结构图中增加安全起源节点S,建立如图2所示的安全数据起源模型PROV-S,并在PROV-S各节点之间建立安全的关联边.
图2 基于PROV-DM的安全数据起源模型PROV-S
图2中PROV-S由 6个节点和7类关系组成.图2中的一个起源节点P的3类构成节点(组件)是实体(E) 、活动(A)、代理(Ag),与PROV-DM核心结构的定义完全相同;5类关系used、WasGeneratedBy、WasAssociatedWith、WasAttributedTo、ActedOnBehalfOf与PROV-DM核心结构的定义也完全相同.起源节点P的安全伴生节点S的三类节点是安全活动A_S、安全实体E_S和安全代理Ag_S,新增加关系WasSecuredFrom和WasTriggeredBy定义如下.
定义2 定义WasSecuredFrom为实体(Entity)派生关系的安全伴生关系类.
WasSecuredFrom可根据节点的完整可信性、机密性和抗抵赖等安全需求进一步细化分类为:完整可信性子类WasCompletenessOf、机密性子类WasConfidentialityOf、抗抵赖子类WasNon-repudiationOf等,这些子类还可根据不同的需求进一步细化分类.
而关系WasDerivedFrom仅表示一个充分条件,为进一步派生新的实体提供充分的条件.
安全伴生关系WasSecuredFrom比PROV-DM核心结构中定义的派生关系WasDerivedFrom要强.在PROV-DM中,一个终结起源实体E后面将不再具有进一步的派生.而在我们建立的安全起源模型PROV-S中,任何一个实体节点E后面都会紧跟着一个安全伴生实体节点E_S,无论起源实体E是否为终结实体.本文将派生关系分成两类:松散派生关系和强制派生关系,强制派生关系的意思是必需派生,与数据之间密切绑定.把WasDerivedFrom看成一种松散派生关系,而WasSecuredFrom是一种强制派生关系以增加安全组件.
定义3 定义触发关系WasTriggeredBy为活动(Activity)关联关系的安全子类,表示一个活动的结束意味着一个实体的产生,同时也意味着立刻触发另一个或几个安全活动的开始.
WasTriggeredBy比PROV-DM核心结构中定义的WasInformedBy告知关系要强,因为WasInformedBy仅意味着:一个活动开始依赖的实体被告知是由另一个活动产生的,一个终结实体E后将不再具有新活动产生.
其它关系与PROV-DM定义相同,简单说明如下:
虽然确定了A_S和A之间的关系,但并不能明确活动A_S的控制者.理论上出于安全考虑,A_S的控制者最理想应该是代理Ag,这样便于对起源信息进行直接的安全操作.而实际上A_S的控制者也可能是代理信赖的代理应用或其它代理人.
在大数据安全模型PROV-S的基础上,以安全关系类的完整可信性子类为例,提出了一级完整可信性设计和验证方案,给出了具有实现可信性的完整性验证方案,并分析了其特点.
2.1 多起源节点及完整可信性
以安全伴生类wasSecuredFrom的完整可信性子类WasCompletenessOf为例进行研究,假设图2中的安全节点S仅包含完整可信性子类.PROV-S的完整可信性是指单个节点的、起源关系边的、起源关系子图的或是起源关系图的完整可信性子类.
为了不失一般性,本节以起源关系子图为例设计并验证其完整可信性.如图3所示,假设子图包括:实体节点i的每个起源于的关系边及对应的起源于节点.若一个实体节点有n个起源于的关系边,那么实体节点i对应的起源于节点就有n个,分别是i1,i2,……,in.这节给出两种起源信息完整可信性算法设计与验证方案,实体节点i的起源信息是Pi,实体节点ij(j=1,2, ……,n)的起源信息是Pij.
图3 多起源节点及完整可信性
2.2 一级高效起源完整可信性设计与验证
本方案采用数字签名技术实现完整可信性验证.假设签名者已经有经过CA认证的数字证书,数字证书中的公钥对应的私钥用来数字签名.下面对起源关系子图设计完整性验证方案.
2.2.1 一级高效起源信息完整可信性设计与验证方案
PROV-S图形化表示中,拟采用基于公钥算法的数字签名达到抗抵赖.若对起源节点Pi的每个起源于的关系边独立签名,需要n次签名计算.这样的签名计算虽然能更形象地描述和有针对性地验证,考虑到其可行性应尽量减少计算次数,因此拟采用并联n条边的签名方案.若一个实体节点有n个起源于的关系边,那么实体节点i对应的起源于节点就有n个,分别是i1,i2,……,in,实体节点i的起源信息是Pi.根据PROV-N标注属性source的定义,把source描述成为一个四元组集合(i,ij,Agj,Aj)(j=1,……,n)--代表实体节点i第j个起源于的关系边的关联信息,Agj代表第j条边的代理(起源责任人),Aj代表产生第j条边的活动.定义并联起源节点Pi如(1).
(1)
这里,运算符∪表示按序连接各元素.
依据图2中的各构成组件,Si={Ag_Si,A_Si,E_Si}.为了提高效率,首先采用Hash函数(用SHA-256)对并联起源信息散列hash(Pi),然后通过公开密钥密码算法签名.完整可信性子类算法如式(2)所示.
(2)
这里,Sign()是签名函数,SignprivateAg_Si()是安全签名代理Ag_Si用其私钥对起源信息签名产生安全实体E_Si的函数,并保存其签名值.由于Ag_Si的公钥是公开的,被授权验证的任何代理人都可以验证其完整可信性,验证方案如公式3所示.Hash()和Sigh()即为产生安全实体E_Si所进行的安全活动.
若收到了签名信息SS',验证签名函数是Veri(ss'),验证方案见式(3).
(3)
上述完整可信性验证只是对起源节点Pi的1级起源于的关系边进行,是否需要对节点Pi的2级及以上的起源于关系进行完整可信性验证可以视实际的需求而定,本文不再详述.本文并没有给出具体使用哪一种签名算法,签名算法可采用RSA、椭圆曲线等.可以视应用领域要求选取高效、安全的签名算法.
2.2.2 一级高效起源信息完整可信性验证算法
下面采用伪代码的形式来描述对起源关系图PCGraph的完整可信性验证过程,其中定义GetPrecursorofNodes()函数来获取Pi节点的起源于节点,定义变量arr的数据类型为结构体数组,用来存储GetPrecursorNodes()函数的返回值,定义GetCompletenessSignonNodes()函数来获取Pi节点完整可信性签名.完整可信性验证算法伪代码如表1所示.
表1 完整可信性验证算法
2.2.3 一级高效起源信息完整可信性验证算法分析
表1关于完整可信性验证算法描述中,将遍历起源关系图PCGraph中的每一个节点.
只有授权审计员能查看安全起源信息,而完整可信性验证是安全问题之一.这里的验证主要是针对起源关系图的完整可信性验证,任何一个有权访问起源关系图的用户都能够验证其完整可信性.当验证不通过时,就需要管理或审计人员的复审.
对于起源关系图的验证顺序这里并没有做统一的要求,可以使用对有向无环图拓扑排序的结果,亦可以采用逐一验证的方式.
一个起源关系图由若干起源关系边组成,这里仅研究一级起源完整可信性.在整个起源关系图的验证过程中,只要有一个起源节点的完整可信性验证失败,则整体验证失败.只有当所有节点的起源信息的完整性都验证成功,才说明整个起源关系图完整可信性验证成功.
与以前的一些相关研究的特征比较,作者在本文中提出的模型与方案,有更好的安全性和更高的效率.表2列出了部分对比结果.
表2 相关研究特征比较
与现有典型的模型[7,9-10]相比,本文提出的PROV-S,是W3C标准下的,概念更精准,更易实现标准化.
本文将派生关系分成两类:松散派生关系和强制派生关系,WasSecuredFrom是一种针对安全的强制派生关系,是必须强制派生的,WasSecuredFrom的定义使得数据与起源安全进行了绑定,进而增强了安全性.本文给出的可信性算法,便于系统实施.
本文针对医疗健康大数据方面的应用需求,研究了数据来源可信和安全问题,提出了基于W3CPROV的安全数据起源模型PROV-S,给出了具有实现可信性的完整性验证方案,并分析了其特点.最后通过对模型与可信性方案的安全及效率分析表明,建立的模型是可保证医疗健康数据的安全性,完整性验证方案能保证数据来源的可信性.PROV-S仅仅是一个初步的模型,提出的两个安全类型完整性子类,具有现实应用意义.另外,针对安全起源的保密性、不可否认性等算法,都有待进一步研究.
[1]NIJ,MENGX.PROVdatasourcemodelandWebapplications[j].Libraryandinformationservice,2014,58(3):13-18.
[2]InternationalProvenanceandAnnotationWorkshop(IPAW) [EB/OL].(2013-03-12)[2015-03-21].http://www.ipaw.info/
[3]MOREAUL,FREIREJ,FUTRELLEJ,etal.Theopenprovenancemodel[EB/OL].(2013-03-12)[2015-03-21].Southampton:SchoolofElectronicsandComputerScience,UniversityofSouthampton,2007.http://openprovenance.org/.
[4]SAHOOSS,BARGARS,GOLDSTEINJ,etal.Provenancealgebraandmaterializedview-basedprovenancemanagement[C]//Procofthe2ndInternationalProvenanceandAnnotationWorkshop,2008: 531-540.
[5]MOREAUL,CLIFFORDB,FREIREJ,etal.TheOpenProvenanceModelCoreSpecificationv1.1 [J].FutureGenerationComputerSystems, 2011, 27(6):743-756.
[6]W3Cprov-overview[EB/OL].(2013-03-12)[2015-03-21].http://www.w3.org/TR/2013/WD-prov-overview-20130312/.
[7]HASANR,SIONR,WINSLETTM.IntroducingSecureProvenance:ProblemsandChallenges[C].StorageSS'07,Alexandria, 2007.
[8]LIJ,CXF,HUANGQ,etal.Digitalprovenance:Enablingsecuredataforensicsincloudcomputing[J].FutureGenerationComputerSystems, 2013, 37(7):259-266.
[9]WANGFY,LIXM,LICH,etal.ResearchonprovenancesecurityofE-commerceinformation[J].InformationTechnologyJournal, 2013, 12(23):67-70.
[10]LIUT,WANGFY.ThesecurityprovenancemodelbasedonOPM[J].ApplicationResearchofComputer,2013, 30(10) :3117-3120.
[11]惠榛,李昊,张敏,等.面向医疗大数据的风险自适应的访问控制模型. 通信学报,2015,36(12):190-199.
(编辑:姚佳良)
Securing data provenance and creditability validation study based on big data of health care
WANG Feng-ying, ZHANG Fang,ZHANG Wei
(School of Computer Science and Technology, Shandong University of Technology, Zibo 255049, China)
In big data of health care environment, it is difficult for users and decision makers to determine if data provenance is trustworthy. In order to obtain reliable data, we need to know its secure provenance, so ensuring the security of the data provenance is of great significance to information security. To solve these problems,we propose securing data provenance model PROV-S, which studies the various label objects in securing provenance relationship diagram and defines concomitancy nodes of securing provenance, secure concomitancy relationships, trigger relationships, and association relationships between components. Based on the PROV-S, using the completeness subclass of security relationship class as an example,we propose a creditability scheme of first-level provenance completeness, give an algorithm for complete creditability verification, and analyze the algorithm′s characteristics. Finally, analysis to the safety and efficiency of models and credible scheme shows that the established model could ensure security of health care data, and integrity verification scheme could ensure the credibility of data provenance.
big data of health care; secure provenance model; creditability verification; security concomitancy relationships
2016-10-07
国家自然科学基金项目(61473179); 山东省重点研发计划项目(2016GGX101027);山东省自然科学基金项目(ZR2014FM007, ZR2013FM013)
王凤英, 女,wfy@sdut.edu.cn
1672-6197(2017)06-0006-06
TP393
A