数字证书的处理方法及相关装置制造方法及图纸

技术编号:20729674 阅读:19 留言:0更新日期:2019-03-30 19:20
本申请实施例公开了一种数字证书的处理方法及装置,该方法包括:区块链网络的第一参与方的CA将第一参与方的CA公钥记录至区块链网络中;当第一参与方的CA接收到任一用户的证书授权请求时,根据证书授权请求中携带的用户身份信息确认是否为第一参与方的CA的用户;若是则从证书授权请求中获取用户的公钥,并根据环签名证书签发规则从区块链网络中获取任意N个第二参与方的CA公钥,N等于环签名证书签发规则中设定的公钥数量;第一参与方的CA根据第一参与方的CA公钥、私钥和N个第二参与方的CA公钥对用户的用户身份信息和公钥进行环签名形成数字证书并向用户发送。采用本申请实施例,可增强数字证书的签发方的身份私密性。

【技术实现步骤摘要】
数字证书的处理方法及相关装置
本申请涉及区块链
,尤其涉及一种数字证书的处理方法及相关装置。
技术介绍
目前很多联盟链应用都开始引入数字证书颁发机构(CertificateAuthority,CA)为区块链上的参与方颁发数字证书。由于很多参与方(例如大多数银行)都有自己的CA,因此都会要求可以通过自己的CA为自己的客户来颁发数字证书。例如,银行A有自己的CA(例如CA-A),银行B有自己的CA(比如CA-B),银行C有自己的CA(比如CA-C)等等,各个银行均可通过自己的CA为自己的客户颁发数字证书。在联盟链网络中,银行A、银行B以及银行C等任一参与方均会认同其他参与方的CA给其客户颁发的数字证书。然而,由于所有联盟链上的参与方也都可以通过一个客户的数字证书来判断该客户的哪个参与方的客户,比如银行B可以通过一个企业的数字证书的签发方来判断这个企业是哪个银行的客户。比如说,该企业的数字证书是由银行A颁发,银行B则可确定该企业是银行A的客户等等。目前联盟链上的这种数字证书的颁发方式导致联盟链交易的交易信息对于联盟链上的各个参与方是完全公开的,交易双方的身份暴露无遗,难以满足各个参与方的交易需求,适用性差。
技术实现思路
本申请实施例提供一种数字证书的处理方法及相关装置,可实现数字证书的匿名签发,增强数字证书的签发方的身份私密性,适用性强。第一方面,本申请实施例提供了一种数字证书的签发方法,上述方法适用于数字证书的签发方,上述方法包括:区块链网络中的第一参与方的证书颁发机构CA将上述第一参与方的CA公钥记录至区块链网络中,上述第一参与方为上述区块链网络中数字证书的签发方,上述区块链网络中还记录了至少一个第二参与方的CA公钥,上述第二参与方为上述区块链网络中除上述第二参与方之外的参与方;当上述第一参与方的CA接收到任一用户的证书授权请求时,根据上述证书授权请求中携带的用户身份信息确认上述用户是否为上述第一参与方的CA的用户;若上述签发方的CA确认上述用户是上述第一参与方的CA的用户,则从上述证书授权请求中获取上述用户的公钥,并根据预先设定的环签名证书签发规则,从上述区块链网络中获取任意N个上述第二参与方的CA公钥,其中,N等于上述环签名证书签发规则中设定的公钥数量;上述签发方的CA根据上述第一参与方的CA的公钥、私钥和上述N个上述第二参与方的CA公钥对上述用户的用户身份信息和公钥进行环签名并形成数字证书,并向上述用户发送上述数字证书。结合第一方面,在一种可能的实施方式中,上述环签名证书签发规则由上述第一参与方的CA自行制定,或者由上述区块链网络中的各个参与方的CA共同制定;上述环签名证书签发规则被记录于上述区块链网络中。结合第一方面,在一种可能的实施方式中,上述环签名证书签发规则中还包括由X509的数字证书构成的规范;上述X509中包括用于记录环签名的公钥信息的预设字段;上述第一参与方的CA根据上述第一参与方的CA的公钥、私钥和上述N个上述第二参与方的CA公钥对上述用户的用户身份信息和公钥进行环签名并形成数字证书包括:上述第一参与方的CA基于上述规范,使用上述第一参与方的CA的公钥、私钥和上述N个上述第二参与方的CA公钥对上述用户的用户身份信息和公钥进行环签名并形成数字证书,上述数字证书的上述预设字段中携带上述数字证书的环签名的公钥信息。结合第一方面,在一种可能的实施方式中,上述X509中包括签发方标注字段,上述签发方标注字段中包括上述第一参与方的CA对应的区块链网络标识和/或上述数字证书的环签名的公钥信息;其中,上述公钥信息包括上述数字证书的环签名对应的上述N个上述第二参与方的CA公钥,和/或上述环签名对应的上述N个上述第二参与方的CA公钥的标识。结合第一方面,在一种可能的实施方式中,上述预设字段包括上述X509中的扩展字段,上述扩展字段中携带的上述环签名的公钥信息包括上述数字证书的环签名对应的上述N个上述第二参与方的CA公钥,和/或上述环签名对应的上述N个上述第二参与方的CA公钥的标识。结合第一方面,在一种可能的实施方式中,上述区块链网络中记录的各个参与方的CA公钥分为多个分组,且一个分组对应一个分组标识符;上述预设字段包括上述X509中的扩展字段,上述扩展字段中携带的上述环签名的公钥信息包括分组标识符,上述分组标识符用于指示上述环签名对应的上述N个上述第二参与方的CA公钥的所属分组,以帮助上述数字证书的验证方基于上述N个上述第二参与方的CA公钥的所属分组找到上述N个上述第二参与方的CA公钥。第二方面,本申请实施例提供了一种数字证书的验证方法,上述方法适用于数字证书的验证方,上述方法包括:当验证方获得区块链网络中的任一签名交易时,上述验证方获取上述签名交易的发起方的数字证书;上述签名交易的发起方可为上述区块链网络中的参与方之一,上述区块链网络中记录了包括上述交易的发起方在内的各个参与方的证书颁发机构CA公钥;上述验证方基于预设的环签名证书签发规则从上述数字证书中获取上述数字证书的环签名的公钥信息,并根据上述公钥信息确定上述数字证书的环签名对应的所有公钥,上述环签名对应的所有公钥为上述区块链网络中的多个参与方的CA公钥,且上述环签名对应的公钥数量等于上述环签名证书签发规则中设定的公钥数量;上述验证方根据上述环签名对应的所有公钥对上述签名交易的签名进行验证。结合第二方面,在一种可能的实施方式中,上述环签名证书签发规则被记录于上述区块链网络中,上述环签名证书签发规则中还包括由X509的数字证书构成的规范;上述X509中包括用于记录环签名的公钥信息的预设字段;上述公钥信息包括上述预设字段中所包括的区块链网络的标识,和/或数字证书的环签名对应的所有参与方的CA公钥,和/或上述所有参与方的CA公钥的标识;其中,上述预设字段包括签发方标注字段和/或扩展字段。结合第二方面,在一种可能的实施方式中,上述环签名证书签发规则被记录于上述区块链网络中,上述环签名证书签发规则中还包括由X509的数字证书构成的规范;上述X509中包括用于记录环签名的公钥信息的预设字段;上述区块链网络中记录的上述各个参与方的CA公钥分为多个分组,且一个分组对应一个分组标识符;上述公钥信息包括上述预设字段中所包括的分组标识符,上述分组标识符用于确定上述区块链网络中所包括的目标分组,以基于上述目标分组中包括的CA公钥确定上述数字证书的环签名对应的所有参与方的CA公钥。第三方面,本申请实施例提供了一种数字证书的签发装置,上述装置适用于数字证书的签发方的证书颁发机构CA,上述装置包括:记录单元,用于将上述第一参与方的CA公钥记录至区块链网络中,上述第一参与方为上述区块链网络中数字证书的签发方,上述区块链网络中还记录了至少一个第二参与方的CA公钥,上述第二参与方为上述区块链网络中除上述第一参与方之外的参与方;确认单元,用于在接收到任一用户的证书授权请求时,根据上述证书授权请求中携带的用户身份信息确认上述用户是否为上述第一参与方的CA的用户;获取单元,用于在上述确认单元确认上述用户是上述第一参与方的CA的用户时,从上述证书授权请求中获取上述用户的公钥,并根据预先设定的环签名证书签发规则,从上述区块链网络中获取任意N个上述第二参与方的CA公钥,其中本文档来自技高网...

【技术保护点】
1.一种数字证书的签发方法,其特征在于,所述方法适用于数字证书的签发方,所述方法包括:区块链网络的第一参与方的证书颁发机构CA将所述第一参与方的CA公钥记录至区块链网络中,所述第一参与方为所述区块链网络中数字证书的签发方,所述区块链网络中还记录了至少一个第二参与方的CA公钥,所述第二参与方为所述区块链网络中除所述第一参与方之外的参与方;当所述第一参与方的CA接收到任一用户的证书授权请求时,根据所述证书授权请求中携带的用户身份信息确认所述用户是否为目标用户,所述目标用户为所述第一参与方的CA的用户;若所述第一参与方的CA确认所述用户是目标用户,则从所述证书授权请求中获取所述用户的公钥,并根据预先设定的环签名证书签发规则,从所述区块链网络中获取任意N个所述第二参与方的CA公钥,其中,N等于所述环签名证书签发规则中设定的公钥数量;所述第一参与方的CA根据所述第一参与方的CA的公钥、私钥和所述N个所述第二参与方的CA公钥对所述用户的用户身份信息和公钥进行环签名并形成数字证书,并向所述用户发送所述数字证书。

【技术特征摘要】
1.一种数字证书的签发方法,其特征在于,所述方法适用于数字证书的签发方,所述方法包括:区块链网络的第一参与方的证书颁发机构CA将所述第一参与方的CA公钥记录至区块链网络中,所述第一参与方为所述区块链网络中数字证书的签发方,所述区块链网络中还记录了至少一个第二参与方的CA公钥,所述第二参与方为所述区块链网络中除所述第一参与方之外的参与方;当所述第一参与方的CA接收到任一用户的证书授权请求时,根据所述证书授权请求中携带的用户身份信息确认所述用户是否为目标用户,所述目标用户为所述第一参与方的CA的用户;若所述第一参与方的CA确认所述用户是目标用户,则从所述证书授权请求中获取所述用户的公钥,并根据预先设定的环签名证书签发规则,从所述区块链网络中获取任意N个所述第二参与方的CA公钥,其中,N等于所述环签名证书签发规则中设定的公钥数量;所述第一参与方的CA根据所述第一参与方的CA的公钥、私钥和所述N个所述第二参与方的CA公钥对所述用户的用户身份信息和公钥进行环签名并形成数字证书,并向所述用户发送所述数字证书。2.根据权利要求1所述的方法,其特征在于,所述环签名证书签发规则由所述第一参与方的CA自行制定,或者由所述区块链网络中的各个参与方的CA共同制定;所述环签名证书签发规则被记录于所述区块链网络中。3.根据权利要求2所述的方法,其特征在于,所述环签名证书签发规则中还包括由X509的数字证书构成的规范;所述X509中包括用于记录环签名的公钥信息的预设字段;所述第一参与方的CA根据所述第一参与方的CA的公钥、私钥和所述N个第二参与方的CA公钥对所述用户的用户身份信息和公钥进行环签名并形成数字证书包括:所述第一参与方的CA基于所述规范,使用所述第一参与方的CA的公钥、私钥和所述N个所述第二参与方的CA公钥对所述用户的用户身份信息和公钥进行环签名并形成数字证书,所述数字证书的所述预设字段中携带所述数字证书的环签名的公钥信息。4.根据权利要求3所述的方法,其特征在于,所述X509中包括签发方标注字段,所述签发方标注字段中包括所述第一参与方的CA对应的区块链网络标识和/或所述数字证书的环签名的公钥信息;其中,所述公钥信息包括所述数字证书的环签名对应的所述N个所述第二参与方的CA公钥,和/或所述环签名对应的所述N个所述第二参与方的CA公钥的标识。5.根据权利要求3所述的方法,其特征在于,所述预设字段包括所述X509中的扩展字段,所述扩展字段中携带的所述环签名的公钥信息包括所述数字证书的环签名对应的所述N个所述第二参与方的CA公钥,和/或所述环签名对应的所述N个所述第二参与方的CA公钥的标识。6.根据权利要求3所述的方法,其特征在于,所述区块链网络中记录的各个参与方的CA公钥分为多个分组,且一个分组对应一个分组标识符;所述预设字段包括所述X509中的扩展字段,所述扩展字段中携带的所述环签名的公钥信息包括分组标识符,所述分组标识符用于指示所述环签名对应的所述N个所述第二参与方的CA公钥的所属分组,以帮助所述数字证书的验证方基于所述N个所述第二参与方的CA公钥的所属分组找到所述N个所述第二参与方的CA公钥。7.一种数字证书的验证方法,其特征在于,所述方法适用于数字证书的验证方,所述方法包括:当验证方获得区块链网络中的任一签名交易时,所述验证方获取所述签名交易的发起方的数字证书;所述验证方基于预设的环签名证书签发规则从所述数字证书中获取所述数字证书的环签名的公钥信息,并根据所述公钥信息确定所述数字证书的环签名对应的所有公钥,所述环签名对应的所有公钥为所述区块链网络...

【专利技术属性】
技术研发人员:陆陈一帆霍云冯承勇
申请(专利权)人:深圳壹账通智能科技有限公司
类型:发明
国别省市:广东,44

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

1