CN113672942B - 一种基于区块链的pki证书跨域认证方法 - Google Patents
一种基于区块链的pki证书跨域认证方法 Download PDFInfo
- Publication number
- CN113672942B CN113672942B CN202110757828.1A CN202110757828A CN113672942B CN 113672942 B CN113672942 B CN 113672942B CN 202110757828 A CN202110757828 A CN 202110757828A CN 113672942 B CN113672942 B CN 113672942B
- Authority
- CN
- China
- Prior art keywords
- certificate
- chain
- cross
- domain
- signature
- 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
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000012795 verification Methods 0.000 claims abstract description 20
- 238000010276 construction Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于区块链的PKI证书跨域认证方法,当用户通过客户端发起跨域访问请求时,将向认证服务器出示证书,认证服务器根据所示证书的属性字段,向区块链发起请求验证证书链中每张证书是否被撤销,智能合约在BCRL(区块链证书撤销列表)中搜索每张证书是否有效,并获取整个证书链,从依赖方的信任根证书开始逐级验证证书链是否有效,如每张证书未被撤销且证书链验证通过则签发用户访问token。通过本发明方法解决了交叉认证中复杂的拓扑结构,基于区块链多节点不可篡改的信任锚,可快速构建证书链信任路径,提高PKI证书跨域认证的安全性。
Description
技术领域
本发明属于通信安全技术领域,尤其涉及一种基于区块链的PKI证书跨域认证方法。
背景技术
目前PKI(公钥基础设施)证书的跨域认证主要包括简单交叉认证、信任列表和桥CA(证书颁发机构)三种方式。
其中,简单交叉认证的风险较小,部署灵活但难以有效管理,在参与成员(信任系统)较多时易形成复杂网状结构,不适合大规模PKI/CA跨域建设。
信任列表需要可信第三方维护,国内政务外网建设中部分机构小范围采用该方式,但在统一信任服务层面,选取的第三方难以得到所有机构的认同,也未能普及。
桥CA(BCA)在信任关系上类似信任列表,需要选择各方信任的第三方(桥)比较困难,目前成功的桥CA只有美联邦桥CA,美联邦桥CA的成功是国家意志的体现,在各自为政的政务外网、商业领域难以应用。
发明内容
本发明的目的在于,为克服现有技术缺陷,提供了一种基于区块链的PKI证书跨域认证方法,通过本发明方法解决了交叉认证中复杂的拓扑结构,基于区块链多节点不可篡改的信任锚,可快速构建证书链信任路径,提高PKI证书跨域认证的安全性。
本发明目的通过下述技术方案来实现:
一种基于区块链的PKI证书跨域认证方法,所述PKI证书跨域认证方法至少包括:S1:用户向认证服务器提起跨域申请,并出示证书;S2:域内的认证服务器AS1验证用户跨域请求,对证书扩展字段进行跨域认证标记,构造证书链{Cert}chain,对消息签名后转发AS2域外认证服务器;S3:域外认证服务器AS2验证来自AS1的消息签名,验证用户证书的明文字段;S4:AS2验证签名和明文字段通过后,向区块链任意节点发送查询请求,查询请求内容不限于下载证书连接site、证书号和证书链;S5:智能合约根据site下载上级证书链和验证证书DN,从而完成向区块链CRL查询每张证书号是否撤销;S6:区块链节点完成查询和验证后,返回域外认证服务器AS2带签名的结果信息;S7:域外认证服务器AS2得到区块链节点返回结果,验证签名并得到证书链状态有效后,执行以下操作:根据名字、策略约束、证书密钥用法KU和扩展密钥用法EKU按照构建好的证书链逐个验证证书签名;S8:当步骤S7中验证都通过后,AS2返回AS1用户认证成功结果和时间戳信息,签发访问token;否则,跨域认证失败。
根据一个优选的实施方式,所述步骤S1中出示的证书中附有上级证书链的下载链接。
根据一个优选的实施方式,所述步骤S3中的明文字段不限于证书的有效期和序列号信息。
根据一个优选的实施方式,所述步骤S6中的结果信息至少包括每张证书DN是否被撤销,证书链是否完整。
根据一个优选的实施方式,所述步骤S7中按照构建好的证书链逐个验证证书签名包括:1)拆封证书,验证发行方公钥是否能解开用户实体证书的签名内容。
根据一个优选的实施方式,所述步骤S7中按照构建好的证书链逐个验证证书签名还包括:2)证书链验证,证书链的认证拆封过程,从验证方可识别的根证书开始使用每个证书的公钥逐级验证下级证书的签名。
前述本发明主方案及其各进一步选择方案可以自由组合以形成多个方案,均为本发明可采用并要求保护的方案;且本发明,(各非冲突选择)选择之间以及和其他选择之间也可以自由组合。本领域技术人员在了解本发明方案后根据现有技术和公知常识可知有多种组合均为本发明所要保护的技术方案,在此不做穷举。
本发明的有益效果:本发明方法基于区块链共识,公开,不可篡改的特点,对各独立PKI证书系统进行信任传递和增强,BCRL(基于区块链的证书撤销列表)与原有中心式周期更新的撤销列表相比,更新效率大幅提高,从小时量级降至分钟量级(区块链出块速度),有效提高证书验证的实时性和安全性。同时,基于区块链共识的PKI证书跨域认证方法,解决了交叉认证中复杂的拓扑结构,基于区块链多节点不可篡改的信任锚,可快速构建证书链信任路径,提高PKI证书跨域认证的安全性,具有良好的可扩展性,降低统一信任服务的建设成本。
附图说明
图1是本发明PKI证书跨域认证方法的原理示意图;
图2是一种基于区块链的证书跨域认证结构示意图;
图3是基于区块链的证书全生命周期示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,为使本发明实施例的目的、技术方案和优点更加清楚,下面对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
因此,以下对本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
参考图1所示,本发明公开了一种基于区块链的PKI证书跨域认证方法。图2示出了基于区块链的证书全生命周期管理。证书全生命周期主要包括:证书申请、验证签发、状态更新、撤销等环节,本实施例以常用的X.509证书为例说明,X.509证书的主要条目如附表一所示。
附表一X.509证书主要内容
本发明方法将传统PKI中跨域信任传递部分转移至区块链,通过区块链提供上级CA证书链下载和用户证书撤销编号信息,摒弃了CRL列表过大问题,提高了证书更新实时性,借助区块链共识不可篡改的特点为使统一认证联盟具有良好的可扩展性,各PKI系统维护各自的信任列表,保证各域原有的认证安全性。
具体地,当用户通过客户端发起跨域访问请求时,将向认证服务器出示证书,认证服务器根据所示证书的属性字段,向区块链发起请求验证证书链中每张证书是否被撤销,智能合约在BCRL(区块链证书撤销列表)中搜索每张证书是否有效,并获取整个证书链,从依赖方的信任根证书开始逐级验证证书链是否有效,如每张证书未被撤销且证书链验证通过则签发用户访问token。
证书用户跨域认证流程如附图1所示,流程中符号含义如附表二所示。
步骤S2:AS1AS2: Nonce||req||X.509federate||SIGuser(*)||{Cert}chain||SIGAS1(*)。域内认证服务器AS1验证用户跨域请求,对X.509扩展字段进行跨域认证标记,构造证书链{Cert}chain,对消息签名后转发AS2域外认证服务器。
步骤S3:域外认证服务器AS2验证来自AS1的消息签名,验证用户证书的明文字段,如:有效期,序列号等。
步骤S5:智能合约根据Site下载上级证书链和验证证书DN(即向区块链CRL查询每张证书号是否撤销)。
步骤S6:区块链节点AS2: {0,1}chainDN||Certchain||SIG (*)。区块链节点完成查询和验证后,返回域外认证服务器AS2带签名的结果信息,包括每张证书DN是否被撤销,证书链完整结果等。
步骤S7:verify signature, chainDN and Certchain。域外认证服务器AS2得到区块链节点返回结果,验证签名并得到证书链状态有效后,将执行以下操作:根据名字、策略约束,证书密钥用法KU和扩展密钥用法EKU等按构建好的证书链逐个验证证书签名。
包括(1)拆封证书。验证发行方公钥是否能解开用户实体证书的签名内容。(2)证书链验证,证书链的认证拆封过程,从验证方可识别的根证书(自签名证书)开始使用每个证书的公钥逐级验证下级证书的签名。
步骤S8:AS2AS1user: Authresult||timestamp||SIGAS2(*)。以上验证如都通过, AS2返回AS1和用户认证成功结果,时间戳等信息,签发访问token。否则跨域认证失败。
附表二证书跨域协议符号标识
本发明方法基于区块链共识,公开,不可篡改的特点,对各独立PKI证书系统进行信任传递和增强,BCRL(基于区块链的证书撤销列表)与原有中心式周期更新的撤销列表相比,更新效率大幅提高,从小时量级降至分钟量级(区块链出块速度),有效提高证书验证的实时性和安全性。同时,基于区块链共识的PKI证书跨域认证方法,解决了交叉认证中复杂的拓扑结构,基于区块链多节点不可篡改的信任锚,可快速构建证书链信任路径,提高PKI证书跨域认证的安全性,具有良好的可扩展性,降低统一信任服务的建设成本。
优选地,本发明还公开了一种证书跨域认证结构。基于区块链的证书跨域认证结构如附图3所示,用参与方之间的共识取代了原有的可信第三方,所有加入联盟的PKI系统的锚CA机构都布置了区块链节点,将机构证书记链,二级CA/RA(附图一中CA4、CA5)可根据需求选择将次级机构证书记链,比如当二级CA具有较多跨域认证需求时,布置账本节点将有效分散账本查询压力,提高证书验证效率。基于共识的区块链账本中又包含了每家PKI机构发布的各自的“信任列表”,即BCRL(基于区块链的证书撤销列表,Blockchain-basedCertificate Revoke List),列表中包含了所有联盟成员撤销的“证书号”,供各依赖方查询、下载、验证。
以附图3为例,当UserB向UserD出示证书时将附带证书及其上级逐级签发的证书链链接(前提CA1与CA2已经通过互信协商达成信任),证书链可通过任意区块链账本节点下载查询。由于BCRL发布具有实时性(分钟量级)且体积小,好于传统CRL的小时量级和列表空间过大问题。证书验证实时性将有效提高。
前述本发明基本例及其各进一步选择例可以自由组合以形成多个实施例,均为本发明可采用并要求保护的实施例。本发明方案中,各选择例,与其他任何基本例和选择例都可以进行任意组合。本领域技术人员可知有众多组合。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种基于区块链的PKI证书跨域认证方法,其特征在于,所述PKI证书跨域认证方法至少包括:
S1:用户向认证服务器提起跨域申请,并出示证书;
S2:域内的认证服务器AS1验证用户跨域请求,对证书扩展字段进行跨域认证标记,构造证书链{Cert}chain,对消息签名后转发AS2域外认证服务器;
S3:域外认证服务器AS2验证来自AS1的消息签名,验证用户证书的明文字段;
S4:AS2验证签名和明文字段通过后,向区块链任意节点发送查询请求,查询请求内容不限于下载证书连接site、证书号和证书链;
S5:智能合约根据site下载上级证书链和验证证书DN,从而完成向区块链CRL查询每张证书号是否撤销;
S6:区块链节点完成查询和验证后,返回域外认证服务器AS2带签名的结果信息;
S7:域外认证服务器AS2得到区块链节点返回结果,验证签名并得到证书链状态有效后,执行以下操作:根据名字、策略约束、证书密钥用法KU和扩展密钥用法EKU按照构建好的证书链逐个验证证书签名;
所述步骤S7中按照构建好的证书链逐个验证证书签名包括:
1)拆封证书,验证发行方公钥是否能解开用户实体证书的签名内容;
2)证书链验证,证书链的认证拆封过程,从验证方可识别的根证书开始使用每个证书的公钥逐级验证下级证书的签名;
S8:当步骤S7中验证都通过后,AS2返回AS1用户认证成功结果和时间戳信息,签发访问token;否则,跨域认证失败。
2.如权利要求1所述的PKI证书跨域认证方法,其特征在于,所述步骤S1中出示的证书中附有上级证书链的下载链接。
3.如权利要求1所述的PKI证书跨域认证方法,其特征在于,所述步骤S3中的明文字段不限于证书的有效期和序列号信息。
4.如权利要求1所述的PKI证书跨域认证方法,其特征在于,所述步骤S6中的结果信息至少包括每张证书DN是否被撤销,证书链是否完整。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110471470 | 2021-04-29 | ||
CN2021104714706 | 2021-04-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113672942A CN113672942A (zh) | 2021-11-19 |
CN113672942B true CN113672942B (zh) | 2023-05-09 |
Family
ID=78538562
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110757828.1A Active CN113672942B (zh) | 2021-04-29 | 2021-07-05 | 一种基于区块链的pki证书跨域认证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113672942B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205162B (zh) * | 2021-12-16 | 2024-07-26 | 北京国富安电子商务安全认证有限公司 | 一种基于区块链pki互信认证的方法和系统 |
CN114218558A (zh) * | 2021-12-21 | 2022-03-22 | 联想(北京)有限公司 | 安全多方计算中的跨域身份验证方法及服务器 |
CN114219487B (zh) * | 2021-12-22 | 2024-07-09 | 中国电子科技网络信息安全有限公司 | 一种联盟链分布式证书管理方法 |
CN114374700B (zh) * | 2022-01-10 | 2024-05-03 | 之江实验室 | 基于主从多链的支持广域协同的可信身份管理方法 |
CN115277066B (zh) * | 2022-06-13 | 2023-05-09 | 广州大学 | 一种适用于多条区块链的相互认证方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829326A (zh) * | 2018-11-20 | 2019-05-31 | 西安电子科技大学 | 基于区块链的跨域认证与公平审计去重云存储系统 |
US10547457B1 (en) * | 2016-10-21 | 2020-01-28 | Wells Fargo Bank N.A. | Systems and methods for notary agent for public key infrastructure names |
CN110958229A (zh) * | 2019-11-20 | 2020-04-03 | 南京理工大学 | 一种基于区块链的可信身份认证方法 |
CN111464535A (zh) * | 2020-03-31 | 2020-07-28 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的跨域信任传递方法 |
CN111555885A (zh) * | 2020-03-18 | 2020-08-18 | 西安电子科技大学 | 一种可信身份认证方法、系统、存储介质、云计算终端 |
CN111626737A (zh) * | 2020-05-29 | 2020-09-04 | 兰州理工大学 | 一种可添加身份属性的高效跨链认证方法 |
CN112073173A (zh) * | 2020-09-07 | 2020-12-11 | 中国人民解放军战略支援部队信息工程大学 | 一种面向区块链pki的非法签名者确定系统 |
CN112153608A (zh) * | 2020-09-24 | 2020-12-29 | 南通大学 | 一种基于侧链技术信任模型的车联网跨域认证方法 |
CN112187455A (zh) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | 一种基于可编辑区块链的分布式公钥基础设施构建方法 |
-
2021
- 2021-07-05 CN CN202110757828.1A patent/CN113672942B/zh active Active
Patent Citations (9)
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 |
CN109829326A (zh) * | 2018-11-20 | 2019-05-31 | 西安电子科技大学 | 基于区块链的跨域认证与公平审计去重云存储系统 |
CN110958229A (zh) * | 2019-11-20 | 2020-04-03 | 南京理工大学 | 一种基于区块链的可信身份认证方法 |
CN111555885A (zh) * | 2020-03-18 | 2020-08-18 | 西安电子科技大学 | 一种可信身份认证方法、系统、存储介质、云计算终端 |
CN111464535A (zh) * | 2020-03-31 | 2020-07-28 | 中国电子科技集团公司第三十研究所 | 一种基于区块链的跨域信任传递方法 |
CN111626737A (zh) * | 2020-05-29 | 2020-09-04 | 兰州理工大学 | 一种可添加身份属性的高效跨链认证方法 |
CN112073173A (zh) * | 2020-09-07 | 2020-12-11 | 中国人民解放军战略支援部队信息工程大学 | 一种面向区块链pki的非法签名者确定系统 |
CN112153608A (zh) * | 2020-09-24 | 2020-12-29 | 南通大学 | 一种基于侧链技术信任模型的车联网跨域认证方法 |
CN112187455A (zh) * | 2020-09-24 | 2021-01-05 | 西南交通大学 | 一种基于可编辑区块链的分布式公钥基础设施构建方法 |
Non-Patent Citations (6)
Title |
---|
BB-PKI: Blockchain-Based Public Key Infrastructure Certificate Management;Abba Garba等;2020 IEEE 22nd International Conference on High Performance Computing and Communications;824-829 * |
基于区块链技术的证书管理与跨域认证方案;马晓婷;中国优秀硕士学位论文全文数据库 信息科技辑(第2期);I136-559 * |
基于区块链技术的高效跨域认证方案;周致成;李立新;李作辉;;计算机应用(第02期);316-320+326 * |
基于改进PBFT算法的PKI跨域认证方案;钱思杰等;网络与信息安全学报;第6卷(第4期);37-44 * |
异构环境中基于区块链的跨域认证可信度研究;董贵山等;通信技术;第52卷(第6期);1450-1460 * |
网络空间身份管理研究综述;姜文博等;信息安全与通信保密(第9期);46-57 * |
Also Published As
Publication number | Publication date |
---|---|
CN113672942A (zh) | 2021-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113672942B (zh) | 一种基于区块链的pki证书跨域认证方法 | |
CN112153608B (zh) | 一种基于侧链技术信任模型的车联网跨域认证方法 | |
CN110138560B (zh) | 一种基于标识密码和联盟链的双代理跨域认证方法 | |
Singla et al. | Blockchain-based PKI solutions for IoT | |
CN113507458B (zh) | 一种基于区块链的跨域身份认证方法 | |
EP3764308A1 (en) | Blockchain-based system, and electronic apparatus and method in the system | |
CN110061851A (zh) | 一种去中心化的跨信任域认证方法及系统 | |
CN113824563B (zh) | 一种基于区块链证书的跨域身份认证方法 | |
CN112583596B (zh) | 一种基于区块链技术的完全跨域身份认证方法 | |
CN111262692B (zh) | 基于区块链的密钥分发系统和方法 | |
CN102647394B (zh) | 路由设备身份认证方法及装置 | |
WO2014035748A1 (en) | Method and device for dynamically updating and maintaining certificate path data across remote trust domains | |
CN111262860B (zh) | 跨链模式下的身份认证方法及装置 | |
CN112818368A (zh) | 一种基于区块链智能合约的数字证书认证方法 | |
JP5425314B2 (ja) | オンライン信頼できる第三者を導入したエンティティの公開鍵の取得、証明書の検証及び認証の方法及びシステム | |
KR20080001574A (ko) | 다중 도메인 홈네트워크 환경에서의 디바이스 인증 방법 및장치 | |
EP1668815B1 (en) | Delegated certificate authority | |
CN112396421A (zh) | 一种基于区块链通证的身份认证系统及方法 | |
CN113343213A (zh) | 一种分散自主网络中基于区块链的多ca跨域认证方法 | |
Ren et al. | Blockchain-based trust establishment mechanism in the internet of multimedia things | |
CN116684103A (zh) | 一种基于区块链的跨域身份认证方法 | |
CN114884698A (zh) | 基于联盟链的Kerberos与IBC安全域间跨域认证方法 | |
CN114219487A (zh) | 一种联盟链分布式证书管理方法 | |
Wang et al. | A novel blockchain identity authentication scheme implemented in fog computing | |
CN115021930B (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 |