System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 会话密钥生成系统及方法技术方案_技高网

会话密钥生成系统及方法技术方案

技术编号:42055953 阅读:5 留言:0更新日期:2024-07-16 23:34
本发明专利技术提供了一种会话密钥生成系统及方法,DID发行者节点设备按第一密钥、第二密钥注册医疗机构服务器和用户终端,生成身份认证凭证信息;用户终端与医疗机构服务器做身份认证;医疗机构服务器按身份认证凭证信息、生成元和随机参数生成会话密钥。该系统中,当DID发行者节点设备对医疗机构服务器和用户终端进行注册后,会生成用户的身份认证凭证信息,当用户终端与医疗机构服务器身份认证成功后,在会话密钥的协商过程中,嵌入了身份认证凭证信息,而身份认证凭证信息本身属于通信双方最高等级的安全信息,从而使生成的会话密钥的破解难度随着身份认证凭证信息破解难度的增加而呈指数级别增加,可以有效防止ESL攻击,避免会话密钥泄露。

【技术实现步骤摘要】

本专利技术涉及通信,尤其是涉及一种会话密钥生成系统及方法


技术介绍

1、医疗数据共享与交互,已经是医学科技创新和临床质量提升的必要基础设施,为了保障医疗数据在交互过程中的用户隐私和数据安全,不仅仅医疗相关人员和医疗机构须经过双方相互身份认证,而且在认证成功之后,通信实体双方需要共同协商出会话密钥,以确保安全通信,进一步保护医疗数据和信息的安全。在现有通信实体的身份认证系统中,并未包括有会话密钥协商的相关操作,通信双方没有共享的安全会话密钥,自然不能够满足医疗数据被安全共享的需求。同时,现有包含有会话密钥协商的密码学身份认证技术,在会话密钥的生成过程中,会话密钥的表现形式为一组关于通信双方身份id(identitydocument,身份标识)和双方随机秘密参数的hash值,这样的生成方式容易遭到eck敌手发起的esl(ephemeral secret leakage)攻击,从而导致会话密钥泄露。


技术实现思路

1、本专利技术的目的在于提供一种会话密钥生成系统及方法,以防止esl攻击,避免会话密钥泄露。

2、本专利技术提供的一种会话密钥生成系统,系统包括:相互通信连接的用户终端、医疗机构服务器和did发行者节点设备;did发行者节点设备用于通过区块链共识机制,生成第一密钥、第二密钥和生成元;基于第一密钥、第二密钥对医疗机构服务器和用户终端进行注册,并生成用户的身份认证凭证信息;用户终端用于基于did发行者节点设备的智能合约和生成元,与医疗机构服务器进行身份认证;医疗机构服务器用于基于用户的身份认证凭证信息、生成元和随机参数,生成用户终端与医疗机构服务器之间的会话密钥。

3、进一步的,did发行者节点设备用于接收用户终端发送的数据元组声明信息和用户的第一标识符,根据数据元组声明信息和第一标识符生成签名信息;基于数据元组声明信息、第一标识符和签名信息生成预凭证;基于预凭证生成主凭证和环境凭证,其中,数据元组声明信息中包括:声明内容、声明内容对应的说明信息。

4、进一步的,did发行者节点设备根据did发行者节点设备的节点私钥和说明信息的切片信息,计算得到第一结果,根据第一结果、第一标识符、数据元组声明信息和数据元组声明信息对应的签名信息生成主凭证;将主凭证发送至用户终端;

5、did发行者节点设备接收用户终端发送的关系属性,根据用户的基于环境的第二标识符、数据元组声明信息、关系属性和签名信息生成基于环境的环境凭证;将环境凭证发送至用户终端。

6、进一步的,did发行者节点设备接收医疗机构服务器发送的医疗机构服务器私钥和医疗机构服务器公钥,基于医疗机构服务器公钥和第二密钥,计算哈希值,得到验证凭证,将医疗机构服务器私钥和验证凭证返回至医疗机构服务器并保存,完成对医疗机构服务器的注册。

7、进一步的,用户终端获取用户的did身份、第一口令和第一随机数,根据环境凭证、did身份、第一口令,计算哈希值,得到第一中间结果;根据第一中间结果和第一随机数,生成用户对应的注册请求,将注册请求发送至did发行者节点设备;did发行者节点设备用于基于接收到注册请求,确定用户对应的第一伪身份,并确定用户对应的分布式身份,根据第一伪身份、分布式身份和第一密钥,计算哈希值,得到第二结果;根据注册请求、第一密钥和分布式身份,计算哈希值,得到身份认证凭证信息;根据第二结果、身份认证凭证信息和注册请求,计算得到第三结果;根据身份认证凭证信息、注册请求和第一密钥,计算哈希值,得到第四结果;根据第四结果、第一伪身份和第一密钥,计算得到第五结果;根据第一伪身份、第五结果、第三结果和预设的最大登录失败次数,生成智能卡的智能卡信息,将智能卡信息发送至用户终端;

8、用户终端用于根据注册请求和第三结果,得到第二结果和身份认证凭证信息对应的第一恢复结果;根据第一恢复结果和第一中间结果,得到第三结果对应的更新结果;根据第二结果、did身份、第一口令和身份认证凭证信息,计算哈希值,得到第六结果;根据第一伪身份、第五结果、第三结果对应的更新结果、第六结果,和预设的最大登录失败次数,生成智能卡的智能卡最终信息,将智能卡最终信息保存至用户终端,完成对用户终端的注册。

9、进一步的,用户终端用于将用户输入的实际登录信息输入至智能卡,以使智能卡根据实际登录信息计算哈希值,得到第一实际结果,根据第一实际结果、第三结果对应的更新结果和实际登录信息,计算得到第七实际结果;如果第七实际结果与第六结果相同,获取第二随机数,并提取当前的第一时间戳,根据医疗机构服务器公钥、身份认证凭证信息、第二随机数、第五结果和生成元,确定第一登录参数;根据身份认证凭证信息、第二随机数、第五结果、医疗机构服务器公钥、第一时间戳,计算哈希值,得到第二登录参数;根据第一伪身份、第一登录参数、第二登录参数和第一时间戳,生成登录消息,将登录消息发送至医疗机构服务器;

10、医疗机构服务器用于获取当前时间戳,计算当前时间戳与第一时间戳之间的第一时间间隔,如果第一时间间隔小于预设时间阈值,采用医疗机构服务器私钥对第一登录参数进行解密,得到第三解密结果,根据第三解密结果、医疗机构服务器公钥和第一时间戳,计算哈希值,得到第二计算参数,如果第二计算参数与第二登录参数相同,提取当前的第二时间戳,根据第五结果、验证凭证、医疗机构服务器公钥和第二时间戳,计算得到第三计算参数和第四计算参数;基于第一伪身份、第三计算参数、第四计算参数和第二时间戳生成用户终端与医疗机构服务器之间的会话密钥。

11、进一步的,医疗机构服务器还用于将第一伪身份、第三计算参数、第四计算参数和第二时间戳发送至did发行者节点设备;did发行者节点设备用于计算当前时间戳与第二时间戳之间的第二时间间隔,如果第二时间间隔小于预设时间阈值,根据第三计算参数、医疗机构服务器公钥、第二密钥和医疗机构服务器公钥,计算得到第六实际结果;根据第六实际结果、医疗机构服务器公钥、第二密钥和第二时间戳,计算得到第四实际结果,如果第四实际结果与第四计算参数相同,根据第五结果、第一伪身份和第一密钥,恢复出第四结果;如果确认第四结果已存在于区块链中,记录当前的第三时间戳,确定用户对应的第二伪身份;根据第一伪身份、分布式身份和第一密钥,计算哈希值,得到第七结果;根据第二伪身份、分布式身份和第一密钥,计算哈希值,得到第八结果;根据第二伪身份和第八结果,计算哈希值,得到第九结果;根据第五结果、第四结果、医疗机构服务器公钥、第二密钥和第三时间戳,计算得到第十结果和第十五结果;根据第七结果、第二伪身份、第九结果、第五结果、第四结果、第八结果、医疗机构服务器公钥、第二密钥,计算得到第十一结果和第十二结果;将第十结果、第十五结果、第十一结果和第十二结果和第三时间戳发送至医疗机构服务器;医疗机构服务器用于基于第十结果、第十五结果、第十一结果和第十二结果和第三时间戳生成用户终端与医疗机构服务器之间的会话密钥。

12、进一步的,医疗机构服务器用于计算当前时间戳与第三时间戳之间的第三时间间本文档来自技高网...

【技术保护点】

1.一种会话密钥生成系统,其特征在于,所述系统包括:相互通信连接的用户终端、医疗机构服务器和DID发行者节点设备;

2.根据权利要求1所述的系统,其特征在于,

3.根据权利要求2所述的系统,其特征在于,

4.根据权利要求2所述的系统,其特征在于,

5.根据权利要求4所述的系统,其特征在于,

6.根据权利要求5所述的系统,其特征在于,

7.根据权利要求6所述的系统,其特征在于,

8.根据权利要求7所述的系统,其特征在于,

9.根据权利要求5所述的系统,其特征在于,

10.一种会话密钥生成方法,其特征在于,所述方法包括:

【技术特征摘要】

1.一种会话密钥生成系统,其特征在于,所述系统包括:相互通信连接的用户终端、医疗机构服务器和did发行者节点设备;

2.根据权利要求1所述的系统,其特征在于,

3.根据权利要求2所述的系统,其特征在于,

4.根据权利要求2所述的系统,其特征在于,

5.根据权利要求4所...

【专利技术属性】
技术研发人员:王辰王健伟李亚子魏旗鹏崔长弘侯丽李璐琪徐崇智曹强黄安鹏
申请(专利权)人:中国医学科学院
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1