本发明涉及区块链,具体地说是一种基于区块链技术的数字身份认证方法。
背景技术:
1、区块链技术是一种去中心化分布式账本技术,存储在区块链上的信息不可伪造和篡改;
2、随着计算机技术的发展,计算机中的数据越来越复杂,为了保证计算机中数据的安全性,出现了各种数据验证方式。例如,可以对数字身份进行验证,数字身份是指将真实信息浓缩为数字代码,可以通过网络、相关设备等查询和识别的公共密钥。现有的数字身份验证可以是由认证中心建立统一的身份信息库,通过物理凭证或者数字密码等验证方式提供数字身份的验证服务。但是,现有数字身份验证的安全性较低。
技术实现思路
1、为了解决上述技术问题,本发明提供一种基于区块链技术的数字身份认证方法,以解决背景技术中存在的问题。
2、一种基于区块链技术的数字身份认证方法,包括以下步骤:
3、s1、构建区块链网络:采用联盟链形式搭建区块链网络,用于存储和验证用户身份信息;
4、s2、身份注册:用户提供个人基本信息和身份证明文件,使用加密算法对用户个人基本信息进行哈希计算,生成唯一的身份标识符,并将其记录在区块链上;
5、s3、身份验证:用户在需要进行身份验证的场景下,提供相应的身份证明文件,验证节点通过区块链上的记录验证用户的身份信息的有效性和真实性;
6、s4、身份授权:用户将自己的身份授权给特定的机构或个人,区块链上记录授权信息;
7、s5、身份更新:当用户的个人信息发生变化,通过区块链上身份更新机制更新个人数字身份信息。
8、可选的,所述s2中,在哈希计算过程中加入salt值,增加哈希值的安全性。
9、可选的,所述s2身份注册过程中,使用非对称加密方式设立公钥和私钥,对用户身份标识符使用公钥进行加密并存储,私钥用于解密操作。
10、可选的,所述s3中验证节点采用双因素认证方式,用户在登录时提供多个不同验证因素,如密码、手机验证码、指纹识别、声纹识别、瞳孔识别和人脸识别中的两种及以上。
11、可选的,所述s4身份授权过程中,具体步骤还包括:
12、s401、用户选择授权对象:用户在授权前通过授权页面上的选项选择授权对象;
13、s402、授权请求:用户选择授权对象后,生成一个授权请求,并向用户展示授权请求的详细信息,信息包括授权对象的身份、权限范围、数据访问需求;
14、s403、授权验证:用户确认授权请求内容后同意授权,再次对用户进行身份验证,确保用户身份有效,验证方式包括密码、手机验证码、指纹识别、声纹识别、瞳孔识别和人脸识别中的两种及以上;
15、s404、生成访问令牌:身份验证通过后,生成一个访问令牌,并设置有签名,其令牌包含用户身份信息和授权对象的权限范围,作为访问用户数据的凭证;
16、s405、授权访问:平台对访问令牌进行解析,获取其中包含的用户身份信息和权限范围,并根据公钥验证令牌签名,检查令牌有效期,同时验证权限范围,根据访问令牌中包含的权限范围与用户的权限系统或访问控制列表进行比对,判断用户是否具有相应的权限访问所请求的资源;
17、s406、防止重放攻击:在验证过程中检查令牌唯一性,确保令牌在一定时间内只能使用一次。
18、可选的,所述s5中,当用户身份信息需要更新时,通过智能合约生成新的公私钥对,将新的公钥与身份信息进行绑定,并将原有的资产转移到新的公钥上。
19、与现有技术相比,本发明具有如下有益效果:
20、本发明通过在区块链上使用加密和哈希算法来保护数据的安全性,身份信息和认证记录被加密存储,并通过分布式节点的验证来确保数据的完整性和真实性,使得身份认证过程更加安全和可信,区块链上的数据一旦被写入,就很难被篡改,每个区块都包含前一个区块的哈希值,形成了一个链式的数据结构,如果试图篡改其中一个区块,将会破坏整个链的一致性,从而被系统检测到,其区块链技术只有授权的用户才能解密和访问,使得用户可以在不暴露个人身份的情况下进行身份认证,提供匿名性和隐私保护功能,用户可以自行管理自己的身份信息和私钥,决定何时和如何共享身份数据,增加了用户对自己身份数据的控制和保护。
1.一种基于区块链技术的数字身份认证方法,其特征在于:包括以下步骤:
2.如权利要求1所述一种基于区块链技术的数字身份认证方法,其特征在于:所述s2中,在哈希计算过程中加入salt值,增加哈希值的安全性。
3.如权利要求1所述一种基于区块链技术的数字身份认证方法,其特征在于:所述s2身份注册过程中,使用非对称加密方式设立公钥和私钥,对用户身份标识符使用公钥进行加密并存储,私钥用于解密操作。
4.如权利要求1所述一种基于区块链技术的数字身份认证方法,其特征在于:所述s3中验证节点采用双因素认证方式,用户在登录时提供多个不同验证因素,如密码、手机验证码、指纹识别、声纹识别、瞳孔识别和人脸识别中的两种及以上。
5.如权利要求1-4任一所述的一种基于区块链技术的数字身份认证方法,其特征在于:所述s4身份授权过程中,具体步骤还包括:
6.如权利要求1-3任一所述的一种基于区块链技术的数字身份认证方法,其特征在于:所述s5中,当用户身份信息需要更新时,通过智能合约生成新的公私钥对,将新的公钥与身份信息进行绑定,并将原有的资产转移到新的公钥上。