CN112528316A - 基于贝叶斯网络的隐私保护世系工作流发布方法 - Google Patents
基于贝叶斯网络的隐私保护世系工作流发布方法 Download PDFInfo
- Publication number
- CN112528316A CN112528316A CN202010984734.3A CN202010984734A CN112528316A CN 112528316 A CN112528316 A CN 112528316A CN 202010984734 A CN202010984734 A CN 202010984734A CN 112528316 A CN112528316 A CN 112528316A
- Authority
- CN
- China
- Prior art keywords
- module
- workflow
- input
- output
- lineage
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开一种基于贝叶斯网络的隐私保护世系工作流发布方法,包括如下步骤:通过训练贝叶斯网络衡量世系工作流中模块间的依赖程度,评估不同模块在溯源查询的重要性不同;划分工作流中的强、弱关联模块,针对不同模块类型设计定制化隐藏处理方案,综合平衡隐私性与可用性,对强关联模块,保证在隐藏操作后原经过该模块的世系路径仍然保留;对弱关联模块,牺牲较弱关联依赖以保证隐私安全。本发明结合对隐私模块最小二分拆分方法与删除数据依赖方法,实现了在保护世系工作流模块隐私***露的同时有效维持溯源查询的可用性。
Description
技术领域
本发明涉及一种数据隐私保护发布方法,面向对象是世系工作流,在保护隐 私模块信息***露同时兼顾溯源查询可用性维持。
背景技术
数据世系(Data Provenance)也被称为数据溯源,用于描述数据的来源与产 生、演化过程,依据应用目标不同,数据世系的应用大致可划分为以下几类:数 据质量评估、数据恢复、数据核查、数据引用。世系工作流(Provenance Workflow) 是数据世系的主要表现形式,工作流(Workflow)的概念起源于二十世纪八十年 代,异构分布式执行环境逐步取代集中式信息处理,工作流技术被广泛应用到各 类流程化交互场景中,作为一种流程形式的描述模型,工作流自身含有数据的产 生与演化信息,是数据世系的重要表现形式。
功能模块作为世系工作流的主要构成元素,其输入数据与输出数据的关系可 数学抽象为映射,即功能模块自身功能可通过映射表示,依据是否含有隐私信息, 世系工作流中功能模块可分为公有模块和隐私模块,其中隐私模块通常是指该模 块功能映射具有私有性,工作流所有者不愿将模块具体功能发布共享,世系工作 流的模块隐私保护策略主要通过增/减边与聚合/拆分模块,避免攻击者通过输入 输出数据逆推出模块的功能映射。
世系工作流的一个重要可用性表现为溯源信息查询,通过溯源结果进行辅助 决策,溯源查询是对工作流执行中数据演化过程的查询,溯源查询要求结果中应 包含正确的数据描述信息,且查询结果应避免包含无关冗余信息。溯源查询通常 会包含如下查询类型:查询已知数据的历史源数据、查询数据在限定范围内的演 化路径、查询多个数据的重叠世系,即公有模块和公有历史数据。但是,世系工 作流自身可能含有隐私或敏感信息,对其直接发布可能会导致隐私泄露。已有世 系工作流模块隐私保护方法存在以下不足:
(1)处理隐私模块时没有考虑模块是否处在世系工作流常用路径中,缺少对模 块在溯源查询中重要性的关注,对不同重要性的模块采用相同隐藏策略,无法保 证隐匿处理后重要路径信息的可用性。
(2)以模块聚合作为主要隐藏策略,缺乏对聚合模块的选择标准与范围控制, 隐藏粒度较大时导致溯源查询可用性较大程度丢失。
发明内容
针对上述问题,基于平衡隐私性与可用性的多重隐私保护强度思想,本发明 公开一种基于贝叶斯网络的隐私保护世系工作流发布方法,实现了在保护世系工 作流模块隐私***露的同时有效维持溯源查询的可用性。
为实现上述发明目的,本发明采用的技术方案为一种隐私保护世系工作流共 享发布方法,包括如下步骤:
步骤(1)基于原始工作流WF,独立重复的随机执行并收集工作流执行信息, 记录一次执行中各数据流是否存在,作为一条样本s,形成样本集S;
步骤(2)依据所述步骤(1)中所获样本集合,训练获得贝叶斯网络BN的结构与 参数;
步骤(3)基于所述步骤(2)中BN,评估不同模块在溯源查询的重要性不同,将 工作流中隐私模块划分为强关联模块与弱关联模块;
步骤(4)根据出入度不同对模块分为四类:单输入单输出模块、单输入多输出 模块、多输入单输出模块、多输入多输出模块,对隶属于上述某一类型的隐私模 块,再细划分为强关联模块与弱关联模块;结合模块拆分方法与删除依赖方法, 制定各个类型隐私模块的隐藏策略;
步骤(5)对原始工作流WF,给定隐私模块集合PriMs,依据步骤(4),进行隐 藏处理,得到发布工作流WF*.
为便于后续描述,给定如下形式化定义:
功能模块(Module)工作流中的功能模块表示为一个四元组M=(IM,OM,FM, PM),其中:(1)IM={inM 1,inM 2,…,inM u}为模块M的输入端口集合,OM={outM 1,outM 2,…,outM v}为模块M的输出端口集合,且即对同一模块 不存在一个端口既是输入端口又是输出端口;
(2)FM={f1,f2,…,fv},其中fi:outM i=fi(IM),模块的每个输出端口outM i对应映射fi的因变量,输入端口集合IM对应映射fi的自变量;
(3)PM={pM 1,pM 2,…,pM r}为模块M的r个可选参数集合。
世系工作流(Workflow)世系工作流表示为一个四元组WF=(T,I,O,D),其 中:(1)T={M1,M2,…,Mn}为世系工作流WF的处理模块集合;
(2)I={i1,i2,…,is}为世系工作流WF的全局输入数据集合(包含各模块的参数输入),O={o1,o2,…,ot}为世系工作流WF的全局输出数据集合,并且即 世系工作流中不存在一条数据流既是全局输出数据又是全局输入数据;
(3)D={d1,d2,…,dk}为世系工作流WF中的数据流集合;
所述步骤(1)中样本集生成方法为:记录工作流WF一次执行过程中数据流集 合D={d1,d2,…,dk}中各元素是否参与执行,若参与则记录为T,否则记录为F, 形成一条样本s=[d1 T/F,d2 T/F,…,dk T/F];随机独立重复实验n次,可得到总体样本 集S={si|1≤i≤n}。通过进行n次独立重复的工作流执行,确定n个样本,继续后 续的概率计算。
所述步骤(2)中单条件贝叶斯网络构建方法如下:
1)确定描述问题领域的变量集,对变量集的每个变量确定其状态和取值范围。 以工作流WF中数据流集合D={d1,d2,…,dk}作为网络中变量集,即网络节点集, 变量取值为T/F,代表该数据流的存在性;
2)根据节点之间的概率依赖关系或先验依赖关系,确定从因变量到果变量之 间的连接,确定网络结构。基于工作流WF=(T,I,O,D)自身结构信息,将1)中 网络节点采用有向边连接,构成有向无环图G=(V,E);权利要求3中步骤(1)(2) 中所涉及网络结构构建方法如下:
(b)对模块Mk=(IMk,OMk,FMk,PMk)∈T,遍历inMk∈IMk与outMk∈OMk,在V 中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边, 加入E;
(c)对(b)中模块Mk,遍历inMk∈IMk与outMk∈OMk,在V中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边,加入E;
(d)经过上述步骤后得到贝叶斯网络结构G=(V,E)。
3)由于训练样本集中S不存在丢失数据的情况,隶属于完整数据的参数学 习,最大似然估计(MLE)方法学习条件概率此时退化成频度统计。学习得到 参数信息(条件概率表CPT)后,贝叶斯网络构建结束。单条件贝叶斯网络参数 学习算法描述如下:
(a)对G中每条边e=<v,u>∈E,设置计数cnt_xv=0,cnt_xvu=0;
(b)对每条记录s∈S,若xv存在于样本s中,cnt_xv自增1;若xv存在于样 本s中并且xu存在于样本s中,cnt_xvu自增1;
所述步骤(3)中强、弱关联模块划分方法如下:
对模块M=(IM,OM,FM,PM),若M满足:对和P(outM|inM) ≥α,则M为强关联模块;否则M为弱关联模块。其中,α为隐私概率阈值,P(outM |inM)表示模块M在输入inM存在的条件下,输出outM存在的条件概率。基于上 述对模块M的强弱关联模块划分方法,将工作流WF的模块集合T={M1,M2,…, Mn}中元素划分为强/弱关联模块。
所述步骤(4)中隐私保护策略具体如下:
1)单输入单输出类型模块
对于单输入单输出类型模块,在输入数据存在情况下,输出数据必存在,因 此为强关联模块,如图2所示,在模块M参与某一次工作流执行的情况下,即 输入数据dx存在的条件下,输出数据dy必定存在,因此P(dy|dx)=1。对该类型模 块,若被世系工作流所有者认定为隐私模块,在发布图中以单条数据流dxy取代 整个模块,保留原dx→dy路径,不会影响溯源路径的查询。
2)单输入多输出类型模块
对于单输入多输出类型模块,如图3(a)所示,
(a)若模块M为强关联模块,将M的多个输出分离,对模块M进行拆分,同时 保证输入与多个输出的关联仍然存在。为保证干扰信息最小化,将M拆分为两 个子模块M1和M2,如图3(b)所示;
(b)若模块M为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯 网中该模块涉及到的条件概率中最小的依赖关系dx→dy,在发布图中,模块M 需要隐藏掉输出dy对应的端口。为保证工作流图结构的连通性,需要考虑以下 两点:
①若以dy为输入数据的模块N是多输入模块,删去M对应输出dy的端口不 会破坏工作流图结构的连通性,将N的输入dy的端口删除并将原dy表征为输入 参数加入N;
②若以dy为输入数据的模块N是单输入模块,即模块N只有dy一个输入, 若按1)中隐藏方案,会导致N缺失输入端口,不符合工作流定义。M在删去对 应dy的输出端口的同时,向前回溯找到其父模块MP,为MP增加输出端口至N 的输出端口,保证工作流结构完整性。
3)多输入单输出类型模块
对于多输入单输出类型模块,
(a)若模块M为强关联模块,将M的多个输入分离,对模块M进行拆分,同 时保证多个输入与输出的关联仍然存在。为保证干扰信息最小化,将M最小拆 分为两个子模块M1和M2,
(b)若模块为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯网中 该模块涉及到的条件概率中最小的依赖关系dx→dz,在发布图中,模块M需要 隐藏掉输入dx对应的端口。为保证工作流图结构的连通性,需要考虑以下两点:
①若以dx为输出数据的模块N是多输出模块,删去M对应输入dx的端口不 会破坏工作流图结构的连通性,将M的输入dx的端口删除并将原dx表征为输入 参数加入M;
②若以dx为输出数据的模块N是单输出模块,即模块只有dx一个输出,若 按1)中隐藏方案,会导致N缺失输出端口,不符合工作流定义。M在删去对应 dx的输入端口的同时,向后找到其后继模块MC,为MC增加输入端口,调整N 输出端口对应至MC输入端口,保证工作流结构完整性。
4)多输入多输出类型模块
对于多输入多输出类型模块,该类型模块可看作是单输入多输出类型模块与 多输入单输出类型模块的综合形式。
(a)若模块M为强关联模块,将M的多个输入或者输出分离,对模块M进 行拆分,同时保证多个输入与多个输出的关联仍然存在,为保证干扰信息最小化, 将M拆分为两个子模块M1和M2。若分离输入数据,则将M的输入端口分离至 M1和M2的输入端口,M的输出端口作为M2的输出端口;若分离输出数据,则 将M的输出端口分离至M1和M2的输出端口,M的输入数据作为M1的输入端 口。
(b)若模块M为弱关联模块,
①若即某个输出端口对所有 输入端口的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输出端口在隐藏输出端口时,与模块输入端口个数无关,因此(2)中弱关联模块隐藏策略 同样适用于隐藏例如,P(de|da)<α∧P(de|db)<α∧P(de|dc)<α,隐藏M中de对应输出端口。
②若即所有输出端口对某个输入端 口inM i的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输入端口inM i,在 隐藏输入端口时,与模块输出端口个数无关,因此(3)中弱关联模块隐藏策略同 样适用于隐藏inM i。例如,P(dd|da)<α∧P(de|da)<α∧P(df|da)<α,隐藏M中da对应 输入端口。
③其他情况下采用强关联模块策略进行拆分隐藏。对多输入多输出类型模块, 当①②都不满足的情况下,无法通过隐藏确定的某条输入边或输出边进行隐私保 护手段;因此采用较弱隐藏策略,即模块拆分作为隐私手段。
所述步骤(5)中世系工作流隐私保护发布方法具体如下:对原始工作流WF, 给定隐私模块集合PriMs,对PriMs中每个模块M按照步骤(5)判定具体类型并 进行隐藏操作,得到发布工作流图WF*。
相对于现有技术,本发明的优点如下:该技术方案针对已有面向模块隐私的 保护方法割裂了模块与工作流结构间的关系,未兼顾模块在数据演化过程中所起 到的重要程度,导致发布的世系工作流存在溯源查询可用性较差等问题,提出基 于贝叶斯网络的隐私保护世系工作流发布方法。通过采集大量工作流随机执行过 程中的模块参与样本,构建贝叶斯网络模型,衡量工作流中相关模块间的依赖程 度,从而确定不同隐私模块在工作流溯源查询中所起作用;提出针对个性化模块 隐私的保护方法,基于所构建贝叶斯网络,划分工作流的强、弱关联模块,设计 不同隐藏策略,将对隐私模块的隐藏处理维持在工作流局部从而减少对原工作流 结构的修改,以维持溯源查询可用性。
附图说明
图1为本发明方法整体流程图;
图2为单输入单输出类型模块隐私保护策略图;
图3为单输入多输出类型模块隐私保护策略图;
图4为多输入单输出类型模块隐私保护策略图;
图5为多输入多输出类型模块隐私保护策略图;
图6为原始世系工作流WF;
图7为WF对应贝叶斯网络结构;
图8为发布世系工作流WF*。
具体实施方式
为了加深对本发明的认识和理解,下面结合附图和实施方式对本发明做详细的说明。
实施例1:为实现上述发明目的,本发明采用的技术方案为一种隐私保护世 系工作流共享发布方法,包括如下步骤(如图1所示):
步骤(1)基于原始工作流WF,独立重复的随机执行并收集工作流执行信息, 记录一次执行中各数据流是否存在,作为一条样本s,形成样本集S;
步骤(2)依据所述步骤(1)中所获样本集合,训练获得贝叶斯网络BN的结构与 参数;
步骤(3)基于所述步骤(2)中BN,评估不同模块在溯源查询的重要性不同,将 工作流中隐私模块划分为强关联模块与弱关联模块;
步骤(4)根据出入度不同对模块分为四类:单输入单输出模块、单输入多输出 模块、多输入单输出模块、多输入多输出模块,对隶属于上述某一类型的隐私模 块,再细划分为强关联模块与弱关联模块;结合模块拆分方法与删除依赖方法, 制定各个类型隐私模块的隐藏策略;
步骤(5)对原始工作流WF,给定隐私模块集合PriMs,依据步骤(4),进行隐 藏处理,得到发布工作流WF*.
为便于后续描述,给定如下形式化定义:
功能模块(Module)工作流中的功能模块表示为一个四元组M=(IM,OM,FM, PM),其中:(1)IM={inM 1,inM 2,…,inM u}为模块M的输入端口集合, OM={outM 1,outM 2,…,outM v}为模块M的输出端口集合,且即对同一 模块不存在一个端口既是输入端口又是输出端口;
(2)FM={f1,f2,…,fv},其中fi:outM i=fi(IM),模块的每个输出端口outM i对应映射fi的因变量,输入端口集合IM对应映射fi的自变量;
(3)PM={pM 1,pM 2,…,pM r}为模块M的r个可选参数集合。
世系工作流(Workflow)世系工作流表示为一个四元组WF=(T,I,O,D),其 中:(1)T={M1,M2,…,Mn}为世系工作流WF的处理模块集合;
(2)I={i1,i2,…,is}为世系工作流WF的全局输入数据集合(包含各模块的参数输入),O={o1,o2,…,ot}为世系工作流WF的全局输出数据集合,并且即 世系工作流中不存在一条数据流既是全局输出数据又是全局输入数据;
(3)D={d1,d2,…,dk}为世系工作流WF中的数据流集合;
所述步骤(1)中样本集生成方法为:记录工作流WF一次执行过程中数据流集 合D={d1,d2,…,dk}中各元素是否参与执行,若参与则记录为T,否则记录为F, 形成一条样本s=[d1 T/F,d2 T/F,…,dk T/F];随机独立重复实验n次,可得到总体样本 集S={si|1≤i≤n};
所述步骤(2)中单条件贝叶斯网络构建方法如下:
1)确定描述问题领域的变量集,对变量集的每个变量确定其状态和取值范围。 以工作流WF中数据流集合D={d1,d2,…,dk}作为网络中变量集,即网络节点集, 变量取值为T/F,代表该数据流的存在性;
2)根据节点之间的概率依赖关系或先验依赖关系,确定从因变量到果变量之 间的连接,确定网络结构。基于工作流WF=(T,I,O,D)自身结构信息,将1)中 网络节点采用有向边连接,构成有向无环图G=(V,E);权利要求3中步骤(1)(2) 中所涉及网络结构构建方法如下:
(b)对模块Mk=(IMk,OMk,FMk,PMk)∈T,遍历inMk∈IMk与outMk∈OMk,在V 中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边, 加入E;
(c)对(b)中模块Mk,遍历inMk∈IMk与outMk∈OMk,在V中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边,加入E;
(d)经过上述步骤后得到贝叶斯网络结构G=(V,E)。
3)由于训练样本集中S不存在丢失数据的情况,隶属于完整数据的参数学 习,最大似然估计(MLE)方法学习条件概率此时退化成频度统计。学习得到 参数信息(条件概率表CPT)后,贝叶斯网络构建结束。单条件贝叶斯网络参数 学习算法描述如下:
(a)对G中每条边e=<v,u>∈E,设置计数cnt_xv=0,cnt_xvu=0;
(b)对每条记录s∈S,若xv存在于样本s中,cnt_xv自增1;若xv存在于样 本s中并且xu存在于样本s中,cnt_xvu自增1;
所述步骤(3)中强、弱关联模块划分方法如下:
对模块M=(IM,OM,FM,PM),若M满足:对和P(outM|inM) ≥α,则M为强关联模块;否则M为弱关联模块。其中,α为隐私概率阈值,P(outM |inM)表示模块M在输入inM存在的条件下,输出outM存在的条件概率。基于上 述对模块M的强弱关联模块划分方法,将工作流WF的模块集合T={M1,M2,…, Mn}中元素划分为强/弱关联模块。
所述步骤(4)中隐私保护策略具体如下:
5)单输入单输出类型模块
对于单输入单输出类型模块,在输入数据存在情况下,输出数据必存在,因 此为强关联模块,如图2所示,在模块M参与某一次工作流执行的情况下,即 输入数据dx存在的条件下,输出数据dy必定存在,因此P(dy|dx)=1。对该类型模 块,若被世系工作流所有者认定为隐私模块,在发布图中以单条数据流dxy取代 整个模块,保留原dx→dy路径,不会影响溯源路径的查询。
6)单输入多输出类型模块
对于单输入多输出类型模块,如图3(a)所示,
(a)若模块M为强关联模块,将M的多个输出分离,对模块M进行拆分,同时 保证输入与多个输出的关联仍然存在。为保证干扰信息最小化,将M拆分为两 个子模块M1和M2,如图3(b)所示;
(b)若模块M为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯 网中该模块涉及到的条件概率中最小的依赖关系dx→dy,在发布图中,模块M 需要隐藏掉输出dy对应的端口。为保证工作流图结构的连通性,需要考虑以下 两点:
①若以dy为输入数据的模块N是多输入模块,删去M对应输出dy的端口不 会破坏工作流图结构的连通性,将N的输入dy的端口删除并将原dy表征为输入 参数加入N,如图3(c)所示;
②若以dy为输入数据的模块N是单输入模块,即模块N只有dy一个输入, 若按1)中隐藏方案,会导致N缺失输入端口,不符合工作流定义。M在删去对 应dy的输出端口的同时,向前回溯找到其父模块MP,为MP增加输出端口至N 的输出端口,保证工作流结构完整性。如图3(d)所示。
7)多输入单输出类型模块
对于多输入单输出类型模块,如图4(a)所示:
(a)若模块M为强关联模块,将M的多个输入分离,对模块M进行拆分,同 时保证多个输入与输出的关联仍然存在。为保证干扰信息最小化,将M最小拆 分为两个子模块M1和M2,如图4(b)所示;
(b)若模块为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯网中 该模块涉及到的条件概率中最小的依赖关系dx→dz,在发布图中,模块M需要 隐藏掉输入dx对应的端口。为保证工作流图结构的连通性,需要考虑以下两点:
①若以dx为输出数据的模块N是多输出模块,删去M对应输入dx的端口不 会破坏工作流图结构的连通性,将M的输入dx的端口删除并将原dx表征为输入 参数加入M,如图4(c)所示;
②若以dx为输出数据的模块N是单输出模块,即模块只有dx一个输出,若 按1)中隐藏方案,会导致N缺失输出端口,不符合工作流定义。M在删去对应 dx的输入端口的同时,向后找到其后继模块MC,为MC增加输入端口,调整N 输出端口对应至MC输入端口,保证工作流结构完整性。如图4(d)所示。
8)多输入多输出类型模块
对于多输入多输出类型模块,如图5(a)所示,该类型模块可看作是单输入多 输出类型模块与多输入单输出类型模块的综合形式。
(a)若模块M为强关联模块,将M的多个输入或者输出分离,对模块M进 行拆分,同时保证多个输入与多个输出的关联仍然存在,为保证干扰信息最小化, 将M拆分为两个子模块M1和M2。若分离输入数据,则将M的输入端口分离至 M1和M2的输入端口,M的输出端口作为M2的输出端口,如图5(b)所示;若分 离输出数据,则将M的输出端口分离至M1和M2的输出端口,M的输入数据作 为M1的输入端口,如图5(c)所示。
(b)若模块M为弱关联模块,
①若即某个输出端口对所有 输入端口的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输出端口在隐藏输出端口时,与模块输入端口个数无关,因此(2)中弱关联模块隐藏策略 同样适用于隐藏例如,P(de|da)<α∧P(de|db)<α∧P(de|dc)<α,隐藏M中de对应输出端口,如图5(d)所示。
②若即所有输出端口对某个输入端 口inM i的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输入端口inM i,在 隐藏输入端口时,与模块输出端口个数无关,因此(3)中弱关联模块隐藏策略同 样适用于隐藏inM i。例如,P(dd|da)<α∧P(de|da)<α∧P(df|da)<α,隐藏M中da对应 输入端口,如图5(e)所示。
③其他情况下采用强关联模块策略进行拆分隐藏。
所述步骤(5)世系工作流隐私保护发布方法具体如下:对原始工作流WF,给 定隐私模块集合PriMs,对PriMs中每个模块M按照步骤(5)判定具体类型并进 行隐藏操作,得到发布工作流图WF*。
应用实施例:
如图6所示为一个世系工作流WF,T={M1,M2,…,M7,M8},I={i1,p2,p3,p4}, O={o1,o2},D={d1,d2,d3,…,d12,d13}。独立重复的对世系工作流WF执行30次, 并记录数据流存在性,得到样本集如下:
S={[0,1,0,0,0,0,1,0,1,1,1,0,0],
[1,1,0,0,1,0,0,1,1,0,1,1,0],
[0,1,0,0,0,0,0,1,1,1,1,1,0],
[0,0,0,1,1,0,1,1,0,0,0,0,1],
……
[1,1,0,1,1,1,1,0,0,0,0,0,1]}
依据发明内容步骤(2)(3)中算法Construct SC-BN,可得到单条件贝叶斯网络结构如图7。根据步骤(2)(3)中算法Parameter Learning in SC-BN,可获得网络中条 件概率表。
i1→d1:
d2→d4:
……
d13→o2:
基于上述di→dj条件概率表中Pr(dj=T|di=T)的值,根据步骤(3)中强、弱关联模块定义,将给定隐私模块集合PriMs={M2,M5}中模块M2和M5进行模块类型 判定。依据上述条件概率信息,若则判定M2为强关联 模块,且M2属于多输入单输出类型模块,则按照图4(b)中所描述策略,对M2模块最小二分拆分;而且判定M5为弱关联模块,且M5属于多输入多输出类型模块,可知 所有输出端口(d10,d11)对输入端口d7关联依赖概率均 小于隐私概率阈值α,在发布图中隐藏输入端口d7。通过上述隐藏过程,可得到 发布工作流图WF*如图8所示。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的 技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述 的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有 各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求 保护范围由所附的权利要求书及其等效物界定。
Claims (6)
1.基于贝叶斯网络的隐私保护世系工作流发布方法,其特征在于,包括以下步骤:
步骤(1):基于原始工作流WF,独立重复的随机执行并收集工作流执行信息,记录一次执行中各数据流是否存在,作为一条样本s,形成样本集S;
步骤(2):依据步骤(1)中所获样本集合,训练获得贝叶斯网络BN的结构与参数;步骤(3):基于步骤(2)中BN,评估不同模块在溯源查询的重要性不同,将工作流中隐私模块划分为强关联模块与弱关联模块;
步骤(4):根据出入度不同对模块分为四类:单输入单输出模块、单输入多输出模块、多输入单输出模块、多输入多输出模块,对隶属于上述某一类型的隐私模块,再细划分为强关联模块与弱关联模块;结合模块拆分方法与删除依赖方法,制定各个类型隐私模块的隐藏策略;
步骤(5):对原始工作流WF,给定隐私模块集合PriMs,依据步骤(4),进行隐藏处理,得到发布工作流WF*;
为便于后续描述,给定如下形式化定义:
功能模块(Module)工作流中的功能模块表示为一个四元组M=(IM,OM,FM,PM),其中:(1)IM={inM 1,inM 2,…,inM u}为模块M的输入端口集合,OM={outM 1,outM 2,…,outM v}为模块M的输出端口集合,且即对同一模块不存在一个端口既是输入端口又是输出端口;
(2)FM={f1,f2,…,fv},其中fi:outM i=fi(IM),模块的每个输出端口outM i对应映射fi的因变量,输入端口集合IM对应映射fi的自变量;
(3)PM={pM 1,pM 2,…,pM r}为模块M的r个可选参数集合;
世系工作流(Workflow)世系工作流表示为一个四元组WF=(T,I,O,D),其中:(1)T={M1,M2,…,Mn}为世系工作流WF的处理模块集合;
(2)I={i1,i2,…,is}为世系工作流WF的全局输入数据集合(包含各模块的参数输入),O={o1,o2,…,ot}为世系工作流WF的全局输出数据集合,并且即世系工作流中不存在一条数据流既是全局输出数据又是全局输入数据;
(3)D={d1,d2,…,dk}为世系工作流WF中的数据流集合;
2.根据权利要求1中所述贝叶斯网络的隐私保护世系工作流发布方法,其特征在于,所述步骤(1)中样本集生成方法为:记录工作流WF一次执行过程中数据流集合D={d1,d2,…,dk}中各元素是否参与执行,若参与则记录为T,否则记录为F,形成一条样本s=[d1 T/F,d2 T /F,…,dk T/F];随机独立重复实验n次,可得到总体样本集S={si|1≤i≤n}。
3.根据权利要求1中所述贝叶斯网络的隐私保护世系工作流发布方法,其特征在于,所述步骤(2)中单条件贝叶斯网络构建方法如下:
单条件贝叶斯网络(SC-BN,Single Condition Bayesian Network)G=(V,E)表示为一个有向无环图(DAG),其中,V代表图中所有节点集合,E代表图中有向边集合,令xv为G中某节点v∈V所代表的随机变量;e表示v→u的一条边,e的权值对应P(xu|xv),表示在xv是否存在的条件下xu是否存在的条件概率;
(1)确定描述问题领域的变量集,对变量集的每个变量确定其状态和取值范围,以工作流WF中数据流集合D={d1,d2,…,dk}作为网络中变量集,即网络节点集,变量取值为T/F,代表该数据流的存在性;
(2)根据节点之间的概率依赖关系或先验依赖关系,确定从因变量到果变量之间的连接,确定网络结构。基于工作流WF=(T,I,O,D)自身结构信息,将(1)中网络节点采用有向边连接,构成有向无环图G=(V,E);权利要求3中步骤(1)(2)中所涉及网络结构构建方法如下:
(b)对模块Mk=(IMk,OMk,FMk,PMk)∈T,遍历inMk∈IMk与outMk∈OMk,在V中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边,加入E;
(c)对(b)中模块Mk,遍历inMk∈IMk与outMk∈OMk,在V中寻找inMk和outMk对应的节点v和u,若成功找到,则创建v→u的一条有向边,加入E;
(d)经过上述步骤后得到贝叶斯网络结构G=(V,E);
(3)由于训练样本集S中不存在丢失数据的情况,隶属于完整数据的参数学习,最大似然估计(MLE)方法学习条件概率此时退化成频度统计,学习得到参数信息(条件概率表CPT)后,贝叶斯网络构建结束,单条件贝叶斯网络参数学习方法描述如下:
(a)对G中每条边e=<v,u>∈E,设置计数cnt_xv=0,cnt_xvu=0;
(b)对每条记录s∈S,若xv存在于样本s中,cnt_xv自增1;若xv存在于样本s中并且xu存在于样本s中,cnt_xvu自增1;
5.根据权利要求1中所述贝叶斯网络的隐私保护世系工作流发布方法,其特征在于,所述步骤(4)中隐私保护策略具体如下:
(1)单输入单输出类型模块:
对于单输入单输出类型模块,在输入数据存在情况下,输出数据必存在,因此为强关联模块,在模块M参与某一次工作流执行的情况下,即输入数据dx存在的条件下,输出数据dy必定存在,因此P(dy|dx)=1,对该类型模块,若被世系工作流所有者认定为隐私模块,在发布图中以单条数据流dxy取代整个模块,保留原dx→dy路径,不会影响溯源路径的查询;
(2)单输入多输出类型模块:
对于单输入多输出类型模块,
(a)若模块M为强关联模块,将M的多个输出分离,对模块M进行拆分,同时保证输入与多个输出的关联仍然存在。为保证干扰信息最小化,将M拆分为两个子模块M1和M2,
(b)若模块M为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯网中该模块涉及到的条件概率中最小的依赖关系dx→dy,在发布图中,模块M需要隐藏掉输出dy对应的端口,为保证工作流图结构的连通性,需要考虑以下两点:
①若以dy为输入数据的模块N是多输入模块,删去M对应输出dy的端口不会破坏工作流图结构的连通性,将N的输入dy的端口删除并将原dy表征为输入参数加入N,
②若以dy为输入数据的模块N是单输入模块,即模块N只有dy一个输入,若按1)中隐藏方案,会导致N缺失输入端口,不符合工作流定义,M在删去对应dy的输出端口的同时,向前回溯找到其父模块MP,为MP增加输出端口至N的输出端口,保证工作流结构完整性。
(3)多输入单输出类型模块
对于多输入单输出类型模块,
(a)若模块M为强关联模块,将M的多个输入分离,对模块M进行拆分,同时保证多个输入与输出的关联仍然存在。为保证干扰信息最小化,将M最小拆分为两个子模块M1和M2,
(b)若模块为弱关联模块,将模块M的最弱关联删除,即删去在贝叶斯网中该模块涉及到的条件概率中最小的依赖关系dx→dz,在发布图中,模块M需要隐藏掉输入dx对应的端口;为保证工作流图结构的连通性,需要考虑以下两点:
①若以dx为输出数据的模块N是多输出模块,删去M对应输入dx的端口不会破坏工作流图结构的连通性,将M的输入dx的端口删除并将原dx表征为输入参数加入M,
②若以dx为输出数据的模块N是单输出模块,即模块只有dx一个输出,若按1)中隐藏方案,会导致N缺失输出端口,不符合工作流定义。M在删去对应dx的输入端口的同时,向后找到其后继模块MC,为MC增加输入端口,调整N输出端口对应至MC输入端口,保证工作流结构完整性。
(4)多输入多输出类型模块:
对于多输入多输出类型模块,该类型模块可看作是单输入多输出类型模块与多输入单输出类型模块的综合形式;
(a)若模块M为强关联模块,将M的多个输入或者输出分离,对模块M进行拆分,同时保证多个输入与多个输出的关联仍然存在,为保证干扰信息最小化,将M拆分为两个子模块M1和M2。若分离输入数据,则将M的输入端口分离至M1和M2的输入端口,M的输出端口作为M2的输出端口,若分离输出数据,则将M的输出端口分离至M1和M2的输出端口,M的输入数据作为M1的输入端口,
(b)若模块M为弱关联模块,
①若P(outM j|inM i)<α,即某个输出端口outM j对所有输入端口的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输出端口outM j,在隐藏输出端口时,与模块输入端口个数无关,因此(2)中弱关联模块隐藏策略同样适用于隐藏outM j。例如,P(de|da)<α∧P(de|db)<α∧P(de|dc)<α,隐藏M中de对应输出端口,如图5(d)所示。
②若P(outM j|inM i)<α,即所有输出端口对某个输入端口inM i的关联依赖概率均小于隐私概率阈值α,在发布图中隐藏输入端口inM i,在隐藏输入端口时,与模块输出端口个数无关,因此(3)中弱关联模块隐藏策略同样适用于隐藏inM i。例如,P(dd|da)<α∧P(de|da)<α∧P(df|da)<α,隐藏M中da对应输入端口,
③其他情况下采用强关联模块策略进行拆分隐藏。
6.根据权利要求1中所述基于贝叶斯网络的隐私保护世系工作流发布方法,其特征在于,所述步骤(5)中世系工作流隐私保护发布方法具体如下:对原始工作流WF,给定隐私模块集合PriMs,对PriMs中每个模块M按照步骤(5)判定具体类型并进行隐藏操作,得到发布工作流图WF*。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010984734.3A CN112528316B (zh) | 2020-09-18 | 2020-09-18 | 基于贝叶斯网络的隐私保护世系工作流发布方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010984734.3A CN112528316B (zh) | 2020-09-18 | 2020-09-18 | 基于贝叶斯网络的隐私保护世系工作流发布方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112528316A true CN112528316A (zh) | 2021-03-19 |
CN112528316B CN112528316B (zh) | 2022-07-15 |
Family
ID=74978843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010984734.3A Active CN112528316B (zh) | 2020-09-18 | 2020-09-18 | 基于贝叶斯网络的隐私保护世系工作流发布方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112528316B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786739A (zh) * | 2023-12-19 | 2024-03-29 | 国网青海省电力公司信息通信公司 | 数据处理方法、服务器及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103000A (zh) * | 2016-02-23 | 2017-08-29 | 广州启法信息科技有限公司 | 一种基于关联规则与贝叶斯网络集成的推荐技术 |
CN107871087A (zh) * | 2017-11-08 | 2018-04-03 | 广西师范大学 | 分布式环境下高维数据发布的个性化差分隐私保护方法 |
CN107910009A (zh) * | 2017-11-02 | 2018-04-13 | 中国科学院声学研究所 | 一种基于贝叶斯推理的码元改写信息隐藏检测方法及*** |
-
2020
- 2020-09-18 CN CN202010984734.3A patent/CN112528316B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107103000A (zh) * | 2016-02-23 | 2017-08-29 | 广州启法信息科技有限公司 | 一种基于关联规则与贝叶斯网络集成的推荐技术 |
CN107910009A (zh) * | 2017-11-02 | 2018-04-13 | 中国科学院声学研究所 | 一种基于贝叶斯推理的码元改写信息隐藏检测方法及*** |
CN107871087A (zh) * | 2017-11-08 | 2018-04-03 | 广西师范大学 | 分布式环境下高维数据发布的个性化差分隐私保护方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117786739A (zh) * | 2023-12-19 | 2024-03-29 | 国网青海省电力公司信息通信公司 | 数据处理方法、服务器及*** |
Also Published As
Publication number | Publication date |
---|---|
CN112528316B (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Carmona et al. | A region-based algorithm for discovering Petri nets from event logs | |
Wei et al. | Identifying influential nodes based on network representation learning in complex networks | |
WO2021149518A1 (ja) | 秘密計算用変換装置、秘密計算システム、秘密計算用変換方法、および秘密計算用変換プログラム | |
Roth et al. | Black-box identification of discrete event systems with optimal partitioning of concurrent subsystems | |
Faramondi et al. | Network structural vulnerability: a multiobjective attacker perspective | |
CN111340493A (zh) | 一种多维度分布式异常交易行为检测方法 | |
Gade et al. | Private optimization on networks | |
Papadimitriou et al. | DStress: Efficient differentially private computations on distributed data | |
Yamamoto et al. | eFL-Boost: Efficient federated learning for gradient boosting decision trees | |
Liagouris et al. | Secrecy: Secure collaborative analytics on secret-shared data | |
Yeh et al. | A new subtraction-based algorithm for the d-MPs for all d problem | |
CN112528316B (zh) | 基于贝叶斯网络的隐私保护世系工作流发布方法 | |
CN107851403A (zh) | 秘密计算装置、其方法及程序 | |
Levitin et al. | Optimal spot-checking for collusion tolerance in computer grids | |
Xing et al. | Zero-knowledge proof meets machine learning in verifiability: A survey | |
CN112231746A (zh) | 联合数据分析方法、装置、***及计算机可读存储介质 | |
Huang et al. | Deep learning modeling attack analysis for multiple fpga-based apuf protection structures | |
WO2019138584A1 (ja) | 分類木生成方法、分類木生成装置および分類木生成プログラム | |
Hosseinzadeh Lotfi et al. | An MOLP based procedure for finding efficient units in DEA models | |
Li et al. | A novel strategy of combining variable ordering heuristics for constraint satisfaction problems | |
Qian et al. | Harmonic-coupled Riccati equation and its applications in distributed filtering | |
Haghighat et al. | Service integrity assurance for distributed computation outsourcing | |
CN114091057A (zh) | 基于模型模拟的联邦学习安全审计方法及装置 | |
Jiang et al. | On Data Distribution Leakage in Cross-Silo Federated Learning | |
Yuan et al. | Privacy preserving graph publication in a distributed environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |