CN112861106B - 数字证书处理方法及系统、电子设备及存储介质 - Google Patents

数字证书处理方法及系统、电子设备及存储介质 Download PDF

Info

Publication number
CN112861106B
CN112861106B CN202110220544.9A CN202110220544A CN112861106B CN 112861106 B CN112861106 B CN 112861106B CN 202110220544 A CN202110220544 A CN 202110220544A CN 112861106 B CN112861106 B CN 112861106B
Authority
CN
China
Prior art keywords
digital certificate
public key
agent
private key
terminal equipment
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
Application number
CN202110220544.9A
Other languages
English (en)
Other versions
CN112861106A (zh
Inventor
吴良顺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuo Erzhi Lian Wuhan Research Institute Co Ltd
Original Assignee
Zhuo Erzhi Lian Wuhan Research Institute Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuo Erzhi Lian Wuhan Research Institute Co Ltd filed Critical Zhuo Erzhi Lian Wuhan Research Institute Co Ltd
Priority to CN202110220544.9A priority Critical patent/CN112861106B/zh
Publication of CN112861106A publication Critical patent/CN112861106A/zh
Application granted granted Critical
Publication of CN112861106B publication Critical patent/CN112861106B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请实施例公开了一种数字证书处理方法,应用于代理数字证书签发机构CA中,包括:获取终端设备的数字证书;所述数字证书至少携带所述终端设备的第一公钥;基于所述终端设备的第一私钥与所述第一公钥,验证所述数字证书的有效性;将携带CA签名信息的所述数字证书在区块链网络中广播;所述CA签名信息为所述代理CA通过所述代理CA的第二私钥生成的签名信息;接收所述区块链网络在对所述数字证书中的所述CA签名信息进行共识验证,并将所述数字证书存储到区块链之后返回的存储位置信息;记录所述存储位置信息。如此,通过区块链对数字证书进行存储,可以统一化不同数字证书的存储位置,抑制不同代理CA之间无法互相认证的局限性。

Description

数字证书处理方法及系统、电子设备及存储介质
技术领域
本发明涉及网络技术领域,尤其涉及一种数字证书处理方法及系统、电子 设备及存储介质。
背景技术
在物联网的实际应用中,边缘节点上的物联网应用接入大量的物联网终端, 物联网终端和应用之间需要建立双向认证,以保证系统及物联采集数据来源的 身份安全。
基于公钥基础设施(Public Key Infrastructure,PKI)的身份认证体系是目 前常用的身份认证方式,但其中集中化的数字证书签发机构(Certificate Authority,CA)一旦遭受安全攻击或自身出现故障,会影响到证书用户。用户 的数字证书只能依据所属CA的根证书进行认证,不同CA之间不能实现交叉 认证。
发明内容
有鉴于此,本发明实施例提供一种数字证书处理方法及系统、电子设备及 存储介质。
本发明的技术方案是这样实现的:
第一方面,本发明实施例提供一种数字证书处理方法,应用于代理数字证 书签发机构CA中,包括:
获取终端设备的数字证书;数字证书至少携带终端设备的第一公钥;
基于终端设备的第一私钥与第一公钥,验证数字证书的有效性;终端设备, 至少用于通过第一私钥对数字证书生成设备签名信息;
将携带CA签名信息的数字证书在区块链网络中广播;CA签名信息为代理CA通过代理CA的第二私钥生成的签名信息;
接收区块链网络在对数字证书中的CA签名信息进行共识验证,并将数字 证书存储到区块链之后返回的存储位置信息;
记录存储位置信息。
进一步地,所述将携带CA签名信息的数字证书在区块链网络中广播,包 括:
若数字证书验证有效,则将携带CA签名信息的数字证书在区块链网络中 广播。
进一步地,所述方法还包括:
接收查询请求;
返回待查询的数字证书对应的存储位置信息。
第二方面,本发明实施例提供一种数字证书处理方法,应用于物联网应用 中,所述方法包括:
获取待认证的终端设备的第一私钥和代理CA的第二公钥;
发送查询请求至第二公钥对应的代理CA;
接收基于查询请求返回的数字证书对应的存储位置信息;
基于存储位置信息在区块链中获取数字证书;
根据第一私钥与数字证书中第一公钥的匹配情况,确定认证结果;
将认证结果发送至终端设备。
进一步地,所述获取待认证的终端设备的第一私钥和代理CA的第二公钥, 包括:
接收待认证的终端设备的认证请求;
向终端设备发送应答消息;
接收终端设备返回的携带第一私钥的应答消息和代理CA的第二公钥。
进一步地,所述发送查询请求至第二公钥对应的代理CA,包括:
根据第二公钥,在物联网的全部代理CA中确定与第二公钥对应的代理CA;
发送查询请求至第二公钥对应的代理CA。
进一步地,所述根据第一私钥与数字证书中第一公钥的匹配情况,确定认 证结果,包括:
若第一私钥与数字证书中第一公钥匹配成功,则认证结果为有效;
若第一私钥与数字证书中第一公钥匹配失败,则认证结果为无效。
第三方面,本发明实施例提供一种数字证书处理系统,所述系统包括:代 理CA、物联网应用、终端设备及区块链;
代理CA,用于获取终端设备的数字证书;数字证书至少携带终端设备的 第一公钥;基于终端设备的第一私钥与第一公钥,验证数字证书的有效性;终 端设备,至少用于通过第一私钥对数字证书生成设备签名信息;将携带CA签 名信息的所述数字证书在区块链网络中广播;所述CA签名信息为所述代理CA 通过所述代理CA的第二私钥生成的签名信息;接收所述区块链网络在对所述 数字证书中的所述CA签名信息进行共识验证,并将所述数字证书存储到区块 链之后返回的存储位置信息;记录存储位置信息;
物联网应用,用于获取待认证的终端设备的第一私钥和代理CA的第二公 钥;发送查询请求至第二公钥对应的代理CA;接收基于查询请求返回的数字 证书对应的存储位置信息;基于存储位置信息在区块链中获取数字证书;根据 第一私钥与数字证书中第一公钥的匹配情况,确定认证结果;将认证结果发送 至终端设备;
终端设备,与物联网应用建立连接,用于生成第一公钥、第一私钥及数字 证书;
区块链,用于存储终端设备的数字证书。
第四方面,本发明实施例提供一种电子设备,所述电子设备包括:处理器 和用于存储能够在处理器上运行的计算机程序的存储器;
处理器运行所述计算机程序时,执行前述一个或多个技术方案所述方法的 步骤。
第五方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读 存储介质存储有计算机可执行指令;计算机可执行指令被处理器执行后,能够 实现前述一个或多个技术方案所述方法。
本发明提供的数字证书处理方法,应用于代理数字证书签发机构CA中, 包括:获取终端设备的数字证书;所述数字证书至少携带所述终端设备的第一 公钥;基于所述终端设备的第一私钥与所述第一公钥,验证所述数字证书的有 效性;所述终端设备,至少用于通过所述第一私钥对所述数字证书生成设备签 名信息;将携带CA签名信息的所述数字证书在区块链网络中广播;所述CA 签名信息为所述代理CA通过所述代理CA的第二私钥生成的签名信息;接收 所述区块链网络在对所述数字证书中的所述CA签名信息进行共识验证,并将 所述数字证书存储到区块链之后返回的存储位置信息;记录所述存储位置信息。 如此,通过区块链存储终端设备的数字证书,将不同设备数字证书的存储统一 通过区块链执行,无需依赖CA进行数字证书的存储,进而在后续数字证书的 认证中,无需对CA的密钥进行认证,抑制在CA出现故障需要通过其他CA 认证时,由于CA的密钥不同导致不同CA之间无法进行相互认证的局限性, 从而提高数字证书认证的成功率。。
附图说明
图1为本发明实施例提供的一种数字证书处理方法的流程示意图;
图2为本发明实施例提供的一种数字证书处理方法的流程示意图;
图3为本发明实施例提供的一种数字证书处理方法的流程示意图;
图4为本发明实施例提供的一种数字证书处理方法的流程示意图;
图5为本发明实施例提供的一种数字证书处理方法的流程示意图;
图6为本发明实施例提供的一种数字证书处理方法的流程示意图;
图7为本发明实施例提供的一种数字证书处理方法的流程示意图;
图8为本发明实施例提供的一种数字证书处理系统的结构示意图;
图9为本发明实施例提供的一种数字证书处理方法的流程示意图;
图10为本发明实施例提供的一种数字证书处理方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发 明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普 通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本 发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集, 但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集, 并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对 象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情 况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除 了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术 领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发 明实施例的目的,不是旨在限制本发明。
如图1所示,本发明实施例提供一种数字证书处理方法,应用于代理数字 证书签发机构CA中,所述方法包括:
S110:获取终端设备的数字证书;所述数字证书至少携带所述终端设备的 第一公钥;
S120:基于所述终端设备的第一私钥与所述第一公钥,验证所述数字证书 的有效性;所述终端设备,至少用于通过所述第一私钥对所述数字证书生成设 备签名信息;
S130:将携带CA签名信息的所述数字证书在区块链网络中广播;所述CA 签名信息为所述代理CA通过所述代理CA的第二私钥生成的签名信息;
S140:接收所述区块链网络在对所述数字证书中的所述CA签名信息进行 共识验证,并将所述数字证书存储到区块链之后返回的存储位置信息;
S150:记录所述存储位置信息。
在本发明实施例中,代理CA为用于进行物联网中信息中转交互的数字证 书签发机构,例如,可用于对数字证书进行转发和加密。终端设备可以为物联 网终端设备,终端设备通过密钥对生成算法生成第一公钥、第一私钥以及数字 证书,例如,可以通过数字签名算法(Digital Signature Algorithm,DSA)、国 际数据加密算法(International DataEncryption Algorithm,IDEA)等实现。第 一公钥与第一私钥为成对存在且可以互相匹配验证的密钥对。数字证书中记录 有终端设备的第一公钥,且在生成数字证书时,终端设备可以通过第一私钥在 数字证书上进行签名加密,用于验证数字证书的有效性。
终端设备在生成数字证书时,通过第一私钥在数字证书上签名。代理CA 在接收到数字证书后,通过终端设备的第一公钥验证数字证书上签名的有效性, 根据第一公钥与用于签名的第一私钥是否匹配,确定数字证书的有效性。
如此,在代理CA接收到数字证书后,可以基于数字证书对应终端设备的 密钥进行第一步的有效性验证,抑制数字证书上用于签名的第一私钥与第一公 钥不匹配的失效证书被发送至区块链存储。通过代理CA进行的有效性验证, 与区块链网络基于代理CA的密钥进行的共识验证相结合,通过两个层面的密 钥验证确定所需存储数字证书是否有效,共同实现数字证书的安全有效存储, 保证区块链中存储的数字证书可用率,从而提高设备身份信息存储的可靠性。
区块链中包含多个区块,用于对数字证书进行存储。区块链网络为对区块 链执行各种操作的网络,区块链网络中包含多个节点,每个节点均可以接收数 字证书并进行验证,基于多个节点的验证确定共识验证结果,并指示区块链对 通过共识验证的数字证书进行存储。
存储位置信息用于表征数字证书在区块链中存储的位置,例如,可以为区 块链中用于存储数字证书的区块的区块号,也可以为记录数字证书与区块号的 索引信息、或者记录第一公钥与区块号的索引信息、或者终端设备标识与区块 号的索引信息等。
在一个实施例中,代理CA的密钥为第二公钥和第二私钥。终端设备将第 一公钥记录在数字证书中发送至代理CA,代理CA通过第二私钥对数字证书进 行签名,并将数字证书向区块链网络中的所有节点进行广播。区块链网络中的 所有节点分别获取代理CA的第二公钥,并基于第二公钥对数字证书上签名的 第二私钥进行验证。若第二公钥与第二私钥匹配,则验证通过。若区块链网络 所有节点中有超过50%的节点验证通过,则表明数字证书上的代理CA签名通 过了区块链网络的共识验证,区块链网络将数字证书存储在区块链中。并将数 字证书存储位置信息发送给代理CA进行记录。
在一个实施例中,区块链网络对数字证书的共识验证通过后,将数字证书 存储在当前区块链的最新的一个区块中,例如,根据区块链自身的区块生成规 则,将数字证书存储于当前区块链最新生成的区块中。存储后将区块号发送至 代理CA,代理CA记录数字证书存储的区块号以及数字证书对应的第一公钥。
在另一个实施例中,代理CA接收并记录数字证书存储的区块号以及第一 公钥后,生成注册结果返回至终端设备。注册结果用于表征身份信息存储是否 成功,例如,若区块链网络共识验证通过,则注册结果可以包含注册成功的信 息,以及数字证书存储的区块号;若区块链网络共识验证不通过,则注册结果 可以包含注册失败的信息,并标记所述终端设备为非法设备。
在另一个实施例中,数字证书存储在区块链之后,若需要撤销数字证书在 区块链中的存储,则通过代理CA向区块链网络发出撤销指令,取出存储位置 信息对应的区块中的数字证书。将第一公钥和第一私钥结合生成一个新的数字 证书,用于替换原数字证书存储在当前最新生成的区块中,并将原数字证书的 存储状态修改为无效状态。
如此,通过区块链存储数字证书,CA不再用于数字证书的存储和身份认 证,使终端设备的身份信息可以在区块链中得到统一化的存储和认证。数字证 书存储在区块链中,使后续的证书认证可以基于已存储的数字证书与私钥进行 匹配,认证数字证书有效性。无需认证CA的密钥,抑制在CA出现故障需通 过其他CA认证时,由于密钥不同导致不同的CA之间不能互相认证的局限性 问题。而且,经过区块链网络中多节点的共识验证,降低CA或个别节点故障 对用户身份认证的影响,可以提高数字证书存储的可靠性。而且基于共识验证存储的数字证书,攻击者需要对区块链网络中超过50%的节点进行修改,才可 以完全篡改区块中存储的数字证书,进一步提高了数字证书存储的安全性。
在一些实施例中,如图2所示,所述S130,包括:
S131:若所述数字证书验证有效,则将携带CA签名信息的所述数字证书 在区块链网络中广播。
在本发明实施例中,代理CA通过第一公钥验证与数字证书上设备签名信 息对应的第一私钥是否匹配,若匹配,则数字证书验证有效,可以在区块链中 进行存储,将数字证书向区块链网络中的多个节点广播;若不匹配,则数字证 书验证无效,无需将失效证书进行存储。
在一个实施例中,代理CA在验证数字证书有效性后,可以向终端设备返 回用于表征有效性验证结果的消息,例如,可以返回包含数字证书有效或者无 效的验证结果信息。如此,一旦出现数字证书存储出现错误,导致设备身份信 息注册失败,可以基于代理CA返回的有效性验证结果以及区块链网络的共识 验证结果,准确判定出现错误的环节,提高差错定位效率。
在一些实施例中,本公开实施例提供一种数字证书处理方法:
S160:接收查询请求;
S170:返回待查询的数字证书在区块链中的存储位置信息。该存储位置信 息,用于供发送所述查询请求的查询端到区块链网络查询所述数字证书。
此处的步骤S160至步骤S170可单独作为一个数字证书处理方法执行,也 可以与前述实施例提供的数字证书处理方法组合。即本公开实施例提供的数字 证书处理方法在应用阶段的处理方式,对应的将数字证书存储到区块链网络记 录的区块链上的方式,可以采用S110至步骤S150所示的方式,也可以采用其 他方式。
在本发明实施例中,若当前存在获取终端设备数字证书的需求,例如需要 对终端设备的身份进行验证时,代理CA可以接收对数字证书存储位置的查询 请求。例如:终端设备的数字证书存储在区块链中,完成身份信息的注册之后, 可以与物联网应用建立连接。若物联网应用需要与终端设备连接执行相应功能 操作,需要查询终端设备对应的数字证书,并进行身份认证。
代理CA接收到的查询请求,可以来自于物联网应用,也可以来自需要连 接物联网应用的终端设备、管理平台等其它对象。
代理CA接收到查询请求后,将存储位置信息返回至发送查询请求的对象。 发送查询请求的对象可以根据存储位置信息,向区块链中对应的存储位置获取 所需认证的数字证书,并进行后续数字证书的有效性认证。
在一个实施例中,如图3所示,代理CA接收由物联网应用发送的查询请 求,查询请求为请求查询一个或多个终端设备身份信息的请求消息。例如,查 询请求可以包含所要查询的终端设备的第一公钥或者终端设备的标识,代理CA 基于查询请求中的第一公钥或终端设备标识,在已记录的存储位置信息中查找 对应的区块号或者索引信息。
在一个实施例中,若存储位置信息为区块号,代理CA可以返回与查询请 求需要查询的终端设备对应的区块号。若存储位置信息为索引信息,代理CA 可以在索引信息中提取待查询的区块号并返回,也可以直接返回索引信息。
在另一个实施例中,物联网应用接收到代理CA返回的区块号,可以向区 块链查询区块号对应的区块,并在区块中获取所需认证的数字证书。
如此,在需要对终端设备的身份进行认证时,可通过向代理CA查询记录 的终端设备数字证书的存储位置信息,进而基于从对应的存储位置中获取终端 设备的数字证书进行身份认证。由于CA不再用于存储和认证数字证书,对终 端设备进行数字证书认证时可以不再受不同CA间不能互相认证的影响,大大 提高物联网的融合性,以及物联网应用和终端设备连接的成功率。
如图4所示,本发明实施例提供一种数字证书处理方法,应用于物联网应 用中,所述方法包括:
S210:获取待认证的终端设备的第一私钥和代理CA的第二公钥;
S220:发送查询请求至所述第二公钥对应的所述代理CA;
S230:接收基于所述查询请求返回的数字证书对应的存储位置信息;
S240:基于所述存储位置信息在区块链中获取所述数字证书;
S250:根据所述第一私钥与所述数字证书中第一公钥的匹配情况,确定认 证结果;
S260:将所述认证结果发送至所述终端设备。
在本发明实施例中,物联网应用为物联网中用于向终端设备发送控制指令, 控制终端设备执行不同操作实现不同功能的应用。物联网应用需要与终端设备 连接进行物联网功能操作时,例如接收到终端设备的连接请求等,则向终端设 备获取终端设备第一私钥和代理CA的第二公钥。或者需要物联网应用定期对 物联网中的终端设备进行身份认证,例如每隔预设时间主动向终端设备获取第 一私钥和第二公钥。
物联网应用基于第一私钥与第一公钥的匹配结果确定数字证书的有效性后, 即可得到表征终端设备合法性的认证结果。例如,若第一私钥与第一公钥匹配 成功,则认证结果可以为“终端设备为合法设备”的认证消息;若第一私钥与 第一公钥匹配失败,则认证结果可以为“终端设备为非法设备”的认证消息。
在一个实施例中,物联网应用将认证结果发送给终端设备,并在应用端记 录该终端设备与认证结果的对应关系。例如,可以为终端信息标识或者第一公 钥等信息与认证结果的映射关系等。如此,可以在进行一次身份认证之后即可 确定终端设备是否为合法设备,无需在该设备下一次请求连接物联网应用时, 再次进行身份认证,减少不必要的工作资源占用。
在一个实施例中,物联网终端可以向一个待认证的终端设备获取第一私钥 和第二公钥,并向代理CA获取数字证书的存储位置信息,基于存储位置信息 进行数字证书的认证。也可以向多个待认证的终端设备获取每个终端设备对应 的第一私钥和第二公钥,并批量获取对应的多个数字证书进行认证。
在一个实施例中,物联网应用接收到终端设备发送的连接请求,向终端设 备获取第一私钥和第二公钥,其中所述第二公钥可以由代理CA在数字证书存 储完成后将存储位置信息与第二公钥共同返回至终端设备。物联网应用基于代 理CA的第二公钥相对应的代理CA查询数字证书的存储位置信息,接收代理CA返回的存储数字证书的区块号,或者记录数字证书与区块号的索引信息、 或者记录第一公钥与区块号的索引信息、或者终端设备标识与区块号的索引信 息等。
在一个实施例中,物联网应用基于存储位置信息在区块链中查找,当代理 CA返回的存储位置信息为区块号时,物联网应用可以在区块链中直接查询对 应区块,获取其中存储的数字证书,也可以将区块号发送至区块链网络,由区 块链网络执行数字证书的查找和获取,并返回至物联网应用。
物联网应用获取数字证书后,基于数字证书中携带的第一公钥,对终端设 备的第一私钥进行身份认证,并确定认证结果。
如此,物联网应用在需要对终端设备的身份信息进行认证的时候,通过代 理CA获取对应的数字证书存储位置信息,可以减轻区块链网络的工作压力。 在区块链中获取数字证书进行认证,无需CA进行数字证书的身份认证,抑制 不同CA间因根证书不同导致交叉认证存在的局限性,提高终端设备身份认证 的效率和成功率。
在一些实施例中,如图5所示,所述S210,包括:
S211:接收待认证的终端设备的认证请求;
S212:向所述终端设备发送应答消息;
S213:接收所述终端设备返回的携带第一私钥的所述应答消息和代理CA 的第二公钥。
在本发明实施例中,物联网应用在接收到终端设备的认证请求后,可以基 于认证请求生成应答消息,例如应答消息可以为一个随机数,发送给终端设备 由终端设备通过第一私钥对随机数进行签名。应答消息还可以包括一条用于指 示终端设备进行签名的指令。
在一个实施例中,终端设备在接收到应答消息后,可以通过第一私钥对应 答消息中的随机数进行签名,将签名后的随机数和代理CA的第二公钥共同返 回物联网应用,也可以将携带第一私钥和代理CA的第二公钥的应答消息返回 给物联网应用。这里,代理CA为在存储数字证书时对数字证书进行有效性验 证以及记录存储位置信息的对应的代理CA。
如此,基于应答消息的交互,通过第一私钥的签名等方式,可以以更安全 的方式获取终端设备的第一私钥,降低数据泄露的风险。
在一些实施例中,如图6所示,所述S220,包括:
S221:根据所述第二公钥,在物联网的全部代理CA中确定与所述第二公 钥对应的代理CA;
S222:发送查询请求至所述第二公钥对应的所述代理CA。
在本发明实施例中,物联网中存在多个代理CA,物联网应用基于从终端 设备获取的代理CA的第二公钥,在物联网的全部代理CA中确定与第二公钥 对应的代理CA,即与待认证的终端设备对应的代理CA。
在一个实施例中,物联网应用可以根据所述第二公钥,依次向物联网中所 有代理CA发起验证请求,并确定与所述第二公钥匹配成功的代理CA。也可以 基于物联网中记录的第二公钥与代理CA的映射关系,例如索引表等,通过第 二公钥进行查询,并确定对应的代理CA。如此,当物联网中存在较多代理CA 时,基于第二公钥进行查找可以更快地确定与待认证终端设备对应的代理CA, 提高身份信息认证效率。
在一些实施例中,如图7所示,所述S250,包括:
S251:若所述第一私钥与所述数字证书中第一公钥匹配成功,则认证结果 为有效;
S252:若所述第一私钥与所述数字证书中第一公钥匹配失败,则认证结果 为无效。
在本发明实施例中,物联网应用在区块链中获取到数字证书后,基于从终 端设备获取的第一私钥和数字证书中的第一公钥是否匹配,即可确定数字证书 是否有效。
在一个实施例中,若物联网应用向终端设备发送应答消息,并接收终端设 备在应答消息中通过第一私钥进行签名的随机数,则在数字证书中获取携带的 第一公钥,并通过第一公钥对随机数签名的第一私钥进行验证。若验证通过则 表明第一公钥与第一私钥匹配成功,即数字证书认证有效,终端设备认证为合 法设备。
在另一个实施例中,若物联网应用向终端设备发送应答消息,并接收终端 设备返回的携带第一私钥和第二公钥的应答消息,则将第一私钥与数字证书中 的第一公钥进行匹配性验证。若匹配成功,则数字证书认证有效,终端设备认 证为合法设备。
如此,基于认证时获取的第一私钥与终端设备注册时存储的数字证书中的 第一公钥,确定是否匹配,可以准确判断终端设备是否有效,进而确定在物联 网中当前终端设备是否为合法设备,提高物联网设备的安全性。
如图8所示,本发明实施例提供一种数字证书处理系统,包括:代理CA 10、 物联网应用20、终端设备30及区块链40;
所述代理CA 10,用于获取所述终端设备的数字证书;所述数字证书至少 携带所述终端设备的第一公钥;将所述数字证书在区块链网络中广播;接收所 述区块链网络在对所述数字证书进行共识验证并存储到区块链之后返回的存储 位置信息;记录所述存储位置信息;
所述物联网应用20,用于获取待认证的终端设备的第一私钥和代理CA的 第二公钥;发送查询请求至所述第二公钥对应的所述代理CA;接收基于所述 查询请求返回的数字证书对应的存储位置信息;基于所述存储位置信息在区块 链中获取所述数字证书;根据所述第一私钥与所述数字证书中第一公钥的匹配 情况,确定认证结果。
所述终端设备30,与所述物联网应用建立连接,用于生成所述第一公钥、 所述第一私钥及所述数字证书;
所述区块链40,用于存储所述终端设备的数字证书。
以下结合上述任一实施例提供一个具体示例:
本发明实施例构建基于区块链的身份认证系统,服务于物联网终端设备认 证。设备生产商可直接将设备的身份信息写入区块链,不再依赖CA,提高效 率,通过区块链的多点数据同步防篡改特性提高设备身份的安全性。
1、物联网设备出厂时,产生公私钥和自签名数字证书,由生产商写入设备 并向区块链身份认证系统提交发布申请。
2、区块链身份认证系统对证书检查后,将证书记录到区块链中。边缘计算 物联网应用同样将其证书登记到区块链中。
3、物联网终端和边缘计算应用之间需要建立连接时,物联网终端向边缘计 算应用发送证书标识,边缘计算应用向区块链身份认证系统查询证书,身份认 证系统返回证书及状态,边缘计算应用对设备进行认证,物联网设备以同样方 式对边缘计算应用进行认证。
4、之后两者继续进行传输层安全(Transport Layer Security,TLS)握手流 程,建立安全的数据传送通道。
本发明实施例包括节点准入协议和身份认证协议
(1)节点准入协议。
节点准入协议的过程如图9所示:
图9中CA为本发明实施例中所述代理CA。
1、物联网设备厂商通过密钥对生成算法,生成一个数字证书,发送给任意 一个代理CA;
2、代理CA验证数字证书有效性;
3、验证通过,则代理CA以私钥签名该数字证书,并广播到区块链;
4、区块链所有节点验证CA签名,并决定同意该数字证书申请;
5、如果超过半数同意,则记账,将数字证书写入区块,并将区块号公布;
6、代理CA会记录区块号、设备公钥;
7、代理CA回复注册结果给物联网设备,并告知其数字证书存储的区块号。
(2)身份认证协议
边缘计算应用(记为:用户B)对物联网终端(记为:用户A)的身份认 证过程如图10:
图10中CA为本发明实施例中所述代理CA。
1物联网终端向边缘计算应用发送请求
2边缘计算应用返回一个随机数挑战;
3物联网终端以私钥签名该随机数,将签名和授权其证书的代理CA的公 钥返回给边缘计算应用;
4边缘计算应用根据代理CA公钥找到代理CA;
5代理CA提供证书存储的区块号;
6边缘计算应用根据区块号,通过索引找到区块,取出数字证书;
7边缘计算应用验证数字证书和随机数签名,如果采用物联网终端的数字 证书记录的公钥验证随机数签名通过,那么表明该数字证书有效;否则,无效;
8边缘计算应用返回身份认证结果给物联网终端。
在身份认证的过程中,代理CA并不承担验证数字证书的任务,从而减轻 了代理CA的压力。如果想要使数字证书撤销,因为数字证书存储在区块里, 只需要取出原来数字证书的公私钥,重新生成一个证书,并修改原证书的状态 为无效状态revoke即可;同时,通知CA,修改对应的区块号。
本发明实施例还提供一种电子设备,所述电子设备包括:处理器和用于存 储能够在处理器上运行的计算机程序的存储器,处理器运行所述计算机程序时, 执行前述一个或多个技术方案所述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质 存储有计算机可执行指令,计算机可执行指令被处理器执行后,能够实现前述 一个或多个技术方案所述方法。
本实施例提供的计算机存储介质可为非瞬间存储介质。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法, 可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如, 所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分 方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特 征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、 或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通 信连接,可以是电性的、机械的或其它行驶的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作 为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方, 也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部 单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理模块 中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集 成在一个单元中;上述集成的单元既可以采用硬件的行驶实现,也可以采用 硬件加软件功能单元的行驶实现。
在一些情况下,上述任一两个技术特征不冲突的情况下,可以组合成新 的方法技术方案。
在一些情况下,上述任一两个技术特征不冲突的情况下,可以组合成新 的设备技术方案。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤 可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读 取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述 的存储介质包括:移动存储设备、只读存储器(Read-Only Memory,ROM)、 随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种 可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限 于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易 想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护 范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种数字证书存储方法,其特征在于,应用于代理数字证书签发机构CA中,所述方法包括:
获取终端设备的数字证书;所述数字证书至少携带所述终端设备的第一公钥;
基于所述终端设备的第一私钥与所述第一公钥,验证所述数字证书的有效性;所述终端设备,至少用于通过所述第一私钥对所述数字证书生成设备签名信息;
将携带CA签名信息的所述数字证书在区块链网络中广播;所述CA签名信息为代理CA通过所述代理CA的第二私钥生成的签名信息;
接收所述区块链网络在对所述数字证书中的所述CA签名信息进行共识验证,并将所述数字证书存储到区块链之后返回的存储位置信息;
记录所述存储位置信息。
2.根据权利要求1所述的方法,其特征在于,所述将携带CA签名信息的所述数字证书在区块链网络中广播,包括:
若所述数字证书验证有效,则将携带CA签名信息的所述数字证书在区块链网络中广播。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收查询请求;
返回待查询的所述数字证书对应的存储位置信息。
4.一种基于权利要求1至3任一项所述数字证书存储方法的数字证书认证方法,其特征在于,应用于物联网应用中,所述方法包括:
获取待认证的终端设备的第一私钥和代理CA的第二公钥;
发送查询请求至所述第二公钥对应的所述代理CA;
接收基于所述查询请求返回的数字证书对应的存储位置信息;
基于所述存储位置信息在区块链中获取所述数字证书;
根据所述第一私钥与所述数字证书中第一公钥的匹配情况,确定认证结果;
将所述认证结果发送至所述终端设备。
5.根据权利要求4所述的方法,其特征在于,所述获取待认证的终端设备的第一私钥和代理CA的第二公钥,包括:
接收待认证的终端设备的认证请求;
向所述终端设备发送应答消息;
接收所述终端设备返回的携带第一私钥的所述应答消息和代理CA的第二公钥。
6.根据权利要求4所述的方法,其特征在于,所述发送查询请求至所述第二公钥对应的所述代理CA,包括:
根据所述第二公钥,在物联网的全部代理CA中确定与所述第二公钥对应的代理CA;
发送查询请求至所述第二公钥对应的所述代理CA。
7.根据权利要求4所述的方法,其特征在于,所述根据所述第一私钥与所述数字证书中第一公钥的匹配情况,确定认证结果,包括:
若所述第一私钥与所述数字证书中第一公钥匹配成功,则认证结果为有效;
若所述第一私钥与所述数字证书中第一公钥匹配失败,则认证结果为无效。
8.一种数字证书处理系统,其特征在于,所述系统包括:代理CA、物联网应用、终端设备及区块链;
所述代理CA,用于获取所述终端设备的数字证书;所述数字证书至少携带所述终端设备的第一公钥;基于所述终端设备的第一私钥与所述第一公钥,验证所述数字证书的有效性;所述终端设备,至少用于通过所述第一私钥对所述数字证书生成设备签名信息;将携带CA签名信息的所述数字证书在区块链网络中广播;所述CA签名信息为所述代理CA通过所述代理CA的第二私钥生成的签名信息;接收所述区块链网络在对所述数字证书中的所述CA签名信息进行共识验证,并将所述数字证书存储到区块链之后返回的存储位置信息;记录所述存储位置信息;
所述物联网应用,用于获取待认证的终端设备的第一私钥和代理CA的第二公钥;发送查询请求至所述第二公钥对应的所述代理CA;接收基于所述查询请求返回的数字证书对应的存储位置信息;基于所述存储位置信息在区块链中获取所述数字证书;根据所述第一私钥与所述数字证书中第一公钥的匹配情况,确定认证结果;将所述认证结果发送至所述终端设备;
所述终端设备,与所述物联网应用建立连接,用于生成所述第一公钥、所述第一私钥及所述数字证书;
所述区块链,用于存储所述终端设备的数字证书。
9.一种电子设备,其特征在于,所述电子设备包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,
所述处理器运行所述计算机程序时,执行权利要求1至3任一项所述数字证书存储方法或者权利要求4至7任一项所述数字证书认证方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令;所述计算机可执行指令被处理器执行后,能够实现如权利要求1至3任一项所述数字证书存储方法或者权利要求4至7任一项所述数字证书认证方法。
CN202110220544.9A 2021-02-26 2021-02-26 数字证书处理方法及系统、电子设备及存储介质 Active CN112861106B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110220544.9A CN112861106B (zh) 2021-02-26 2021-02-26 数字证书处理方法及系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110220544.9A CN112861106B (zh) 2021-02-26 2021-02-26 数字证书处理方法及系统、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112861106A CN112861106A (zh) 2021-05-28
CN112861106B true CN112861106B (zh) 2023-01-10

Family

ID=75990381

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110220544.9A Active CN112861106B (zh) 2021-02-26 2021-02-26 数字证书处理方法及系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112861106B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114244527B (zh) * 2021-12-14 2023-10-31 中国电力科学研究院有限公司 基于区块链的电力物联网设备身份认证方法及系统
WO2023179687A1 (zh) * 2022-03-25 2023-09-28 深圳市莱帝亚软件有限公司 数字证书认证方法及对应终端和系统、存储设备
CN114785520A (zh) * 2022-04-10 2022-07-22 杭州复杂美科技有限公司 一种去中心化ca认证系统、方法、设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10547457B1 (en) * 2016-10-21 2020-01-28 Wells Fargo Bank N.A. Systems and methods for notary agent for public key infrastructure names
CN107508680B (zh) * 2017-07-26 2021-02-05 创新先进技术有限公司 数字证书管理方法、装置及电子设备
CN109412792A (zh) * 2017-08-16 2019-03-01 中国移动通信有限公司研究院 数字证书的生成、认证方法、通信设备及存储介质
CN108494557B (zh) * 2018-02-07 2020-03-20 平安科技(深圳)有限公司 社保数字证书管理方法、计算机可读存储介质及终端设备
CN109450843B (zh) * 2018-09-14 2021-06-15 众安信息技术服务有限公司 一种基于区块链的ssl证书管理方法及系统
CN111404859A (zh) * 2019-01-02 2020-07-10 中国移动通信有限公司研究院 一种客户端认证方法、装置和计算机可读存储介质
CN109617698B (zh) * 2019-01-09 2021-08-03 腾讯科技(深圳)有限公司 发放数字证书的方法、数字证书颁发中心和介质
CN111914024B (zh) * 2020-07-30 2023-06-02 中国联合网络通信集团有限公司 证书存储和查询区块链构建方法、装置、系统、查询方法
CN112311772B (zh) * 2020-10-12 2022-06-14 华中师范大学 基于Hyperledger的跨域证书管理系统及方法

Also Published As

Publication number Publication date
CN112861106A (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
CN112861106B (zh) 数字证书处理方法及系统、电子设备及存储介质
EP3726804B1 (en) Device authentication method, service access control method, device, and non-transitory computer-readable recording medium
US11128477B2 (en) Electronic certification system
Palaniswamy et al. An efficient authentication scheme for intra-vehicular controller area network
KR101483818B1 (ko) 신뢰성 있는 제 3자를 기반으로 한 양방향 엔티티 인증 방법
WO2018177143A1 (zh) 一种身份认证的方法、系统及服务器和终端
US11546173B2 (en) Methods, application server, IoT device and media for implementing IoT services
CN112583596B (zh) 一种基于区块链技术的完全跨域身份认证方法
CN112887282B (zh) 一种身份认证方法、装置、系统及电子设备
EP3961442B1 (en) Digital certificate invalidation and verification method and device
KR20120104193A (ko) 온라인 제 3 신뢰 기관을 도입함으로써 엔티티 공개키 획득, 인증서 검증 및 인증을 수행하는 방법 및 시스템
CN111865993B (zh) 身份认证管理方法、分布式系统及可读存储介质
CN113285932B (zh) 边缘服务的获取方法和服务器、边缘设备
CN108632037B (zh) 公钥基础设施的公钥处理方法及装置
CN112383395A (zh) 密钥协商方法及装置
CN114553480B (zh) 跨域单点登录方法、装置、电子设备及可读存储介质
CN113824566B (zh) 证书认证方法、码号下载方法、装置、服务器及存储介质
JP2024506915A (ja) ゼロ信頼認証
CN112968779B (zh) 一种安全认证与授权控制方法、控制系统、程序存储介质
CN114154125A (zh) 云计算环境下区块链无证书的身份认证方案
CN112182009B (zh) 区块链的数据更新方法及装置、可读存储介质
CN112235290A (zh) 基于区块链的物联网设备管理方法及第一物联网设备
CN112261103A (zh) 一种节点接入方法及相关设备
CN111737766A (zh) 一种在区块链中判断数字证书签名数据合法性的方法
CN116074061A (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