一种面向服务组合的隐私最小暴露方法与流程

文档序号:17928157发布日期:2019-06-15 00:34阅读:129来源:国知局
一种面向服务组合的隐私最小暴露方法与流程

本发明属于服务组合的隐私保护方法技术领域,特别是涉及一种面向服务组合的隐私最小暴露方法。



背景技术:

隐私作为非功能属性,最早作为一种“保持个人独处”的人权被提出。由于信息产业的快速发展,隐私的外延也随之扩大,并将其应用到软件和网络产业上。随着社交网络的普及与软件的规模不断扩大,复杂性不断提高,移动智能终端的广泛使用,用户对软件的性能和可靠性的要求日趋提高,用户除了对功能属性的需求之外,非功能属性也逐渐成为用户和商家评估软件质量的重要因素之一。而隐私信息的保护能力也成为网络与软件非功能属性的主要因素。由于虚拟技术和功能隔离理论与技术的出现,以软件定义服务,软件定义网络为代表,使得软件在整个系统中的功能实现比重日趋增大。为了满足用户的功能需求,隐私法律文本及其应用场景与上下文环境的演化要求,软件模型也必需发生演化。而如何在演化环境中,保持用户隐私需求与软件模型的一致性、发生演化后模型的正确性以及运行时软件模型对隐私策略的可满足性成为新计算范型中信息安全研究的难点。

在信息系统与软件工程领域,隐私保护被定义为代表个体控制自身信息被他人收集,暴露和维持的能力。云计算环境中的隐私保护被定义为云服务的用户控制个人敏感信息(psi)被云服务提供者收集,使用,暴露和维持的能力。在大数据的背景下,云计算已经作为一种新型的计算模式为用户提供服务,成为广大学者研究的焦点。云计算除了传统web服务的优点外,还具备按需提供服务,支持普适网络访问、资源池位置独立、资源快速伸缩、费用按使用收取等一系列优点,同时,具有服务外包化,虚拟化,分布式,多租户等一系列特点。这些特点提高了云计算的服务质量,减少了计算资源的浪费,如:服务外包化可以通过服务组合的方式提高服务的能力和专业化水平。但与此同时,云计算是一种多方协同、透明交互与演化的计算平台,用户隐私数据对saas层协同各方来说,是透明交互,并且在完成交互后,由云服务参与者存储和使用,用户丧失了对其数据的控制权。因此,当服务组合发生演化后,用户的隐私数据及易被退出服务组合的参与者泄露。典型事件如,google于2012年3月1日起实施的新的统一隐私策略,在美国多地被用户起诉,在欧盟被调查并暂缓实施。根据美国电子隐私信息中心(epic)分析,“google的新隐私策略没有考虑外包服务对隐私数据的使用,以及隐私数据在服务之间传播的设置与管理,无法正确体现用户的隐私需求,并有可能与当地法律相冲突。”2016年,美国有线电视公司时代华纳32万用户数据被盗、tumblr超6500万邮箱账号密码泄露、linkedin超1.67亿个账户在黑市被公开销售、雅虎宣布有至少5亿用户账户信息被盗取,盗取内容包括用户的姓名、电邮地址、电话号码、生日、密码等。

对组合服务计算过程的隐私增强技术研究还处在概念模型层面,例如卡耐基梅隆大学的anupamdatta教授针对软件开发周期的不同阶段,利用逻辑推理的方法来对隐私信息进行保护;而针对服务组合流程演化环境下的隐私保护研究还属于起步阶段,如普渡大学的qunni提出了一种基于角色的隐私感知模型。liduan等人基于隐私代价模型,提出了一种隐私暴露推荐方法,根据服务所要求的隐私推荐策略和用户的属性建立组合服务模型,并且保证用户的隐私暴露代价最小。rockyslavin等人提出了一种基于android应用的隐私策略违反框架,利用隐私策略本体表示从api接口到隐私策略的映射集,并通过实验证明了此方法的有效性。



技术实现要素:

本发明的目的是为克服上述现有技术的不足而提供一种面向服务组合的隐私最小暴露方法,本发明通过对隐私数据离散化分析与描述以及对敏感度与服务可用性度量;从而保护用户隐私数据安全的目的。

本发明公开了一种面向服务组合的隐私最小暴露方法,包括以下步骤:

步骤1:判断用户输入的隐私数据是离散隐私数据还是连续隐私数据,若为连续隐私数据,则进行步骤2;若为离散隐私数据,则进行步骤6;

步骤2:根据隐私数据之间的关系构建隐私本体树;

步骤3:检测隐私数据中是否包含关键隐私数据,若包含关键隐私数据,以关键隐私数据为根节点对隐私本体树进行遍历,若关键隐私数据存在子节点,查找子节点集合,将子节点集合形成内离散数据链,采用内离散数据链替换关键隐私数据,同时删除内离散数据链中的链外数据,得到新的数据链,进行步骤5;若关键隐私数据不存在子节点,检测隐私数据,查找暴露链,对存在的暴露链进行分解,进行步骤4;若不包含关键隐私数据,则查找暴露链,对存在的暴露链进行分解,进行步骤4;

步骤4:以暴露链中的元素为根节点对隐私本体树进行搜索,查找其子节点集合,将子节点集合形成内离散数据链,采用内离散数据链替换暴露链中的元素,删除内离散数据链中的链外数据,得到新的数据链;

步骤5:对新的数据链进行离散化;

步骤6:获取用户隐私敏感度,并对隐私敏感度进行升序排序,得到对应隐私数据的排序;

步骤7:根据隐私数据对应的可应用性度量值,构造状态空间树,得到服务可用性最小隐私数据集;所述构造状态空间树的约束函数为:

其中,m为组合服务可以为用户提供应用的最小隐私数据集中每个隐私信息可应用性度量值之和,w={w1,w2,,w3,......wn}为每个隐私数据所对应的可应用性度量值,wi≤wi+1,x={x1,x2,x3,......,xn}为服务可应用性隐私集的状态,其中xi∈{1,0};

步骤8:选择一个敏感度最小的隐私数据与服务可用性最小隐私数据集作交集,并将交集的结果作并集,得到满足用户需求的最小隐私数据集。

进一步的,所述步骤6中,若用户有隐私需求,则根据用户隐私需求,将隐私敏感度定义为[0,1]区间上的任意实数,其中0表示敏感度最弱,1表示敏感度最强;若用户无隐私需求,根据用户使用隐私数据的频次获得隐私敏感度。

进一步的,所述步骤5中,删除新的数据链中的末位隐私数据得到离散化后的数据链。

进一步的,若用户无隐私需求,根据式(1)得到数据链中的隐私数据的敏感度值:

其中,μ为每一万字中的隐私数据使用次数,α为系数,k为常数。

进一步的,在所述步骤5后,将步骤5得到的离散化后的隐私数据进行赋值,得到离散隐私数据链实例,根据所述数据链实例判断离散化后的隐私数据是否满足用户隐私需求;若满足用户隐私需求,则进行步骤6,若不满足用户隐私需求,则回到步骤1。

有益效果:本发明与现有技术相比,由于本发明是暴露用户最小的隐私数据集,因此,更能够防止用户隐私信息的泄露,保护用户敏感隐私数据的安全。

附图说明

图1是隐私本体树的示意图;

图2是隐私数据分解的过程的示意图;

图3隐私数据最小暴露框架的示意图。

具体实施方式

下面结合附图和实施例进一步阐述本发明。

本发明的一种面向服务组合的隐私最小暴露方法,尽可能的保证用户的隐私信息不被泄露,使组合服务在提供应用的同时,仅仅使用用户最小的隐私数据集。经第一阶段对隐私数据离散化、隐私数据敏感度分析和服务可用性分析以及第二阶段获取隐私数据的最优化暴露方法;从而达到保护用户隐私信息的目的。具体包括如下内容:

定义1、隐私数据暴露链dc(disclosurechain).在用户所要保护的隐私数据中,根据用户的敏感程度所定义的偏序集其中,pd为隐私数据集,即pd={pd1,pd2,......pdi,......pdn},如:{name,idcode,adress,phonenumber,……}若都满足则称dc为暴露链,如:{name,adress},{name,phonenumber}。偏序集中元素的个数|dc|称为暴露链的长度。

定义2、离散/连续隐私数据dp/cp(discreteprivacydata/continuityprivacydata).离散的隐私数据是指隐私数据集中任意两个隐私数据的组合都不会导致用户隐私信息的暴露,即,不存在暴露链。可以表示为,其中i,j≥1,dc∈dc,如:{name,zipcode,province,age,career}。而连续的隐私数据是指隐私数据集中存在两个隐私数据的组合可以导致用户隐私信息的暴露。可以表示为,其中i,j,r≥1,如:

{name,idcard,adress,phonenumber,zipcode,age}。

定义3、关键隐私数据kp(keyprivacydata).唯一能确定用户身份信息的隐私项,在隐私数据集中存在某个隐私数据,与其它任何一个隐私数据的组合都是连续隐私数据,把这种隐私数据称为关键隐私数据。可以表示为,其中i≥1,n≥k≥1且i≠k,如:idcard。相反,除能确定用户身份信息以外的隐私项,为非关键隐私数据为关键隐私数据的非,可以表示为,其中nkp∈nkp∧kp∈kp,如:{name,adress,phonenumber,zipcode,age}。

定义4、组合离散数据链dpc(compositiondiscreteprivacydatachain).离散数据集合所组成的链就称为组合离散数据链。组合离散数据链需要满足以下两个条件中的任何一个条件即可:

(1)在离散数据集中,任意一个离散数据与连续隐私数据或者离散隐私数据进行组合都不会推导出连续的隐私数据,即:其中通常称这种离散数据链为外组合离散数据链。

(2)设隐私数据链长为a,隐私数据链所组成的集合与关键隐私数据组合可以推导出连续的隐私数据但集合中的任一元素与关键隐私数据不能推导出连续的隐私数据,即:其中,k=a。通过称为这种离散数据链为内组合离散数据链。

例如:{name,zipcode,province,age,career},{country,province,city,district,street}都为离散数据链。

定理1暴露链dc中一定包含一个或多个关键隐私数据kp,即:

证明:根据关键隐私数据的定义可知:所以,

根据连续隐私数据的定义,即定义2可知,连续隐私数据中必然包含暴露链,可能包含关键隐私数据。

连续隐私数据的保护就是将连续隐私数据分解为离散隐私数据。由于必然包含暴露链,所以将暴露链中的具有内离散数据链的父数据进行分解转化为外离散数据。

检测连续隐私数据中存在的暴露链,然后以暴露链中的元素为根节点对隐私本体树进行搜索,查找存在子节点集合;将子节点集合形成内离散数据链i-dpc;利用内离散数据链i-dpc替换隐私数据dpi;删除内离散数据链中的链外数据;将原有的暴露链替换为非暴露链。

由于可能包含关键隐私数据,首先以关键隐私数据为根节点对隐私本体树进行遍历,如果关键隐私数据不存子节点,检测隐私数据集,查找暴露链,对存在的暴露链进行分解。

如果关键隐私数据存在子节点,以关键隐私数据kpd为根节点检索隐私本体树,查找子节点集合;将子节点集合形成内离散数据链i-dpc;利用内离散数据链i-dpc替换关键隐私数据kpd;删除内离散数据链中的链外数据;将原有的暴露链替换为非暴露链。

本发明提出的一种隐私数据敏感度分析和服务可用性分析方法,包括如下具体内容:

定义5、隐私敏感度ps(privacysensitivitydegree):隐私敏感度是用户对个人隐私数据的敏感程度,设ps={ps0,ps1,…,psn-1}为用户的隐私数据链,敏感度可以表示为:sv={sv0,sv1,…,svn-1},其中svi表示数据pi的敏感度,1≤i≤n。将用户的隐私敏感度分为两种情况:

(1)当用户有隐私需求,则根据用户的隐私需求,将用户的隐私信息的敏感程度定义为[0,1]区间上的任意实数,其中0表示敏感度最弱,1表示敏感度最强;

(2)当用户无隐私需求,根据用户使用隐私数据的频次获得,即可以利用递推关系式获取,递推关系式为:

其中,μ为每一万字中的隐私数据使用次数,α为系数,k为常数。

定理1如果选取用户隐私数据时,将其按敏感度升序排序,即:

1/sv0≥1/sv1≥......1/svn-1

并且隐私数据可以分解,则在选择不大于用户所要求的隐私数据集的敏感度时,按照次序选择的隐私数据集必定为满足用户隐私需求的最优数据集。

证明:设x=(x0,x1,…,xn-1),0≤xi≤1,0≤i<n是满足用户隐私需求的最优隐私数据集。若可以为用户提供服务的前提下,所有的隐私数据都可以不暴露,即:xi=0,此时一定是满足用户隐私需求的最优解。否则,设r是使得xr≠1的最小下标。从按照次序进行选取的方式上可知,隐私数据集解的形式为:

x=(1,…,1,xr,0,…,0),0≤xr≤1

如果x不是满足用户隐私需求的最优解,而另有可行解y=(y0,y1…,yk,…,yn-1)是最优解,使得设k是使得yk≠xk的最小下标,则必有yk<xk,可以分3种情况进行说明:

(1)若k<r,则因为xk=1,yk≠xk,所以yk<xk。

(2)若k=r,则xk是第k个隐私数据在分解后可以加入到满足用户隐私数据集的最多个数,从而yk>xk是不可能的。同理,由于yk≠xk,所以必有yk<xk。

(3)若k>r,由于xi=0,r<i<n,若yk≠0,则此隐私数据集必不满足用户的隐私需求。

综上所述,必有yk<xk。

假定以xk替换y=(y0,y1…,yk,yk+1,…,yn-1)中的yk,得到新的隐私数据集z={z1,z2,...zk,zk+1...,zn-1},注意,替换前zi=yi=xi,0≤i<k-1,替换后zk=xk。为了保

因此,x=(x0,x1,…,xn-1),0≤xi≤1,0≤i<n是满足用户隐私需求的最优隐私数据集。

定义6、服务可应用性隐私集pa(service-availability):使得服务可以为用户提供应用的最小隐私数据集,可以利用状态空间树构造此集合。设pa={pa1,pa2,…,pan}为用户的隐私数据集,w={w1,w2,,w3,......wn}为每个用户隐私信息所对应的可应用性度量值,此值由服务提供者设定,假设w是升序有序的,即wi≤wi+1。设x={x1,x2,x3,......,xn}为服务可应用性隐私集的状态,其中xi∈{1,0}。

构造状态空间树的约束函数为:

其中,m为组合服务可以为用户提供应用的最小隐私数据集中隐私信息可应用性度k>n-1,但事实上,根据递归算法的前置条件,在进入第k=n-1层时,总有s+wn-1≤m且s+r≥m,r=wn-1,因此,s+wn-1=m,否则,若其中一个条件不成立,不可能进入第k=n-1层。所以只需要保证调用此算法的初始条件成立,函数就能终止。

以下为服务可用性隐私集的求解算法:4-7行表示当s+wk=m时,输出一组可行解,即为可以使服务可用的一组最小的隐私数据集;8-9行表示当满足s+wk+wk+1<=m时,搜索状态空间树的左子树;10-13行表示当满足(s+r-wk>=m)&&(s+wk+1<=m)时,搜索状态空间树的右子树;15-23行表示计算r的值。

定义7、隐私数据-服务可满足性ps-a(psensitivity-availability):隐私数据与服务之间的可满足性度量可以利用计算满足用户隐私需求的隐私数据集与能够使得服务可运行的隐私数据集的交集获取,即:ps-a=ps∩pa={ps1,ps2,…,psn}∩{pa1,pa2,…,pan}。交集结果有4种情况:

(1)交集为可应用性集合,即:ps-a=ps∩pa={pa1,pa2,…,pan},则说明此隐私数据集满足服务的输入和前置条件,此服务可运行。

(2)交集为隐私敏感性集合,即:ps-a=ps∩pa={ps1,ps2,…,psn},则说明此隐私数据集不满足服务的输入和前置条件,此服务不可运行。在这种情况下,对隐私敏感性集合中元素进行分解,然后再作交集。

(3)交集为隐私敏感性集合的子集或为可应用性集合的子集,即:或者并且此隐私数据集不满足服务的输入和前置条件,此服务不可运行,在这种情况下,可以对交集的补集中的元素进行分解,然后再作交集。

(4)交集为空集,即此隐私数据集不满足服务的输入和前置条件,此服务不可运行。

实施例:

假设服务组合者收集所有的服务参与者的输入和前置条件为用户的姓名(name)、家庭住址(address)、电话号码(phonenumber)、邮政编码(postcode)和年龄(age)等。而用户haowang将自己的隐私数据:姓名(name)、家庭住址(address)和电话(phonenumber)设置为暴露链,同时将姓名(name)设置为关键隐私数据。因此,服务提供者所要求的输入和前置条件所构成的隐私数据集恰为连续的隐私数据。我们可以通过以下步骤来保护用户的隐私数据,具体为:

第一步,根据隐私数据之间的关系构建隐私本体树,如图1所示;

第二步,通过匹配得到连续隐私数据中的暴露链所对应的隐私数据name,address,phonenumber,遍历隐私本体树,我们发现name存在子节点firstname,secondname和lastname,而address存在子节点country,province,city,street和community。

第三步,对隐私数据name和address进行分解,即利用其子节点进行替换;

第四步,对新组成的隐私数据链离散化,即删除内离散数据链中的末位隐私数据,并将连续的数据链改为离散数据链;

第五步,对离散数据链中的隐私数据进行赋值,得到离散隐私数据链实例。此过程也是用户确认隐私数据后向服务提供者暴露的隐私数据集,即:

name(haowang);street(mofan);city(nanjing);province(jiangsu);country(china);phonenumber(+86-123456789);postcode(210033);age(30);

根据用户所定义的暴露链和关键隐私数据可知,最终所得到的隐私数据链是满足用户隐私需求的。

假设离散后的隐私数据通过定义5中的公式(1)得到相应的敏感度值,(ln,postcode,phonenum,street,city,province,country,age)=(0.3,0.2,0.8,0.22,0.18,0.1,0.03,0.6)。并且对敏感度的值进行升序排序,从而得到对应隐私数据的排序(country,province,city,postcode,street,ln,age,phonenum)。

对应的服务可用性度量值为(ln,postcode,phonenum,street,city,province,country,age)=(0.4,0.1,0.9,0.6,0.5,0.2,0.15,0.13),m=2.4。通过定义6中的约束条件构造状态空间树,得到服务可用性最小隐私数据集为(phonenum,ln,street,city)。

客户端每次选择一个敏感度最小的隐私数据与服务可用性最小隐私数据集作交集,并将交集的结果作并集,从而得到满足用户需求的最小隐私数据集:{city,street,ln,phonenum}。

交运算:

{city}∩{phonenum,ln,street,city}={city}

{street}∩{phonenum,ln,street,city}={street}

{ln}∩{phonenum,ln,street,city}={ln}

{phonenum}∩{phonenum,ln,street,city}={phonenum}

并运算:

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1