摘要

针对现有电子病历在各医疗机构共享过程中易出现患者隐私泄露以及通信量较大等问题,提出一种基于区块链的电子病历共享模型。首先构建私有链和联盟链,将电子病历密文和关键字密文存储到区块链上,结合属性加密和可搜索加密对用户访问权限进行限制,只有满足患者设置的访问策略可以对电子病历进行搜索,实现细粒度访问。其次对PBFT共识算法进行改进,将网络中共识节点聚类划分,通过权威节点组成骨干共识集群向医院节点组成子共识集群发送消息,减少节点间通信次数。最后从安全性和算法性能等方面进行实验分析,结果表明在整个网络中,攻击者破解密文难度增大,同时通信开销随节点数量增加而减少,实现大规模网络下各医疗机构对电子病历的安全共享。