基于零知识证明和洗牌算法的医疗数据安全管理平台

(整期优先)网络出版时间:2024-03-12
/ 2

基于零知识证明和洗牌算法的医疗数据安全管理平台

作者:Mehwish

摘要:该技术成果开发完成日期:20230319日,首次发表日期:20230324

背景技术

近年来,医疗信息系统等包含个人隐私的数据库均成为了不法黑客的重点攻击对象,针对医疗信息的非法窃取、泄露、使用等信息安全事件层出不穷。系统遭受攻击的方式,除了内部人员窃取、丢失数据等内因外,更多的是来自外部的黑客渗透入侵、未授权访问、接口暴露等网络攻击。

同时,常见的电子医疗系统通常不具有数据加密、分析和整合功能,其核心内容仍是个体患者的健康状况和基本信息。而这些信息一旦泄露就会对患者的隐私造成直接伤害——欺诈者利用这些精准信息可以进行针对性极强的电信诈骗、虚假医疗广告营销等违法活动。

再者,当合法用户(药企)对相关数据进行调取用于药品研发、新药跟踪测试时,用户及用户行为(使用哪些数据进行哪些分析)是需要被记录的。但由于事涉商业机密,药企有匿名需求。然而匿名对监管形成的挑战,难以保证病患隐私,而且“一刀切式”的禁止数据挖掘行业的保护路径无法适应社会的变革。

针对上述情况,现有的常见保护手段有以下几种:数据加密、访问控制、受信任的第三方审计、数据搜索和数据匿名化。下面是其简单介绍和不足之处:

密码学是一种安全技术,将原始消息通过加密算法加密为密文,经公共通道传输到接收方,然后将消息解密为纯文本。但是,复杂的加密算法或传输协议会极大地影响传输速率,甚至无法执行数据传输。此外,它们需要占用宝贵的医疗资源,而这些资源是无法利用的。

访问控制是数据系统定义用户身份和预定义策略以防止未经授权的用户访问资源的手段。其中应用了多种加密方法,包括对称密钥加密(SKE)、非对称密钥加密(AKE)和基于属性的加密(ABE)。一般而言,加密依赖于密钥。密钥的大小和生成机制直接影响加密系统的安全性。因此,对于加密系统,密钥管理机制决定了安全系统的生命周期。

具有良好声誉的可信第三方(TTP)可正确引入无偏见的审核结果,从而实现云服务提供商的责任并保护云用户的合法利益。但是,过分依赖预期的判断和预定义的标签限制了其大规模推广。

可搜索加密的主要方法包括可搜索对称加密(SSE)和带关键字搜索(PEKS)的公钥加密。需要指出的是,加密措施越复杂,搜索数据越困难,搜索结果的一致性检查也越困难。如果无法及时应用搜索结果,则所有安全和隐私措施的含义都较小。

数据匿名化则是在数据发布过程中,考虑原始数据的分布特征的同时,对新数据集的单个属性得到正确处理,以保护患者的隐私。但是,缺点是它不对敏感数据执行任何限制,攻击者可以使用一致性攻击和背景知识攻击来识别敏感数据和个人联系人,从而导致隐私丢失。

技术内容

本技术成果要解决的技术问题是,提供一种基于零知识证明和洗牌算法的医疗数据安全管理平台,通过平台的洗牌算法,在数据上传、数据使用、结果反馈阶段对数据敏感信息进行保护;利用零知识证明验证用户合法性以及保障其匿名需求。

为解决上述技术问题,本技术成果提供的技术方案为:

基于零知识证明和洗牌算法的医疗数据安全管理平台,包括以下具体工作步骤:

(1)构建框架:由用户端、医院端以及药企端组成,医院端对病患的健康数据等隐私进行采集记录,并让病患使用私钥签名确保信息归属权和基础加密,随后通过洗牌算法对多名病患的信息进行可恢复性的基础洗牌,保存到数据库中,对于药企方面,首先在访问数据库之前需要对其进行零知识证明的身份验证,在不外露自己身份信息的情况下,验证自己的合法身份;然后提出调出数据请求,数据库将相关数据提取出来以后再次进行洗牌之乱,同时确保微弱的改变不会影响到数据的整体分布;

(2)洗牌:首先将个人数据进行随机映射,然后进入洗牌算法进行打乱,最后通过分析器验证打乱的程度以及其数据分布的比较,确保整体的完整性,此处的算法为“完美洗牌法”即通过一定次数的轮回,可复原出原始数据,但次数参数由用户自定义,其中洗牌的协议P(·)定义如下:

随机编码器算法Randomizer Encoder,R(·):将映射到可变长度的消息向量上长度为m;

洗牌器算法Shuffler,S(·):对多个消息向量的元素进行混洗得到消息集合Y,n为的个数;

作为改进,并对这些消息运行某些分析功能,

可以将整个洗牌协议表示为:

P=(R,S,A);

(3)基于洗牌的数据的算法:需要使用健康数据的时候,数据库中的个人健康数据将会经过类似于步骤(2)中的洗牌算法,不同之处在于此时的洗牌机器采用的是不可恢复原始顺序的“非完美洗牌”算法。同时此处的分析器进行了扩展,允许使用药企上传的经过审核的深度学习框架,但只返回同样经过审核的结果;

(4)基于零知识证明的身份验证:首先证明者对命题做出承诺,该承诺等待验证者提出挑战并验证,验证者生成零知识证明请求,证明者将收到的随机数结合给出承诺,将它返回给验证者,验证者验证回应的挑战是否正确,如果错误则证明失败,如果正确则进行下一次挑战,直到可以相信的概率达到阈值,则证明成功。

作为改进,所述步骤(4)的具体方法为:

证明者需要证明自己拥有身份私钥pk,利用生成函数G(a)=ga,生成公钥PK=gpk,将公钥以及证明请求t,t=G(v),发送给验证者;

验证者收到请求t后,生成随机数c,形成挑战发送给证明者,证明者计算z=v-c·pk,将z返还验证者,以回应挑战;

验证者验证“请求”与“挑战反馈”是否一致,计算t是否与G(z)·PKc一样,生成函数G(a)=ga可基于离散对数难题或其他NPC问题进行设计,以调整信任阈值和挑战次数。

作为改进,所述验证者不知道证明者的pk,v,证明者无法提前知道验证者的随机数挑战的随机序列顺序。

本技术成果具有如下优点:

本技术成果利用零知识证明技术与洗牌算法,来防范大数据使用时的对个人医疗隐私数据的不正当访问、使用行为,以保障敏感隐私数据的安全性。通过扰乱信息顺序保护信息安全、降低信息精度,确保即使被盗后信息被利用的风险也得到控制;同时保障了合法集团、用户、单位等对于合法匿名调用以上数据的需求,对其行为进行了保护;调用的数据不外传、且经过进一步的洗牌打乱,有效减少了敏感信息泄露危害。例如,大型企业及政府相关部门调用大量医疗数据进行使用时,个人隐私信息(如实时位置、医药消费、疾病历史、收入明细等)的可调用权限将由零知识证明技术保护(即,访问调用记录权限由数据库进行零知识证明验证),在上传、使用信息的过程中,利用洗牌算法对信息进行(不)可恢复置乱,以降低数据的泄露风险。