本技术涉及数据处理,尤其涉及基于区块链的数字身份管理方法、系统、电子设备及计算机可读存储介质。
背景技术:
1、数字身份管理在如电力等业务场景中具有重要作用。随着电力等业务场景的数字化发展,电子证照的应用具有重要的实践需求。数字化和互联网技术的发展使得电力业务中的证照管理和身份认证变得越来越重要。如电力等行业需要有效的身份认证机制,以确保如电力等从业人员、企业和用户的身份可靠、安全且可信。
2、然而,传统的数字身份管理方式存在单点故障和数据泄露的风险,且无法保证用户身份信息的安全。中心化管理还容易造成“信息孤岛”效应,即不同组织间的身份信息无法有效共享和沟通,导致用户需要反复提交相同信息进行身份认证。进一步来说,即使现有的数字身份管理方式即使能够保证用户隐私,却很难在此基础上保证数字身份管理流程的透明化程度,进而使得数字身份认证过程难以被追溯,易造成数字身份管理的混乱。
3、基于此,当前亟需设计一种能够在保护用户隐私的同时确保身份信息的真实性,并同时能够对数字身份认证过程进行追踪的数字身份管理方式。
技术实现思路
1、鉴于此,本技术实施例提供了基于区块链的数字身份管理方法、系统、电子设备及计算机可读存储介质,以消除或改善现有技术中存在的一个或更多个缺陷。
2、本技术的一个方面提供了一种基于区块链的数字身份管理方法,包括:
3、在区块链网络中执行预设的数字身份管理步骤,所述数字身份管理步骤包括:数字身份注册步骤、数字身份查询步骤、数字身份验证步骤以及数字身份撤销步骤中的至少一项;
4、以及,在执行所述数字身份管理步骤的过程中,基于预设的关键事件类型,针对所述数字身份管理步骤中的每个关键事件实时生成审计日志条目,并将所述审计日志条目加密后存储至区块链,以基于预设的日志访问接口及访问规则向发出审计日志访问的授权用户发送所述审计日志条目。
5、在本技术的一些实施例中,所述数字身份注册步骤基于cp-abe加密方式、ipfs系统以及aes加密方式实现,所述数字身份查询步骤基于零知识证明方式实现,所述数字身份验证步骤基于所述区块链网络中分布式的多个验证节点实现。
6、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份注册步骤,则所述在区块链网络中执行预设的数字身份管理步骤,包括:
7、在区块链网络中接收目标用户发出的数字身份注册请求,该数字身份注册请求包括:所述目标用户的身份信息以及该目标用户指定的所述区块链网络中的多个验证节点;
8、对所述目标用户的身份信息进行cp-abe加密以得到对应的身份信息哈希值,将该身份信息哈希值存储至ipfs系统中,以获取该ipfs系统生成并返回的加密数据唯一对应的ipfs地址;
9、对所述ipfs地址进行aes加密以得到加密ipfs地址;
10、基于所述目标用户的身份信息、该目标用户指定的多个验证节点各自对应的验证节点地址以及所述加密ipfs地址,生成所述目标用户的唯一身份标识;
11、将所述目标用户的唯一身份标识、所述身份信息哈希值、所述目标用户指定的多个验证节点各自对应的验证节点地址、所述加密ipfs地址以及预设的补充信息作为所述目标用户的身份凭证以存储至区块链;其中,所述身份凭证中还包含有该身份凭证当前的凭证验证状态以及凭证过期时间。
12、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份查询步骤,则所述在区块链网络中执行预设的数字身份管理步骤,包括:
13、在区块链网络中接收目标用户发出的数字身份查询请求,该数字身份查询请求包括:所述目标用户的唯一身份标识以及该目标用户预先针对自身的身份信息生成的零知识证明;
14、对所述零知识证明进行验证;若针对所述零知识证明的验证通过,则基于所述目标用户的唯一身份标识,调用智能合约以在所述区块链中查询所述目标用户对应的所述身份凭证;
15、将所述身份凭证发送至所述目标用户。
16、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份验证步骤,则所述在区块链网络中执行预设的数字身份管理步骤,包括:
17、在区块链网络中接收针对所述目标用户的数字身份验证请求,其中,所述数字身份验证请求包括:所述目标用户的唯一身份标识以及所述目标用户的身份信息签名值;
18、根据所述目标用户的唯一身份标识,查找该目标用户预先指定的多个所述验证节点各自对应的验证节点地址;
19、基于各个所述验证节点地址,将针对所述目标用户的数字身份验证请求转发至所述目标用户预先指定的各个所述验证节点,以使各个所述验证节点分别根据所述目标用户的唯一身份标识调用智能合约,从而使各个所述验证节点基于所述目标用户的身份信息签名值与预存储在所述区块链中的该目标用户的身份凭证进行验证,并返回各自生成的验证结果数据;
20、接收各个所述验证节点分别发回的所述验证结果数据;
21、判断显示验证通过的所述验证结果数据的数量是否满足预设的通过阈值,若是,则确定所述目标用户通过数字身份验证,并像所述数字身份验证请求的发出端返回对应的数字身份验证通过消息。
22、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份撤销步骤,则所述在区块链网络中执行预设的数字身份管理步骤,包括:
23、在区块链网络中接收由所述目标用户发出的数字身份撤销请求,其中,所述数字身份撤销请求包括:所述目标用户的身份信息签名值;
24、调用智能合约,以基于所述目标用户的身份信息签名值与预存储在所述区块链中的该目标用户的身份凭证进行验证,若验证通过,则将所述目标用户的所述身份凭证中的所述验证状态由用于表示验证通过的数据修改为用于表示身份撤销的数据。
25、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份撤销步骤,则所述在区块链网络中执行预设的数字身份管理步骤,包括:
26、在区块链网络中接收由一目标验证节点发出的数字身份撤销请求,其中,所述数字身份撤销请求包括:所述身份信息哈希值的签名值;该所述身份信息哈希值的签名值由所述目标验证节点预先基于自身的私钥对所述目标用户的所述身份信息哈希值进行签名后得到;
27、基于所述身份信息哈希值的签名值对所述目标验证节点的私钥进行验证;
28、若对所述目标验证节点的私钥的验证通过,则调用智能合约,以验证所述目标验证节点是否包含在预存储在所述区块链中的目标用户的身份凭证中指定的各个所述验证节点中;
29、若所述目标验证节点包含在所述目标用户指定的各个所述验证节点中,则将所述目标用户的所述身份凭证中的所述验证状态由用于表示验证通过的数据修改为用于表示身份撤销的数据。
30、在本技术的一些实施例中,所述审计日志条目用于存储时间戳、关键事件类型、身份信息的哈希摘要以及关键事件的操作者标识之间的对应关系。
31、本技术的另一个方面提供了一种基于区块链的数字身份管理系统,包括:
32、数字身份管理模块,用于在区块链网络中执行预设的数字身份管理步骤,所述数字身份管理步骤包括:数字身份注册步骤、数字身份查询步骤、数字身份验证步骤以及数字身份撤销步骤中的至少一项;
33、审计日志记录及追溯模块,用于在执行所述数字身份管理步骤的过程中,基于预设的关键事件类型,针对所述数字身份管理步骤中的每个关键事件实时生成审计日志条目,并将所述审计日志条目加密后存储至区块链,以基于预设的日志访问接口及访问规则向发出审计日志访问的授权用户发送所述审计日志条目。
34、在本技术的一些实施例中,所述数字身份注册步骤基于cp-abe加密方式、ipfs系统以及aes加密方式实现,所述数字身份查询步骤基于零知识证明方式实现,所述数字身份验证步骤基于所述区块链网络中分布式的多个验证节点实现。
35、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份注册步骤,则所述数字身份管理模块包括:数字身份注册单元,该数字身份注册单元用于执行下述内容:
36、在区块链网络中接收目标用户发出的数字身份注册请求,该数字身份注册请求包括:所述目标用户的身份信息以及该目标用户指定的所述区块链网络中的多个验证节点;
37、对所述目标用户的身份信息进行cp-abe加密以得到对应的身份信息哈希值,将该身份信息哈希值存储至ipfs系统中,以获取该ipfs系统生成并返回的加密数据唯一对应的ipfs地址;
38、对所述ipfs地址进行aes加密以得到加密ipfs地址;
39、基于所述目标用户的身份信息、该目标用户指定的多个验证节点各自对应的验证节点地址以及所述加密ipfs地址,生成所述目标用户的唯一身份标识;
40、将所述目标用户的唯一身份标识、所述身份信息哈希值、所述目标用户指定的多个验证节点各自对应的验证节点地址、所述加密ipfs地址以及预设的补充信息作为所述目标用户的身份凭证以存储至区块链;其中,所述身份凭证中还包含有该身份凭证当前的凭证验证状态以及凭证过期时间。
41、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份查询步骤,则所述数字身份管理模块包括:数字身份查询单元,该数字身份查询单元用于执行下述内容:
42、在区块链网络中接收目标用户发出的数字身份查询请求,该数字身份查询请求包括:所述目标用户的唯一身份标识以及该目标用户预先针对自身的身份信息生成的零知识证明;
43、对所述零知识证明进行验证;若针对所述零知识证明的验证通过,则基于所述目标用户的唯一身份标识,调用智能合约以在所述区块链中查询所述目标用户对应的所述身份凭证;
44、将所述身份凭证发送至所述目标用户。
45、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份验证步骤,则所述数字身份管理模块包括:数字身份验证单元,该数字身份验证单元用于执行下述内容:
46、在区块链网络中接收针对所述目标用户的数字身份验证请求,其中,所述数字身份验证请求包括:所述目标用户的唯一身份标识以及所述目标用户的身份信息签名值;
47、根据所述目标用户的唯一身份标识,查找该目标用户预先指定的多个所述验证节点各自对应的验证节点地址;
48、基于各个所述验证节点地址,将针对所述目标用户的数字身份验证请求转发至所述目标用户预先指定的各个所述验证节点,以使各个所述验证节点分别根据所述目标用户的唯一身份标识调用智能合约,从而使各个所述验证节点基于所述目标用户的身份信息签名值与预存储在所述区块链中的该目标用户的身份凭证进行验证,并返回各自生成的验证结果数据;
49、接收各个所述验证节点分别发回的所述验证结果数据;
50、判断显示验证通过的所述验证结果数据的数量是否满足预设的通过阈值,若是,则确定所述目标用户通过数字身份验证,并像所述数字身份验证请求的发出端返回对应的数字身份验证通过消息。
51、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份撤销步骤,则所述数字身份管理模块包括:第一数字身份撤销单元,该第一数字身份撤销单元用于执行下述内容:
52、在区块链网络中接收由所述目标用户发出的数字身份撤销请求,其中,所述数字身份撤销请求包括:所述目标用户的身份信息签名值;
53、调用智能合约,以基于所述目标用户的身份信息签名值与预存储在所述区块链中的该目标用户的身份凭证进行验证,若验证通过,则将所述目标用户的所述身份凭证中的所述验证状态由用于表示验证通过的数据修改为用于表示身份撤销的数据。
54、在本技术的一些实施例中,若当前的所述数字身份管理步骤为所述数字身份撤销步骤,则所述数字身份管理模块包括:第二数字身份撤销单元,该第二数字身份撤销单元用于执行下述内容:
55、在区块链网络中接收由一目标验证节点发出的数字身份撤销请求,其中,所述数字身份撤销请求包括:所述身份信息哈希值的签名值;该所述身份信息哈希值的签名值由所述目标验证节点预先基于自身的私钥对所述目标用户的所述身份信息哈希值进行签名后得到;
56、基于所述身份信息哈希值的签名值对所述目标验证节点的私钥进行验证;
57、若对所述目标验证节点的私钥的验证通过,则调用智能合约,以验证所述目标验证节点是否包含在预存储在所述区块链中的该目标用户的身份凭证中指定的各个所述验证节点中;
58、若所述目标验证节点包含在所述目标用户指定的各个所述验证节点中,则将所述目标用户的所述身份凭证中的所述验证状态由用于表示验证通过的数据修改为用于表示身份撤销的数据。
59、在本技术的一些实施例中,所述审计日志条目用于存储时间戳、关键事件类型、身份信息的哈希摘要以及关键事件的操作者标识之间的对应关系。
60、本技术的第三个方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的基于区块链的数字身份管理方法。
61、本技术的第四个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的基于区块链的数字身份管理方法。
62、本技术的第五个方面提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现所述的基于区块链的数字身份管理方法。
63、本技术提供的基于区块链的数字身份管理方法,在区块链网络中执行预设的数字身份管理步骤,所述数字身份管理步骤包括:数字身份注册步骤、数字身份查询步骤、数字身份验证步骤以及数字身份撤销步骤中的至少一项;以及,在执行所述数字身份管理步骤的过程中,基于预设的关键事件类型,针对所述数字身份管理步骤中的每个关键事件实时生成审计日志条目,并将所述审计日志条目加密后存储至区块链,以基于预设的日志访问接口及访问规则向发出审计日志访问的授权用户发送所述审计日志条目。本技术能够在保护用户隐私的同时确保用户的数字身份信息的真实性,并同时实现对数字身份认证过程的追踪及审计,进而能够有效提高数字身份管理的便捷性和透明化程度。
64、本技术的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本技术的实践而获知。本技术的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
65、本领域技术人员将会理解的是,能够用本技术实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本技术能够实现的上述和其他目的。