当前位置: 首页 > 专利查询>杜晓楠专利>正文

区块链系统中更换节点会话密钥的方法、计算机可读介质和区块链系统技术方案

技术编号:26693666 阅读:28 留言:0更新日期:2020-12-12 02:49
本发明专利技术涉及区块链系统中更换节点会话密钥的方法。区块链节点各自生成密钥对。每次会话发起方判定会话密钥超时,会话发起方均重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。本发明专利技术还涉及计算机可读存储介质和区块链系统。实施本发明专利技术的区块链系统中更换节点会话密钥的方法,区块链节点可以周期性更换节点会话密钥,从而可以有效防止黑客窃取密钥,从而提高区块链节点间通话的安全性。

【技术实现步骤摘要】
区块链系统中更换节点会话密钥的方法、计算机可读介质和区块链系统
本专利技术涉及区块链领域,更具体地说,涉及一种区块链系统中更换节点会话密钥的方法、计算机可读介质和区块链系统。
技术介绍
区块链技术是一种共享的分布式数据库技术,其优势主要突出表现在分布式去中心化、无须信任系统、不可篡改和加密安全性等方面。它是一种使用去中心化共识机制去维护一个完整的、分布式的、不可篡改的账本数据库的技术,它能够让区块链中的参与者在无须建立信任关系的前提下实现一个统一的账本系统。在区块链系统中,节点之间通过会话密钥进行通信。如果会话密钥被黑客窃取,当严重危险节点用户的通信和资产的安全性。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术的上述缺陷,提供一种区块链系统中更换节点会话密钥的方法、计算机可读介质和区块链系统,其通过周期性更换会话密钥,可以有效防止黑客窃取密钥,从而提高区块链节点间通话的安全性。本专利技术涉及一种区块链系统中更换节点会话密钥的方法,包括:S1、区块链节点各自生成密钥对;S2、每次会话发起方判定会话密钥超时,会话发起方均重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。在本专利技术所述的区块链系统中更换节点会话密钥的方法中,所述步骤S1进一步包括:S11、每个区块链节点分别从椭圆曲线上选取一个随机标量作为私钥,并选取椭圆曲线上的同一个基点作为通用基点;S12、将所述随机标量作为私钥,将所述私钥与所述通用基点做乘法生成公钥。在本专利技术所述的区块链系统中更换节点会话密钥的方法中,所述步骤S2进一步包括:S21、所述会话发起方判定会话密钥超时;S22、所述会话发起方重新在椭圆曲线上选取随机标量作为一次性私钥,并基于所述一次性私钥生成一次性公钥;S23、所述会话发起方基于接收方公钥和一次性私钥生成所述会话密钥;S24、所述会话发起方将所述一次性公钥写入会话建立请求,并采用所述会话密钥加密会话消息;S25、所述会话接收方基于接收方私钥和所述一次性公钥反推所述会话密钥并采用所述会话密钥解密所述会话消息。在本专利技术所述的区块链系统中更换节点会话密钥的方法中,在所述步骤S22中,将所述一次性私钥与所述通用基点相乘以获得所述一次性公钥。在本专利技术所述的区块链系统中更换节点会话密钥的方法中,在所述步骤S23中,将所述一次性私钥与接收方公钥相乘之后,使用哈希函数对乘积做哈希运算,再将哈希运算结果作为所述会话密钥。在本专利技术所述的区块链系统中更换节点会话密钥的方法中,在所述步骤S25中,所述会话接收方基于所述接收方私钥和所述一次性公钥根据哈希函数反推所述会话密钥并采用所述会话密钥解密所述会话消息。本专利技术解决其技术问题采用的另一技术方案是,构造一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的区块链系统中更换节点会话密钥的方法。本专利技术解决其技术问题采用的再一技术方案是,构造一种区块链系统,包括多个区块链节点,所述区块链节点上存储有计算机程序,所述程序被处理器执行时实现所述的区块链系统中更换节点会话密钥的方法。实施本专利技术的区块链系统中更换节点会话密钥的方法、计算机可读存储介质和区块链系统,区块链节点可以周期性更换节点会话密钥,从而可以有效防止黑客窃取密钥,从而提高区块链节点间通话的安全性。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术的区块链系统中更换节点会话密钥的方法的第一优选实施例的流程图;图2是本专利技术的区块链系统中更换节点会话密钥的方法的第二优选实施例的流程示意图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术涉及一种区块链系统中更换节点会话密钥的方法。其中区块链节点各自生成密钥对。每次会话发起方判定会话密钥超时,会话发起方均重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。实施本专利技术的区块链系统中更换节点会话密钥的方法,区块链节点可以周期性更换节点会话密钥,从而可以有效防止黑客窃取密钥,从而提高区块链节点间通话的安全性。图1是本专利技术的区块链系统中更换节点会话密钥的方法的第一优选实施例的流程图。如图1所示,在步骤S1中,区块链节点各自生成密钥对。在本专利技术的优选实施例中,每个区块链节点分别从椭圆曲线上选取一个随机标量作为私钥,并选取椭圆曲线上的同一个基点作为通用基点;将所述随机标量作为私钥,将所述私钥与所述通用基点做乘法生成公钥。在此,私钥可以推导出公钥且该过程不可逆。例如:选取标量a作为私钥与G做椭圆曲线乘法,可以推导出aG=A,但是无法通过A推导出a。这样,每个区块链节点都具有自己的密钥对。例如,区块链中的一个区块链节点从椭圆曲线上选取随机标量a1作为私钥,然后与椭圆曲线上的基点G做乘法生成公钥a1G=A1。区块链中的另一个区块链节点从椭圆曲线上选取随机标量a2作为私钥,然后与椭圆曲线上的基点G做乘法生成公钥a2G=A2。当然,当区块链节点是新加入节点时,本专利技术的方法还可以包括区块链节点的节点发现和节点间状态确认步骤。比如在区块链节点连入区块链网络之后,首先连接到种子节点,然后要求种子节点给出离自己距离最近的节点,节点间的距离可以根据经典的DHT距离算法算出。收到种子节点给出的最近节点之后,区块链节点继续向最近节点询问最近节点,多次递归询问直到获取足够的多的节点为止,这里建议最大发现节点个数为1024个。发现节点完成之后,开始对节点进行筛选,根据DHT算法选出离自己最近的少部分节点,这里建议选出离自己最近的32个节点;然后开始连接离自己最近的节点,发送握手消息,握手消息包含了自己最近收到的消息,并且加签握手消息。对端节点对身份进行验签,如果发现对端发来的最近消息,距离自己的最新消息的时间戳相差不超过120秒,则回复确认消息,并返回自己的最新消息。收到握手确认之后,如果发现本端的消息跟远端的消息有相差,则向对端同步最新消息。随后,区块链节点之间可以发起节点会话。会话密钥超时由会话发起方决定,通常设置为60秒的倍数,例如:120秒。在进行节点会话时,会话发起方会判定会话是否超时,如果超时将更新会话密钥,即重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。如果会话没有超时,那么会话发起方会沿用旧的会话密钥,所述会话密钥加密会话消息,会话接收方采用一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。例如,如果所述会话本文档来自技高网...

【技术保护点】
1.一种区块链系统中更换节点会话密钥的方法,其特征在于,包括:/nS1、区块链节点各自生成密钥对;/nS2、每次会话发起方判定会话密钥超时,会话发起方均重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。/n

【技术特征摘要】
1.一种区块链系统中更换节点会话密钥的方法,其特征在于,包括:
S1、区块链节点各自生成密钥对;
S2、每次会话发起方判定会话密钥超时,会话发起方均重新生成一次性公钥和会话密钥,并使用所述会话密钥加密会话消息,会话接收方采用所述一次性公钥反推所述会话密钥,并采用所述会话密钥解密所述会话消息。


2.根据权利要求1所述的区块链系统中更换节点会话密钥的方法,其特征在于,所述步骤S1进一步包括:
S11、每个区块链节点分别从椭圆曲线上选取一个随机标量作为私钥,并选取椭圆曲线上的同一个基点作为通用基点;
S12、将所述随机标量作为私钥,将所述私钥与所述通用基点做乘法生成公钥。


3.根据权利要求2所述的区块链系统中更换节点会话密钥的方法,其特征在于,所述步骤S2进一步包括:
S21、所述会话发起方判定会话密钥超时;
S22、所述会话发起方重新在椭圆曲线上选取随机标量作为一次性私钥,并基于所述一次性私钥生成一次性公钥;
S23、所述会话发起方基于接收方公钥和一次性私钥生成所述会话密钥;
S24、所述会话发起方将所述一次性公钥写入会话建立请求,并采用所述会话密钥加密会话消息;
S25、所述会话接收方基于...

【专利技术属性】
技术研发人员:杜晓楠
申请(专利权)人:杜晓楠
类型:发明
国别省市:新加坡;SG

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

1