CN115941184B - 加密模块故障处理方法、装置、电子设备、系统及芯片 - Google Patents
加密模块故障处理方法、装置、电子设备、系统及芯片 Download PDFInfo
- Publication number
- CN115941184B CN115941184B CN202310187223.2A CN202310187223A CN115941184B CN 115941184 B CN115941184 B CN 115941184B CN 202310187223 A CN202310187223 A CN 202310187223A CN 115941184 B CN115941184 B CN 115941184B
- Authority
- CN
- China
- Prior art keywords
- data
- module
- security
- updated
- security modules
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
- Y04S40/20—Information technology specific aspects, e.g. CAD, simulation, modelling, system security
Landscapes
- Storage Device Security (AREA)
- Hardware Redundancy (AREA)
Abstract
本公开实施例公开了一种加密模块故障处理方法、装置、电子设备、系统及芯片,所述方法包括:响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个安全模块获取各自的校验数据;校验数据基于安全模块上的本地存储数据计算得到;比较从多个安全模块获取的校验数据;在校验数据不一致的安全模块数量不超过预设阈值时,从校验数据一致的安全模块中选择其中一个作为主安全模块;向主安全模块发送同步密钥配置指令,以使主安全模块与校验数据不一致的其他安全模块进行密钥同步;在主安全模块与其他安全模块完成密钥同步后,向主安全模块发送数据同步指令,以使主安全模块基于同步后的密钥与其他安全模块进行数据同步。
Description
技术领域
本公开涉及安全技术领域,具体涉及一种加密模块故障处理方法、装置、电子设备、系统及芯片。
背景技术
加密模块是一种采用PCIE总线技术的高速密码设备,主要应用于签名验签服务器、安全网关等安全模块领域,以及电子印章管理、安全公文传输等软件系统领域。加密模块主要支持的算法为国密系列的SM1、SM2、SM3、SM4等算法;国际通用的DES、AES、SHA、RSA等算法。
传统的加密模块产品通常采用单核心处理单元结构,一般通过上位机与单核加密模块建立一对一的通信连接,由上位机负责将数据传输给加密模块,加密模块则对接收到的数据进行加密等处理。已有技术中为了提高数据处理效率,也建立一个多核心的加密模块,通过上位机与多核心加密模块建立并发处理机制,以提高数据处理速度。但是已有的单核心处理单元结构的加密模块产品的故障会处理方式无法满足多核心 处理结构的加密模块。因此,需要提出一种解决方案,以解决多核心处理结构单元的加密模块中各个安全模块出现故障时的处理方案。
发明内容
本公开实施例提供一种加密模块故障处理方法、装置、电子设备、系统及芯片。
第一方面,本公开实施例中提供了一种加密模块故障处理方法,其中,所述方法在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述方法包括:
响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
比较从多个所述安全模块获取的校验数据;
在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
进一步地,在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块,包括:
在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
进一步地,所述方法还包括:
在所述主安全模块和所述其他安全模块完成数据同步后,返回至分别从多个所述安全模块获取各自的校验数据的步骤重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
第二方面,本公开实施例中提供了一种加密模块故障处理方法,其中,所述方法在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述方法包括:
响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
进一步地,基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块,包括:
向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
进一步地,验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据,包括:
在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
进一步地,所述方法还包括;
在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行。
第三方面,本公开实施例中提供了一种加密模块故障处理方法,其中,所述方法在安全模块上执行,所述安全模块为加密模块中的其中一个模块,所述加密模块包括多个安全模块,并且与处理决策中心设备相连;所述方法包括:
接收所述处理决策中心设备发送的校验数据获取请求;
基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
接收所述处理决策中心设备发送的同步密钥配置指令;
基于所述同步密钥配置指令与所述处理决策中心设备指定的其他安全模块进行配置密钥的同步;
接收所述处理决策中心设备的数据同步指令;
基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的其他安全模块进行数据的同步。
进一步地,所述安全模块为主安全模块,所述方法还包括:
接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块。
进一步地,所述安全模块为非主安全模块,所述方法还包括:
在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
将所述第二校验数据返回给处理决策中心设备;
接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
基于更新后的本地存储数据计算第三校验数据;
将所述第三校验数据返回给所述处理决策中心设备。
第四方面,本公开实施例中提供了一种加密模块故障处理系统,包括:处理决策中心设备和加密模块;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的整体数据校验请求,分别向多个所述安全模块请求获取校验数据;
所述安全模块接收到所述处理决策中心设备的请求后,基于本地存储数据计算得到校验数据,并返回给所述处理决策中心设备;
所述处理决策中心设备比较从多个所述安全模块获取的校验数据,并在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块,以及向所述主安全模块发送同步密钥配置指令;
所述主安全模块接收到同步密钥配置指令后,向所述校验数据不一致的其他安全模块进行密钥同步;
所述处理决策中心设备在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令;
所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
进一步地,所述处理决策中心设备在所述校验数据不一致的安全模块数量不超过预设阈值时,还确定所述安全模块当前是否满足校验次数限制,并在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
进一步地,所述处理决策中心设备在所述主安全模块和所述其他安全模块完成数据同步后,重新返回至分别向多个所述安全模块请求获取校验数据的步骤执行,直至多个所述安全模块的校验数据都一致,或者所述安全模块当前不满足校验次数限制为止。
第五方面,本公开实施例中提供了一种加密模块故障处理系统,包括:处理决策中心设备和加密模块;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块,并向所述主安全模块发送携带待更新数据的第一数据更新指令;
所述主安全模块基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块;
所述处理决策中心设备验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据,并且若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
进一步地,所述主安全模块在完成本地存储数据的更新后,基于更新后的数据计算第一校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备基于所述主安全模块返回的第一校验数据验证所述主安全模块上是否数据更新成功,并在所述主安全模块上数据更新成功后,向所述主安全模块发送数据同步指令;
所述主安全模块基于所述数据同步指令中的待更新数据更新所述其他安全模块上的本地存储数据,其他安全模块基于更新后的所述本地存储数据计算第二校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备确定存在所述第二校验数据错误的其他安全模块后,向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据。
进一步地,所述其他安全模块接收到所述第二数据更新指令后,基于所述第二数据更新指令中的待更新数据更新本地存储数据,并基于更新后的所述本地存储数据计算第三校验数据,以及将所述第三校验数据返回给所述处理决策中心设备;
若存在第三校验数据错误的其他安全模块,所述处理决策中心设备将所述第三校验数据错误的所述其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
进一步地,所述处理决策中心设备在所述主安全模块上数据更新未成功时,确定当前是否满足数据更新次数限制,并若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行。
第六方面,本公开实施例中提供了一种加密模块故障处理装置,其中,所述装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述装置包括:
第一响应模块,被配置为响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
比较模块,被配置为比较从多个所述安全模块获取的校验数据;
选择模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一发送模块,被配置为向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
第二发送模块,被配置为在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
进一步地,所述选择模块,包括:
确定子模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
选择子模块,被配置为在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一删除子模块,被配置为在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
进一步地,所述装置还包括:
第一返回模块,被配置为在所述主安全模块和所述其他安全模块完成数据同步后,返回至第一响应模块重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
第七方面,本公开实施例中提供了一种加密模块故障处理装置,其中,所述装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述装置包括:
进一步地,所述装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述装置包括:
第二响应模块,被配置为响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
第一更新模块,被配置为基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证模块,被配置为验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
删除模块,被配置为若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
进一步地,所述第一更新模块,包括:
第一发送子模块,被配置为向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
验证子模块,被配置为基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
第二发送子模块,被配置为在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
进一步地,所述验证模块,包括:
获取子模块,被配置为在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
第三发送子模块,被配置为若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收子模块,被配置为接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
第二删除子模块,被配置为将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
进一步地,所述装置还包括;
确定模块,被配置为在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
第二返回模块,被配置为若满足数据更新次数限制,则返回第二响应模块重新执行。
第八方面,本公开实施例中提供了一种加密模块故障处理装置,其中,所述装置在安全模块上执行,所述安全模块为加密模块中的其中一个模块,所述加密模块包括多个安全模块,并且与处理决策中心设备相连;所述装置包括:
第一接收模块,被配置为接收所述处理决策中心设备发送的校验数据获取请求;
第三返回模块,被配置为基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
第二接收模块,被配置为接收所述处理决策中心设备发送的同步密钥配置指令;
第一同步模块,被配置为基于所述同步密钥配置指令与所述处理决策中心设备指定的其他安全模块进行配置密钥的同步;
第三接收模块,被配置为接收所述处理决策中心设备的数据同步指令;
第二同步模块,被配置为基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的其他安全模块进行数据的同步。
进一步地,所述安全模块为主安全模块,所述装置还包括:
第四接收模块,被配置为接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
第三同步模块,被配置为基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块。
进一步地,所述安全模块为非主安全模块,所述装置还包括:
第一计算模块,被配置为在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
第四返回模块,被配置为将所述第二校验数据返回给处理决策中心设备;
第五接收模块,被配置为接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
第二更新模块,被配置为基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
第二计算模块,被配置为基于更新后的本地存储数据计算第三校验数据;
第五返回模块,被配置为将所述第三校验数据返回给所述处理决策中心设备。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,上述装置的结构中包括存储器和处理器,所述存储器用于存储一条或多条支持上述装置执行上述对应方法的计算机指令,所述处理器被配置为用于执行所述存储器中存储的计算机指令。上述装置还可以包括通信接口,用于上述装置与其他设备或通信网络通信。
第九方面,本公开实施例提供了一种电子设备,包括存储器、处理器以及存储在存储器上的计算机程序,其中,所述处理器执行所述计算机程序以实现上述任一方面所述的方法。
第十方面,本公开实施例提供了一种计算机可读存储介质,用于存储上述任一装置所用的计算机指令,该计算机指令被处理器执行时用于实现上述任一方面所述的方法。
第十一方面,本公开实施例提供了一种计算机程序产品,其包含计算机指令,该计算机指令被处理器执行时用于实现上述任一方面所述的方法。
第十二方面,本公开实施例提供了一种芯片,该芯片用于执行指令以实现上述任一方面所述的方法。
本公开实施例提供的技术方案可以包括以下有益效果:
本公开实施例针对加密模块进行整体数据校验,以便在安全模块出现故障时进行数据恢复的过程中,先从各个安全模块获取各自的校验数据,通过比较校验数据确定其中有故障的安全模块,并在有故障的安全模块的数量不超过半数的情况下,对有故障的安全模块进行数据恢复。数据恢复过程中,先从无故障的安全模块中选择其中一个作为主安全模块,将主安全模块和有故障的子安全模块进行密钥同步,之后再使用同步后的密钥将主安全模块上的本地存储数据恢复到存在故障的子安全模块中,使得各个安全模块能够保持数据一致。本公开实施例实现了多安全模块加密模块的故障检测机制和故障处理机制,通过仲裁机制使得数据可信度更高。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
结合附图,通过以下非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加明显。在附图中。
图1示出根据本公开一实施方式的加密模块故障处理方法的流程图。
图2示出根据本公开一实施方式的加密模块的结构框图。
图3示出根据本公开一实施方式的安全故障处理方法的一种实现流程图。
图4示出根据本公开另一实施方式的加密模块故障处理方法的流程图。
图5示出根据本公开一实施方式的单次数据更新过程的一种实现流程示意图。
图6示出根据本公开又一实施方式的加密模块故障处理方法的流程图。
图7示出根据本公开一实施方式的加密模块故障处理系统的结构框图。
图8示出根据本公开另一实施方式的加密模块故障处理系统的结构框图。
图9示出根据本公开一实施方式的电子设备的结构框图。
图10是适于用来实现根据本公开一实施方式的加密模块故障处理方法的计算机系统的结构示意图。
具体实施方式
下文中,将参考附图详细描述本公开的示例性实施方式,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施方式无关的部分。
在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。
另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
下面通过具体实施例详细介绍本公开实施例的细节。
图1示出根据本公开一实施方式的加密模块故障处理方法的流程图。如图1所示,该加密模块故障处理方法包括以下步骤:
在步骤S101中,响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
在步骤S102中,比较从多个所述安全模块获取的校验数据;
在步骤S103中,在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
在步骤S104中,向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
在步骤S105中,在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
本实施例中,该加密模块故障处理方法可以在与加密模块连接的处理决策中心设备上执行。处理决策中心设备例如可以是上位机等计算机、服务器等设备。加密模块可以是一种PCIE(Peripheral Component Interconnect Express,外部设备高速连接)设备,例如可以制作成加密卡的形式,与处理决策中心设备通过PCIE总线接口连接。当然,在其他实施例中,加密模块也可以是其他设备,如具有USB接口、WIFI接口的设备,通过USB接口或WIFI接口等与处理决策中心设备通信。
加密模块可以包括多个安全模块,如图2所示,每个安全模块可以通过HUB(多端口转发器)连接,而HUB则通过通信端口与处理决策中心设备如上位机通行。通信端口例如可以是PCIE接口、USB接口或者是WIFI接口等。
如图2所示,加密模块可以包括n个安全模块,n为大于1的整数,每个安全模块可被认为是一个核心处理单元。每个安全模块各自存储有本地存储数据,本地存储数据可以包括但不限于密钥、状态、用户权限等数据。加密模块在正常运行状态下,各个安全模块中的部分或者全部本地存储数据是一致的,例如各个安全模块上存储的密钥可以是一致的。
在一些实施例中,一个安全模块从外部比如上位机或者其他设备接收到需要进行数据同步的指令,如更新密钥的指令时,则需要通过某种安全方式将新的密钥同步到其他安全模块。
在一些实施例中,加密模块上电过程或者用户自定义的时机可以对加密模块上的安全模块进行整体数据校验,以检验安全模块是否出现故障,以及对出现故障的安全模块进行相应处理。
本公开实施例中,处理决策中心设备接收到对加密模块的多个安全模块的整体数据校验请求(该整体数据校验请求例如可以是加密模块上电过程中触发的,也可能是基于用户自定义的某个时机触发的)后,分别向多个安全模块发送生成校验数据并返回给处理决策中心设备的指令。处理决策中心设备从安全模块接收到各自的校验数据之后,可以比较各个校验数据。
如上文中所述,多个安全模块可以是数据同步的安全模块,例如各个安全模块存储的密钥是一致的。整体数据校验的目的可以是验证各个安全模块能否正常运行,并且所存储的密钥是否一致。
各个安全模块在接收到处理决策中心设备的指令后,可以基于本地存储数据中需要一致的数据比如密钥计算校验数据。在一些实施例中,校验数据可以是基于需要一致的数据通过某种算法例如哈希算法、循环冗余校验算法等计算得到的特征值。安全模块将计算得到的校验数据返回给处理决策中心设备。
处理决策中心设备比较各个安全模块返回的校验数据,如果所有安全模块上的校验数据均一致,则可以认为各个安全模块都未出现故障,在正常运行,该流程可以结束。
而如果存在部分安全模块的校验数据与其他安全模块上的校验数据不一致,并且校验数据不一致的安全模块数量未超过预设阈值,则可以认为目前的加密模块依然可以正常运行,之后处理决策中心设备可以针对校验数据不一致的安全模块进行数据恢复。
在一些实施例中,预设阈值可以最大是加密模块包括的安全模块总数量的一半。也就是说,在超过半数的安全模块返回的校验数据一致的情况下,可以进行数据恢复,也即本公开实施例采用多数一致的仲裁方式进行数据恢复。
在数据恢复过程中,处理决策中心设备从校验数据一致的安全模块中选择一个作为主安全模块,而校验数据与大多数安全模块不一致的安全模块作为子安全模块,并向主安全模块发送同步密钥配置指令。
在一些实施例中,该同步密钥配置指令用于指示主安全模块与校验数据不一致的其他安全模块,也即子安全模块进行密钥同步。在一些实施例中,同步密钥配置指令可以包括需要进行同步的密钥。主安全模块将该需要同步的密钥同步至各个子安全模块,使得主安全模块和子安全模块都存储有相同的密钥。
在主安全模块和子安全模块完成密钥同步后,处理决策中心设备还向主安全模块发送数据同步指令。主安全模块在该数据同步指令的指示下,将主安全模块上的本地存储数据同步至子安全模块,使得子安全模块的本地存储数据与主安全模块的本地存储数据一致。
需要说明的是,主安全模块在同步密钥配置指令下与子安全模块进行密钥同步的目的是,为了使用同步后的密钥对需要同步的数据进行加密,防止安全模块上的本地存储数据在传输过程中被泄密。还需要说明的是,本地存储数据中需要进行同步的数据中的密钥,与同步密钥配置指令下同步的密钥可以是不同的密钥。本地存储数据中的密钥是为了后续执行数字签名、数据加密而使用的密钥,同步密钥配置指令下同步的密钥是为了同步主安全模块和子安全模块上的数据时加密所要同步的数据。
本公开实施例针对加密模块进行整体数据校验,以便在安全模块出现故障时进行数据恢复的过程中,先从各个安全模块获取各自的校验数据,通过比较校验数据确定其中有故障的安全模块,并在有故障的安全模块的数量不超过半数的情况下,对有故障的安全模块进行数据恢复。数据恢复过程中,先从无故障的安全模块中选择其中一个作为主安全模块,将主安全模块和有故障的子安全模块进行密钥同步,之后再使用同步后的密钥将主安全模块上的本地存储数据恢复到存在故障的子安全模块中,使得各个安全模块能够保持数据一致。本公开实施例实现了多安全模块加密模块的故障检测机制和故障处理机制,通过仲裁机制使得数据可信度更高。
在本实施例的一个可选实现方式中,步骤S103,即在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块的步骤,进一步包括以下步骤:
在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
该可选的实现方式中,校验次数限制可以是预先设定的在一次校验过程中可以对安全模块进行整体数据校验的最大次数。如果超过校验次数限制,则不再对有故障的安全模块进行数据恢复,而是将有故障的安全模块从加密模块的可用安全模块列表中删除,使得后续执行相应安全操作时不再使用不在可用安全模块列表中的安全模块。
因此,在所述校验数据不一致的安全模块数量不超过预设阈值时,还需要检测安全模块当前是否满足校验次数限制,如果当前的校验次数没有超出校验次数限制,则从校验数据一致的安全模块中选择其中一个作为主安全模块,并进行密钥同步和数据同步,此时当前校验的次数还需要加1;如果当前的校验次数超出了校验次数限制,则不再进行数据恢复,而是将校验数据不一致的子安全模块从可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述方法进一步还包括以下步骤:
在所述主安全模块和所述其他安全模块完成数据同步后,返回至分别从多个所述安全模块获取各自的校验数据的步骤重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
该可选的实现方式中,主安全模块完成与校验数据不一致的子安全模块的数据同步之后,处理决策中心设备还可以再进行一次整体校验,确认是否所有安全模块均达到了数据同步。如果依然存在部分安全模块的校验数据与其他安全模块的校验数据不一致,此时可以先判断当前是否满足校验次数限制,也即是否进行了多次数据恢复,而且次数是否超出了校验次数限制。如果没有超出校验次数限制,则重新进行数据恢复,也即选定主安全模块后,进行密钥同步和数据同步。如果超出了校验次数,则不再进行数据恢复,而是直接将校验数据不一致的子安全模块从可用安全模块列表中删除。
如果不存在校验数据不一致的安全模块在,则本次数据校验及故障处理流程结束。
图3示出根据本公开一实施方式的安全故障处理方法的一种实现流程图。如图3所示,该实现流程包括如下步骤:
步骤S301中,加密模块上电或者用户发送特定指令会触发加密模块敏感数据区的整体校验操作;
步骤S302中,上位机发送指令获取所有安全模块的校验数据;
步骤S303中,上位机判断加密模块内部各个安全模块校验数据的一致性,如果所有安全模块校验数据都一致跳转到步骤S309;如果超过一半安全模块校验数据一致跳转到步骤S304;如果没有超过一半安全模块校验数据一致跳转到步骤S307;
步骤S304中,判断是否满足数据校验次数审计(如果模块由于外部偶发环境影响,导致瞬时错误,给个机会,如果是因为一些设备错误,不能用了,则从工作列表踢出去),满足则跳转到步骤S305,否则跳转到步骤S308;
步骤S305中,挑选校验数据一致的其中一个安全模块X作为主安全模块,所有校验数据不一致的安全模块作为子安全模块,执行同步密钥配置;
步骤S306中,以安全模块X作为主安全模块,所有校验数据不一致的安全模块作为子安全模块,进行校验错误部分的数据同步;跳转到步骤S301执行;
步骤S307中,报警,建议加密模块系统重置,校验过程结束;
步骤S308中,更新上位机和所有安全模块的可用安全模块列表,将数据校验错误的安全模块去除;
步骤S309中,数据校验通过,校验过程结束。
图4示出根据本公开另一实施方式的加密模块故障处理方法的流程图。如图4所示,该加密模块故障处理方法包括以下步骤:
在步骤S401中,响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
在步骤S402中,基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
在步骤S403中,验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
在步骤S404中,若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
本实施例中,该加密模块故障处理方法可以在与加密模块连接的处理决策中心设备上执行。处理决策中心设备例如可以是上位机等计算机、服务器等设备。加密模块可以是一种PCIE(Peripheral Component Interconnect Express,外部设备高速连接)设备,例如可以制作成加密卡的形式,与处理决策中心设备通过PCIE总线接口连接。当然,在其他实施例中,加密模块也可以是其他设备,如具有USB接口、WIFI接口的设备,通过USB接口或WIFI接口等与处理决策中心设备通信。
加密模块可以包括多个安全模块,如图2所示,每个安全模块可以通过HUB(多端口转发器)连接,而HUB则通过通信端口与处理决策中心设备如上位机等通行。通信端口例如可以是PCIE接口、USB接口或者是WIFI接口等。
如图2所示,加密模块可以包括n个安全模块,n为大于1的整数,每个安全模块可被认为是一个核心处理单元。每个安全模块各自存储有本地存储数据,本地存储数据可以包括但不限于密钥、状态、用户权限等数据。加密模块在正常运行状态下,各个安全模块中的部分或者全部本地存储数据是一致的,例如各个安全模块上存储的密钥可以是一致的。
在一些实施例中,一个安全模块从外部比如上位机或者其他设备接收到需要进行数据同步的指令,如更新密钥的指令时,则需要通过某种安全方式将新的密钥同步到其他安全模块,这种更新方式可以称之为单次数据更新。
本公开实施例中,处理决策中心设备接收到对加密模块的多个安全模块的单次数据更新请求后,从多个安全模块选择其中一个作为主安全模块,之后基于单次数据更新请求需要更新的待更新数据,将主安全模块中的本地存储数据进行更新,并且指示主安全模块将更新后的数据(更新成功的情况下该更新后的数据则为待更新数据)同步至其他安全模块,使得各个安全模块上的本地存储数据均基于待更新数据所更新。
如上文中所述,多个安全模块可以是数据同步的安全模块,例如各个安全模块存储的密钥是一致的。单次数据更新的目的可以是确保所有安全模块上更新后的数据都是一致的。
为了防止更新过程出现故障,或者在出现故障后进行故障恢复,本实施例中处理决策中心设备还验证各个安全模块上更新后的数据是否与待更新数据一致,在出现错误时,也即如果其中一个或多个安全模块上更新后的数据与待更新数据不一致的情况下,则由处理决策中心设备直接对出现错误的安全模块做进一步更新,使得出现错误的安全模块上的更新后数据与待更新数据一致。
如果处理决策中心设备直接对安全模块进行数据更新后,该安全模块依然出现更新错误,则可以将该安全模块从加密模块的可用安全模块列表中删除。
本公开实施例针对加密模块进行单次数据更新时,先从各个安全模块选择一个主安全模块,基于待更新数据将该主安全模块上的数据进行更新,之后指示主安全模块将更新后的数据同步至其他安全模块。处理决策中心设备之后查验各个安全模块上更新后的数据是否与待更新数据一致,如果存在不一致的安全模块,则由处理决策中心设备直接更新该安全模块上的数据,如果该安全模块更新后的数据依然有误,则将该安全模块从加密模块的可用加密模块列表中删除。通过这种方式保证了单次数据更新后各可用安全模块上的数据都是同步的,这种数据更新以及数据恢复方式的可信度较高,算法简单,消耗成本低。
在本实施例的一个可选实现方式中,步骤S402,即基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块的步骤,进一步包括以下步骤:
向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
该可选的实现方式中,处理决策中心设备选定主安全模块后,可以向主安全模块发送第一数据更新指令,该第一数据更新指令中可以包括待更新数据。主安全模块接收到该第一数据更新指令后,基于待更新数据更新本地存储数据。例如本地存储数据包括密钥、状态、用户权限等,该待更新数据为密钥时,则可以将本地存储数据中的密钥更新成该待更新数据中的密钥。
主安全模块将数据更新完成之后,可以基于更新后的本地存储数据计算第一校验数据,并将第一校验数据返回给处理决策中心。在一些实施例中,第一校验数据可以是基于更新后的数据通过某种算法例如哈希算法、循环冗余校验算法等计算得到的特征值。需要说明的是,主安全模块可以基于更新后的本地存储数据中做了更新的数据计算第一校验数据,也可以基于做了更新的数据以及未做更新的数据一起计算第一校验数据。
处理决策中心设备接收到第一校验数据后,验证第一校验数据是否正确。如果正确则认为主安全模块上的数据更新成功,否则认为主安全模块上的数据更新失败,则可以进行报警,重置加密模块等后续处理操作。
如果数据更新成功,则处理决策中心设备还向主安全模块发送数据同步指令,指示主安全模块将更新后的本地存储数据同步至其他安全模块上。通过这种方式,可以基于加密模块中多个安全模块之间的数据交互以及数据同步过程实现单次数据更新过程,能够保证数据更新过程中的准确性。
在本实施例的一个可选实现方式中,步骤S403,即验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据的步骤,进一步包括以下步骤:
在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
该可选的实现方式中,主安全模块完成与其他安全模块的数据同步后,正常情况下其他安全模块上的本地存储数据中的相应数据与待更新数据一致,而如果出现同步故障,则可能存在某个或某些安全模块上的本地存储数据中的相应数据与待更新数据不一致,也即该某个或某些安全模块中的数据与主安全模块的数据不同步。
为了验证其他安全模块与主安全模块上的数据是否同步成功,处理决策中心设备从其他安全模块获取第二校验数据,并确定第二校验数据是否正确,如果正确则可以认为其他安全模块上的数据同步成功,也即同步后的本地存储数据与当前单次数据更新请求中的待更新数据一致;如果存在第二校验数据不正确的其他安全模块,则该其他安全模块上的本地存储数据与主安全模块不同步,当前单次数据更新请求中的待更新数据在该其他安全模块上没有更新成功。
此时,处理决策中心设备可以直接向该第二校验数据不正确的其他安全模块发送第二数据更新指令,该数据更新指令中包括待更新数据。该其他安全模块接收到第二数据更新指令后,基于该第二数据更新指令中的待更新数据更新本地存储数据,并在更新完成后,基于更新后的本地存储数据计算得到第三校验数据,将第三校验数据返回给处理决策中心设备。
处理决策中心设备再次确定第三校验数据是否正确,如果正确则表示该其他安全模块上的数据更新成功,否则更新失败。处理决策中心可以直接将该更新失败的其他安全模块的信息从加密模块的可用安全模块列表中删除。
需要说明的是,第二校验数据和第三校验数据与第一校验数据类似,具体细节可以参见上文中对第一校验数据的描述,在此不再赘述。
处理决策中心设备对其他安全模块上的直接数据更新过程和主安全模块上的数据更新流程一致,具体细节可以参见上文中对主安全模块的描述,在此不再赘述。
在本实施例的一个可选实现方式中,所述方法进一步还包括以下步骤:
在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行。
该可选的实现方式中,数据更新次数限制可以是预先设定的在一次单次数据更新过程中可以对安全模块进行单次数据更新的最大次数。如果超过数据更新次数限制,则不再对更新失败的安全模块进行数据恢复,而是将数据更新失败的安全模块从加密模块的可用安全模块列表中删除,使得后续执行相应安全操作时不再使用不在可用安全模块列表中的安全模块。
因此,在主安全模块上的数据更新未成功后,需要检测当前是否满足数据更新次数限制,如果当前的数据更新次数没有超出数据更新次数限制,则从多个安全模块中重新选择一个主安全模块进行单次数据更新,单次数据更新的流程与上文中描述的上一轮更新一致,在此不再赘述。如果当前的数据更新次数超出了次数限制,则不再进行数据更新,而是进行报警、重置加密模块等后续处理。
图5示出根据本公开一实施方式的单次数据更新过程的一种实现流程示意图。如图5所示,单次数据更新流程包括如下步骤:
步骤S501中,上位机选择主安全模块,向主安全模块发送数据更新指令进行局部数据更新;
步骤S502中,主安全模块处理数据更新指令计算校验值并返回给上位机;
步骤S503中,上位机判断校验值是否正确,正确跳转到步骤S505,错误则跳转到步骤S504;
步骤S504中,判断是否满足次数审计,满足则跳转到步骤S501,否则报警,建议加密模块重置等,流程终止;
步骤S505中,以主安全模块为核心进行数据同步,其他安全模块进行数据更新并计算校验值;
步骤S506中,上位机获取所有其他安全模块的校验数据,并判断其正确性,如果所有其他安全模块校验数据都正确跳转到步骤S510,否则执行步骤S507;
步骤S507中,上位机直接发送数据更新指令给步骤S506中校验值错误的所有其他安全模块,其他安全模块处理并返回校验数据;
步骤S508中,上位机判断其他安全模块返回的校验数据是否正确,正确跳转到步骤S510,否则继续执行步骤S509;
步骤S509中,更新上位机和所有安全模块的可用安全模块列表,将数据校验错误的安全模块去除;
步骤S510中,完成数据更新指令处理。
图6示出根据本公开又一实施方式的加密模块故障处理方法的流程图。如图6所示,该加密模块故障处理方法包括以下步骤:
在步骤S601中,接收所述处理决策中心设备发送的校验数据获取请求;
在步骤S602中,基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
在步骤S603中,接收所述处理决策中心设备发送的同步密钥配置指令;
在步骤S604中,基于所述同步密钥配置指令与所述处理决策中心设备指定的其他安全模块进行配置密钥的同步;
在步骤S605中,接收所述处理决策中心设备的数据同步指令;
在步骤S606中,基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的其他安全模块进行数据的同步。
本实施例中,该加密模块故障处理方法可以在与加密模块连接的处理决策中心设备上执行。处理决策中心设备例如可以是上位机等计算机、服务器等设备。加密模块可以是一种PCIE(Peripheral Component Interconnect Express,外部设备高速连接)设备,例如可以制作成加密卡的形式,与处理决策中心设备通过PCIE总线接口连接。当然,在其他实施例中,加密模块也可以是其他设备,如具有USB接口、WIFI接口的设备,通过USB接口或WIFI接口等与处理决策中心设备通信。
加密模块可以包括多个安全模块,如图2所示,每个安全模块可以通过HUB(多端口转发器)连接,而HUB则通过通信端口与处理决策中心设备如上位机通行。通信端口例如可以是PCIE接口、USB接口或者是WIFI接口等。
如图2所示,加密模块可以包括n个安全模块,n为大于1的整数,每个安全模块可被认为是一个核心处理单元。每个安全模块各自存储有本地存储数据,本地存储数据可以包括但不限于密钥、状态、用户权限等数据。加密模块在正常运行状态下,各个安全模块中的部分或者全部本地存储数据是一致的,例如各个安全模块上存储的密钥可以是一致的。
在一些实施例中,一个安全模块从外部比如上位机或者其他设备接收到需要进行数据同步的指令,如更新密钥的指令时,则需要通过某种安全方式将新的密钥同步到其他安全模块。
在一些实施例中,加密模块上电过程或者用户自定义的时机可以对加密模块上的安全模块进行整体数据校验,以检验安全模块是否出现故障,以及对出现故障的安全模块进行相应处理。
本公开实施例中,处理决策中心设备接收到对加密模块的多个安全模块的整体数据校验请求(该整体数据校验请求例如可以是加密模块上电过程中触发的,也可能是基于用户自定义的某个时机触发的)后,分别向多个安全模块发送生成校验数据并返回给处理决策中心设备的指令。处理决策中心设备从安全模块接收到各自的校验数据之后,可以比较各个校验数据。
如上文中所述,多个安全模块可以是数据同步的安全模块,例如各个安全模块存储的密钥是一致的。整体数据校验的目的可以是验证各个安全模块能否正常运行,并且所存储的密钥是否一致。
各个安全模块在接收到处理决策中心设备的指令后,可以基于本地存储数据中需要一致的数据比如密钥计算校验数据。在一些实施例中,校验数据可以是基于需要一致的数据通过某种算法例如哈希算法、循环冗余校验算法等计算得到的特征值。安全模块将计算得到的校验数据返回给处理决策中心设备。
处理决策中心设备比较各个安全模块返回的校验数据,如果所有安全模块上的校验数据均一致,则可以认为各个安全模块都未出现故障,在正常运行,该流程可以结束。
而如果存在部分安全模块的校验数据与其他安全模块上的校验数据不一致,并且校验数据不一致的安全模块数量未超过预设阈值,则可以认为目前的加密模块依然可以正常运行,之后处理决策中心设备可以针对校验数据不一致的安全模块进行数据恢复。
在一些实施例中,预设阈值可以最大是加密模块包括的安全模块总数量的一半。也就是说,在超过半数的安全模块返回的校验数据一致的情况下,可以进行数据恢复,也即本公开实施例采用多数一致的仲裁方式进行数据恢复。
在数据恢复过程中,处理决策中心设备从校验数据一致的安全模块中选择一个作为主安全模块,而校验数据与大多数安全模块不一致的安全模块作为子安全模块,并向主安全模块发送同步密钥配置指令。
在一些实施例中,该同步密钥配置指令用于指示主安全模块与校验数据不一致的其他安全模块,也即子安全模块进行密钥同步。在一些实施例中,同步密钥配置指令可以包括需要进行同步的密钥。主安全模块将该需要同步的密钥同步至各个子安全模块,使得主安全模块和子安全模块都存储有相同的密钥。
在主安全模块和子安全模块完成密钥同步后,处理决策中心设备还向主安全模块发送数据同步指令。主安全模块在该数据同步指令的指示下,将主安全模块上的本地存储数据同步至子安全模块,使得子安全模块的本地存储数据与主安全模块的本地存储数据一致。
需要说明的是,主安全模块在同步密钥配置指令下与子安全模块进行密钥同步的目的是,为了使用同步后的密钥对需要同步的数据进行加密,防止安全模块上的本地存储数据在传输过程中被泄密。还需要说明的是,本地存储数据中需要进行同步的数据中的密钥,与同步密钥配置指令下同步的密钥可以是不同的密钥。本地存储数据中的密钥是为了后续执行数字签名、数据加密而使用的密钥,同步密钥配置指令下同步的密钥是为了同步主安全模块和子安全模块上的数据时加密所要同步的数据。
本公开实施例针对加密模块进行整体数据校验,以便在安全模块出现故障时进行数据恢复的过程中,先从各个安全模块获取各自的校验数据,通过比较校验数据确定其中有故障的安全模块,并在有故障的安全模块的数量不超过半数的情况下,对有故障的安全模块进行数据恢复。数据恢复过程中,先从无故障的安全模块中选择其中一个作为主安全模块,将主安全模块和有故障的子安全模块进行密钥同步,之后再使用同步后的密钥将主安全模块上的本地存储数据恢复到存在故障的子安全模块中,使得各个安全模块能够保持数据一致。本公开实施例实现了多安全模块加密模块的故障检测机制和故障处理机制,通过仲裁机制使得数据可信度更高。
在本实施例的一个可选实现方式中,所述安全模块为主安全模块,所述方法进一步还包括以下步骤:
接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块。
该可选的实现方式中,处理决策中心设备选定主安全模块后,可以向主安全模块发送第一数据更新指令,该第一数据更新指令中可以包括待更新数据。主安全模块接收到该第一数据更新指令后,基于待更新数据更新本地存储数据。例如本地存储数据包括密钥、状态、用户权限等,该待更新数据为密钥时,则可以将本地存储数据中的密钥更新成该待更新数据中的密钥。
主安全模块将数据更新完成之后,可以基于更新后的本地存储数据计算第一校验数据,并将第一校验数据返回给处理决策中心。在一些实施例中,第一校验数据可以是基于更新后的数据通过某种算法例如哈希算法、循环冗余校验算法等计算得到的特征值。需要说明的是,主安全模块可以基于更新后的本地存储数据中做了更新的数据计算第一校验数据,也可以基于做了更新的数据以及未做更新的数据一起计算第一校验数据。
处理决策中心设备接收到第一校验数据后,验证第一校验数据是否正确。如果正确则认为主安全模块上的数据更新成功,否则认为主安全模块上的数据更新失败,则可以进行报警,重置加密模块等后续处理操作。
如果数据更新成功,则处理决策中心设备还向主安全模块发送数据同步指令,指示主安全模块将更新后的本地存储数据同步至其他安全模块上。通过这种方式,可以基于加密模块中多个安全模块之间的数据交互以及数据同步过程实现单次数据更新过程,能够保证数据更新过程中的准确性。
在本实施例的一个可选实现方式中,所述安全模块为非主安全模块,所述方法进一步还包括以下步骤:
在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
将所述第二校验数据返回给处理决策中心设备;
接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
基于更新后的本地存储数据计算第三校验数据;
将所述第三校验数据返回给所述处理决策中心设备。
该可选的实现方式中,主安全模块完成与其他安全模块的数据同步后,正常情况下其他安全模块上的本地存储数据中的相应数据与待更新数据一致,而如果出现同步故障,则可能存在某个或某些安全模块上的本地存储数据中的相应数据与待更新数据不一致,也即该某个或某些安全模块中的数据与主安全模块的数据不同步。
为了验证其他安全模块与主安全模块上的数据是否同步成功,处理决策中心设备从其他安全模块获取第二校验数据,并确定第二校验数据是否正确,如果正确则可以认为其他安全模块上的数据同步成功,也即同步后的本地存储数据与当前单次数据更新请求中的待更新数据一致;如果存在第二校验数据不正确的其他安全模块,则该其他安全模块上的本地存储数据与主安全模块不同步,当前单次数据更新请求中的待更新数据在该其他安全模块上没有更新成功。
此时,处理决策中心设备可以直接向该第二校验数据不正确的其他安全模块发送第二数据更新指令,该数据更新指令中包括待更新数据。该其他安全模块接收到第二数据更新指令后,基于该第二数据更新指令中的待更新数据更新本地存储数据,并在更新完成后,基于更新后的本地存储数据计算得到第三校验数据,将第三校验数据返回给处理决策中心设备。
处理决策中心设备再次确定第三校验数据是否正确,如果正确则表示该其他安全模块上的数据更新成功,否则更新失败。处理决策中心可以直接将该更新失败的其他安全模块的信息从加密模块的可用安全模块列表中删除。
需要说明的是,第二校验数据和第三校验数据与第一校验数据类似,具体细节可以参见上文中对第一校验数据的描述,在此不再赘述。
处理决策中心设备对其他安全模块上的直接数据更新过程和主安全模块上的数据更新流程一致,具体细节可以参见上文中对主安全模块的描述,在此不再赘述。
图7示出根据本公开一实施方式的加密模块故障处理系统的结构框图。如图7所示,该加密模块故障处理系统700包括:处理决策中心设备701和加密模块702;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的整体数据校验请求,分别向多个所述安全模块请求获取校验数据;
所述安全模块接收到所述处理决策中心设备的请求后,基于本地存储数据计算得到校验数据,并返回给所述处理决策中心设备;
所述处理决策中心设备比较从多个所述安全模块获取的校验数据,并在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块,以及向所述主安全模块发送同步密钥配置指令;
所述主安全模块接收到同步密钥配置指令后,向所述校验数据不一致的其他安全模块进行密钥同步;
所述处理决策中心设备在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令;
所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
在本实施例的一个可选实现方式中,所述处理决策中心设备在所述校验数据不一致的安全模块数量不超过预设阈值时,还确定所述安全模块当前是否满足校验次数限制,并在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述处理决策中心设备在所述主安全模块和所述其他安全模块完成数据同步后,重新返回至分别向多个所述安全模块请求获取校验数据的步骤执行,直至多个所述安全模块的校验数据都一致,或者所述安全模块当前不满足校验次数限制为止。
图7所示及相关实施方式中涉及的技术术语和技术特征与图1-图6所示及相关实施方式中提及的技术术语和技术特征相同或相似,对于图7所示及相关实施方式中涉及的技术术语和技术特征的解释和说明可参考上述对于图1-图6所示及相关实施方式的解释的说明,此处不再赘述。
图8示出根据本公开另一实施方式的加密模块故障处理系统的结构框图。如图8所示,该加密模块故障处理系统800包括:处理决策中心设备801和加密模块802;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块,并向所述主安全模块发送携带待更新数据的第一数据更新指令;
所述主安全模块基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块;
所述处理决策中心设备验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据,并且若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述主安全模块在完成本地存储数据的更新后,基于更新后的数据计算第一校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备基于所述主安全模块返回的第一校验数据验证所述主安全模块上是否数据更新成功,并在所述主安全模块上数据更新成功后,向所述主安全模块发送数据同步指令;
所述主安全模块基于所述数据同步指令中的待更新数据更新所述其他安全模块上的本地存储数据,其他安全模块基于更新后的所述本地存储数据计算第二校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备确定存在所述第二校验数据错误的其他安全模块后,向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据。
在本实施例的一个可选实现方式中,所述其他安全模块接收到所述第二数据更新指令后,基于所述第二数据更新指令中的待更新数据更新本地存储数据,并基于更新后的所述本地存储数据计算第三校验数据,以及将所述第三校验数据返回给所述处理决策中心设备;
若存在第三校验数据错误的其他安全模块,所述处理决策中心设备将所述第三校验数据错误的所述其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述处理决策中心设备在所述主安全模块上数据更新未成功时,确定当前是否满足数据更新次数限制,并若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行
图8所示及相关实施方式中涉及的技术术语和技术特征与图1-图7所示及相关实施方式中提及的技术术语和技术特征相同或相似,对于图8所示及相关实施方式中涉及的技术术语和技术特征的解释和说明可参考上述对于图1-图7所示及相关实施方式的解释的说明,此处不再赘述。
下述为本公开装置实施例,可以用于执行本公开方法实施例。
根据本公开一实施方式的加密模块故障处理装置,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。该加密模块故障处理装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;该装置包括:
第一响应模块,被配置为响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
比较模块,被配置为比较从多个所述安全模块获取的校验数据;
选择模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一发送模块,被配置为向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
第二发送模块,被配置为在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步。
在本实施例的一个可选实现方式中,所述选择模块,包括:
确定子模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
选择子模块,被配置为在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一删除子模块,被配置为在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述装置还包括:
第一返回模块,被配置为在所述主安全模块和所述其他安全模块完成数据同步后,返回至第一响应模块重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
上述加密模块故障处理装置与上文中图1-图3所示的加密模块故障处理方法对应一致,具体细节可以参见上文中对图1-图3所示实施例的描述,在此不再赘述。
根据本公开另一实施方式的加密模块故障处理装置,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。该加密模块故障处理装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;该装置包括:
第二响应模块,被配置为响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
第一更新模块,被配置为基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证模块,被配置为验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
删除模块,被配置为若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述第一更新模块,包括:
第一发送子模块,被配置为向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
验证子模块,被配置为基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
第二发送子模块,被配置为在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
在本实施例的一个可选实现方式中,所述验证模块,包括:
获取子模块,被配置为在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
第三发送子模块,被配置为若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收子模块,被配置为接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
第二删除子模块,被配置为将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
在本实施例的一个可选实现方式中,所述装置还包括;
确定模块,被配置为在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
第二返回模块,被配置为若满足数据更新次数限制,则返回第二响应模块重新执行。
上述加密模块故障处理装置与上文中图4-图5所示的加密模块故障处理方法对应一致,具体细节可以参见上文中对图4-图5所示实施例的描述,在此不再赘述。
根据本公开又一实施方式的加密模块故障处理装置,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。该加密模块故障处理装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;该装置包括:
第一接收模块,被配置为接收所述处理决策中心设备发送的校验数据获取请求;
第三返回模块,被配置为基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
第二接收模块,被配置为接收所述处理决策中心设备发送的同步密钥配置指令;
第一同步模块,被配置为基于所述同步密钥配置指令与所述处理决策中心设备指定的其他安全模块进行配置密钥的同步;
第三接收模块,被配置为接收所述处理决策中心设备的数据同步指令;
第二同步模块,被配置为基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的其他安全模块进行数据的同步。
在本实施例的一个可选实现方式中,所述安全模块为主安全模块,所述装置还包括:
第四接收模块,被配置为接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
第三同步模块,被配置为基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块。
在本实施例的一个可选实现方式中,所述安全模块为非主安全模块,所述装置还包括:
第一计算模块,被配置为在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
第四返回模块,被配置为将所述第二校验数据返回给处理决策中心设备;
第五接收模块,被配置为接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
第二更新模块,被配置为基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
第二计算模块,被配置为基于更新后的本地存储数据计算第三校验数据;
第五返回模块,被配置为将所述第三校验数据返回给所述处理决策中心设备。
上述加密模块故障处理装置与上文中图6所示的加密模块故障处理方法对应一致,具体细节可以参见上文中对图6所示实施例的描述,在此不再赘述。
本公开实施例还提供一种芯片,所述芯片包括上述加密模块故障处理装置,所述芯片可以是任意一种可以实现上文描述的加密模块故障处理过程的芯片,所述装置可以通过软件、硬件或者两者的结合实现成为芯片的部分或者全部。加密模块故障处理过程可以参见上文中对加密模块故障处理方法的描述,在此不再赘述。
本公开还公开了一种电子设备,图9示出根据本公开一实施方式的电子设备的结构框图,如图9所示,所述电子设备900包括存储器901和处理器902;其中,
所述存储器901用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器902执行以实现上述方法步骤。
图10是适于用来实现根据本公开一实施方式的加密模块故障处理方法的计算机系统的结构示意图。
如图10所示,计算机系统1000包括处理单元1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分1008加载到随机访问存储器(RAM)1003中的程序而执行上述实施方式中的各种处理。在RAM1003中,还存储有计算机系统1000操作所需的各种程序和数据。处理单元1001、ROM1002以及RAM1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。其中,所述处理单元1001可实现为CPU、GPU、TPU、FPGA、NPU等处理单元。
特别地,根据本公开的实施方式,上文描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在及其可读介质上的计算机程序,所述计算机程序包含用于执行所述方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。
附图中的流程图和框图,图示了按照本公开各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,路程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (24)
1.一种加密模块故障处理方法,其特征在于,所述方法在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述方法包括:
响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
比较从多个所述安全模块获取的校验数据;
在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步;
所述方法还包括:
响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
2.根据权利要求1所述的方法,其特征在于,在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块,包括:
在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述主安全模块和所述其他安全模块完成数据同步后,返回至分别从多个所述安全模块获取各自的校验数据的步骤重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
4.一种加密模块故障处理方法,其特征在于,所述方法在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述方法包括:
响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除;
其中,验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据,包括:
在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
5.根据权利要求4所述的方法,其特征在于,基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块,包括:
向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括;
在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行。
7.一种加密模块故障处理方法,其特征在于,所述方法在安全模块上执行,所述安全模块为加密模块中的其中一个模块,所述加密模块包括多个安全模块,并且与处理决策中心设备相连;所述方法包括:
接收所述处理决策中心设备发送的校验数据获取请求;
基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
在所述安全模块被所述处理决策中心设备选定为主安全模块后,接收所述处理决策中心设备发送的同步密钥配置指令;
基于所述同步密钥配置指令与所述处理决策中心设备指定的非主安全模块进行配置密钥的同步;
接收所述处理决策中心设备的数据同步指令;
基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的非主安全模块进行数据的同步;
其中,所述安全模块为非主安全模块,所述方法还包括:
在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
将所述第二校验数据返回给处理决策中心设备;
接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
基于更新后的本地存储数据计算第三校验数据;
将所述第三校验数据返回给所述处理决策中心设备。
8.根据权利要求7所述的方法,其特征在于,所述安全模块为主安全模块,所述方法还包括:
接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至非主安全模块。
9.一种加密模块故障处理系统,其特征在于,包括:处理决策中心设备和加密模块;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的整体数据校验请求,分别向多个所述安全模块请求获取校验数据;
所述安全模块接收到所述处理决策中心设备的请求后,基于本地存储数据计算得到校验数据,并返回给所述处理决策中心设备;
所述处理决策中心设备比较从多个所述安全模块获取的校验数据,并在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块,以及向所述主安全模块发送同步密钥配置指令;
所述主安全模块接收到同步密钥配置指令后,向所述校验数据不一致的其他安全模块进行密钥同步;
所述处理决策中心设备在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令;
所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步;
所述处理决策中心设备还响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块,并向所述主安全模块发送携带待更新数据的第一数据更新指令;
所述主安全模块基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块;
所述主安全模块在完成本地存储数据的更新后,基于更新后的数据计算第一校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备基于所述主安全模块返回的第一校验数据验证所述主安全模块上是否数据更新成功,并在所述主安全模块上数据更新成功后,向所述主安全模块发送数据同步指令;
所述主安全模块基于所述数据同步指令中的待更新数据更新所述其他安全模块上的本地存储数据,其他安全模块基于更新后的所述本地存储数据计算第二校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备确定存在所述第二校验数据错误的其他安全模块后,向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
所述其他安全模块接收到所述第二数据更新指令后,基于所述第二数据更新指令中的待更新数据更新本地存储数据,并基于更新后的所述本地存储数据计算第三校验数据,以及将所述第三校验数据返回给所述处理决策中心设备;
若存在第三校验数据错误的其他安全模块,所述处理决策中心设备将所述第三校验数据错误的所述其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
10.根据权利要求9所述的系统,其特征在于,所述处理决策中心设备在所述校验数据不一致的安全模块数量不超过预设阈值时,还确定所述安全模块当前是否满足校验次数限制,并在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
11.根据权利要求9或10所述的系统,其特征在于,所述处理决策中心设备在所述主安全模块和所述其他安全模块完成数据同步后,重新返回至分别向多个所述安全模块请求获取校验数据的步骤执行,直至多个所述安全模块的校验数据都一致,或者所述安全模块当前不满足校验次数限制为止。
12.一种加密模块故障处理系统,其特征在于,包括:处理决策中心设备和加密模块;所述加密模块包括多个安全模块;所述处理决策中心设备与加密模块相连,
所述处理决策中心设备响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块,并向所述主安全模块发送携带待更新数据的第一数据更新指令;
所述主安全模块基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至其他安全模块;
所述主安全模块在完成本地存储数据的更新后,基于更新后的数据计算第一校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备基于所述主安全模块返回的第一校验数据验证所述主安全模块上是否数据更新成功,并在所述主安全模块上数据更新成功后,向所述主安全模块发送数据同步指令;
所述主安全模块基于所述数据同步指令中的待更新数据更新所述其他安全模块上的本地存储数据,其他安全模块基于更新后的所述本地存储数据计算第二校验数据后返回给所述处理决策中心设备;
所述处理决策中心设备确定存在所述第二校验数据错误的其他安全模块后,向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
所述其他安全模块接收到所述第二数据更新指令后,基于所述第二数据更新指令中的待更新数据更新本地存储数据,并基于更新后的所述本地存储数据计算第三校验数据,以及将所述第三校验数据返回给所述处理决策中心设备;
若存在第三校验数据错误的其他安全模块,所述处理决策中心设备将所述第三校验数据错误的所述其他安全模块的信息从所述加密模块的可用安全模块列表中删除。
13.根据权利要求12所述的系统,其特征在于,所述处理决策中心设备在所述主安全模块上数据更新未成功时,确定当前是否满足数据更新次数限制,并若满足数据更新次数限制,则返回从多个所述安全模块选择其中一个作为主安全模块的步骤重复执行。
14.一种加密模块故障处理装置,其特征在于,所述装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述装置包括:
第一响应模块,被配置为响应于对加密模块上的多个安全模块的整体数据校验请求,分别从多个所述安全模块获取各自的校验数据;所述校验数据基于所述安全模块上的本地存储数据计算得到;
比较模块,被配置为比较从多个所述安全模块获取的校验数据;
选择模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一发送模块,被配置为向所述主安全模块发送同步密钥配置指令,以使所述主安全模块与所述校验数据不一致的其他安全模块进行密钥同步;
第二发送模块,被配置为在所述主安全模块与所述其他安全模块完成密钥同步后,向所述主安全模块发送数据同步指令,以使所述主安全模块基于同步后的所述密钥与所述其他安全模块进行数据同步;
所述装置还包括:
第二响应模块,被配置为响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
第一更新模块,被配置为基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证模块,被配置为验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
删除模块,被配置为若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除;
所述验证模块,包括:
获取子模块,被配置为在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
第三发送子模块,被配置为若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收子模块,被配置为接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
第二删除子模块,被配置为将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
15.根据权利要求14所述的装置,其特征在于,所述选择模块,包括:
确定子模块,被配置为在所述校验数据不一致的安全模块数量不超过预设阈值时,确定所述安全模块当前是否满足校验次数限制;
选择子模块,被配置为在满足所述校验次数限制时,从所述校验数据一致的所述安全模块中选择其中一个作为主安全模块;
第一删除子模块,被配置为在不满足所述校验次数限制时,将所述其他安全模块从所述加密模块的可用安全模块列表中删除。
16.根据权利要求14所述的装置,其特征在于,所述装置还包括:
第一返回模块,被配置为在所述主安全模块和所述其他安全模块完成数据同步后,返回至第一响应模块重新执行,直至多个所述安全模块的校验数据都一致,或者当前不满足校验次数限制为止。
17.一种加密模块故障处理装置,其特征在于,所述装置在处理决策中心设备上执行,所述处理决策中心设备与加密模块相连,所述加密模块包括多个安全模块;所述装置包括:
第二响应模块,被配置为响应于对加密模块上的多个安全模块的单次数据更新请求,从多个所述安全模块选择其中一个作为主安全模块;
第一更新模块,被配置为基于所述单次数据更新请求中的待更新数据更新所述主安全模块上的数据,并指示所述主安全模块将待更新数据同步至其他安全模块;
验证模块,被配置为验证所述其他安全模块上同步的所述待更新数据有误后,基于所述待更新数据直接更新所述待更新数据同步有误的其他安全模块上的数据;
删除模块,被配置为若所述其他安全模块上直接更新的所述待更新数据有误,则将直接更新的所述待更新数据有误的其他安全模块的信息从所述加密模块的可用安全模块列表中删除;
所述验证模块,包括:
获取子模块,被配置为在所述主安全模块完成与所述其他安全模块的数据同步后,从所述其他安全模块获取第二校验数据;所述第二校验数据由所述其他安全模块基于同步后的本地存储数据计算得到;
第三发送子模块,被配置为若存在所述第二校验数据错误的其他安全模块,则向存在第二校验数据错误的其他安全模块发送携带所述待更新数据的第二数据更新指令,以使所述其他安全模块基于所述待更新数据更新本地存储数据;
接收子模块,被配置为接收存在第二校验数据错误的其他安全模块返回的第三校验数据;所述第三校验数据由所述其他安全模块基于更新后的所述本地存储数据计算得到;
第二删除子模块,被配置为将所述第三校验数据依然错误的所述其他安全模块从所述加密模块的可用安全模块列表中删除。
18.根据权利要求17所述的装置,其特征在于,所述第一更新模块,包括:
第一发送子模块,被配置为向所述主安全模块发送携带待更新数据的第一数据更新指令,以使所述主安全模块基于所述待更新数据更新本地存储数据;
验证子模块,被配置为基于所述主安全模块返回的第一校验数据验证所述主安全模块上的数据更新是否成功;所述第一校验数据由所述主安全模块基于更新后的所述本地存储数据计算得到;
第二发送子模块,被配置为在所述主安全模块上的数据更新成功后,向所述主安全模块发送数据同步指令,以使所述主安全模块将更新后的所述本地存储数据同步至其他安全模块。
19.根据权利要求18所述的装置,其特征在于,所述装置还包括;
确定模块,被配置为在所述主安全模块上的数据更新未成功时,确定当前是否满足数据更新次数限制;
第二返回模块,被配置为若满足数据更新次数限制,则返回第二响应模块重新执行。
20.一种加密模块故障处理装置,其特征在于,所述装置在安全模块上执行,所述安全模块为加密模块中的其中一个模块,所述加密模块包括多个安全模块,并且与处理决策中心设备相连;所述装置包括:
第一接收模块,被配置为接收所述处理决策中心设备发送的校验数据获取请求;
第三返回模块,被配置为基于本地存储数据计算校验数据后返回给所述处理决策中心设备;
第二接收模块,被配置为在所述安全模块被所述处理决策中心设备选定为主安全模块后,接收所述处理决策中心设备发送的同步密钥配置指令;
第一同步模块,被配置为基于所述同步密钥配置指令与所述处理决策中心设备指定的非主安全模块进行配置密钥的同步;
第三接收模块,被配置为接收所述处理决策中心设备的数据同步指令;
第二同步模块,被配置为基于所述数据同步指令以及同步后的所述配置密钥与所述处理决策中心设备指定的非主安全模块进行数据的同步;
所述安全模块为非主安全模块,所述装置还包括:
第一计算模块,被配置为在与主安全模块完成数据同步后,基于同步后的本地存储数据计算第二校验数据;
第四返回模块,被配置为将所述第二校验数据返回给处理决策中心设备;
第五接收模块,被配置为接收所述处理决策中心设备发送的携带待更新数据的第二数据更新指令;
第二更新模块,被配置为基于所述第二数据更新指令中携带的所述待更新数据更新本地存储数据;
第二计算模块,被配置为基于更新后的本地存储数据计算第三校验数据;
第五返回模块,被配置为将所述第三校验数据返回给所述处理决策中心设备。
21.根据权利要求20所述的装置,其特征在于,所述安全模块为主安全模块,所述装置还包括:
第四接收模块,被配置为接收所述处理决策中心设备发送的第一数据更新指令;所述第一数据更新指令包括待更新数据;
第三同步模块,被配置为基于所述待更新数据更新本地存储数据,并将所述待更新数据同步至非主安全模块。
22.一种电子设备,其特征在于,包括存储器、处理器以及存储在存储器上的计算机程序,其中,所述处理器执行所述计算机程序以实现权利要求1-8任一项所述的方法。
23.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,该计算机指令被处理器执行时实现权利要求1-8任一项所述的方法。
24.一种芯片,用于执行指令,其特征在于,该指令被所述芯片执行以实现权利要求1-8任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310187223.2A CN115941184B (zh) | 2023-03-02 | 2023-03-02 | 加密模块故障处理方法、装置、电子设备、系统及芯片 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310187223.2A CN115941184B (zh) | 2023-03-02 | 2023-03-02 | 加密模块故障处理方法、装置、电子设备、系统及芯片 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115941184A CN115941184A (zh) | 2023-04-07 |
CN115941184B true CN115941184B (zh) | 2023-05-30 |
Family
ID=85820356
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310187223.2A Active CN115941184B (zh) | 2023-03-02 | 2023-03-02 | 加密模块故障处理方法、装置、电子设备、系统及芯片 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115941184B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106803783A (zh) * | 2015-11-26 | 2017-06-06 | 深圳市中兴微电子技术有限公司 | 一种加密解密方法、加密解密装置及数据传输系统 |
CN108595444A (zh) * | 2018-04-03 | 2018-09-28 | 深圳市沃特沃德股份有限公司 | 语音翻译方法和装置 |
CN109995712A (zh) * | 2017-12-29 | 2019-07-09 | 中国移动通信集团湖北有限公司 | 数据加解密方法、装置、设备及介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8811223B2 (en) * | 2009-06-22 | 2014-08-19 | Citrix Systems, Inc. | Systems and methods for distributing crypto cards to multiple cores |
CN102571488B (zh) * | 2011-12-21 | 2015-02-25 | 北京星网锐捷网络技术有限公司 | 一种加密卡故障处理方法、装置与系统 |
JP6903093B2 (ja) * | 2019-04-26 | 2021-07-14 | 株式会社安川電機 | 通信システム、通信方法、及びプログラム |
CN111193702B (zh) * | 2019-10-18 | 2021-10-08 | 腾讯科技(深圳)有限公司 | 数据加密传输的方法和装置 |
CN114297114B (zh) * | 2021-11-23 | 2024-01-23 | 北京智芯微电子科技有限公司 | 加密卡及其数据交互方法、装置及计算机可读存储介质 |
CN114710287B (zh) * | 2022-06-06 | 2022-09-20 | 中科问天量子科技(天津)有限公司 | 一种加密方法、系统、存储介质及加密文件访问方法 |
-
2023
- 2023-03-02 CN CN202310187223.2A patent/CN115941184B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106803783A (zh) * | 2015-11-26 | 2017-06-06 | 深圳市中兴微电子技术有限公司 | 一种加密解密方法、加密解密装置及数据传输系统 |
CN109995712A (zh) * | 2017-12-29 | 2019-07-09 | 中国移动通信集团湖北有限公司 | 数据加解密方法、装置、设备及介质 |
CN108595444A (zh) * | 2018-04-03 | 2018-09-28 | 深圳市沃特沃德股份有限公司 | 语音翻译方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115941184A (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7797414B2 (en) | Establishing a logical path between servers in a coordinated timing network | |
EP3082124A1 (en) | Security device, method therefor and program | |
US10895996B2 (en) | Data synchronization method, system, and apparatus using a work log for synchronizing data greater than a threshold value | |
CN109522363B (zh) | 基于区块链的云平台同步方法、系统、设备及存储介质 | |
US9465650B2 (en) | Executing distributed globally-ordered transactional workloads in replicated state machines | |
US9455827B2 (en) | Communication apparatus, computer program product, and communication system | |
KR102147750B1 (ko) | 컴퓨터, 상기 컴퓨터를 포함하는 통신 유닛, 상기 유닛을 포함하는 철도 관리 시스템, 및 컴퓨터 내에서 데이터 신뢰도를 개선하는 방법 | |
US10802920B2 (en) | Backup and restore validation | |
US10949203B2 (en) | Technologies for ensuring functional safety of an electronic device | |
CN115941184B (zh) | 加密模块故障处理方法、装置、电子设备、系统及芯片 | |
US20180124211A1 (en) | Secure boot download computations based on host transport conditions | |
US10586056B2 (en) | Synchronizing write operations | |
US11671248B2 (en) | System and method for secure storage and distribution of encryption keys | |
CN107949831B (zh) | 多重化处理系统、多重化处理方法以及程序 | |
KR20160057944A (ko) | 분산 시스템에서의 데이터베이스 동기화 방법 | |
US9641287B2 (en) | Methods and apparatus for high-integrity data transfer with preemptive blocking | |
CN112948179B (zh) | 一种区块链节点的数据恢复方法、装置及电子设备 | |
US20180295132A1 (en) | Multi-ttp-based method and device for verifying validity of identity of entity | |
CN117118986B (zh) | 基于区块链的容错验证方法、装置、设备及介质 | |
WO2023105744A1 (ja) | 検知システム、検知装置、検知方法および検知プログラム | |
JP6271103B1 (ja) | 制御装置及び制御方法 | |
AU2021477492A1 (en) | Detection system, detection device, detection method and detection program | |
CN114020537A (zh) | 代码的备份方法及装置 | |
WO2015024377A1 (zh) | 数据同步方法、装置、设备及计算机存储介质 | |
CN117057974A (zh) | 一种gpu大数据平台、电子设备和存储介质 |
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 |