一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于改进贝叶斯网络的传染病密切接触者排查方法

2022-04-14 02:13:24 来源:中国专利 TAG:


1.本发明属于无线网络通信技术领域,具体涉及一种基于改进贝叶斯网络的传染病密切接触者排查方法。


背景技术:

2.2020年新型冠状病毒引起的新冠肺炎,给全球带来了巨大的损失。在抗疫过程中,如何迅速的寻找密切接触者是极其重要的一个环节。利用大数据能够很方便的查询到所有人的位置信息和身体健康数据,通过分析这些数据,寻找密切接触者并分析密切接触者的健康状态。
3.在中国专利“人员密切接触识别追踪分析方法及装置”(申请号cn202110086507.3)公开的技术方案中,通过对用户所处空间建模,生成空间数据,再通过分析用户身份以及用户的移动轨迹,实现密切接触者的自动查找。该技术方案在开始使用之前需要对空间进行建模,导致该方案只能使用在特定空间,如在商场、银行等地使用,无法将该方案应用在更加广阔的空间,具有一定的局限性。同时,该方案的所有信息都是明文保存,导致用户的行动轨迹泄漏,某些第三方可能根据用户的隐私谋取利益,造成一系列的信息安全问题。
4.在中国专利“一种隐私保护的传染病密切接触者追踪方法及系统”(申请号cn202110016175.1)公开的技术方案中,用户使用相关设备,感知附近拥有该设备的用户,并将感知结果加密保存,每个参与者除了自己的信息,无法获知其他人的相关信息。在追踪阶段,管理者向用户发送感染者加密信息,用户在加密数据上进行计算,并将结果返回给管理者。该技术方案中用户通过感知设备获取附近的用户信息,但是这些信息受环境的影响较大。以常见的蓝牙或者wifi为例,不同的设备信号发送能力和接受能力不同,同时,建筑物等障碍物对结果的影响较大。这些因素都会造成结果的不准确。其次,仅仅依靠单一信号容易造成误差,使计算的结果不准确,容易将一些普通接触者当成密切接触者或者漏掉一些密切接触者信息,造成结果的错误。


技术实现要素:

5.基于上述问题,本发明的目的是提供一种既能保护用户的隐私信息,又能够比较精确的寻找到密切接触者并分析其健康状态的方法,实现密切接触者的快速排查。
6.本发明提供一种基于改进贝叶斯网络的传染病密切接触者排查方法,包括:
7.步骤1:搜集所有用户的行程信息和表征身体状况的体征参数;
8.步骤2:根据解密后的行程信息确定患者的密切接触者;
9.步骤3:对所有密切接触者是否被感染进行排查。
10.所述步骤1包括:
11.步骤1.1:通过智能手机搜集用户的行程信息;所述行程信息包括接触双方的身份信息、接触时间和接触距离;
12.步骤1.2:对采集到的行程信息进行加密处理;
13.步骤1.3:将加密后的行程信息上传服务器进行存储;
14.步骤1.4:通过可穿戴设备测量用户的体征参数;所述体征参数包括:心率、血压的高压值、血压的低压值、体温、年龄;
15.步骤1.5:对采集到的体征参数使用ckks加密方式进行加密处理;
16.步骤1.6:将加密后的体征参数上传服务器进行存储。
17.所述步骤1.2包括:
18.步骤1.2.1:用户初始化加密参数,选择一个素数p和两个小于p的随机数g,x,并计算y=g
x
modp,(y,g,p)为加密公钥,x为解密私钥;
19.步骤1.2.2:对各个用户行程信息m进行加密,计算c1=gkmodp,c2=(yk*m)mod p;
20.步骤1.2.3:生成数据m加密后的结果(c1,c2)。
21.所述步骤1.5包括:
22.步骤1.5.1:用户初始化加密参数,初始化多项式模数ploy_module_degree、参数模数coeff_module和规模scale;
23.步骤1.5.2:根据加密参数生成公钥、密钥和重线性化密钥,并构建加密器、解密器和编码器;
24.步骤1.5.3:使用编码器对数据进行编码,使用加密器对编码后的数据进行加密。
25.所述步骤2根据解密后的行程信息确定患者的密切接触者,涉及患者u、云端服务器s、医院h三方参与,患者u拥有个人信息的解密密钥x,云端服务器s拥有患者u与其他用户的行程信息,医院h希望获得患者u的接触者中哪些用户为密切接触者;包括:
26.步骤2.1:患者u将密钥x切分为x1、x2,其中x、x1、x2满足关系x=x1 x2,患者u将x1发送到云端服务器s,将x2发送到医院h;
27.步骤2.2:服务器s使用密钥x1对患者u加密后的行程信息(c1,c2)进行第一次解密,计算将(c
′1,c2)发送给医院h;
28.步骤2.3:医院h使用密钥x2对服务器s一次解密的结果(c
′1,c2)进行二次解密,计算明文
29.所述步骤3包括:
30.步骤3.1:用户发送体征参数的加密密钥给医院;
31.步骤3.2:医院方使用用户发送的加密密钥生成高斯朴素贝叶斯分类模型计算各体征参数的类条件概率;
32.步骤3.3:计算得到用户的各个体征参数在不同分类中的概率并发送给用户;
33.步骤3.4:用户将服务器发送的结果解密,最大概率对应的健康状态即为用户当前健康状态。
34.所述步骤3.2包括:
35.步骤3.2.1:医院方加载训练样本数据,所述训练样本数据的属性数据集y=y1,y2,y3,

,yi…
,yn,其中属性y1,y2,y3,

,yi…
,yn分别代表用户是否为密切接触者、心率、体温、血压的高压值、血压的低压值、体温、用户年龄;所述训练样本数据的类别c={cj|cj为c1或
c2},其中c1、c2表示用户是、否被感染;
36.步骤3.2.2:计算各属性的均值,结果使用矩阵avg表示,其中avg[i][j]代表在分类结果为cj的样本中属性yi的均值;
[0037]
步骤3.2.3:计算各属性的标准差,使用矩阵euml表示,其中euml[i][j]表示分类结果为cj的样本中属性yi的标准差;
[0038]
步骤3.2.4:医院方使用用户上传的公钥加密步骤3.2.2中计算出的均值、标准差并上传至服务器;
[0039]
步骤3.2.5:服务器对用户健康状态进行分类,用p(c=cj|y=y)表示在用户体征参数为y的情况下分类结果为cj的概率:
[0040][0041]
其中,p(y=y)表示用户体征参数为y的概率。
[0042]
本发明的有益效果是:
[0043]
本发明提出了一种基于改进贝叶斯网络的传染病密切接触者排查方法,使用加密技术对用户的数据进行加密,实现密文数据下用户密切接触者的查找以及健康状态的预测,保护用户的隐私。同时,利用同态加密的特性,首先设计了一种保护用户隐私的密切接触者查找方案,在不解密用户的明文数据的情况下寻找密切接触者。其次,构建了一个能够在加密环境下进行分类的朴素贝叶斯分类模型,对用户的健康状态进行分类,在不泄漏用户的体征数据的情况下完成对用户健康状态的分类,充分保护用户的隐私。
附图说明
[0044]
图1为本发明中基于改进贝叶斯网络的传染病密切接触者排查方法流程图;
[0045]
图2为本发明中加密的密切接触者查找及其健康状态预测模型图;
[0046]
图3为本发明中健康分类模型的输入图。
具体实施方式
[0047]
下面结合附图和具体实施实例对发明做进一步说明。
[0048]
如图1所示,一种基于改进贝叶斯网络的传染病密切接触者排查方法,包括:
[0049]
步骤1:搜集所有用户的行程信息和表征身体状况的体征参数;包括:
[0050]
步骤1.1:通过智能手机搜集用户的行程信息;所述行程信息包括接触双方的身份信息、接触时间和接触距离;用c
a,b
表示用户a与用户b之间的行程信息,其中包括用户a与用户b的身份id,两者接触时间以及接触时表征接触距离的蓝牙信号强度,其中接触时间用t表示,蓝牙信号强度用s表示;
[0051]
步骤1.2:对采集到的行程信息进行加密处理;包括:
[0052]
步骤1.2.1:用户初始化加密参数,选择一个素数p和两个小于p的随机数g,x,并计算y=g
x
modp,(y,g,p)为加密公钥,x为解密私钥;
[0053]
步骤1.2.2:对各个用户行程信息m进行加密,计算c1=gkmodp,c2=(yk*m)mod p;
[0054]
步骤1.2.3:生成数据m加密后的结果(c1,c2);
[0055]
步骤1.3:将加密后的行程信息上传服务器进行存储;
[0056]
步骤1.4:通过可穿戴设备测量用户的体征参数;所述体征参数包括:心率、血压的高压值、血压的低压值、体温、年龄;
[0057]
步骤1.5:对采集到的体征参数使用ckks(同态加密算法)加密方式进行加密处理;包括:
[0058]
步骤1.5.1:用户初始化加密参数,初始化多项式模数ploy_module_degree、参数模数coeff_module和规模scale;
[0059]
步骤1.5.2:根据加密参数生成公钥、密钥和重线性化密钥,并构建加密器、解密器和编码器;
[0060]
步骤1.5.3:使用编码器对数据进行编码,使用加密器对编码后的数据进行加密;
[0061]
步骤1.6:将加密后的体征参数上传服务器进行存储;
[0062]
如图2所示,本发明方案涉及到的实体对象包括用户、医院、存储社交数据的云服务器(简称社交云服务器)、存储体征数据的云服务器(简称健康云服务器)四个;
[0063]
用户信息搜集包括用户行程信息的搜集和表征用户身体状况的体征参数的搜集;
[0064]
用户行程信息搜集:当用户之间彼此接触时,他们的智能手机可以记录详细的联系信息,包括身份、持续时间、接触距离等,这些信息可以及时上传到sc(社交云服务器)进行存储。智能手机利用短距离通信技术(例如,蓝牙和nfc)以及一些其他内置传感器(例如,声传感器)来检测智能手机所有者和其他用户在物理上接近时的接触情况。所包含的信息高度敏感,应对未经授权的实体保密。
[0065]
用户体征参数搜集:用户使用可穿戴设备测量其体征参数(体温、心率、血压高值、血压低值等),然后再将数据发送到健康云服务器。由于这些数据对用户来说是极其敏感的信息,用户将测量的体征数据加密为密文保存在健康云服务器中。
[0066]
密切接触者查询:当患者确诊患病后,医院将患者信息发送给社交云服务器,社交云服务器寻找该患者的接触者中接触时间大于一定阈值,接触距离小于一定阈值的用户查找出来,并将这些用户的身份信息返回给医院。
[0067]
密切接触者健康状况分析:
[0068]
为了分析用户(密切接触者)uj是否有被感染的风险,可以通过uj的体征参数判断uj是否被感染。利用朴素的贝叶斯分类来分析感染状况。假设uj的数据x={x1,...,x
l
}是一个l维向量,x∈r且i∈{1,...,l}。x的内容如附图3所示。一个分类算法c(x,ω):rd→
{c1,...,ck},将x作为输入,k
*
=c(x,ω)∈{1,...k}作为输出。k
*
表示用户当前的健康状态(即感染、健康),是用户身体数据x在加密的高斯朴素贝叶斯分类模型ω上到的结果。在模型ω中,每个分类ci对应一个概率x的第j个元素xj是a,对应的分类ci的概率是prob(xj=a|c=ci)。
[0069]
朴素贝叶斯分类器采用最大后验决策规则来选择后验概率最高的类,如下所示:
[0070]
[0071]
prob(x=x)是归一化因子,并根据贝叶斯定理在给定固定x的情况下删除。
[0072]
朴素贝叶斯假设prob(c=ci,x=x)可以被分解为
[0073][0074]
根据上述等式,给定类别,每个特征在条件上都是独立的。特征值的范围是有限且离散的。k
*
能够根据下式选择。
[0075][0076]
类别对应于用户uj的感染状态。社交网络数据和健康数据的集成包括感染传播的关键因素,并增强了传统的感染分析。
[0077]
数据加密包括行程信息的加密和体征参数的加密;
[0078]
行程信息加密:选择一个素数p和两个小于p的随机数g,x,计算y=g
x
mod p。以(y,g,p)作为公开密钥,以x作为私钥。设明文为m,随机选择一个与p-1互素的整数k,计算c1=gkmod p,c2=ykm mod p,密文为(c1,c2)。解密过程为
[0079][0080]
步骤2:根据解密后的行程信息确定患者的密切接触者;涉及患者u、云端服务器s、医院h三方参与,患者u拥有个人信息的解密密钥x,云端服务器s拥有患者u与其他用户的行程信息,医院h希望获得患者u的接触者中哪些用户为密切接触者;包括:
[0081]
步骤2.1:患者u将密钥x切分为x1,x2,其中x,x1,x2满足关系x=x1 x2,患者u将x1发送到云端服务器s,将x2发送到医院h;
[0082]
步骤2.2:服务器s使用密钥x1对患者u加密后的行程信息(c1,c2)进行第一次解密,计算将(c
′1,c2)发送给医院h;
[0083]
步骤2.3:医院h使用密钥x2对服务器s一次解密的结果(c
′1,c2)进行二次解密,计算明文
[0084]
步骤3:对所有密切接触者是否被感染进行排查;包括:
[0085]
步骤3.1:用户发送体征参数的加密密钥给医院;
[0086]
步骤3.2:医院方使用用户发送的加密密钥生成高斯朴素贝叶斯分类模型计算各
体征参数的类条件概率;包括:
[0087]
步骤3.2.1:医院方加载训练样本数据,所述训练样本数据的属性数据集y=y1,y2,y3,

,yi…
,yn,其中属性y1,y2,y3,

,yi…
,yn分别代表用户是否为密切接触者、心率、体温、血压的高压值、血压的低压值、体温、用户年龄;所述训练样本数据的类别c={cj|cj为c1或c2},其中c1、c2表示用户是、否被感染;
[0088]
步骤3.2.2:计算各属性的均值,结果使用矩阵avg表示,其中avg[i][j]代表在分类结果为cj的样本中属性yi的均值;
[0089]
步骤3.2.3:计算各属性的标准差,使用矩阵euml表示,其中euml[i][j]表示分类结果为cj的样本中属性yi的标准差;为了方便后续密文中的计算,将euml[i][j]中保存的值改为随后,使用矩阵logeuml保存对矩阵euml中每个数取对数的结果;
[0090]
步骤3.2.4:医院方使用用户上传的公钥加密步骤3.2.2中计算出的均值、标准差并上传至服务器;
[0091]
步骤3.2.5:服务器对用户健康状态进行分类,用p(c=cj|y=y)表示在用户体征参数为y的情况下分类结果为cj的概率:
[0092][0093]
其中,p(y=y)表示用户体征参数为y的概率。p(y=y|c=cj)为类条件概率,由于身体健康数据具有连续性而非离散数据,我们使用正态分布概率密度来表示,同时,由于在同一个健康数据中,p(y=y)的数值不会变化,不会对结果造成影响,将上述公式改写为:
[0094][0095]
其中,δi表示在分类结果为cj的情况下,第i个样本的标准差,μi表示在分类结果为cj的情况下第i个样本的均值,为了方便密文下的计算,在实际编程中,我们将上述公式表示为
[0096][0097]
步骤3.3:计算得到用户的各个体征参数在不同分类中的概率并发送给用户;
[0098]
步骤3.4:用户将服务器发送的结果解密,最大概率对应的健康状态即为用户当前健康状态。
[0099]
整个发明的运行流程如下:首先,用户在平时的日常生活中会利用手机和可穿戴设备搜集自己行程社交信息和身体健康数据。随后,用户将这些数据加密后上传至对应的服务器。当用户被医院确诊为传染病患者时,医院会向社交云服务区发送查询请求,查找的密切接触者ub。随后,在健康云服务器中,查询用户ub的加密体征参数数据,分析这些密切接触者的健康状态,并将结果发送给疾病预防控制中心(疾控中心)cdc。本发明将加密与朴素贝叶斯方案结合起来,在不泄漏用户的隐私数据的情况下,对用户的健康状态进行
分析。
[0100]
编程原理如下:
[0101]
输入:
[0102]
医院:训练样本d
[0103]
健康云服务器:朴素贝叶斯训练模型,用户的加密健康数据x
[0104]
用户:ckks加密公钥pkc,私钥skc[0105]
社交云服务器:用户是否为确诊患者的密切接触者iscontact
[0106]
输出:
[0107]
用户的身体健康状态
[0108]
1.用户发送ckks加密公钥pkc给医院;
[0109]
2.医院对训练样本进行处理,使用pkc对处理结果进行加密,并发送至健康云服务器;
[0110]
3.健康云服务器医院发送的数据进行计算,在加密的情况下获得用户不同健康状态分类概率result;
[0111]
4.健康云服务器将用户的健康状态序号发送给医院;
[0112]
5.医院查看序号对应的健康状态,获得用户的健康状态。
[0113]
本发明技术方案利用手机、传感器等设备能够随时随地的记录用户的密切接触者和身体体征参数数据,相比传统的方法,能够将用户的相关信息事无巨细的保存下来,相比传统的靠用户的回忆更加的安全可靠;通过使用各种加密方案,能够充分的保护用户的隐私信息不被泄漏。在体征参数数据中,使用加密的朴素贝叶斯方案进行健康分析,有效的保护用户的身体体征参数数据;在用户的社交数据中,使用elgamal加密方案,将用户的密钥拆分,通过不同的授权方案,将用户的信息社交信息告知给可信实体;通过使用各种加密方案,能够充分的保护用户的隐私信息不被泄漏。在体征参数数据中,使用加密的朴素贝叶斯方案进行健康分析,有效的保护用户的身体体征参数数据;在用户的社交数据中,使用elgamal加密方案,将用户的密钥拆分,通过不同的授权方案,将用户的信息社交信息告知给可信实体。本发明方法可以同时进行密切接触者的寻找及其健康状态的预判,能够在第一时间将可能被感染的患者隔离并重点监控。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献