基于区块链的身份认证方法、装置及设备与流程
- 国知局
- 2024-08-02 14:59:32
本技术实施例涉及通信,尤其涉及一种基于区块链的身份认证方法、装置及设备。
背景技术:
1、用户在通过终端设备进行登录操作时,若没有对应的账号可以通过第三方账号登录的方式,进入对应的应用程序或者业务系统。第三方账号为用户经过注册且认证成功的账号。
2、在通过第三方账号进行登录之前,需要对第三方账号进行身份认证处理,以避免账号信息泄露。在相关技术中,可以通过如下方式进行身份认证:终端设备的应用程序向服务器发送身份认证请求,身份认证请求包括身份标识。服务器对终端设备发送的身份认证请求进行验证处理,当验证结果为验证通过时,生成临时认证信息。并向终端设备发送临时认证信息。终端设备根据临时认证信息显示对应的授权页面。并响应于用户的输入点击操作,确定应用程序根据用户授权的账户进行登录操作。终端设备根据临时认证信息从服务器中获取授权信息,并根据授权信息访问应用程序中的资源。
3、在上述过程中,用户的认证信息存储在认证企业所属的服务器中,且每次认证都需要通过认证企业所属的服务器进行认证。若认证企业所属的服务器出现异常,认证企业所属的服务器存储的信息可能会泄露,且不能对身份认证请求进行处理,导致进行身份认证的可靠性较低。
技术实现思路
1、本技术实施例提供一种基于区块链的身份认证方法、装置及设备,用以解决的问题。
2、第一方面,本技术实施例提供一种基于区块链的身份认证方法,包括:
3、接收终端设备发送的身份认证请求,所述身份认证请求用于对第一身份标识进行认证处理,所述身份认证请求包括所述第一身份标识、所述第一身份标识所属的第一对象标识、以及私钥信息;
4、根据所述第一对象标识,在区块链中确定至少一个目标区块链节点;
5、根据所述私钥信息,在所述至少一个目标区块链节点中,获取所述第一身份标识对应的授权信息;
6、根据所述授权信息,确定认证结果,并向所述终端设备发送所述认证结果;所述认证结果为认证通过或认证不通过。
7、在一种可能的实施方式中,根据所述私钥信息,在所述至少一个目标区块链节点中,获取所述第一身份标识对应的授权信息,包括:
8、获取所述第一对象标识对应的公钥信息和预设加密算法;
9、根据所述公钥信息,通过所述预设加密算法对所述私钥信息进行处理,得到身份信息,所述身份信息包括第二身份标识和第二身份标识;
10、将所述身份认证请求与所述身份信息进行匹配处理,得到匹配结果;
11、根据所述匹配结果,在所述至少一个目标区块链节点中,获取所述第一身份标识对应的授权信息、以及所述第一对象标识对应的授权信息。
12、在一种可能的实施方式中,将所述身份认证请求与所述身份信息进行匹配处理,得到匹配结果,包括:
13、判断所述第一身份标识与所述第二身份标识是否匹配、以及所述第一对象标识与所述第二对象标识是否匹配;
14、若所述第一身份标识与所述第二身份标识匹配,且所述第一对象标识与所述第二对象标识匹配,则确定所述匹配结果为匹配成功;
15、若所述第一身份标识与所述第二身份标识不匹配,和/或,所述第一对象标识与所述第二对象标识匹配,则确定所述匹配结果为匹配失败。
16、在一种可能的实施方式中,根据所述匹配结果,在所述至少一个目标区块链节点中,获取所述身份标识对应的授权信息、以及所述第一对象标识对应的授权信息:
17、若所述匹配结果为所述匹配成功,在所述至少一个目标区块链节点中,获取所述第一身份标识对应的授权信息、以及所述第一对象标识对应的授权信息。
18、在一种可能的实施方式中,所述授权信息包括所述第一身份标识对应的授权信息和所述第一对象标识对应的授权信息;根据所述授权信息,确定认证结果,包括:
19、获取当前认证时刻;
20、根据所述第一对象标识对应的授权信息,确定第一授权时段,以及根据所述第一身份标识对应授权信息,确定第二授权时段;
21、根据所述当前认证时刻、所述第一授权时段和所述第二授权时段,确定所述认证结果。
22、在一种可能的实施方式中,根据所述当前认证时刻、所述第一授权时段和所述第二授权时段,确定所述认证结果,包括:
23、若所述第二授权时段在所述第一授权时段内,且所述当前认证时刻在所述第二授权时段内,则确定所述认证结果为所述认证通过;
24、若所述第二授权时段不在所述第一授权时段内,和/或,所述当前认证时刻不在所述第二授权时段内,则确定所述认证结果为所述认证不通过。
25、在一种可能的实施方式中,确定所述认证结果为认证通过之后,还包括:
26、根据所述授权类型,确定所述第一身份标识对应的访问权限,所述授权类型为全部授权或部分授权;
27、获取所述第一对象标识对应的访问资源;
28、根据所述授权类型,在所述访问资源中,确定所述第一身份标识对应的目标访问资源,并向所述终端设备发送目标访问资源。
29、在一种可能的实施方式中,所述方法还包括:
30、接收所述终端设备发送的第一授权信息和认证私钥,所述第一授权信息包括认证对象标识、被认证对象标识、所述第一授权时段、当前授权时刻;
31、根据所述认证私钥对所述第一授权信息进行加密处理,得到所述对象标识对应的授权信息,并将所述对象标识对应的授权信息存储至所述区块链的至少一个区块链节点。
32、在一种可能的实施方式中,所述方法还包括:
33、接收所述终端设备发送的第二授权信息和所述认证私钥,所述第二授权信息包括对象标识、所述身份标识、所述第二授权时段、所述当前授权时刻、所述授权类型;
34、获取所述对象标识对应的公钥信息;
35、根据所述公钥信息,对所述身份标识、所述第二授权时段和所述授权类型进行加密处理,得到第三授权信息;
36、根据所述认证私钥对所述第三授权信息、所述对象标识、所述当前授权时段进行加密处理,得到所述身份标识对应的授权信息,并将所述身份标识对应的授权信息存储至所述区块链的至少一个区块链节点。
37、第二方面,本技术实施例提供一种基于区块链的身份认证装置,所述装置包括:
38、接收模块,用于接收终端设备发送的身份认证请求,所述身份认证请求用于对第一身份标识进行认证处理,所述身份认证请求包括所述第一身份标识、所述第一身份标识所属的第一对象标识、以及私钥信息;
39、第一确定模块,用于根据所述第一对象标识,在区块链中确定至少一个目标区块链节点;
40、获取模块,用于根据所述私钥信息,在所述至少一个目标区块链节点中,获取所述第一身份标识对应的授权信息;
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、所述第一处理模块用于:
66、接收所述终端设备发送的第一授权信息和认证私钥,所述第一授权信息包括认证对象标识、被认证对象标识、所述第一授权时段、当前授权时刻;
67、根据所述认证私钥对所述第一授权信息进行加密处理,得到所述对象标识对应的授权信息,并将所述对象标识对应的授权信息存储至所述区块链的至少一个区块链节点。
68、所述第二处理模块用于:
69、接收所述终端设备发送的第二授权信息和所述认证私钥,所述第二授权信息包括对象标识、所述身份标识、所述第二授权时段、所述当前授权时刻、所述授权类型;
70、获取所述对象标识对应的公钥信息;
71、根据所述公钥信息,对所述身份标识、所述第二授权时段和所述授权类型进行加密处理,得到第三授权信息;
72、根据所述认证私钥对所述第三授权信息、所述对象标识、所述当前授权时段进行加密处理,得到所述身份标识对应的授权信息,并将所述身份标识对应的授权信息存储至所述区块链的至少一个区块链节点。
73、第三方面,本技术实施例提供一种基于区块链的身份认证设备,包括:
74、至少一个处理器;以及
75、与所述至少一个处理器通信连接的存储器;其中,
76、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面任一项所述的方法。
77、第四方面,本技术实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面中任一项所述的方法。
78、第五方面,本技术实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法。
79、本技术实施例提供的基于区块链的身份认证方法、装置及设备,基于区块链的身份认证在接收终端设备发送的身份认证请求之后,根据身份认证请求的第一对象标识,在区块链中确定至少一个目标区块链节点。根据私钥信息,在至少一个目标区块链节点中,获取第一身份标识对应的授权信息。根据授权信息,确定认证结果。并向终端设备发送认证结果,认证结果为认证通过或认证不通过。在上述过程中,由于可以将身份标识存储在区块链中,且在获取授权信息时,通过私钥信息进行获取,避免直接获取授权信息导致信息泄露的情况。同时可以通过基于区块链的身份认证设备对身份验证请求进行处理,避免认证企业所属的服务器出现异常时,用户信息泄露或不能进行身份认证处理的情况。提高了进行身份认证的可靠性。
本文地址:https://www.jishuxx.com/zhuanli/20240801/244590.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。