CN110912892B - 一种证书管理方法、装置、电子设备及存储介质 - Google Patents
一种证书管理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110912892B CN110912892B CN201911164183.XA CN201911164183A CN110912892B CN 110912892 B CN110912892 B CN 110912892B CN 201911164183 A CN201911164183 A CN 201911164183A CN 110912892 B CN110912892 B CN 110912892B
- Authority
- CN
- China
- Prior art keywords
- certificate
- target
- public key
- node
- original
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0478—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
-
- 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/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例公开了一种证书管理方法、装置、电子设备及存储介质,其中方法包括:从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,基于目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与目标公钥匹配,并根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。本申请实施例中,颁发的新证书的证书标识和身份字段属性均与原证书相同,保证了新证书与原证书之间身份验证的一致性,实现了证书在第一加密方式对应第一系统与第二加密方式对应第二系统之间的切换使用。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种证书管理方法、装置、电子设备及存储介质。
背景技术
数字证书是一种由权威机构(即证书管理机构)颁发的、用于在网络上证明用户身份的证明文件。颁发数字证书的过程也可以称为认证授权(Certification Authority,CA)过程。传统的证书颁发体系包括根CA以及根CA下属的多级CA,其中,根CA是证书颁发体系中最受信任的证书颁发机构,可以独立地颁发证书,根CA通过自签名生成证书,不需要由其它CA机构为其颁发证书。其他各级CA机构可以由其上级CA机构为其颁发证书,也可以为其下级CA机构及其客户颁发证书,其中,CA机构的客户可以为各种网络实体,例如,可以是网站(website)。
在不同的业务系统中对于证书的加密方式有不同的要求,若某一设备想要访问多个业务系统,则需要用户拥有多个业务系统对应加密方式的证书。例如,某一设备拥有的原证书可以在第一系统使用,当它想要切换至第二系统时,由于原证书的加密方式不符合第二系统的要求,该设备需要向证书管理机构重新申请新证书。当该设备通过新证书访问第二系统时,由于证书管理机构颁发的新证书对应的证书标识、以及包括的身份字段的属性与原证书均不同,第二系统需要对该新证书重新进行身份验证,第二系统对新证书验证的结果表征的设备和业务均与原证书不同,无法保证新证书与原证书之间身份验证的一致性。因此,如何实现证书在不同业务系统的切换使用,并保证对新证书与原证书之间身份验证的一致性,成为一个亟待解决的问题。
发明内容
本申请实施例提供了一种证书管理方法、装置、电子设备及存储介质,不仅实现了证书在第一加密方式对应第一系统与第二加密方式对应第二系统之间的切换使用,还保证了新证书与原证书之间身份验证的一致性。
一方面,本申请实施例提供了一种证书管理方法,所述方法包括:
接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
根据调整后的全文字节生成新证书,并向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
另一方面,本申请实施例提供了一种证书管理装置,所述证书管理装置配置于证书管理机构,所述装置包括:
通信模块,用于接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
处理模块,用于从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
所述处理模块,还用于基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
所述处理模块,还用于根据调整后的全文字节生成新证书;
所述通信模块,还用于向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
再一方面,本申请实施例提供了一种电子设备,包括处理器、存储器和通信接口,所述处理器、存储器和通信接口相互连接,其中,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如下步骤:
接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
根据调整后的全文字节生成新证书,并向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
再一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被处理器执行时,用于执行如第一方面所述的证书管理方法。
本申请实施例中,证书管理机构可以接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,证书管理机构可以从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,基于目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与目标公钥匹配,并根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。实现了证书在第一加密方式对应第一系统与第二加密方式对应第二系统之间的切换使用。除此之外,颁发的新证书的证书标识和身份字段属性均与原证书相同,保证了新证书与原证书之间身份验证的一致性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链的结构示意图;
图2是本申请实施例提供的一种证书管理系统的架构示意图;
图3是本申请实施例提供的一种证书管理方法的示意流程图;
图4是本发明另一实施例提供的一种证书管理方法的示意流程图;
图5是本申请实施例提出的一种证书管理装置的示意性框图;
图6是本申请实施例提出的一种电子设备的示意性框图。
具体实施方式
本申请实施例提出了一种证书管理方法,该方法可以应用于证书管理机构,在一个实施例中该证书管理机构可以为接入区块链网络中的任一节点,该节点可以为任意形式的电子设备,如服务器、用户终端等。在另一个实施例中,该证书管理机构可以不为接入区块链网络中的任一节点,可以为能够与区块链网络进行数据交互的电子设备。
在一个实施例中,证书管理机构可以接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,证书管理机构从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,基于目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与目标公钥匹配,进而根据调整后的全文字节生成新证书,并向节点颁发新证书,以使新证书的证书标识与原证书的证书标识相同,新证书中身份字段属性与原证书中身份字段属性相同。可以看出,采用这样的方式,实现了原证书对应第一加密方式与新证书对应第二加密方式之间的切换使用,也即,实现了证书在第一加密方式对应第一系统与第二加密方式对应第二系统之间的切换使用。除此之外,颁发的新证书的证书标识和身份字段属性均与原证书相同,保证了新证书与原证书之间身份验证的一致性。
区块链(Block Chain)是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证数据不可篡改和不可伪造的分布式账本。多个独立的分布式节点(即区块链节点设备)保存相同的记录。区块链技术实现了去中心化,成为了可信的数字资产存储、转移和交易的基石。
以图1所示的区块链的结构示意图为例,每当有新的数据需要写入区块链,这些数据会汇总到一个区块(block)中,添加在已有区块链的末端,通过共识算法保证每个节点新添加的区块是完全相同的。每个区块内记录了若干条交易记录,同时包含了前一个区块的哈希(hash)值,所有区块就是通过这种方式保存前一个区块中的hash值,按顺序相连,组成了区块链。区块链中下一个区块的区块头中会存储前一个区块的哈希值,当前一个区块中的交易数据发生变化时,本区块的哈希值也会随之改变,因此通过上传至区块链网络中的交易数据难以被篡改,在区块链上进行交易实现了交易过程的公开透明,提高了交易数据的可靠性。
为了更好的理解本申请实施例公开的一种证书管理方法,下面首先对本申请实施例适用的区块链系统进行描述。
请参见图2,图2是本申请实施例公开的一种证书管理系统的架构示意图。如图2所示,该证书管理系统包括证书管理机构200,区块链网络201,该区块链网络201中包括多个节点,例如图2所示的第一节点2010和第二节点2011,需要说明的是,图2所示的区块链网络201由一个第一节点2010以及两个第二节点2011组成仅用于示例,并不构成对本申请实施例的限定。例如,在另一个示例中,区块链网络201可由一个第一节点2010以及四个第二节点2011组成。
在一个实施例中,第一节点2010可以是区块链网络中的任意一个区块链节点,该第一节点2010可以向证书管理机构200发送证书替换请求。在一个实施例中,第一节点2010可以是与证书管理机构200距离最近的区块链节点设备,第一节点2010还可以是与证书管理机构200通信质量最好的区块链节点设备,本发明在此不作限定。
在一个实施例中,第一节点2010是区块链网络中的所有第一节点根据共识算法选举得到的,其中,共识算法包括但不限于工作量证明(Proof of Work,PoW)算法、权益证明(Proof of Stake,PoS)算法、授权权益证明(Delegated Proof of Stake,DPoS)算法、实用拜占庭容错(Practical Byzantine Fault Tolerance,PBFT)算法等。其中,第一节点2010还可以通过共识算法周期性选举得到,不同周期选举得到的第一节点2010可以相同,也可以不相同。
可以理解的是,本申请实施例描述的数据处理系统是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
再请参见图3,是本申请实施例的一种证书管理方法的流程示意图,本申请实施例的所述方法可以由证书管理机构来执行。本申请实施例的所述方法包括如下步骤。
S301:接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。
在一个实施例中,不同的业务系统对于证书的加密方式有不同的要求,第一系统对应第一加密方式,第二系统对应第二加密方式。当区块链网络的节点想要从第一系统切换至第二系统时,可以向证书管理机构发送携带有原证书的全字节、原证书的证书标识和第二加密方式的证书替换请求,用于请求证书管理机构颁发新证书,并将新证书对应的加密方式调整为第二加密方式。其中,该区块链网络的节点可以指区块链网络中的任一节点,例如如图2中的第一节点2010或者第二节点2011,本申请实施例对此不作具体限定。
示例性地,证书对应的加密方式可以包括非对称加密方式RSA、椭圆加密方式ECC和国密(即国家密码局认定的国产密码算法)等三种加密方式。第一系统对应的第一加密方式为RSA,第二系统对应的第二加密方式为ECC,当区块链网络的节点想要从第一系统切换至第二系统时,可以向证书管理机构发送携带有原证书的全字节、原证书的证书标识和第二加密方式ECC的证书替换请求,用于请求证书管理机构颁发新证书,并将新证书对应的加密方式从RSA调整为ECC。
S302:从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥。
在一个实施例中,证书管理机构颁从证书标识对应的目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥之前,还可以从区块链网络维护的区块链中或者从本地存储区域中获取证书标识对应的目标证书颁发记录,该目标证书颁发记录包括加密方式与公钥的对应关系。其中,在一个实施例中,一种加密方式对应一个公钥。
在一个实施例中,证书管理机构从区块链网络维护的区块链中或者从本地存储区域中获取目标证书颁发记录之前,当接收到区块链网络的节点发送的证书颁发请求时,可以生成证书、该证书的证书标识、以及证书标识对应的目标证书颁发记录,该目标证书颁发记录包括加密方式与公钥的对应关系。进一步地,证书管理机构可以将该证书和证书的证书标识发送至上述节点,并将证书标识和证书标识对应的目标证书颁发记录存储至本地存储区域或者写入上述区块链。
在一个实施例中,假设证书管理机构颁发证书时,该证书标识和证书标识对应的目标证书颁发记录的存储方式为写入区块链网络维护的区块链。这种情况下,证书管理机构从区块链网络维护的区块链中获取证书标识对应的目标证书颁发记录的具体实施方式可以为:向区块链网络的第二节点发送证书颁发记录获取请求,该证书颁发记录获取请求携带有原证书的证书标识,该证书颁发记录获取请求用于指示第二节点从区块链中获取目标证书颁发记录。进一步地,证书管理机构接收该第二节点发送的目标证书颁发记录。其中,该第二节点为区块链网络中的任一节点,该第二节点可以与步骤S301中的区块链网络的节点相同或者不同。
S303:基于目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与目标公钥匹配。
S304:根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。
在一个实施中,原证书的扩展字段中存在表征公钥属性的目标字节,示例性地,假设第一加密方式为RSA,第二加密方式为ECC,那么,证书管理机构可以基于ECC对应的目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与ECC对应的目标公钥匹配。进一步地,证书管理机构根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。可以看出,新证书与原证书相比,调整部分仅有全文字节中表征公钥属性的目标字节,其它部分(例如身份字段属性和证书标识均相同),可以保证新证书在第二加密方式对应第二系统中使用时,第二系统对新证书进行身份验证的结果表征的节点和业务均与原证书相同,有利于保证对新证书进行身份验证的一致性。
本申请实施例中,证书管理机构接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,证书管理机构从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,基于目标公钥对全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与目标公钥匹配,并根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。实现了证书在第一加密方式对应第一系统与第二加密方式对应第二系统之间的切换使用。除此之外,颁发的新证书的证书标识和身份字段属性均与原证书相同,保证了新证书与原证书之间身份验证的一致性。
请参见图4,是本发明另一实施例提供的一种证书管理方法的示意流程图,本申请实施例的所述方法可以由证书管理机构来执行,如图4所示,该方法包括:
S401:接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式,该原证书的全文字节添加有数字签名。
在一个实施中,区块链网络的节在向证书管理机构发送证书替换之前,可以基于第一加密方式对应公钥对应的私钥对原证书的全文字节进行数字签名,并基于该添加有数字签名的全文字节、原证书的证书标识和第二加密方式生成该证书替换请求。
S402:从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥。其中,步骤S402的具体实施方式可以参见上述实施例中步骤S302的相关描述,此处不再赘述。
S403:通过该目标公钥对数字签名进行解密,若解密成功,则基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。
在一个实施例中,上述数字签名是基于第二加密方式对应的私钥生成的,证书管理机构确定出第二加密方式对应的目标公钥,可以基于该目标公钥对数字签名进行解密,若解密成功,则确定对节点验证通过,基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。其中,基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整的具体实施方式可以参见上述实施例中步骤S303的相关描述,此处不再赘述。
在另一个实施例中,证书管理机构基于该目标公钥对数字签名进行解密,若解密失败,则可以向上述节点发送告警信息,用于提示节点数字签名不正确。
在一个实施例中,证书管理机构通过目标公钥对数字签名进行解密之后,若解密成功,则基于原证书的证书标识从区块链或者本地存储区域中获取预存储的该原证书的全文字节,并将预存储的全文字节与解密后的全文字节进行对比,若相同,则触发执行基于目标公钥对全文字节中表征公钥属性的目标字节进行调整的步骤。
在另一个实施例中,证书管理机构将预存储的全文字节与解密后的全文字节进行对比之后,若对比得到预存储的全文字节与解密后的全文字节不相同,则可以向上述节点输出提示信息,用于提示该节点原证书的全文字节有误。
S404:根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。其中,步骤S404的具体实施方式可以参见上述实施例中步骤S304的相关描述,此处不再赘述。
在一个实施例中,证书管理机构根据调整后的全文字节生成新证书之后,还可以根据原证书和新证书生成上述节点对应的证书变动记录,该证书变动记录包括证书变动的时间、证书变动的方向和证书变动的结果中的一种或者多种。进一步地,可以将证书变动记录存储至本地存储区域或者写入区块链网络维护的区块链。
在一个实施例中,上述证书变动的方向例如可以为从第一加密方式对应的原证书变动为第二加密方式对应的新证书,证书变动的结果用于指示本次变动是否成功,例如该证书变动的结果可以用于指示已成功从第一加密方式对应的原证书变动为第二加密方式对应的新证书。
在一个实施例中,在证书管理机构向节点颁发新证书之后,原证书仍然有效,当该节点下一次想要将新证书替换为原证书时,证书管理机构可以从本地存储区域或者区块链中直接获取该原证书,并向节点颁发该原证书,而无需重新生成证书。
本申请实施例中,证书管理机构接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,证书管理机构,从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,通过该目标公钥对数字签名进行解密,若解密成功,则基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。进一步地,证书管理机构根据调整后的全文字节生成新证书,并向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。可以基于目标公钥对证书替换请求中携带的原证书的全文字节进行校验,有利于提高证书管理的安全性。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,该程序指令被执行时,用于实现上述实施例中描述的相应方法。
基于上述的证书管理方法实施例的描述,本申请实施例还提出了一种证书管理装置,该证书管理装置可以配置于证书管理机构,也可以是运行于上述证书管理机构中的一个计算机程序(包括程序代码)。所述证书管理装置可用于执行如图3和图4所示的证书管理方法,请参见图5,所述证书管理装置可包括:通信模块50,处理模块51。
通信模块50,用于接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
处理模块51,用于从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
所述处理模块51,还用于基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
所述处理模块51,还用于根据调整后的全文字节生成新证书;
所述通信模块50,还用于向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
在一个实施例中,所述处理模块51,还用于从所述区块链网络维护的区块链中或者从本地存储区域中获取所述证书标识对应的目标证书颁发记录,所述目标证书颁发记录包括加密方式与公钥的对应关系。
在一个实施例中,所述处理模块51,具体用于通过通信模块50向所述区块链网络的第二节点发送证书颁发记录获取请求,所述证书颁发记录获取请求携带有所述原证书的证书标识,所述证书颁发记录获取请求用于指示所述第二节点从所述区块链中获取所述目标证书颁发记录,并通过通信模块50接收所述第二节点发送的所述目标证书颁发记录。
在一个实施例中,所述处理模块51,还用于当通过通信模块50接收到区块链网络的节点发送的证书颁发请求时,生成证书、所述证书的证书标识、以及所述证书标识对应的目标证书颁发记录,所述目标证书颁发记录包括加密方式与公钥的对应关系;通过通信模块50将所述证书和所述证书的证书标识发送至所述节点,并将所述证书标识和所述证书标识对应的目标证书颁发记录存储至所述本地存储区域或者写入所述区块链。
在一个实施例中,所述原证书的全文字节添加有数字签名,所述数字签名是基于所述第二加密方式对应的私钥生成的,处理模块51,还具体用于通过所述目标公钥对所述数字签名进行解密;若解密成功,则基于所述目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。
在一个实施例中,处理模块51,还用于若解密成功,则基于所述原证书的证书标识从区块链或者本地存储区域中获取预存储的所述原证书的全文字节;将预存储的所述全文字节与解密后的全文字节进行对比;若相同,则触发执行所述基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整的步骤。
在一个实施例中,处理模块51,还用于根据所述原证书和所述新证书生成所述节点对应的证书变动记录,所述证书变动记录包括证书变动的时间、证书变动的方向和证书变动的结果中的一种或者多种;将所述证书变动记录存储至本地存储区域或者写入所述区块链网络维护的区块链。
本申请实施例中,通信模块50接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,处理模块51从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,通过该目标公钥对数字签名进行解密,若解密成功,则基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。进一步地,处理模块51根据调整后的全文字节生成新证书,并通过通信模块50向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。处理模块51可以基于目标公钥对证书替换请求中携带的原证书的全文字节进行校验,有利于提高证书管理的安全性。
再请参见图6,是本申请实施例的一种电子设备的结构示意图,该电子设备可以是证书管理机构,本申请实施例的所述电子设备包括供电模块等结构,并包括处理器601、存储器602以及通信接口603。所述处理器601、存储器602以及通信接口603之间可以交互数据,由处理器601实现相应的证书管理功能。
所述存储器602可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器602也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;所述存储器602还可以包括上述种类的存储器的组合。
所述处理器601可以是中央处理器601(central processing unit,CPU)。在一个实施例中,所述处理器601还可以是图形处理器601(Graphics Processing Unit,GPU)。所述处理器601也可以是由CPU和GPU的组合。在所述电子设备中,可以根据需要包括多个CPU和GPU进行相应的根证书管理。在一个实施例中,所述存储器602用于存储程序指令。所述处理器601可以调用所述程序指令,实现如本申请实施例中上述涉及的各种方法。
在一个实施例中,所述电子设备的所述处理器601,调用所述存储器602中存储的程序指令,用于通过通信接口603接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;根据调整后的全文字节生成新证书,并通过通信接口603向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
在一个实施例中,所述处理器601,还用于从所述区块链网络维护的区块链中或者从本地存储区域中获取所述证书标识对应的目标证书颁发记录,所述目标证书颁发记录包括加密方式与公钥的对应关系。
在一个实施例中,所述处理器601,具体用于通过通信接口603向所述区块链网络的第二节点发送证书颁发记录获取请求,所述证书颁发记录获取请求携带有所述原证书的证书标识,所述证书颁发记录获取请求用于指示所述第二节点从所述区块链中获取所述目标证书颁发记录,并通过通信接口603接收所述第二节点发送的所述目标证书颁发记录。
在一个实施例中,所述处理器601,还用于当通过通信接口603接收到区块链网络的节点发送的证书颁发请求时,生成证书、所述证书的证书标识、以及所述证书标识对应的目标证书颁发记录,所述目标证书颁发记录包括加密方式与公钥的对应关系;通过通信接口603将所述证书和所述证书的证书标识发送至所述节点,并将所述证书标识和所述证书标识对应的目标证书颁发记录存储至所述本地存储区域或者写入所述区块链。
在一个实施例中,所述原证书的全文字节添加有数字签名,所述数字签名是基于所述第二加密方式对应的私钥生成的,处理器601,还具体用于通过所述目标公钥对所述数字签名进行解密;若解密成功,则基于所述目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。
在一个实施例中,处理器601,还用于若解密成功,则基于所述原证书的证书标识从区块链或者本地存储区域中获取预存储的所述原证书的全文字节;将预存储的所述全文字节与解密后的全文字节进行对比;若相同,则触发执行所述基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整的步骤。
在一个实施例中,处理器601,还用于根据所述原证书和所述新证书生成所述节点对应的证书变动记录,所述证书变动记录包括证书变动的时间、证书变动的方向和证书变动的结果中的一种或者多种;将所述证书变动记录存储至本地存储区域或者写入所述区块链网络维护的区块链。
在本申请实施例中,所述处理器601的具体实现可参考前述各个附图所对应的实施例中相关内容的描述。
本申请实施例中,通信接口603接收区块链网络的节点发送的证书替换请求,该证书替换请求携带有原证书的全文字节、原证书的证书标识和第二加密方式,该第二加密方式用于替换节点的原证书对应的第一加密方式。进一步地,处理器601从证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定第二加密方式对应的目标公钥,通过该目标公钥对数字签名进行解密,若解密成功,则基于目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。进一步地,处理器601根据调整后的全文字节生成新证书,并通过通信接口603向节点颁发该新证书,该新证书的证书标识与原证书的证书标识相同。处理器601可以基于目标公钥对证书替换请求中携带的原证书的全文字节进行校验,有利于提高证书管理的安全性。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明的局部实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或局部流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
Claims (10)
1.一种证书管理方法,其特征在于,所述方法应用于证书管理机构,所述方法包括:
接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
根据调整后的全文字节生成新证书,并向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
2.根据权利要求1所述的方法,其特征在于,所述从所述证书标识对应的目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥之前,所述方法还包括:
从所述区块链网络维护的区块链中或者从本地存储区域中获取所述证书标识对应的目标证书颁发记录,所述目标证书颁发记录包括加密方式与公钥的对应关系。
3.根据权利要求2所述的方法,其特征在于,所述从所述区块链网络维护的区块链中获取所述证书标识对应的目标证书颁发记录,包括:
向所述区块链网络的第二节点发送证书颁发记录获取请求,所述证书颁发记录获取请求携带有所述原证书的证书标识,所述证书颁发记录获取请求用于指示所述第二节点从所述区块链中获取所述目标证书颁发记录;
接收所述第二节点发送的所述目标证书颁发记录。
4.根据权利要求2或3所述的方法,其特征在于,所述从所述区块链网络维护的区块链中或者从本地存储区域中获取所述目标证书颁发记录之前,所述方法还包括:
当接收到区块链网络的节点发送的证书颁发请求时,生成证书、所述证书的证书标识、以及所述证书标识对应的目标证书颁发记录;
将所述证书和所述证书的证书标识发送至所述节点,并将所述证书标识和所述证书标识对应的目标证书颁发记录存储至所述本地存储区域或者写入所述区块链。
5.根据权利要求1所述的方法,其特征在于,所述原证书的全文字节添加有数字签名,所述数字签名是基于所述第二加密方式对应的私钥生成的,所述基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,包括:
通过所述目标公钥对所述数字签名进行解密;
若解密成功,则基于所述目标公钥对解密后的全文字节中表征公钥属性的目标字节进行调整。
6.根据权利要求5所述的方法,其特征在于,所述通过所述目标公钥对所述数字签名进行解密之后,所述方法还包括:
若解密成功,则基于所述原证书的证书标识从区块链或者本地存储区域中获取预存储的所述原证书的全文字节;
将预存储的所述全文字节与解密后的全文字节进行对比;
若相同,则触发执行所述基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整的步骤。
7.根据权利要求1所述的方法,其特征在于,所述根据调整后的全文字节生成新证书之后,所述方法还包括:
根据所述原证书和所述新证书生成所述节点对应的证书变动记录,所述证书变动记录包括证书变动的时间、证书变动的方向和证书变动的结果中的一种或者多种;
将所述证书变动记录存储至本地存储区域或者写入所述区块链网络维护的区块链。
8.一种证书管理装置,其特征在于,所述证书管理装置配置于证书管理机构,所述证书管理装置包括:
通信模块,用于接收区块链网络的节点发送的证书替换请求,所述证书替换请求携带有所述原证书的全文字节、所述原证书的证书标识和第二加密方式,所述第二加密方式用于替换所述节点的原证书对应的第一加密方式;
处理模块,用于从所述证书标识对应目标证书颁发记录包括的加密方式与公钥的对应关系中确定所述第二加密方式对应的目标公钥;
所述处理模块,还用于基于所述目标公钥对所述全文字节中表征公钥属性的目标字节进行调整,以使调整后的目标字节表征的公钥属性与所述目标公钥匹配;
所述处理模块,还用于根据调整后的全文字节生成新证书;
所述通信模块,还用于向所述节点颁发所述新证书,所述新证书的证书标识与所述原证书的证书标识相同。
9.一种电子设备,其特征在于,包括处理器、存储器和通信接口,所述处理器、所述存储器和所述通信接口相互连接,其中,所述存储器用于存储计算机程序指令,所述处理器被配置用于执行所述程序指令,实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序指令,所述计算机程序指令被处理器执行时,用于执行如权利要求1-7任一项所述的证书管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911164183.XA CN110912892B (zh) | 2019-11-22 | 2019-11-22 | 一种证书管理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911164183.XA CN110912892B (zh) | 2019-11-22 | 2019-11-22 | 一种证书管理方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110912892A CN110912892A (zh) | 2020-03-24 |
CN110912892B true CN110912892B (zh) | 2021-05-11 |
Family
ID=69819251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911164183.XA Active CN110912892B (zh) | 2019-11-22 | 2019-11-22 | 一种证书管理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110912892B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112511297B (zh) * | 2020-11-30 | 2022-03-11 | 郑州信大捷安信息技术股份有限公司 | 一种密钥对和数字证书的更新方法和系统 |
CN112950356B (zh) * | 2021-03-16 | 2024-04-09 | 湖南大学 | 基于数字身份的个人贷款处理方法及系统、设备、介质 |
CN113778628B (zh) * | 2021-09-14 | 2023-09-05 | 新华智云科技有限公司 | 边缘节点管控方法及系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108270568A (zh) * | 2016-12-31 | 2018-07-10 | 普天信息技术有限公司 | 一种移动数字证书装置及其更新方法 |
KR101849920B1 (ko) * | 2017-05-25 | 2018-04-19 | 주식회사 코인플러그 | 머클 트리 구조를 사용하여 m of n 다중 서명에 의한 인증서 서비스를 제공하는 방법 및 이를 이용한 서버 |
CN108933667B (zh) * | 2018-05-03 | 2021-08-10 | 深圳市京兰健康医疗大数据有限公司 | 一种基于区块链的公钥证书的管理方法及管理系统 |
CN110061846B (zh) * | 2019-03-14 | 2022-08-23 | 深圳壹账通智能科技有限公司 | 对区块链中用户节点进行身份认证和确认的方法、装置及计算机可读存储介质 |
-
2019
- 2019-11-22 CN CN201911164183.XA patent/CN110912892B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110912892A (zh) | 2020-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11115418B2 (en) | Registration and authorization method device and system | |
CN108898475B (zh) | 基于属性加密的联盟区块链实现信贷方法及系统 | |
US20220191012A1 (en) | Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System | |
EP3779792B1 (en) | Two-dimensional code generation method, data processing method, apparatus, and server | |
US11483161B2 (en) | Method for information processing and non-transitory computer readable storage medium | |
CN108933667B (zh) | 一种基于区块链的公钥证书的管理方法及管理系统 | |
CN110912892B (zh) | 一种证书管理方法、装置、电子设备及存储介质 | |
WO2019214068A1 (zh) | 区块链系统上用户验证方法、装置、终端设备及存储介质 | |
US20140270179A1 (en) | Method and system for key generation, backup, and migration based on trusted computing | |
US20100005318A1 (en) | Process for securing data in a storage unit | |
CN109478214B (zh) | 用于证书注册的装置和方法 | |
US20200351074A1 (en) | System for synchronizing a cryptographic key state through a blockchain | |
CN110417750A (zh) | 基于区块链技术的文件读取和存储的方法、终端设备和存储介质 | |
TW202036347A (zh) | 資料儲存、驗證方法及裝置 | |
CN111367834A (zh) | 自加密驱动器(sed) | |
US11588631B2 (en) | Systems and methods for blockchain-based automatic key generation | |
JP2010004516A (ja) | 暗号鍵および証明書の配備および配付の自動妥当性検査および実行のためのシステムおよび方法 | |
CN110445840B (zh) | 一种基于区块链技术的文件存储和读取的方法 | |
CN110781140B (zh) | 区块链中数据签名的方法、装置、计算机设备及存储介质 | |
JP2001209582A (ja) | 原本性保証電子保存装置、障害復旧方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN109858259A (zh) | 基于HyperLedger Fabric的社区健康服务联盟数据保护和共享方法 | |
CN108540447B (zh) | 一种基于区块链的证书验证方法及系统 | |
CN110598375A (zh) | 一种数据处理方法、装置及存储介质 | |
CN109815747A (zh) | 基于区块链的离线审计方法、电子装置及可读存储介质 | |
CN112653553A (zh) | 物联网设备身份管理系统 |
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 |