1.一种医疗数据隐私保护的云辅助决策树模型诊断方法,其特征在于,包括以下步骤:步骤1:系统初始化;
κ
步骤1.1:可信中心TA选择安全参数1 ,进行系统初始化,生成系统主密钥、系统匹配密钥以及服务器密钥用于实体注册;
K×K (n+1)×(n+1) (L+1)×(L+1)M1,M2∈Z ,M′1,M′2∈Z ,M″1,M″2∈Z ;
K×K (n+1)×(n+1) (L+1)×(L+1)N1,…,N8∈Z ,N′1,…,N′8∈Z ,N″1,…,N″8∈Z ;
K×K (n+1)×(n+1)Yc,Ye∈Z ,Y′c,Y′e∈Z ;
其中,M1,M2,N1,…,N8,Yc,Ye是K×K的方阵,M′1,M′2,N′1,…,N′8,Y′c,Y′e是(n+1)×(n+
1)的方阵,M″1,M″2,N″1,…,N″8是(L+1)×(L+1)的方阵,c、e表示评估服务器和辅助服务器的缩写,代表着该密钥分配给专属服务器;Z表示正整数集合,K/2为数据的比特长度的上限,n为患者的症状个数,L为所有症状的数据波动范围的总和,即L=l1+…+ln;所有的矩阵均为可逆矩阵;
K n+1 L+1
步骤1.2:可信中心TA选择3对二元向量S∈Z ,S′∈Z ,S″∈Z 作为分割密钥;
n+1
步骤1.3:可信中心TA根据分割密钥S′生成分割矩阵Q1,Q2∈Z ;
步骤2:实体注册,包括评估服务器ES、辅助服务器CS、医疗服务提供商MP和患者Px注册;
获取第一服务提供商密钥SKMP、第二服务提供商密钥SK′MP、第三服务提供商密钥SK″MP、第一‑1
患者密钥 第一评估密钥 第二评估密钥Y′e 、第三评估密钥SKES、第一辅助密钥‑1
第二辅助密钥Y′c 以及第三辅助密钥SKCS;
步骤3:特征匹配;
步骤3.1:医疗服务提供商MP上传决策树模型中的决策特征p;
步骤3.1的具体实现包括以下子步骤:步骤3.1.1:医疗服务提供商MP对决策树模型中的决策特征p的信息编码使得第i个节点中第j维特征为K长的二元向量pi,j;
步骤3.1.2:医疗服务提供商MP根据分割密钥S对二元行向量pi,j进行分割生成分割向量p′i,j和p″i,j;其中构造过程如下:若S的第w个元素的值为0,则p′i,j和p″i,j的第w个元素均为pi,j的第w个元素;若S的第w个元素的值为1,则MP生成随机数rw∈Z,p′i,j的第w个元素为rw,p″i,j的第w个元素为pi,j‑rw,使得p′i,j和p″i,j的第w个元素之和等于pi,j的第w个元素;
步骤3.1.3:医疗服务提供商MP通过第一提供商密钥SKMP加密决策树的n个节点中所有维的特征信息生成 将IMP发送给辅助服务器CS;其中且 i=1,…,n,j=1,…,li是长度为8K+1的行向量;
步骤3.2:患者Px上传症状信息;
步骤3.2的具体实现包括以下子步骤:步骤3.2.1:患者Px对症状进行编码;
第i条症状通过ASCII码转换为长度为K/2的二元向量,对其做补码操作,尾插在初始向量后,使得第i条症状表示为K长的二元向量ti;
步骤3.2.2:患者Px根据分割密钥S对二元列向量ti进行分割生成分割向量t′i和t″i;其中构造过程如下:若S的第w个元素的值为0,则Px生成随机数rw∈Z,t′i的第w个元素为rw,t″i的第w个元素为ti‑rw,使得t′i和t″i的第w个元素之和等于ti的第w个元素;若S的第w个元素的值为1,则t′i和t″i的第w个元素均为ti的第w个元素;
步骤3.2.3:患者Px通过第一患者密钥 加密n维症状信息生成并发送给评估服务器ES;其中 是长度为8K+1的列向量;
步骤3.3:评估服务器ES和辅助服务器CS执行特征匹配,获得决策特征与症状特征间的特征匹配结果的伪下标;
步骤3.3的具体实现包括以下子步骤:步骤3.3.1:辅助服务器CS构造第一匹配矩阵;
步骤3.3.1.1:辅助服务器CS利用第一辅助密钥 消去 中的所有Yc得到其中
步骤3.3.1.2:CS构造置换矩阵 和混淆矩阵 其中,πi中每行和每列只有一个元素的值为1,其余全为0;Ri对角线元素均为随机的正整数r,第i行中末尾元素的值为rj∈[0,r),j=1,…,li,即大于等于0小于r,其余全为0;
步骤3.3.1.3:CS构造矩阵 其中 也是长度为8K+1的行向量,只有末尾元素为1,即步骤3.3.1.4:CS发送第一匹配矩阵 给评估服务器ES,其中步骤3.3.2:评估服务器ES构造第二匹配矩阵:利用第一评估密钥 做矩阵左乘运算逐步消去 中的所有Ye得到 其中步骤3.3.3:评估服务器ES执行特征匹配;
步骤3.3.3.1:对于第i维特征,ES计算匹配矩阵 挑选出其中最大值所在的行数下标tfi∈{1,…,li};
其中:
(n+1)×(L+1) 1
步骤3.3.3.2:ES构造下标矩阵f=[f1;…;fn;fn+1]∈Z ;其中:下标向量fi∈Z×(L+1)
,i=1,…,n:第 个元素为1,其余全为0;fn只有末尾元素为1,即fn=[1,…,0,
1×(L+1)
1]∈Z ;
步骤4:病情诊断;
步骤4的具体实现包括以下子步骤:步骤4.1:医疗服务提供商MP上传路径信息;
步骤4.1.1:由于决策树的路径信息为n+1维的向量qd,d=1,…,l,MP根据分割密钥S′对行向量qd进行分割生成分割向量q′d和q″d;l是决策树模型中决策路径的总数量;其中构造过程如下:若S′的第w个元素的值为0,则q′d和q″d的第w个元素均为qd的第w个元素;若S′的第w个元素的值为1,则MP使得q′d和q″d的第w个元素之和等于qd的第w个元素;
步骤4.1.2:医疗服务提供商MP通过第二提供商密钥 加密决策树的l条路径信息生成 将I′MP发送给辅助服务器CS;
其中 是长度为8(n+1)+1的行向量;
步骤4.2:评估服务器ES和辅助服务器CS构造决策分支矩阵;
步骤4.2.1:评估服务器ES构造第一决策分支矩阵;
步骤4.2.1.1:评估服务器ES用评估密钥SKES对下标矩阵f进行加密得到新的矩阵IES;
步骤4.2.2:辅助服务器CS构造决策分支矩阵步骤4.2.2.1:辅助服务器CS由置换矩阵πi,i=1,…,n构造置换矩阵π;
‑1
步骤4.2.2.2:利用第二辅助密钥Y′c 做矩阵左乘运算逐步消去IES中的所有Y′c得到并右乘得到第二决策分支矩阵ICS;
L+1
步骤4.2.2.3 :由于ICS为8(n+1)×(L+1)维的矩阵,对于其中的每个行向量ei∈Z ,i=1,…,8n+8,评估服务器ES根据分割密钥S″对ei进行分割生成分割向量e′i和e″i;其中分割过程如下:若S″的第w个元素的值为0,则e′i和e″i的第w个元素均为ei的第w个元素;若S″的第w个元素的值为1,则ES使得e′i和e″i的第w个元素之和等于ei的第w个元素;
步骤4.2.2.4:辅助服务器CS通过辅助密钥SKCS加密下标信息生成第三决策分支矩阵并发送给评估服务器ES,其中
步骤4.2.3:医疗服务提供商MP上传分支信息;
步骤4.2.3.1:由于决策树的分支信息为L+1维的向量b,医疗服务提供商MP根据分割密钥S″对列向量b进行分割生成分割向量b′和b″;
步骤4.2.3.2:MP通过第三提供商密钥SK″MP加密分支信息生成第四决策分支矩阵Ib={N″1E″b′;N″2E″b′;N″3F″b′;N″4F″b′;N″5G″b″;N″6G″b″;N″7H″b″;N″8H″b″};其中Ib是长度为
8(L+1)的列向量;
步骤4.3:评估服务器ES和辅助服务器CS执行病情诊断;
步骤4.3.1:辅助服务器CS构造第一决策矩阵;
‑1
步骤4.3.1.1:辅助服务器CS用第二辅助密钥Y′c 做右乘消去 中Y′c得到l×l l×(l+1)
步骤4.3.1.2:CS构造置换矩阵π′∈Z 和混淆矩阵R′∈Z :其中,π′中每行和每列只有一个元素的值为1,其余全为0;R′对角线元素均为随机的正整数r′,第i行中末尾元素的值为r′j∈[0,r′),j=1,…,l,即大于等于0小于r′,其余全为
0;
步骤4.3.1.3:CS构造新的矩阵 其中 也是长度为8(n+1)+1的行向量,只有末尾元素为1,即步骤4.3.1.4:CS发送第一决策矩阵 给评估服务器ES;将π′发送给患者Px;
步骤4.3.2:评估服务器ES构造第二决策矩阵步骤4.3.2.1:评估服务器ES计算 由于f和π1,…,πn相互作用挑选出症状对应的决策分支 因而实质上 是通过Q1,Q2对 的分割 和步骤4.3.2.2:评估服务器ES添加一行元素1构造新的矩阵步骤4.3.3:评估服务器ES执行决策;
‑1
步骤4.3.3.1:评估服务器ES用第二评估密钥Y′e 做矩阵左乘运算消去 中所有Y′e得到 做矩阵右乘运算消去 中所有Y′e得到步骤4.3.3.2:评估服务器ES计算决策矩阵 挑选出其中数值最小所在的行数下标tf∈{1,…,l}发送给患者Px;
步骤4.3.3.3:患者由π和tf得到病情诊断结果。
2.根据权利要求1所述的医疗数据隐私保护的云辅助决策树模型诊断方法,其特征在于,步骤2中所述服务提供商MP注册,具体实现包括以下子步骤:步骤2.1.1:服务提供商MP发送注册请求;
步骤2.1.2:可信中心TA返回第一服务提供商密钥SKMP;
K×K
其中,Ai,j,Bi,j ,Ci ,j,Di,j∈Z ,i∈[1,n] ,j∈[1,li]并满足和 代表M1和M2的逆矩阵;
步骤2.1.3:可信中心TA返回第二服务提供商密钥(n+1)×(n+1) ‑1 ‑1其中,A′d,B′d,C′d,D′d∈Z ,d=1,…,l并满足A′d+B′d=M′1 ,C′d+D′d=M′2 ;l是决策树模型中决策路径的总数量;
步骤2.1.4:可信中心TA返回第三服务提供商密钥SK″MP;
SK″MP={S″,N″1E″,N″2E″,N″3F″,N″4F″,N″5G″,N″6G″,N″7H″,N″8H″}(L+1)×(L+1)
其中,E″,F″,G″,H″∈Z 并满足E″+F″=M″1,G″+H″=M″2。
3.根据权利要求1所述的医疗数据隐私保护的云辅助决策树模型诊断方法,其特征在于,步骤2中所述患者Px注册,具体实现包括以下子步骤:步骤2.2.1:患者Px发送注册请求;
步骤 2 .2 .2 :可 信中 心 TA 返 回 第一 患 者 密钥K×K
其中,Ei,Fi,Gi,Hi∈Z ,i=1,…,n是随机矩阵并满足Ei+Fi=M1,Gi+Hi=M2。
4.根据权利要求1所述的医疗数据隐私保护的云辅助决策树模型诊断方法,其特征在于,步骤2中所述评估服务器ES注册,具体实现包括以下子步骤:步骤2.3.1:评估服务器ES发送注册请求;
‑1
步骤2.3.2:可信中心TA返回第一评估密钥 和第二评估密钥Y′e 以及第三评估密钥SKES;
(n+1)×(n+1) ‑1
其中,E′i,F′i,G′i,H′i∈Z 并满足E′i+F′i=M′1,G′i+H′i=M′2; 和Y′e 代表Ye和Y′e的逆矩阵。
5.根据权利要求1所述的医疗数据隐私保护的云辅助决策树模型诊断方法,其特征在于,步骤2中所述辅助服务器CS注册,具体实现包括以下子步骤:步骤2.4.1:辅助服务器CS发送注册请求;
‑1
步骤2.4.2:可信中心TA返回第一辅助密钥 和第二辅助密钥Y′c 以及第三辅助密钥SKCS;
(L+1)×(L+1) ‑1 ‑1 ‑1其中,A″,B″,C″,D″∈Z 并满足A″+B″=M″1 ,C″+D″=M″2 ; 和Y′c 代表Yc和Y′c的逆矩阵。
6.一种医疗数据隐私保护的云辅助决策树模型诊断系统,其特征在于:包括可信中心TA、评估服务器ES、辅助服务器CS、医疗服务提供商MP和患者Px;
所述可信中心TA,用于对系统进行初始化,即生成系统相关密钥参数并分配服务提供商密钥、患者密钥、评估密钥、辅助密钥;
所述评估服务器ES,用于评估症状在决策树下的决策信息;
所述辅助服务器CS,提供辅助信息与评估服务器进行交互完成诊断;
所述医疗服务提供商MP,拥有大量的历史医疗的病历进而训练出的决策树模型,包含决策特征p,决策路径q和决策分支b,用于确定症状特征所对应的症状路径进而给出决策诊断;
所述患者Px根据自己的身体症状需要获取是否患有某项疾病的诊断,通过患者密钥将症状信息加密后发送给评估服务器ES,评估服务器ES将密文存储并等待辅助服务器CS发送决策树特征后完成特征匹配;医疗服务提供商MP将决策树信息发送给辅助服务器CS,辅助服务器CS在使用随机置换混淆操作和单向保序加密函数后,两台服务器利用K近邻方法确定特征匹配的伪下标,进而确定决策路径生成诊断结果的部分信息;
所述系统用于执行权利要求1‑5任意一项所述的方法。