System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于网络通讯安全,涉及密码学身份认证技术,具体是一种基于远程医疗信息系统的相互认证协议。
技术介绍
1、物联网给人们的生活带来了极大的便利,远程医疗信息系统作为物联网在医疗领域的延伸,能够让医生为患者提供更及时有效的治疗方案,既方便医生又方便患者。但这就存在着敏感数据的存储、传递以及面临各种攻击者的攻击,造成的安全和隐私问题令人担忧。
2、身份认证协议在保护物联网隐私安全中占据极高的位置,远程医疗信息系统中合理的相互认证协议不仅可以完成医生、患者和医疗中心三方之间身份的相互认证,完成信息的安全传输,同时会话还能抵抗常见的攻击。一旦身份认证系统被攻破,那么其他的全安措施都将形同虚设。因此设计一个安全高效的相互认证协议保护远程医疗信息系统的会话安全极其重要。
技术实现思路
1、为了设计一个兼顾效率和安全的远程医疗信息系统的相互认证协议,尤其是保证会话的完整性和安全性,本专利技术提出了一种基于远程医疗信息系统的相互认证协议,协议包括注册阶段、患者数据上传阶段、治疗阶段和报告交付阶段,认证三方分别是患者p、医生d和可信任的医疗中心h。
2、注册阶段,包括患者注册和医生注册,均在安全信道中进行,步骤如下:
3、s1、患者注册
4、s11、需要注册的患者p在移动设备中输入自己的身份和生物特征,使用模糊提取器生成秘密值和辅助数据,,产生验证函数,p通过安全信道将信息发送给医疗中心h;
5、s12、医疗中心h收到信息后,选择一个
6、s13、患者p存储信息;
7、s2、医生注册
8、s21、要注册的医生d输入自己的身份信息并将其通过安全信道发送给医疗中心h;
9、s22、医疗中心h收到后,输入自己的身份并选择一个随机数a,计算和,生成医疗中心h和医生d的共享私钥,存储信息且将计算得到的通过安全信道发给医生d;
10、s23、医生d利用收到的信息计算出并恢复出h的随机数,存储到数据库中方便后续验证。
11、患者数据上传阶段,在这个阶段,要完成患者身体数据信息安全完整保密地向医疗中心h传输,患者身上放置的传感器获取患者身体数据,形成消息;
12、s31、患者p在移动设备中输入身份和生物特征,模糊提取器使用辅助数据和生物特征恢复出秘密值,利用恢复出的秘密值计算并和存储的v进行比较是否相等,如果不相等则结束会话,如果相等,就继续计算,生成一个随机数,计算,验证函数,将信息用密钥加密得到,其中是时间戳,通过不安全信道给医疗中心h发送信息;
13、s32、医疗中心h从收到的信息a中查找到对应的患者身份,并计算密钥,使用计算得到的密钥解密消息,检验时间戳是否在时间阈值内,如果不在则停止会话,如果在,计算,恢复出p的随机数,并计算和解密得到的比较是否相等,若相等则患者p的身份验证成功,医疗中心h生成一个随机数,生成验证消息,sn是患者的序列号,计算,,使用密钥加密消息得到,是时间戳,并将消息通过不安全信道发送给患者p;
14、s33、患者p收到信息后,解密,检验是否在时间阈值内,如果不在,则停止会话,如果在,则计算出医疗中心h的随机数,计算函数是否等于解密得到的,若相等,则医疗中心h的身份验证成功,计算,计算患者p和医疗中心h的会话密钥,生成随机数d,计算患者p和医生d的密钥,利用计算得到的会话密钥加密,并用患者p的私钥签名,计算验证函数,使用会话密钥加密,其中是时间戳,将消息通过不安全信道发送给医疗中心h;
15、s34、医疗中心h计算会话密钥,解密得到,检验时间戳是否在时间阈值内,如果不在,则停止会话,如果在,计算是否等于解密得到的,若相等,患者p身份验证成功,解密消息,用p的公钥检验签名是否为真,验证签名为真后,为患者p寻找医生。
16、治疗阶段,在这个阶段,完成医生的诊断,医疗中心h将患者信息安全发送给医生d,且医生d收到信息后开具治疗报告并将报告发送给医疗中心h,消息;
17、s41、医疗中心h输入身份和随机数a,生成一个随机数,计算,,并计算患者p和医生d的密钥,用密钥将消息加密并用h的私钥签名,计算验证函数,计算,使用加密消息得到,其中是时间戳,且将信息通过不安全信道发送给医生d;
18、s42、医生d用存储的密钥解密,检验时间戳是否在时间阈值内,如果不在则停止会话,如果在就计算,计算函数是否等于,如果相等则医疗中心h身份验证成功,继续计算出患者序列号,,使用刚计算出的和患者p的密钥解密,使用h的公钥验证签名为真,进而医生d根据患者信息开具治疗报告,得到数据,并将数据用与患者p的密钥加密,用自己的私钥签名,生成一个随机数,计算验证函数,是时间戳,并将信息通过不安全信道发送给医疗中心h;
19、s43、医疗中心h收到消息后,解密得到,检验时间戳是否在时间阈值内,如果不在则停止会话,如果在计算函数是否等于解密得到的,相等则身份验证成功,最后h存储。
20、报告交付阶段,在这个阶段,医疗中心h将诊断报告数据安全发送给患者p;
21、s51、医疗中心h计算,是时间戳,使用与患者p的会话密钥加密信息得到,将消息通过不安全信道发送给患者p;
22、s52、患者p解密得到,检验时间戳是否在时间阈值内,计算函数是否与相等来验证h身份,使用解密得到自己的诊断报告,使用d的公钥验证签名为真,进而生成一个确认编号ack,加密得到,计算验证函数,是时间戳,加密,将消息通过不安全信道发送给h;
23、s53、医疗中心h先解密消息,检验时间戳是否在时间阈值内,计算函数是否等于来验证患者p身份,验证为合法身份后,存储信息。
24、进一步的,所述的远程医疗信息系统所采用的哈希算法均采用sm3密码摘要算法。
25、与现有方案相比,本专利技术具有以下优点:
26、(1) 协议保护了患者匿名性,患者身份不直接传输而是将其放在哈希函数中进行加密传输;
27、(2) 每次会话都对通信双方进行了身份验证,证明了合法身份,同时患者的数据以及医生开具的治疗报告均不以明文形式传输而是加密传输,保证了通信安全;
28、(3) 协议采用了数字签名技术,与对称加密双重保护且验证了身份和数据的安全性,还采用时间戳、连接哈希等运算方法,使得整个通讯协议能够抵抗假冒攻击、重放攻击和中间人攻击等常见攻击。
本文档来自技高网...【技术保护点】
1.一种基于远程医疗信息系统的相互认证协议,包括注册阶段、患者数据上传阶段、治疗阶段和报告交付四个阶段:
2.根据权利要求1所述的一种基于远程医疗信息系统的相互认证协议,其特征还在于,每次会话均需要验证各方身份的合法性,使用随机数构建共享密钥和会话密钥,会话中对数据对称加密并进行数字签名。
【技术特征摘要】
1.一种基于远程医疗信息系统的相互认证协议,包括注册阶段、患者数据上传阶段、治疗阶段和报告交付四个阶段:
2.根据权利要求1所述的一种基于远...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。