首页 / 专利库 / 资料储存系统 / 分布式账本 / 基于分布式账本的身份验证方法

基于分布式账本的身份验证方法

阅读:552发布:2020-05-13

专利汇可以提供基于分布式账本的身份验证方法专利检索,专利查询,专利分析的服务。并且本 发明 公开一种基于 分布式账本 的身份验证方法,主要解决了 现有技术 存在数字证书的颁发操作仅集中于单一认证机构的问题。本发明的步骤为: 申请 用户身份子证书、生成用户身份子证书、判断生成用户身份子证书的认证机构数量、生成用户身份证书、写入 区 块 链 、写入分布式账本、判断用户身份证书是否存在、判断用户身份证书有效期是否有效、发送身份验证结果信息。本发明减少了公钥 基础 设施对单一认证机构的强依赖性,提高了认证机构颁发用户身份证书的效率,增强用户身份证书的可信度,保护了用户的身份信息隐私。,下面是基于分布式账本的身份验证方法专利的具体信息内容。

1.一种基于分布式账本的身份验证方法,其特征在于,请求身份验证的用户分别向多个认证机构请求用户身份子证书,组合用户身份子证书后利用请求身份验证的用户的私钥,进行数字签名生成用户身份证书,写入链,进行身份验证,该方法的具体步骤包括如下:
(1)申请用户身份子证书:
(1a)将请求身份验证的用户提交的用户身份信息,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,作为用户全网唯一身份标识;
(1b)请求身份验证的用户向多个认证机构,分别发送用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期信息;
(2)生成用户身份子证书:
(2a)认证机构采用随机数生成器,生成一个64位的随机数R,利用请求身份验证用户自身的公钥,对所生成的随机数R进行非对称加密,将非对称加密结果发送给请求身份验证的用户;
(2b)请求身份验证的用户利用自身的私钥,对接收的非对称加密结果进行解密,利用认证机构的公钥对解密结果加1后得到的数字T进行非对称加密,将非对称加密结果发送给认证机构;
(2c)认证机构利用自身的私钥对接收的非对称加密结果进行解密,将解密结果减1,得到一个数字P;
(2d)判断数字P是否等于随机数R,若是,则执行步骤(2e),否则,向请求身份验证的用户发送“请求失败”信息;
(2e)将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、认证机构名称,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用认证机构自身的私钥,对生成的散列值进行非对称加密,生成用户身份子证书;
(2f)认证机构将生成的用户身份子证书发送给请求身份验证的用户;
(3)判断生成用户身份子证书的认证机构数量是否超过所有认证机构数量的一半,若是,则执行步骤(4),否则,向请求身份验证的用户发送“请求身份子证书数量不足”信息后,执行步骤(2);
(4)生成用户身份证书:
将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、所有接收到的用户身份子证书,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用请求身份验证用户自身的私钥,对生成的散列值进行非对称加密,得到用户身份证书;
(5)写入区块链:
(5a)从多个生成用户身份子证书的认证机构中任意选取一个认证机构,作为领导者,向所选取的认证机构发送用户身份证书;
(5b)领导者将接收到的用户身份证书,广播给其他认证机构;
(5c)判断认证机构接收到用户身份证书的时间是否在用户身份证书的公钥有效期之内,若是,则向领导者发送“同意写入”信息后,执行步骤(5d),否则,向领导者发送“拒绝写入”信息;
(5d)判断发送“同意写入”的认证机构数量是否超过所有认证机构数量的一半,若是,则向用户发送“身份证书写入成功”信息后,执行步骤(5e),否则,向请求身份验证的用户发送“身份证书写入失败”信息;
(5e)将用户身份证书写入区块链中的数据区块中;所述的区块链是指,采用顺序相连的方式,按照时间顺序,将数据区块组合而成的一种链式数据结构;所述的数据区块包括用户身份证书信息、数据区块生成时间、当前数据区块散列值以及前一数据区块散列值;
(6)写入分布式账本:
认证机构从区块链中依次复制出用户身份证书信息,写入认证机构本地分布式账本;
(7)判断分布式账本中是否存在与请求身份验证用户全网唯一身份标识对应的用户身份证书,若是,则执行步骤(8),否则,执行步骤(10);
(8)判断执行步骤(7)的时间是否在用户身份证书的公钥有效期之内,若是,则执行步骤(9),否则,执行步骤(10);
(9)向请求身份验证的用户发送“身份验证成功”信息和用户身份证书;
(10)向请求身份验证的用户发送“身份验证失败”信息。
2.根据权利要求1所述的基于分布式账本的身份验证方法,其特征在于,步骤(1a)、步骤(2e)、步骤(4)中所述哈希算法是指采用SHA-1、SHA-2算法中的任意一种。
3.根据权利要求1所述的基于分布式账本的身份验证方法,其特征在于,步骤(1a)中所述用户身份信息包括用户姓名、单位、城市、国家及其它代表用户身份的信息。

说明书全文

基于分布式账本的身份验证方法

技术领域

[0001] 本发明属于通信技术领域,更进一步涉及密码认证技术领域中的一种基于分布式账本的身份验证方法。本发明以链技术和公钥基础设施技术为基础,通过引入分布式账本,从而实现了一种安全性更高的身份验证方法。

背景技术

[0002] 公钥基础设施是利用公钥理论和技术建立的提供信息安全服务的基础设施。公钥基础设施体系通过自动管理秘钥和数字证书,在网络中提供身份验证机制,保证网络上数据传输的机密性、完整性与不可否认性,建立安全的网络环境。公钥基础设施体系的核心是认证机构。认证机构负责发放体系中所有用户的数字证书,并验证用户的身份。由于公钥基础设施体系对认证机构的强依赖性,如果认证机构被攻击或者存在恶意欺诈,将会造成用户身份信息丢失甚至被篡改。因此,认证机构的安全性将影响整个公钥基础设施体系的安全。
[0003] 布比(北京)网络技术有限公司在其申请专利文献“一种区块链身份构建及验证方法”(专利申请号CN201510959207.6,公开号CN105701372A)中公开了一种将用户身份数字证书存储在区块链中的方法。该方法的具体步骤是,认证机构根据用户提交的身份验证请求,创建用户身份数字证书,向参与身份区块链构建过程的其他认证机构广播该数字证书,并写入身份区块链。该方法利用区块链记录认证机构的各项操作并提供身份验证,实现了认证机构操作记录的公开透明,避免用户信息被篡改,提高用户身份验证的效率。但是,该方法仍然存在的不足之处是,由于该方法采用由可信赖第三方的认证机构颁发数字证书,导致数字证书的颁发操作仅集中于单一认证机构,若认证机构单点失效,所有用户身份无法得到验证。
[0004] 杭州复杂美科技有限公司在其申请的专利文献“一种认证机构证书在区块链上的应用方法”(专利申请号CN201610020226.7,公开号CN105591753A)中公开了一种将认证机构证书的权限记录在区块链上的方法。该方法的具体步骤是,通过多个委员会成员投票,认证机构逐级向下授权相关认证机构具有颁发证书的权限,写入区块链中。该方法利用认证机构分级管理,通过认证机构间信任关系的传递实现系统间的互通与监管,扩展了信任范围,避免用户信息被篡改。但是,该方法仍然存在的不足之处是,用户身份证书由底层单一认证机构颁发,由于信任关系由顶层认证机构逐级向下传递,随着认证机构层级增多,导致底层认证机构及其颁发的用户身份数字证书的可信度下降。

发明内容

[0005] 本发明的目的是针对上述现有技术的不足,提出一种安全性更高的基于分布式账本的身份验证方法。本发明可以减少公钥基础设施对单一认证机构的强依赖性,增加用户身份数字证书的可信度,提高身份验证的效率。
[0006] 实现本发明目的的思路是,请求身份验证的用户分别向多个认证机构请求用户身份子证书,组合用户身份子证书后利用请求身份验证的用户的私钥,进行数字签名生成用户身份证书,写入区块链,进行身份验证。
[0007] 本发明的具体步骤包括如下:
[0008] (1)申请用户身份子证书:
[0009] (1a)将请求身份验证的用户提交的用户身份信息,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,作为用户全网唯一身份标识;
[0010] (1b)请求身份验证的用户向多个认证机构,分别发送用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期信息;
[0011] (2)生成用户身份子证书:
[0012] (2a)认证机构采用随机数生成器,生成一个64位的随机数R,利用请求身份验证用户自身的公钥,对所生成的随机数R进行非对称加密,将非对称加密结果发送给请求身份验证的用户;
[0013] (2b)请求身份验证的用户利用自身的私钥,对接收的非对称加密结果进行解密,利用认证机构的公钥对解密结果加1后得到的数字T进行非对称加密,将非对称加密结果发送给认证机构;
[0014] (2c)认证机构利用自身的私钥对接收的非对称加密结果进行解密,将解密结果减1,得到一个数字P;
[0015] (2d)判断数字P是否等于随机数R,若是,则执行步骤(2e),否则,向请求身份验证的用户发送“请求失败”信息;
[0016] (2e)将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、认证机构名称,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用认证机构自身的私钥,对生成的散列值进行非对称加密,生成用户身份子证书;
[0017] (2f)认证机构将生成的用户身份子证书发送给请求身份验证的用户;
[0018] (3)判断生成用户身份子证书的认证机构数量是否超过所有认证机构数量的一半,若是,则执行步骤(4),否则,向请求身份验证的用户发送“请求身份子证书数量不足”信息后,执行步骤(2);
[0019] (4)生成用户身份证书:
[0020] 将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、所有接收到的用户身份子证书,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用请求身份验证用户自身的私钥,对生成的散列值进行非对称加密,得到用户身份证书;
[0021] (5)写入区块链:
[0022] (5a)从多个生成用户身份子证书的认证机构中任意选取一个认证机构,作为领导者,向所选取的认证机构发送用户身份证书;
[0023] (5b)领导者将接收到的用户身份证书,广播给其他认证机构;
[0024] (5c)判断认证机构接收到用户身份证书的时间是否在用户身份证书的公钥有效期之内,若是,则向领导者发送“同意写入”信息后,执行步骤(5d),否则,向领导者发送“拒绝写入”信息;
[0025] (5d)判断发送“同意写入”的认证机构数量是否超过所有认证机构数量的一半,若是,则向用户发送“身份证书写入成功”信息后,执行步骤(5e),否则,向请求身份验证的用户发送“身份证书写入失败”信息;
[0026] (5e)将用户身份证书写入区块链中的数据区块中;
[0027] (6)写入分布式账本:
[0028] 认证机构从区块链中依次复制出用户身份证书信息,写入认证机构本地分布式账本;
[0029] (7)判断分布式账本中是否存在与请求身份验证用户全网唯一身份标识对应的用户身份证书,若是,则执行步骤(8),否则,执行步骤(10);
[0030] (8)判断执行步骤(7)的时间是否在用户身份证书的公钥有效期之内,若是,则执行步骤(9),否则,执行步骤(10);
[0031] (9)向请求身份验证的用户发送“身份验证成功”信息和用户身份证书;
[0032] (10)向请求身份验证的用户发送“身份验证失败”信息。
[0033] 本发明与现有技术相比具有以下优点:
[0034] 第一,由于本发明通过请求身份验证的用户向多个认证机构分别发送用户全网唯一身份标识、请求身份验证用户的公钥、请求身份验证的用户的公钥有效期信息,实现多个认证机构分别为请求身份验证的用户生成用户身份子证书,由用户身份子证书组合生成的用户身份证书,克服了现有技术随着认证机构层级增多,导致底层认证机构及其颁发的用户身份数字证书的可信度下降的问题,使得本发明增强了用户身份证书的可信度,保护了用户的身份信息隐私。
[0035] 第二,由于本发明通过请求身份验证的用户利用其自身的私钥,对用户全网唯一身份标识、请求身份验证用户的公钥、请求身份验证用户的公钥有效期、所有接收到的用户身份子证书进行数字签名,生成用户身份证书,克服了现有技术中数字证书的颁发操作仅集中于单一认证机构的缺陷,使得本发明的方法减少了公钥基础设施对单一认证机构的强依赖性,提高了认证机构颁发用户身份证书的效率。
[0036] 第三,由于本发明通过认证机构从区块链中复制出用户身份证书信息,写入认证机构本地分布式账本,实现了认证机构在分布式账本中查询并验证请求身份验证用户的身份证书,避免现有技术中若认证机构单点失效,所有用户身份无法得到验证的威胁,使得本发明提高了用户身份验证的效率。附图说明
[0037] 附图1为本发明的流程图
[0038] 附图2为生成用户身份子证书的流程图。
[0039] 具体实施措施
[0040] 下面结合附图对本发明做进一步的详细描述。
[0041] 参照附图1,对本发明的具体步骤作进一步的描述。
[0042] 步骤1,申请用户身份子证书。
[0043] 将请求身份验证的用户提交的用户身份信息,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,作为用户全网唯一身份标识。
[0044] 所述哈希算法采用SHA-1、SHA-2算法中的任意一种。
[0045] 所述用户身份信息包括用户姓名、单位、城市、国家及其它代表用户身份的信息。
[0046] 请求身份验证的用户向多个认证机构,分别发送用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期信息。
[0047] 步骤2,生成用户身份子证书。
[0048] 参照附图2,对生成用户身份子证书的具体步骤作进一步的描述。
[0049] 第1步,认证机构采用随机数生成器,生成一个64位的随机数R,利用请求身份验证用户自身的公钥,对所生成的随机数R进行非对称加密,将非对称加密结果发送给请求身份验证的用户。
[0050] 第2步,请求身份验证的用户利用自身的私钥,对接收的非对称加密结果进行解密,利用认证机构的公钥对解密结果加1后得到的数字T进行非对称加密,将非对称加密结果发送给认证机构。
[0051] 第3步,认证机构利用自身的私钥对接收的非对称加密结果进行解密,将解密结果减1,得到一个数字P。
[0052] 第4步,判断数字P是否等于随机数R,若是,则执行第5步,否则,向请求身份验证的用户发送“请求失败”信息。
[0053] 第5步,将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、认证机构名称,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用认证机构自身的私钥,对生成的散列值进行非对称加密,生成用户身份子证书。
[0054] 所述哈希算法采用SHA-1、SHA-2算法中的任意一种。
[0055] 第6步,认证机构将生成的用户身份子证书发送给请求身份验证的用户。
[0056] 步骤3,判断生成用户身份子证书的认证机构数量是否超过所有认证机构数量的一半,若是,则执行步骤4,否则,向请求身份验证的用户发送“请求身份子证书数量不足”信息后,执行步骤2。
[0057] 步骤4,生成用户身份证书。
[0058] 将用户全网唯一身份标识、请求身份验证用户自身的公钥、请求身份验证用户自身公钥的有效期、所有接收到的用户身份子证书,作为哈希算法的输入,采用哈希算法,生成160比特固定长度的散列值,利用请求身份验证用户自身的私钥,对生成的散列值进行非对称加密,得到用户身份证书。
[0059] 所述哈希算法采用SHA-1、SHA-2算法中的任意一种。
[0060] 步骤5,写入区块链。
[0061] 第1步,从多个生成用户身份子证书的认证机构中任意选取一个认证机构,作为领导者,向所选取的认证机构发送用户身份证书。
[0062] 第2步,领导者将接收到的用户身份证书,广播给其他认证机构。
[0063] 第3步,判断认证机构接收到用户身份证书的时间是否在用户身份证书的公钥有效期之内,若是,则向领导者发送“同意写入”信息后,执行第4步,否则,向领导者发送“拒绝写入”信息。
[0064] 第4步,判断发送“同意写入”的认证机构数量是否超过所有认证机构数量的一半,若是,则向用户发送“身份证书写入成功”信息后,执行第5步,否则,向请求身份验证的用户发送“身份证书写入失败”信息。
[0065] 第5步,将用户身份证书写入区块链中的数据区块中。
[0066] 所述的区块链是指,采用顺序相连的方式,按照时间顺序,将数据区块组合而成的一种链式数据结构。
[0067] 所述的数据区块包括用户身份证书信息、数据区块生成时间、当前数据区块散列值以及前一数据区块散列值。
[0068] 步骤6,写入分布式账本。
[0069] 认证机构从区块链中依次复制出用户身份证书信息,写入认证机构本地分布式账本。
[0070] 步骤7,判断分布式账本中是否存在与请求身份验证用户全网唯一身份标识对应的用户身份证书,若是,则执行步骤8,否则,执行步骤10。
[0071] 步骤8,判断执行步骤7的时间是否在用户身份证书的公钥有效期之内,若是,则执行步骤9,否则,执行步骤10。
[0072] 步骤9,向请求身份验证的用户发送“身份验证成功”信息和用户身份证书。
[0073] 步骤10,向请求身份验证的用户发送“身份验证失败”信息。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈