CN111314060B - 一种密钥更新方法、设备及存储介质 - Google Patents
一种密钥更新方法、设备及存储介质 Download PDFInfo
- Publication number
- CN111314060B CN111314060B CN201811521063.6A CN201811521063A CN111314060B CN 111314060 B CN111314060 B CN 111314060B CN 201811521063 A CN201811521063 A CN 201811521063A CN 111314060 B CN111314060 B CN 111314060B
- Authority
- CN
- China
- Prior art keywords
- key
- information
- new
- service node
- key updating
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0891—Revocation or update of secret information, e.g. encryption key update or rekeying
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明实施例公开了一种密钥更新方法、设备及存储介质,所述方法包括:获取所述第一设备对应的业务节点的密钥更新请求,为所述密钥更新请求生成对应的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;发送所述密钥更新信息给至少一个第二设备,以使所述至少一个第二设备对所述密钥更新信息进行有效性验证得到验证结果;接收所述至少一个第二设备的验证结果,基于所述至少一个第二设备的验证结果,为所述新密钥生成对应的区块;发送所述区块给所述至少一个第二设备,以使所述至少一个第二设备将所述区块添加至本地区块链中生成新区块链。如此,可以极大提高密钥信息的安全性,以及密钥更新效率。
Description
技术领域
本发明涉及区块链技术,尤其涉及一种密钥更新方法、设备及存储介质。
背景技术
网状网系统中的密钥分为私钥和证书、对称密钥两部分,这两部分需要通过不同的渠道进行传输和存储以保证安全。私钥和证书由管理中心(Management Center,MC)生成,通过人工方式下发并安装在加密机内,用于对对称密钥进行加密。
图1示出了一种网状网密钥更新流程,当北京业务节点(Service Node,SN)密钥泄漏或者不可北京SN向网状网总部SN发送密钥更新请求,总部SN中通过网状网MC在接到SN的申请后会生成新的密钥,并通过数据库链接(Database link,DBLINK)将新生成的密钥同步更新到所有SN上,当SN得到新的密钥后,使用加密机提供的加密API安装密钥,新旧密钥会共存一段时间。
MC通过DBLINK向所有的SN上同步新产生的密钥,存在更新周期长,易出错的问题。
发明内容
为解决上述技术问题,本发明实施例期望提供一种密钥更新方法、设备及存储介质,能够提高密钥更新效率,以及密钥信息的安全性。
本发明的技术方案是这样实现的:
本发明实施例提供了第一种密钥更新方法,应用于第一设备,所述方法包括:
获取所述第一设备对应的业务节点的密钥更新请求,为所述密钥更新请求生成对应的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
发送所述密钥更新信息给至少一个第二设备,以使所述至少一个第二设备对所述密钥更新信息进行有效性验证得到验证结果;
接收所述至少一个第二设备的验证结果,基于所述至少一个第二设备的验证结果,为所述新密钥生成对应的区块;
发送所述区块给所述至少一个第二设备,以使所述至少一个第二设备将所述区块添加至本地区块链中生成新区块链。
上述方案中,所述方法还包括:接收第二设备发送的新区块链;基于所述新区块链更新本地存储的密钥信息。
上述方案中,所述方法还包括:判断所述新区块链中包含所述第一设备对应的业务节点的新密钥时,获取所述业务节点的新密钥,将所述新密钥发送至所述第一设备对应的业务节点。
上述方案中,所述验证结果为有效或无效;所述基于所述至少一个第二设备的验证结果,为所述新密钥生成对应的区块,包括:所述至少一个第二设备中至少N个第二设备的验证结果为有效时,确定所述密钥更新信息有效;其中,N取正整数;所述密钥更新信息有效时,为所述新密钥生成对应的区块。
上述方案中,所述方法还包括:所述密钥更新信息有效时,将所述新密钥发送至所述业务节点。
本发明实施例中还提供了一种密钥更新方法,应用于第二设备,所述方法包括:
获取第一设备发送的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
对所述密钥更新信息进行有效性验证得到验证结果,发送所述验证结果至所述第一设备,以使所述第一设备基于所述验证结果为所述新密钥生成对应的区块;
接收所述第一设备发送的区块,将所述区块添加至本地区块链中生成新区块链。
上述方案中,所述方法还包括:发送所述新区块链给所述第一设备,以使所述第一设备根据接收到的所述新区块链完成对应的业务节点的加密和解密操作。
上述方案中,所述对所述密钥更新信息进行有效性验证,包括:基于所述业务节点信息对所述业务节点进行身份认证;身份认证成功时,所述验证结果为有效;身份认证失败时,所述验证结果为无效。
本发明实施例中还提供了一种密钥更新的第一设备,所述第一设备包括:
第一通信单元,用于获取所述第一设备对应的业务节点的密钥更新请求;
第一处理单元,用于为所述密钥更新请求生成对应的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
所述第一通信单元,还用于发送所述密钥更新信息给至少一个第二设备,以使所述至少一个第二设备对所述密钥更新信息进行有效性验证得到验证结果;
所述第一通信单元,还用于接收所述至少一个第二设备的验证结果;
所述第一处理单元,还用于基于所述至少一个第二设备的验证结果,为所述新密钥生成对应的区块;
所述第一通信单元,还用于发送所述区块给所述至少一个第二设备,以使所述至少一个第二设备将所述区块添加至本地区块链中生成新区块链。
本发明实施例中还提供了一种密钥更新的第二设备,所述第二设备包括:
第二通信单元,用于获取第一设备发送的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
第二处理单元,用于对所述密钥更新信息进行有效性验证得到验证结果;
所述第二通信单元,还用于发送所述验证结果至所述第一设备,以使所述第一设备基于所述验证结果为所述新密钥生成对应的区块;接收所述第一设备发送的区块;
所述第二处理单元,还用于将所述区块添加至本地区块链中生成新区块链。
本发明实施例中还提供了另一种密钥更新的第一设备,所述第一设备包括:第一处理器和配置为存储能够在第一处理器上运行的计算机程序的第一存储器,
其中,所述第一处理器配置为运行所述计算机程序时,执行前述第一种密钥更新方法的步骤。
本发明实施例中还提供了另一种密钥更新的第二设备,所述第二设备包括:第二处理器和配置为存储能够在第二处理器上运行的计算机程序的第二存储器,
其中,所述第二处理器配置为运行所述计算机程序时,执行前述第二种密钥更新方法的步骤。
本发明实施例中还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现前述任一项所述的方法的步骤。
采用上述技术方案,业务节点无需向管理中心(MC)进行密钥更新请求,而是向业务节点对应的第一设备进行密钥更新请求,第一设备在为业务节点生成新密钥后,将新密钥保存在区块链中,以区块链形式来存储和共享不同业务节点的密钥信息,可以极大提高密钥信息的安全性,以及密钥更新效率。
附图说明
图1为现有技术中密钥更新系统的组成结构示意图;
图2本发明实施例中密钥更新方法的第一流程示意图;
图3为本发明实施例中密钥更新方法的第二流程示意图;
图4为本发明实施例中密钥更新方法的第三流程示意图;
图5为本发明实施例中密钥更新系统的第一组成结构示意图;
图6为本发明实施例中密钥更新方法的第四流程示意图;
图7为本发明实施例中密钥更新方法的第五流程示意图;
图8为本发明实施例中密钥更新系统的第二组成结构示意图;
图9为本发明实施例中第一设备的第一组成结构示意图;
图10为本发明实施例中第一设备的第二组成结构示意图;
图11为本发明实施例中第二设备的第一组成结构示意图;
图12为本发明实施例中第二设备的第二组成结构示意图。
具体实施方式
为了能够更加详尽地了解本发明实施例的特点与技术内容,下面结合附图对本发明实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明实施例。
区块链(Block chain)也被称之为分布式账本,是一种互联网数据库技术,通过去中心化、去信任集体维护一个可靠的数据库的技术方案。区块链这种去中心化的分布式结构体系的特点,可以让每一个节点在参与记录的同时也来验证其他节点记录数据的正确性。每个节点都是对等的,节点之间都是数据公开的。
区块链中每一个区块按时间顺序一个一个先后生成的,并且按照生成的时间顺序连接在区块链中,区块头是最先生成的区块,区块尾为最近生成的区块,每当有新区块需要添加至区块链中时与区块尾相连。
本发明实施例中给出的密钥更新方法便是基于区块链技术实现的一种密钥更新方法,具体给出如下实施例:
实施例一
这里给出了第一种密钥更新方法,应用于第一设备,如图2所示,密钥更新方法包括:
步骤201:获取第一设备对应的业务节点的密钥更新请求,为密钥更新请求生成对应的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
步骤202:发送密钥更新信息给至少一个第二设备,以使至少一个第二设备对密钥更新信息进行有效性验证得到验证结果;
步骤203:接收至少一个第二设备的验证结果,基于至少一个第二设备的验证结果,为新密钥生成对应的区块;
步骤204:发送区块给至少一个第二设备中,以使至少一个第二设备将区块添加至本地区块链中生成新区块链。
这里,步骤201至步骤204的执行主体可以为第一设备处理单元或通信单元。业务节点分别对应有第一设备和第二设备,其中,第一设备用于处理业务节点的密钥更新请求,为业务节点生成密钥;第二设备用于管理所有业务节点的密钥,将所有业务节点的密钥保存在区块链中,从而保证密钥的安全性。
实际应用中,当业务节点的密钥泄露或者不可得时,向第一设备发送密钥更新请求,第一设备为业务节点生成新密钥。这里,第一设备中整合了加密机程序,通过调用加密机程序为业务节点生成新密钥。
在生成新密钥后,利用新密钥和业务节点信息得到密钥更新信息;将密钥更新信息发送至区块链网络中的至少一个第二设备上,使区块链网络对密钥更新信息的有效性进行验证,目的是为了使区块链网络对密钥更新信息达成共识,从而确定新密钥信息是否可以被添加至区块链中。
这里,区块链网络中包含至少一个第二设备,每一个第二设备作为一个验证节点,只有超过一定比例的第二设备验证密钥更新信息有效时,区块链网络才会将新密钥信息添加至区块链中。
具体的,验证结果为有效或无效。基于至少一个第二设备发送的验证结果,为新密钥生成对应的区块,包括:至少一个第二设备中至少N个第二设备的验证结果为有效时,确定密钥更新信息有效;其中,N取正整数;密钥更新信息有效时,为新密钥生成对应的区块。
每一个区块可以包括:区块头和区块体。其中,区块体中保存了密钥信息和业务节点信息;业务节点信息与密钥信息进行关联,用于确定不同业务节点对应的密钥信息。
区块头用于实现与前一个区块连接,并且为区块链数据库提供完整性的保证。比如,区块i与上一个区块i-1连接在一起时,区块i的区块头中包含了对区块i-1的索引信息。区块i的区块头中可以包括:父区块哈希值:用于将区块i与区块链中前一区块i-1相连;Merkle树根:用于快速校验区块内数据的完整性;时间戳:用于记录该区块产生的时间等。
步骤204具体包括:将区块广播给至少一个第二设备,第二设备将收到的区块连接在区块链的尾部,生成并存储新区块链。将性新生成的区块广播给区块链网络中的每一个第二设备,以使每一个第二设备更新本地的区块链。通过区块链网络来管理业务节点的密钥信息,可以提高密钥保存和传递的安全性。
进一步地,第一设备在接收到新区块链后,会更新本地存储的密钥信息。第一设备对应的业务节点在需要密钥信息执行加密和解密操作时,可以从第一设备缓存的密钥信息中直接获取,无需每次都从区块链网络中获取。
实际应用时,该方法还包括:基于本地存储的密钥信息,实现业务节点的加密和解密操作。
采用上述技术方案,业务节点无需向管理中心(MC)进行密钥更新请求,而是向业务节点对应的第一设备进行密钥更新请求,第一设备在为业务节点生成新密钥后,将新密钥保存在区块链中,以区块链形式来存储和共享不同业务节点的密钥信息,可以极大提高密钥信息的安全性,以及密钥更新效率。
实施例二
为了能更加体现本发明的目的,在本发明实施例一的基础上,进行进一步的举例说明,如图3所示,密钥更新方法具体包括:
步骤301:获取第一设备对应的业务节点的密钥更新请求,为密钥更新请求生成对应的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
步骤302:发送密钥更新信息给至少一个第二设备,以使至少一个第二设备对密钥更新信息进行有效性验证得到验证结果;
步骤303:至少一个第二设备中至少N个第二设备的验证结果为有效时,确定密钥更新信息有效;为新密钥生成对应的区块;
步骤304:发送区块给至少一个第二设备中,以使至少一个第二设备将区块添加至本地区块链中生成新区块链;
步骤305:接收第二设备发送的新区块链;基于新区块链更新本地存储的密钥信息。
这里,步骤301至步骤305的执行主体可以为第一设备处理单元或通信单元。
实际应用中,当业务节点的密钥泄露或者不可得时,向第一设备发送密钥更新请求,第一设备为业务节点生成新密钥。这里,第一设备中整合了加密机程序,第一设备通过调用加密机程序为业务节点生成新密钥。
在生成新密钥后,利用新密钥和业务节点信息得到密钥更新信息;将密钥更新信息发送至区块链网络中,使区块链网络对密钥更新信息的有效性进行验证,目的是为了使区块链网络对密钥信息达成共识,从而确定该密钥信息是否可以被添加至区块链中。
具体的验证方法可以包括:第二设备基于获取的业务节点信息对业务节点进行身份认证,身份认证成功,确定密钥更新信息有效。只有超过一定比例的第二设备均确定密钥信息有效,区块链网络才会允许将该业务节点的新密钥保存到区块链中。
实际应用中,确定密钥更新信息有效,为新密钥生成对应的区块;将该区块添加至区块链中。
该方法还可以包括:所述密钥更新信息有效时,将所述新密钥发送至所述业务节点。也就是说,当业务节点的密钥更新信息有效时,第一设备可以直接将密钥信息下发至业务节点中,使业务节点基于新密钥执行相应的加密和解密操作。
实际应用中,区块生成方法可以包括:将业务节点信息和新密钥保存在区块体中,利用当前区块链中的最后一个区块的索引信息生成新区块的区块头,并保存时间戳。
步骤304具体包括:将区块广播给至少一个第二设备,第二设备将收到的区块连接在区块链的尾部,生成并存储新区块链。
第二设备将新区块链发送给对应的第一设备,目的是为了使第一设备更新本地存储的密钥信息。
这里,业务节点、第一设备和第二设备之间存在关联关系;第一设备用于处理业务节点的密钥更新请求,第二设备管理所有业务节点的密钥,将所有业务节点的密钥保存在区块链中,从而保证密钥的安全性。第二设备将新区块链发送给对应的第一设备,第一设备将新区块链中的密钥信息缓存到本地,用于实现业务节点的加密和解密操作。
这里,区块链中保存了全网中所有业务节点的密钥,区块链网络中每一个第二设备均保存有最新的区块链,如果业务节点对应的第二设备出现故障,还可以从其他第二设备中获取密钥信息,第二设备从故障中恢复后会从其他第二设备中同步最新的区块链,该密钥更新方法具有较高的容错性。
采用上述技术方案,业务节点无需向管理中心(MC)进行密钥更新请求,而是向业务节点对应的第一设备进行密钥更新请求,第一设备在为业务节点生成新密钥后,将新密钥保存在区块链中,以区块链形式来存储和共享不同业务节点的密钥信息,可以极大提高密钥信息的安全性,以及密钥更新效率。
实施例三
为了能更加体现本发明的目的,在本发明实施例一的基础上,进行进一步的举例说明,如图4所示,密钥更新方法具体包括:
步骤401:获取第一设备对应的业务节点的密钥更新请求,为密钥更新请求生成对应的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
步骤402:发送密钥更新信息给至少一个第二设备,以使至少一个第二设备对密钥更新信息进行有效性验证得到验证结果;
步骤403:接收至少一个第二设备的验证结果,基于至少一个第二设备的验证结果,为新密钥生成对应的区块;
步骤404:发送区块给至少一个第二设备中,以使至少一个第二设备将区块添加至本地区块链中生成新区块链;
步骤405:接收第二设备发送的新区块链,判断新区块链中包含第一设备对应的业务节点的新密钥时,获取业务节点的新密钥,将新密钥发送至第一设备对应的业务节点。
这里,步骤401至步骤405的执行主体可以为第一设备的处理单元或通信单元。业务节点分别对应有第一设备和第二设备,其中,第一设备用于处理业务节点的密钥更新请求,为业务节点生成密钥;第二设备用于管理所有业务节点的密钥,将所有业务节点的密钥保存在区块链中,从而保证密钥的安全性。
实际应用中,当业务节点的密钥泄露或者不可得时,向第一设备发送密钥更新请求,第一设备为业务节点生成新密钥。这里,第一设备中整合了加密机程序,通过调用加密机程序为业务节点生成新密钥。
在生成新密钥后,利用新密钥和业务节点信息得到密钥更新信息;将密钥更新信息发送至区块链网络中的至少一个第二设备上,使区块链网络对密钥更新信息的有效性进行验证,目的是为了使区块链网络对密钥更新信息达成共识,从而确定新密钥信息是否可以被添加至区块链中。
进一步地,第一设备在接收到第二设备发送的新区块链之后,根据业务节点信息判断新区块链中是否保存有对应的业务节点的新密钥,如果有,获取新密钥,将新密钥下发至对应的业务节点,将新区块链中的密钥信息缓存到本地,用于实现业务节点的加密和解密操作;如果没有,将新区块链中的密钥信息缓存到本地。
第一设备在接收到第二设备发送的新区块链之后,将新区块链中的密钥信息缓存到本地,用于实现业务节点的加密和解密操作。根据业务节点信息判断新区块链中保存有对应的业务节点的新密钥,获取新密钥,将新密钥下发至对应的业务节点。
图5为本发明实施例中给出的一种密钥更新系统,该系统包括:业务节点1及其对应的第一设备1和第二设备1,业务节点2及其对应的第一设备2和第二设备2,以及第二设备3至第二设备N,还有各自对应的第一设备和业务节点。业务节点各自对应的第一设备具备密钥生成功能,当业务节点的密钥泄露或者不可达时,可以向各自对应的第一设备发起密钥更新请求,以请求获取新的密钥,区块链网络中的第二设备通过将业务节点的密钥信息保存至区块链中,来保证密钥信息的安全性。
实施例四
基于同一发明构思,本发明实施例中还提供了另一种密钥更新方法,应用于第二设备,如图6所示,该方法包括:
步骤601:获取第一设备发送的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
步骤602:对密钥更新信息进行有效性验证得到验证结果,发送验证结果至第一设备,以使第一设备基于验证结果为新密钥生成对应的区块;
步骤603:接收第一设备发送的区块,将区块添加至本地区块链中生成新区块链。
这里,步骤601至步骤603的执行主体可以为第二设备处理单元或通信单元。业务节点分别对应有第一设备和第二设备,其中,第一设备用于处理业务节点的密钥更新请求,为业务节点生成密钥;第二设备用于管理所有业务节点的密钥,将所有业务节点的密钥保存在区块链中,从而保证密钥的安全性。
第一设备在生成新密钥后,利用新密钥和业务节点信息得到密钥更新信息;将密钥更新信息发送至区块链网络中的至少一个第二设备上,使区块链网络对密钥更新信息的有效性进行验证,目的是为了使区块链网络对密钥更新信息达成共识,从而确定新密钥信息是否可以被添加至区块链中。
第二设备在接收到密钥更新信息后,利用密钥更新信息中的业务节点信息对业务节点进行身份认证,身份认证成功时,验证结果为有效;身份认证失败时,验证结果为无效。
验证完成后,发送验证结果至第一设备,第一设备在确定至少一个第二设备中至少N个第二设备的验证结果为有效时,确定密钥更新信息有效;其中,N取正整数;密钥更新信息有效时,为新密钥生成对应的区块。
这里,区块链网络中包含至少一个第二设备,每一个第二设备作为一个验证节点,只有超过一定比例的第二设备验证密钥更新信息有效时,区块链网络才会将新密钥信息添加至区块链中。
进一步地,第一设备确定密钥更新信息有效,为新密钥生成对应的区块;将区块广播给至少一个第二设备;第二设备将该区块添加至区块链中,生成新的区块链,完成区块链的更新。
采用上述技术方案,业务节点无需向管理中心(MC)进行密钥更新请求,而是向业务节点对应的第一设备进行密钥更新请求,第一设备在为业务节点生成新密钥后,第二设备将新密钥保存在区块链中,以区块链形式来存储和共享不同业务节点的密钥信息,可以极大提高密钥信息的安全性,以及密钥更新效率。
实施例五
为了能更加体现本发明的目的,在本发明实施例四的基础上,进行进一步的举例说明,如图7所示,密钥更新方法具体包括:
步骤701:获取第一设备发送的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
步骤702:对密钥更新信息进行有效性验证得到验证结果,发送验证结果至第一设备,以使第一设备基于验证结果为新密钥生成对应的区块;
步骤703:接收第一设备发送的区块,将区块添加至本地区块链中生成新区块链;
步骤704:发送新区块链给第一设备,以使第一设备根据接收到的新区块链完成对应的业务节点的加密和解密操作。
这里,步骤701至步骤704的执行主体可以为第二设备处理单元或通信单元。
这里,业务节点、第一设备和第二设备之间存在关联关系;第一设备用于处理业务节点的密钥更新请求,第二设备管理所有业务节点的密钥,将所有业务节点的密钥保存在区块链中,从而保证密钥的安全性。第二设备将新区块链发送给对应的第一设备,第一设备将新区块链中的密钥信息缓存到本地,用于实现业务节点的加密和解密操作。
实际应用中,区块链在更新后,第二设备将新区块链发送至对应的第一设备,或者第一设备在检测到区块链更新时,向第二设备申请新区块链。第二设备根据新区块链更新本地缓存的密钥信息。
第一设备在接收到第二设备发送的新区块链之后,将新区块链中的密钥信息缓存到本地,用于实现业务节点的加密和解密操作。根据业务节点信息判断新区块链中保存有对应的业务节点的新密钥,获取新密钥,将新密钥下发至对应的业务节点。
本发明实施例中,利用区块链技术可以实现密钥信息的共享,区块链中保存全网中所有业务节点的密钥,区块链网络中每一个第二设备均保存有最新的区块链,如果业务节点对应的第二设备出现故障,还可以从其他第二设备中获取密钥信息,第二设备从故障中恢复后会从其他第二设备中同步最新的区块链,该密钥更新方法具有较高的容错性。
实施例六
在上述实施例一至实施例五的基础上,本发明实施例给出了一种应用场景,该方法应用于网状网系统中,网状网系统中每个机构在区块链网络中都有一个节点(peer),同时每个机构都有一个整合了加密机程序的区块链客户端,用于处理各自机构的密钥更新请求。
本发明实施例中业务节点相当于机构,第一设备相当于区块链客户端,第二设备相当于区块链网络中的节点。
更新步骤具体包括以下:
1、当机构密钥泄漏或者不可得时,向区块链客户端发起密钥更新申请。
2、区块链客户端调用加密机程序生成新密钥后,将新密钥及机构密钥更新的状态发送到区块链业务网络中的共识节点进行共识,共识完成后会产生区块。
3、区块链业务网络完成共识后(即密钥更新信息有效),将新密钥及机构密钥更新状态打包成区块,并将区块分发到区块链网络中。
4、区块链网络中的每一个节点(peer)将区块保存到本地的区块链中,;将新区块链推送给机构对应的区块链客户端。
5、区块链客户端收到新区块链后,判断是否是对应机构发起的密钥更新请求,如果是本节点发起的密钥更新申请,将新密钥发送给对应机构。如果不是本节点发起的密钥更新申请,仅更新本地缓存的密钥文件。
图8中还给出了实现上述方法的系统框架;如图8所示,该系统构架氛围4层:展示层、应用层、业务层和数据层,每层分别完成一项核心功能,各层之间互相配合,实现一个去中心化的信任机制。
其中,展示层包括界面渲染;具体包括:密钥查询界面、密钥更新界面和API接口;
应用层包括区块链加密机程序,为机构生成新密钥;
业务层包括:区块链加密服务、密钥更新业务逻辑、密钥查询业务逻辑,实现第二设备的功能;其中,在节点内部区块链加密机服务向区块链加密机程序提供服务,基于密钥更新业务逻辑实现密钥更新操作,基于密钥查询业务逻辑实现机构密钥的查询操作;
数据层包括:区块链和状态数据库,区块链用于存储各机构的密钥信息,状态数据库用于存储各机构的状态信息。
采用上述方案的优点如下:
1、同步方式比DBLINK方式快,经测试可以在几秒内完成同步,效率提高十倍以上。DBLINK的方式存在中心化的节点,节点很多的情况下,传播效率会比较低下,而通过区块链方式可以快速让所有节点得到更新后的密钥信息。
2、区块链加密机多中心化,消除了单点故障;天然容错,故障节点恢复后,会自动同步最新的数据。
3、区块链客户端从区块链网络中获取到密钥信息后,会保存到本地中;这样机构进行加解密时,就可以直接区块链客户端本地读取最新数据。而不用每次都从区块链网络中获取。
实施例七
基于同一发明构思,本发明实施例还提供了一种密钥更新的第一设备。图9为本发明实施例中第一设备的组成结构示意图,如图9所示,第一设备90包括:
第一通信单元901,用于获取第一设备对应的业务节点的密钥更新请求;
第一处理单元902,用于为密钥更新请求生成对应的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
第一通信单元901,还用于发送密钥更新信息给至少一个第二设备,以使至少一个第二设备对密钥更新信息进行有效性验证;
第一通信单元901,还用于获取至少一个第二设备发送的验证结果;
第一处理单元902,还用于基于至少一个第二设备的验证结果,为新密钥生成对应的区块;
第一通信单元901,还用于发送区块至至少一个第一设备中,以使至少一个第一设备将区块添加至本地区块链中生成新区块链。
在一些实施例中,第一通信单元901,还用于接收第二设备发送的新区块链;第一处理单元902,还用于基于新区块链更新本地存储的密钥信息。
在一些实施例中,第一处理单元902,还用于判断新区块链中包含第一设备对应的业务节点的新密钥时,获取业务节点的新密钥;第一通信单元901,用于将新密钥发送至第一设备对应的业务节点。
在一些实施例中,验证结果为有效或无效;第一处理单元902,具体用于在至少一个第二设备中至少N个第二设备的验证结果为有效时,确定密钥更新信息有效;其中,N取正整数;密钥更新信息有效时,为新密钥生成对应的区块。
在一些实施例中,第一通信单元901,还用于密钥更新信息有效时,将新密钥发送至业务节点。
本发明实施例中还提供了另一种密钥更新的第一设备。如图10所示,该第一设备100包括:第一处理器1001和配置为存储能够在处理器上运行的计算机程序的第一存储器1002;
其中,第一处理器1001配置为运行计算机程序时,执行前述实施例中的方法步骤。
当然,实际应用时,如图10所示,该第一设备100中的各个组件通过第一总线系统1003耦合在一起。可理解,第一总线系统1003用于实现这些组件之间的连接通信。第一总线系统1003除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图10中将各种总线都标为第一总线系统1003。
采用上述技术方案,业务节点无需向管理中心(MC)进行密钥更新请求,而是向业务节点对应的第一设备进行密钥更新请求,第一设备在为业务节点生成新密钥后,将新密钥保存在区块链中,以区块链形式来存储和共享不同业务节点的密钥信息,可以极大提高密钥信息的安全性,以及密钥更新效率。
实施例八
基于同一发明构思,本发明实施例还提供了一种密钥更新的第二设备。如图11所示,第二设备110包括:
第二通信单元1101,用于获取第一设备发送的密钥更新信息;其中,密钥更新信息中至少包括业务节点信息和新密钥;
第二处理单元1102,用于对密钥更新信息进行有效性验证;
第二通信单元1101,还用于发送验证结果至第一设备,以使第一设备基于验证结果为新密钥生成对应的区块;接收第一设备发送的区块;
第二处理单元1102,还用于将区块添加至本地区块链中生成新区块链。
在一些实施例中,第二处理单元1102,还用于发送新区块链给第一设备,以使第一设备根据接收到的新区块链完成对应的业务节点的加密和解密操作。
在一些实施例中,第二处理单元1102,具体用于基于业务节点信息对业务节点进行身份认证;身份认证成功时,验证结果为有效;身份认证失败时,验证结果为无效。
本发明实施例中还提供了另一种密钥更新的第二设备。如图12所示,该第二设备120包括:第二处理器1201和配置为存储能够在处理器上运行的计算机程序的第二存储器1202;
其中,第二处理器1201配置为运行计算机程序时,执行前述实施例中的方法步骤。
当然,实际应用时,如图12所示,该第二设备120中的各个组件通过第二总线系统1203耦合在一起。可理解,第二总线系统1203用于实现这些组件之间的连接通信。第二总线系统1203除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为第二总线系统1203。
在实际应用中,上述存储器可以是易失性存储器(volatile memory),例如随机存取存储器(RAM,Random-Access Memory);或者非易失性存储器(non-volatile memory),例如只读存储器(ROM,Read-Only Memory),快闪存储器(flash memory),硬盘(HDD,HardDisk Drive)或固态硬盘(SSD,Solid-State Drive);或者上述种类的存储器的组合,并向处理器提供指令和数据。
上述处理器可以为特定用途集成电路(ASIC,Application Specific IntegratedCircuit)、数字信号处理装置(DSPD,Digital Signal Processing Device)、可编程逻辑装置(PLD,Programmable Logic Device)、现场可编程门阵列(Field-Programmable GateArray,FPGA)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本发明实施例不作具体限定。
在示例性实施例中,本申请实施例还提供了一种计算机可读存储介质,例如包括计算机程序的第一存储器,上述计算机程序可由第一设备的第一处理器执行,以完成前述方法步骤。或者,包括计算机程序的第二存储器,上述计算机程序可由第二设备的第二处理器执行,以完成前述方法步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程示意图和/或方框图来描述的。应理解可由计算机程序指令实现流程示意图和/或方框图中的每一流程和/或方框、以及流程示意图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程示意图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种密钥更新方法,应用于网状网系统中的第一设备,所述方法包括:
获取所述第一设备对应的业务节点的密钥更新请求,为所述密钥更新请求生成对应的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
发送所述密钥更新信息给至少一个第二设备,以使所述至少一个第二设备对所述密钥更新信息进行有效性验证得到验证结果;所述验证结果为有效或无效;
所述至少一个第二设备中至少N个第二设备的验证结果为有效时,确定所述密钥更新信息有效;其中,N取正整数;
所述密钥更新信息有效时,为所述新密钥生成对应的区块;
发送所述区块给所述至少一个第二设备,以使所述至少一个第二设备将所述区块添加至本地区块链中生成新区块链;
接收第二设备发送的新区块链;
基于所述新区块链更新本地存储的密钥信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断所述新区块链中包含所述第一设备对应的业务节点的新密钥时,获取所述业务节点的新密钥,将所述新密钥发送至所述第一设备对应的业务节点。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:所述密钥更新信息有效时,将所述新密钥发送至所述业务节点。
4.一种密钥更新方法,应用于网状网系统中的第二设备,所述方法包括:
获取第一设备发送的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;所述密钥更新信息是所述第一设备根据获取到的所述第一设备对应的业务节点的密钥更新请求生成的;
对所述密钥更新信息进行有效性验证得到验证结果,发送所述验证结果至所述第一设备,以使所述第一设备在密钥更新信息有效时,为所述新密钥生成对应的区块;所述验证结果为有效或无效;所述密钥更新信息有效是根据至少一个第二设备中至少N个第二设备的验证结果为有效时确定的;接收所述第一设备发送的区块,将所述区块添加至本地区块链中生成新区块链;
发送所述新区块链给所述第一设备,以使第一设备基于所述新区块链更新本地存储的密钥信息。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
发送所述新区块链给所述第一设备,以使所述第一设备根据接收到的所述新区块链完成对应的业务节点的加密和解密操作。
6.根据权利要求4所述的方法,其特征在于,所述对所述密钥更新信息进行有效性验证,包括:
基于所述业务节点信息对所述业务节点进行身份认证;
身份认证成功时,所述验证结果为有效;
身份认证失败时,所述验证结果为无效。
7.一种密钥更新的第一设备,其特征在于,所述第一设备在网状网系统中,所述第一设备包括:
第一通信单元,用于获取所述第一设备对应的业务节点的密钥更新请求;
第一处理单元,用于为所述密钥更新请求生成对应的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;
所述第一通信单元,还用于发送所述密钥更新信息给至少一个第二设备,以使所述至少一个第二设备对所述密钥更新信息进行有效性验证得到验证结果;所述验证结果为有效或无效;
所述第一通信单元,还用于接收所述至少一个第二设备的验证结果;
所述第一处理单元,还用于所述至少一个第二设备中至少N个第二设备的验证结果为有效时,确定所述密钥更新信息有效;其中,N取正整数;所述密钥更新信息有效时,为所述新密钥生成对应的区块;还用于基于新区块链更新本地存储的密钥信息;所述第一通信单元,还用于发送所述区块给所述至少一个第二设备,以使所述至少一个第二设备将所述区块添加至本地区块链中生成新区块链。
8.一种密钥更新的第二设备,其特征在于,所述第二设备在网状网系统中,所述第二设备包括:
第二通信单元,用于获取第一设备发送的密钥更新信息;其中,所述密钥更新信息中至少包括业务节点信息和新密钥;所述密钥更新信息是所述第一设备根据获取到的所述第一设备对应的业务节点的密钥更新请求生成的;
第二处理单元,用于对所述密钥更新信息进行有效性验证得到验证结果;
所述第二通信单元,还用于发送所述验证结果至所述第一设备,以使所述第一设备在密钥更新信息有效时,为所述新密钥生成对应的区块;所述验证结果为有效或无效;所述密钥更新信息有效是根据至少一个第二设备中至少N个第二设备的验证结果为有效时确定的;接收所述第一设备发送的区块;
所述第二处理单元,还用于将所述区块添加至本地区块链中生成新区块链;还用于发送所述新区块链给所述第一设备,以使第一设备基于所述新区块链更新本地存储的密钥信息。
9.一种密钥更新的第一设备,所述第一设备包括:第一处理器和配置为存储能够在第一处理器上运行的计算机程序的第一存储器,
其中,所述第一处理器配置为运行所述计算机程序时,执行权利要求1至3任一项所述方法的步骤。
10.一种密钥更新的第二设备,所述第二设备包括:第二处理器和配置为存储能够在第二处理器上运行的计算机程序的第二存储器,
其中,所述第二处理器配置为运行所述计算机程序时,执行权利要求4至6任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至6任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811521063.6A CN111314060B (zh) | 2018-12-12 | 2018-12-12 | 一种密钥更新方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811521063.6A CN111314060B (zh) | 2018-12-12 | 2018-12-12 | 一种密钥更新方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111314060A CN111314060A (zh) | 2020-06-19 |
CN111314060B true CN111314060B (zh) | 2022-12-13 |
Family
ID=71161381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811521063.6A Active CN111314060B (zh) | 2018-12-12 | 2018-12-12 | 一种密钥更新方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111314060B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112532392B (zh) * | 2020-11-16 | 2022-10-25 | 中信银行股份有限公司 | 密钥处理方法、装置、设备及存储介质 |
CN112417499B (zh) * | 2020-11-18 | 2022-04-22 | 中国电子科技集团公司第三十研究所 | 基于区块链的内网密点提取及管理方法 |
CN113873514B (zh) * | 2021-07-29 | 2023-06-16 | 山东浪潮科学研究院有限公司 | 一种终端根密钥更新方法、装置、设备及可读存储介质 |
CN116996222B (zh) * | 2023-09-27 | 2023-12-12 | 江西财经大学 | 数据安全传输方法、装置、可读存储介质及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600272A (zh) * | 2018-05-10 | 2018-09-28 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置、处理设备及系统 |
CN108833095A (zh) * | 2018-06-25 | 2018-11-16 | 北京奇虎科技有限公司 | 区块链中的行为验证方法、节点、系统及电子设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105701372B (zh) * | 2015-12-18 | 2019-04-09 | 布比(北京)网络技术有限公司 | 一种区块链身份构建及验证方法 |
CN106411901B (zh) * | 2016-10-08 | 2018-01-23 | 北京三未信安科技发展有限公司 | 一种数字身份标识管理方法及系统 |
CN106411503B (zh) * | 2016-11-28 | 2019-11-08 | 中国银行股份有限公司 | 区块链投票记账模式的记账方法及系统、投票及记账节点 |
CN107070644B (zh) * | 2016-12-26 | 2020-02-28 | 北京科技大学 | 一种基于信任网络的去中心化公钥管理方法和管理系统 |
CN107077674B (zh) * | 2016-12-29 | 2021-06-11 | 达闼机器人有限公司 | 交易验证处理方法、装置及节点设备 |
CN107276765B (zh) * | 2017-07-04 | 2020-05-05 | 中国联合网络通信集团有限公司 | 区块链中共识的处理方法及装置 |
CN107395349A (zh) * | 2017-08-16 | 2017-11-24 | 深圳国微技术有限公司 | 一种基于自认证公钥体制的区块链网络密钥分发方法 |
CN108647968A (zh) * | 2018-05-10 | 2018-10-12 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置、处理设备及系统 |
CN108959911A (zh) * | 2018-06-14 | 2018-12-07 | 联动优势科技有限公司 | 一种密钥链生成、验证方法及其装置 |
-
2018
- 2018-12-12 CN CN201811521063.6A patent/CN111314060B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600272A (zh) * | 2018-05-10 | 2018-09-28 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置、处理设备及系统 |
CN108833095A (zh) * | 2018-06-25 | 2018-11-16 | 北京奇虎科技有限公司 | 区块链中的行为验证方法、节点、系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111314060A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111314060B (zh) | 一种密钥更新方法、设备及存储介质 | |
CN109345386B (zh) | 基于区块链的交易共识处理方法及装置、电子设备 | |
US20210083882A1 (en) | Distributed certificate authority | |
WO2019119929A1 (zh) | 区块链共识方法、装置和系统、标识信息处理方法和装置 | |
US11128470B2 (en) | Methods and systems for automatic blockchain deployment based on cloud platform | |
TW202011329A (zh) | 基於區塊鏈的交易共識處理方法及裝置、電子設備 | |
CN110601851B (zh) | 在区块链网络中更换身份证书的方法、装置、介质和设备 | |
CN112035889A (zh) | 计算外包的区块链隐私验证方法、装置及计算机设备 | |
CN111786812B (zh) | 节点管理方法、装置、计算机设备和存储介质 | |
CN111339199B (zh) | 一种区块链密钥恢复方法和装置 | |
CN110730081B (zh) | 基于区块链网络的证书吊销方法、相关设备及介质 | |
CN113328997B (zh) | 联盟链跨链系统及方法 | |
CN111340485B (zh) | 一种用于联盟区块链的数字证书的配置方法、终端和根证书服务器 | |
CN113343201A (zh) | 注册请求处理方法、用户身份信息管理方法及设备 | |
CN113127562A (zh) | 一种低冗余区块链数据存储和检索方法及系统 | |
GB2574076A (en) | Distributed data storage | |
CN112631836A (zh) | 用于区块链的方法、装置、存储介质及电子设备 | |
CN112182009B (zh) | 区块链的数据更新方法及装置、可读存储介质 | |
CN115412568A (zh) | 分布式数据传输方法、装置及系统 | |
CN105049209A (zh) | 动态口令生成方法及装置 | |
CN113127930A (zh) | 充电数据处理方法、装置和计算机可读存储介质 | |
CN111884818A (zh) | 数据文件处理方法、系统、服务器及存储介质 | |
CN115150145B (zh) | 众包设备通信方法、装置、计算机设备和存储介质 | |
US11626986B1 (en) | Method and system of rescinding access to blockchain data | |
EP4095731A1 (en) | Method and system of rescinding access to blockchain data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |