CN113961893A - 基于区块链的用户登录方法、装置、电子设备及存储介质 - Google Patents
基于区块链的用户登录方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113961893A CN113961893A CN202111406721.9A CN202111406721A CN113961893A CN 113961893 A CN113961893 A CN 113961893A CN 202111406721 A CN202111406721 A CN 202111406721A CN 113961893 A CN113961893 A CN 113961893A
- Authority
- CN
- China
- Prior art keywords
- user
- service provider
- distributed identity
- login
- public key
- 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.)
- Pending
Links
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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请实施例提出一种基于区块链的用户登录方法、装置、电子设备及存储介质,属于区块链技术领域。该方法包括:通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;采用用户私钥对登录参数信息进行签名;根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。本申请的实施例中采用该方法可以降低用户信息的泄露风险,提高安全性。
Description
技术领域
本申请涉及区块链技术领域,具体而言,涉及一种基于区块链的用户登录方法、装置、电子设备及存储介质。
背景技术
服务提供方是指为完成某项或多项特定工作的计算机程序,如:应用程序、网络页面等,它可以和用户进行交互,一般都具有可视的用户界面。为了对用户的数据进行记录,许多情况下都需要登录的才能继续使用。
现有技术中,应用程序的登录方式通常可以分为手机验证码登录、账号密码登录、第三方账号登录等。然而,使用手机验证码登录,服务提供商可能会收集用户的手机号码,使手机号码存在泄露的风险;使用账号密码登录或第三方账号登录,存在账号被窃取或贩卖的风险。
因此,现有的登陆方式会增加用户信息泄露的风险,安全性较低。
发明内容
有鉴于此,本申请的目的在于提供一种基于区块链的用户登录方法、装置、电子设备及存储介质,可以降低用户信息的泄露风险,提高安全性。
为了实现上述目的,本申请实施例采用的技术方案如下:
本申请实施例提供的一种基于区块链的用户登录方法,应用于安装有分布式身份标识应用程序的用户终端,用户终端存储有用户的分布式身份标识和用户私钥,该方法包括:
通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;
采用用户私钥对登录参数信息进行签名;
根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;
使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;
将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
可选地,通过分布式身份标识应用程序获取登录参数信息之前,该方法还包括:
响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥;
向区块链发送第一注册请求,以由区块链进行用户注册,第一注册请求中包括用户公钥;
从区块链获取注册用户的分布式身份标识;
存储注册用户的分布式身份标识以及用户私钥。
可选地,服务提供方公钥存储于区块链中服务提供方的分布式身份标识文档;
根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥,包括:
将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取服务提供方的分布式身份标识文档;
从服务提供方的分布式身份标识文档中解析获取服务提供方公钥,服务提供方公钥包括应用程序公钥或者网站公钥。
可选地,应用程序内嵌分布式身份标识软件开发工具包;服务提供方的分布式身份标识包括:应用程序的分布式身份标识;
通过分布式身份标识应用程序获取登录参数信息,包括:
响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过调用分布式身份标识软件开发工具包获取应用程序的分布式身份标识。
可选地,登录参数信息还包括:应用程序的后台服务器的统一资源定位符;
将加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:
根据应用程序的后台服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,服务提供方的分布式身份标识包括:网站的分布式身份标识;
通过分布式身份标识应用程序获取登录参数信息,包括:
响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过扫描网站二维码获取网站的分布式身份标识。
可选地,登录参数信息还包括:网站服务器的统一资源定位符;
将加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:
根据网站服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,登录参数信息还包括:随机数。
可选地,响应登录应用程序的操作,获取登录参数信息,包括:
响应登录应用程序的操作,显示授权请求的弹窗,授权请求的弹窗用于询问用户是否允许通过用户的分布式身份标识登录应用程序;
响应同意授权请求的操作,获取登录参数信息。
本申请实施例的另一方面还提供一种基于区块链的用户登录方法,应用于服务提供方的后台服务器,后台服务器存储有服务提供方私钥,该方法包括:
接收用户终端发送的登录请求,登录请求由用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到;
使用服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息,登录参数信息包括:用户的分布式身份标识以及服务提供方的分布式身份标识;
根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证。
可选地,接收登录请求之前,该方法还包括:
基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥;
向区块链发送第二注册请求,以由区块链进行服务提供方注册,第二注册请求中包括服务提供方公钥;
从区块链获取注册服务提供方的分布式身份标识。
可选地,用户公钥存储于区块链中用户的分布式身份标识文档;
根据用户的分布式身份标识从区块链获取用户公钥,包括:
将用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取用户的分布式身份标识文档;
从用户的分布式身份标识文档中解析获取用户公钥。
本申请实施例的另一方面,还提供一种分布式身份标识处理方法,应用于区块链,该方法包括:
接收用户终端发送的第一注册请求,第一注册请求中包括用户公钥;
根据用户公钥,生成用户的分布式身份标识;
向用户终端返回用户的分布式身份标识。
可选地,该方法还包括:
接收服务提供方的后台服务器发送的第二注册请求,第二注册请求中包括服务提供方公钥;
根据服务提供方公钥,生成服务提供方的分布式身份标识;
向服务提供方返回服务提供方的分布式身份标识。
本申请实施例的另一方面,提供一种基于区块链的用户登录装置,应用于安装有分布式身份标识应用程序的用户终端,用户终端存储有用户的分布式身份标识和用户私钥,该装置包括:第一获取模块、签名模块、第二获取模块、加密模块以及验证模块;
第一获取模块,用于通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;
签名模块,用于采用用户私钥对登录参数信息进行签名;
第二获取模块,用于根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;
加密模块,用于使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;
验证模块,用于将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
可选地,该装置还包括存储模块,存储模块用于响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥;向区块链发送第一注册请求,以由区块链进行用户注册,第一注册请求中包括用户公钥;从区块链获取注册用户的分布式身份标识;存储注册用户的分布式身份标识以及用户私钥。
可选地,服务提供方公钥存储于区块链中服务提供方的分布式身份标识文档;第二获取模块,具体用于将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取服务提供方的分布式身份标识文档;从服务提供方的分布式身份标识文档中解析获取服务提供方公钥,服务提供方公钥包括应用程序公钥或者网站公钥。
可选地,应用程序内嵌分布式身份标识软件开发工具包;服务提供方的分布式身份标识包括:应用程序的分布式身份标识;第一获取模块,具体用于响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过调用分布式身份标识软件开发工具包获取应用程序的分布式身份标识。
可选地,登录参数信息还包括:应用程序的后台服务器的统一资源定位符;验证模块,具体用于根据应用程序的后台服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,服务提供方的分布式身份标识包括:网站的分布式身份标识;第一获取模块,具体用于响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过扫描网站二维码获取网站的分布式身份标识。
可选地,登录参数信息还包括:网站服务器的统一资源定位符;验证模块,具体用于根据网站服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,第一获取模块,还用于响应登录应用程序的操作,显示授权请求的弹窗,授权请求的弹窗用于询问用户是否允许通过用户的分布式身份标识登录应用程序;响应同意授权请求的操作,获取登录参数信息。
本申请实施例的另一方面,还提供一种基于区块链的用户登录装置,应用于服务提供方的后台服务器,后台服务器存储有服务提供方私钥,该装置包括:接收模块、解密模块、获取验证模块;
接收模块,用于接收用户终端发送的登录请求,登录请求由用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到;
解密模块,用于使用服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息,登录参数信息包括:用户的分布式身份标识以及服务提供方的分布式身份标识;
获取验证模块,用于根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证。
可选地,获取验证模块,还用于基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥;向区块链发送第二注册请求,以由区块链进行服务提供方注册,第二注册请求中包括服务提供方公钥;从区块链获取注册服务提供方的分布式身份标识。
可选地,用户公钥存储于区块链中用户的分布式身份标识文档;获取验证模块,具体用于将用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取用户的分布式身份标识文档;从用户的分布式身份标识文档中解析获取用户公钥。
本申请实施例的另一方面,提供一种分布式身份标识处理装置,应用于区块链,该装置包括:接收请求模块、生成模块、返回模块;
接收请求模块,用于接收用户终端发送的第一注册请求,第一注册请求中包括用户公钥;
生成模块,用于根据用户公钥,生成用户的分布式身份标识;
返回模块,用于向用户终端返回用户的分布式身份标识。
可选地,接收请求模块,还用于接收服务提供方的后台服务器发送的第二注册请求,第二注册请求中包括服务提供方公钥;生成模块,还用于根据服务提供方公钥,生成服务提供方的分布式身份标识;返回模块,还用于向服务提供方返回服务提供方的分布式身份标识。
本申请实施例的另一方面,还提供一种电子设备,包括处理器和存储器,存储器存储有能够被处理器执行的机器可执行指令,处理器可执行机器可执行指令以实现上述基于区块链的用户登录方法以及分布式身份标识处理方法的步骤。
本申请实施例的另一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于区块链的用户登录方法以及分布式身份标识处理方法的步骤。
本申请实施例中提供的基于区块链的用户登录方法、装置、电子设备及存储介质中,通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;采用用户私钥对登录参数信息进行签名;根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。其中,通过用户私钥签名、服务提供方公钥进行加密进而进行对应的身份验证可以降低用户信息的泄露风险,并且,对登陆参数信息进行保护,也可以提高登录的安全性。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的场景结构关系示意图;
图2示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的流程示意图;
图3示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的另一流程示意图;
图4示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的又一流程示意图;
图5示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的再一流程示意图;
图6示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的流程示意图;
图7示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的另一流程示意图;
图8示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的又一流程示意图;
图9示出了本申请实施例提供的应用于区块链的分布式身份标识处理方法的流程示意图;
图10示出了本申请实施例提供的应用于区块链的分布式身份标识处理方法的另一流程示意图;
图11示出了本申请实施例提供的场景中各个设备之间的交互关系示意图,请参照图11;
图12示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录装置的结构示意图;
图13示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录装置的结构示意图;
图14示出了本申请实施例提供的应用于区块链的分布式身份标识处理装置的结构示意图;
图15示出了本申请实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在本申请的描述中,需要说明的是,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
下面来解释本申请实施例中提供的具体应用场景。
图1示出了本申请实施例提供的场景结构关系示意图,请参照图1,该场景中可以包括:用户终端100、后台服务器200以及区块链300。
其中,用户终端100可以是手机、电脑、平板电脑、游戏机、专用设备等计算机设备,在此不作具体限制,这些设备中可以设置有应用程序或者可以通过网站页面的方式进行网络访问。
后台服务器200可以是服务提供方的后台服务器,其中,服务提供方可以是应用程序或者网络(例如网站页面等),这些后台服务器可以是云端服务器。
区块链300具体可以是一个区块链网络,用户终端100和后台服务器200均可以包括有多个,多个用户终端100、多个后台服务器可以分别与区块链300连接,通过区块链来实现网络信息交互,例如:身份验证等。
下面来基于上述具体结构来解释本申请实施例中提供的应用于用户终端的基于区块链的用户登录方法的具体实施过程。
图2示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的流程示意图,请参照图2,该方法包括:
S210:通过分布式身份标识应用程序获取登录参数信息。
其中,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识。
可选地,该方法的执行主体可以是上述用户终端,其中,用户终端中可以存储有用户的分布式身份标识和用户私钥。需要说明的是,用户的分布式身份标识(DID,Decentralized Identifiers)可以是由字符串组成的标识符,用来代表一个数字身份;用户私钥可以是用于进行签名的密钥。
可选地,分布式身份标识应用程序(DID APP,Decentralized IdentifiersApplication)可以是协助进行分布式身份标识验证或者登录的应用程序,可以设置于上述用户终端内。
登录参数信息中,可以包括用户的分布式身份标识(用户DID)和服务提供方的分布式身份标识(业务DID)。其中,用户DID即为用户通过用户终端注册得到的DID;而业务DID可以是服务提供方的DID。
可选地,区别于普通的身份标识,通过DID进行登录等操作时,网站地后台可以不需要为短信服务或者邮箱服务进行计费,并且,用户在通过DID进行登录时,不需要提供手机或者邮箱,用户不会因为网站后台泄露或者售卖信息导致收到广告诈骗信息的困扰。DID是一种去中心化的可验证的数字标识符,具有分布式、自主可控、跨链复用等特点。用户终端可自主完成DID的注册、解析、更新或者撤销操作。
可选地,通过分布式身份标识应用程序可以从后台服务器中获取登录参数信息。
S220:采用用户私钥对登录参数信息进行签名。
可选地,获取到登录参数信息后,可以基于用户终端中预先存储的用户私钥对登录参数信息进行签名处理,其中,签名具体可以是数字签名,可以是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。
S230:根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥。
可选地,将服务提供方的分布式身份标识发送给区块链后,可以在进行查询之后返回对应的服务提供方公钥,该服务提供方公钥可以存储于区块链中。
S240:使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求。
可选地,获取到服务提供方公钥之后,可以基于该公钥对已经进行了签名之后的登录参数信息进行对应的加密处理,加密后得到加密后的登录请求,需要说明的是,加密后的登录请求需要使用服务提供方私钥才可以进行解密。
S250:将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
可选地,得到上述加密后的登录请求后,可以将该加密后的登录请求发送给上述服务提供方的后台服务器进行身份验证,身份验证的过程即为通过存储于服务提供方的后台服务器中的私钥对加密后的登录请求进行解密并验证签名,从而实现验证。用户终端可以接收到返回的验证完成的结果。
本申请实施例中提供的基于区块链的用户登录方法中,通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;采用用户私钥对登录参数信息进行签名;根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。其中,通过用户私钥签名、服务提供方公钥进行加密进而进行对应的身份验证可以降低用户信息的泄露风险,并且,对登陆参数信息进行保护,也可以提高登录的安全性。
下面来具体解释本申请实施例中提供的应用于用户终端的基于区块链的用户登录方法的另一具体实施过程。
图3示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的另一流程示意图,请参照图3,通过分布式身份标识应用程序获取登录参数信息之前,该方法还包括:
S310:响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥。
可选地,用户可以基于上述应用程序或者某一具体的网站页面进行注册分布式身份标识的操作,用户终端可以响应于该操作,生成对应的用户公钥以及用户私钥。其中,用户私钥存储于用户终端内。
S320:向区块链发送第一注册请求,以由区块链进行用户注册。
其中,第一注册请求中包括用户公钥。
可选地,得到用户公钥之后,可以基于用户公钥生成对应的第一注册请求,该请求中可以包括上述用户公钥,区块链接收到该请求之后可以进行对应的用户注册,若注册成功可以返回注册用户的分布式身份标识。
S330:从区块链获取注册用户的分布式身份标识。
可选地,区块链返回注册用户的分布式身份标识后,用户终端可以获取该身份标识。
S340:存储注册用户的分布式身份标识以及用户私钥。
可选地,用户终端获取到分布式身份标识之后,可以将该注册用户的分布式身份标识以及用户私钥存储于用户终端中。
本申请实施例提供的一种基于区块链的用户登录方法中,可以响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥;向区块链发送第一注册请求,以由区块链进行用户注册;从区块链获取注册用户的分布式身份标识;存储注册用户的分布式身份标识以及用户私钥。其中,通过上述预先注册的方式可以在用户终端中预存有上述用户的分布式身份标识以及用户私钥,从而便于后续进行身份验证,提高身份验证的效率。
下面来具体解释本申请实施例中提供的应用于用户终端的基于区块链的用户登录方法的又一具体实施过程。
图4示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的又一流程示意图,请参照图4,服务提供方公钥存储于区块链中服务提供方的分布式身份标识文档;根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥,包括:
S410:将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取服务提供方的分布式身份标识文档。
可选地,在进行服务提供方公钥的获取过程中,可以将登录参数信息中所包括的服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,区块链可以通过该查询接口接收该服务提供方的分布式身份标识并基于该身份标识生成服务提供方的分布式身份标识文档(DID文档)。
S420:从服务提供方的分布式身份标识文档中解析获取服务提供方公钥。
其中,服务提供方公钥包括应用程序公钥或者网站公钥。
可选地,获取到服务提供方的分布式身份标识文档之后可以对该DID文档进行解析处理,基于不同类型的服务提供方的分布式身份标识文档可以采用不同类型的解析方式,进而可以在解析完成后得到服务提供方公钥。
需要说明的是,服务提供方可以是应用程序或者网站页面等,对于应用程序,提供的公钥为应用程序公钥,对于网站页面,提供的公钥为网站公钥。
下面来基于不同类型的服务提供方进行分别解释:
可选地,应用程序内嵌分布式身份标识软件开发工具包;服务提供方的分布式身份标识包括:应用程序的分布式身份标识;通过分布式身份标识应用程序获取登录参数信息,包括:响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过调用分布式身份标识软件开发工具包获取应用程序的分布式身份标识。
其中,当服务提供方为应用程序时,对应的分布式身份标识即为应用程序的分布式身份标识。
在获取登录参数信息的过程中,可以响应于登录分布式身份标识应用程序的操作,获取存储于用户终端的用户的分布式身份标识(用户DID)。
可选地,应用程序内嵌分布式身份标识软件开发工具包(SDK,SoftwareDevelopment Kit)可以是应用程序中内嵌的软件应用,在获取登录参数信息的过程中,可以基于该软件获取到对应的应用程序的分布式身份标识。
可选地,登录参数信息还包括:应用程序的后台服务器的统一资源定位符;将加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:根据应用程序的后台服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,统一资源定位符(URL,Uniform Resource Locator)可以是应用程序的后台服务器的地址定位符,在进行身份验证的过程中,可以根据应用程序的后台服务器的统一资源定位符将登录请求发送至应用程序的后台服务器。
可选地,服务提供方的分布式身份标识包括:网站的分布式身份标识;通过分布式身份标识应用程序获取登录参数信息,包括:响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过扫描网站二维码获取网站的分布式身份标识。
其中,当服务提供方为网站页面时,对应的分布式身份标识即为网站的分布式身份标识。
在获取登录参数信息的过程中,可以响应于登录分布式身份标识应用程序的操作,获取存储于用户终端的用户的分布式身份标识(用户DID)。
可选地,对于网站页面,可以进行二维码扫描的方式进行获取登录参数信息,例如在获取登录参数信息的过程中,可以基于扫描结果获取到对应的网页的分布式身份标识。
可选地,登录参数信息还包括:网站服务器的统一资源定位符;将加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:根据网站服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,统一资源定位符(URL,Uniform Resource Locator)可以是网站页面的后台服务器的地址定位符,在进行身份验证的过程中,可以根据网站页面的后台服务器的统一资源定位符将登录请求发送至网站页面的后台服务器。
可选地,登录参数信息还包括:随机数。
可选地,随机数可以是随机生成的多个数字或者字符,可以用于进行用户的验证。
需要说明的是,上述随机数、服务提供方DID、URL均可以是通过对上述登录参数的解析后得到的,在此不作具体限制。
本申请实施例中提供的一种基于区块链的用户登录方法中,可以将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取服务提供方的分布式身份标识文档;从服务提供方的分布式身份标识文档中解析获取服务提供方公钥。其中,基于不同的服务提供方可以采用不同的方式进行处理,进而分别确定用户DID以及服务提供方公钥,可以提高验证方式的多样性。
下面来具体解释本申请实施例中提供的应用于用户终端的基于区块链的用户登录方法的再一具体实施过程。
图5示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录方法的再一流程示意图,请参照图5,响应登录应用程序的操作,获取登录参数信息,包括:
S510:响应登录应用程序的操作,显示授权请求的弹窗。
其中,授权请求的弹窗用于询问用户是否允许通过用户的分布式身份标识登录应用程序。
可选地,在获取登录参数信息的过程中,具体可以响应于登录应用程序的操作,例如用户发起的登录操作等,从而显示预先设置好的授权请求弹窗,该授权请求弹窗可以用于提醒用户进行授权。
S520:响应同意授权请求的操作,获取登录参数信息。
可选地,用户可以基于授权请求的弹窗进行同意授权操作,进而可以获取上述登录参数信息。
本申请实施例中提供的一种基于区块链的用户登录方法中,可以响应登录应用程序的操作,显示授权请求的弹窗;响应同意授权请求的操作,获取登录参数信息。其中,通过授权请求的弹窗可以进一步让用户进行授权确定,从而提高验证的安全性。
下面来具体解释本申请实施例中提供的应用于后台服务器的基于区块链的用户登录方法的具体实施过程。
图6示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的流程示意图,请参照图6,该方法包括:
S610:接收用户终端发送的登录请求。
其中,登录请求由用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到。
S620:使用服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息。
其中,登录参数信息包括:用户的分布式身份标识以及服务提供方的分布式身份标识。
S630:根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证。
可选地,该方法的执行主体可以是上述后台服务器,该后台服务器也即是服务提供方的后台服务器。
该后台服务器可以接收用户终端发送的登录请求,进而基于该后台服务器中预先存储的服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息。
可选地,获取到签名后的登录参数信息之后,可以根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证,上述具体执行过程在前述已经进行了对应的解释,在此不加赘述。
本申请实施例中提供的一种基于区块链的用户登录方法中,可以接收用户终端发送的登录请求;使用服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息;根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证。其中,通过上述方式获取用户公钥,进而基于对应的验证方式进行验证可以提高对身份验证的安全性。
下面来具体解释本申请实施例中提供的应用于后台服务器的基于区块链的用户登录方法的另一具体实施过程。
图7示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的另一流程示意图,请参照图7,接收登录请求之前,该方法还包括:
S710:基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥。
服务提供方注册分布式身份标识的请求可以是后台服务器中生成的请求,可以基于该请求得到服务提供方公钥和服务提供方私钥,其中,服务提供方私钥存储于后台服务器中。
S720:向区块链发送第二注册请求,以由区块链进行服务提供方注册。
其中,第二注册请求中包括服务提供方公钥。
可选地,得到服务提供方公钥之后,可以基于服务提供方公钥生成对应的第二注册请求,该请求中可以包括上述服务提供方公钥,区块链接收到该请求之后可以进行对应的服务提供方身份注册,若注册成功可以返回注册服务提供方的分布式身份标识。
S730:从区块链获取注册服务提供方的分布式身份标识。
可选地,区块链返回注册服务提供方的分布式身份标识后,后台服务器可以获取该身份标识。
本申请实施例提供的一种基于区块链的用户登录方法中,可以基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥;向区块链发送第二注册请求,以由区块链进行服务提供方注册;从区块链获取注册服务提供方的分布式身份标识。其中,通过上述预先注册的方式可以在后台服务器中预存有上述服务提供方的分布式身份标识以及服务提供方私钥,从而便于后续进行身份验证,提高身份验证的效率。
下面来具体解释本申请实施例中提供的应用于后台服务器的基于区块链的用户登录方法的又一具体实施过程。
图8示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录方法的又一流程示意图,请参照图8,用户公钥存储于区块链中用户的分布式身份标识文档;根据用户的分布式身份标识从区块链获取用户公钥,包括:
S810:将用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取用户的分布式身份标识文档。
可选地,在进行用户公钥的获取过程中,可以将登录参数信息中所包括的用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口,区块链可以通过该查询接口接收该用户的分布式身份标识并基于该身份标识生成用户的分布式身份标识文档(DID文档)。
S820:从用户的分布式身份标识文档中解析获取用户公钥。
可选地,获取到用户的分布式身份标识文档之后可以对该DID文档进行解析处理,进而可以在解析完成后得到用户公钥。
下面来具体解释本申请实施例中提供的应用于区块链的分布式身份标识处理方法的具体实施过程。
图9示出了本申请实施例提供的应用于区块链的分布式身份标识处理方法的流程示意图,请参照图9,该方法包括:
S910:接收用户终端发送的第一注册请求。
其中,第一注册请求中包括用户公钥。
可选地,该方法的执行主体可以是上述区块链,该区块链可以接收用户终端发送的第一注册请求。
S920:根据用户公钥,生成用户的分布式身份标识。
可选地,获取到上述用户公钥后,可以基于预设的生成规则生成用户的分布式身份标识。
S930:向用户终端返回用户的分布式身份标识。
可选地,得到用户的分布式身份标识之后,可以将该用户的分布式身份标识返回给用户终端。
下面来具体解释本申请实施例中提供的应用于区块链的分布式身份标识处理方法的另一具体实施过程。
图10示出了本申请实施例提供的应用于区块链的分布式身份标识处理方法的另一流程示意图,请参照图10,该方法还包括:
S1010:接收服务提供方的后台服务器发送的第二注册请求。
其中,第二注册请求中包括服务提供方公钥。
可选地,该区块链可以接收用户终端发送的第二注册请求。
S1020:根据服务提供方公钥,生成服务提供方的分布式身份标识。
可选地,获取到上述服务提供方公钥后,可以基于预设的生成规则生成服务提供方的分布式身份标识。
S1030:向服务提供方返回服务提供方的分布式身份标识。
可选地,得到服务提供方的分布式身份标识之后,可以将该服务提供方的分布式身份标识返回给服务提供方的后台服务器。
下面来具体解释本申请实施例中提供的上述基于区块链的用户登录方法在执行时各个设备之间的交互关系。
图11示出了本申请实施例提供的场景中各个设备之间的交互关系示意图,请参照图11,该方法的具体交互过程如下:
S101:用户终端通过分布式身份标识应用程序获取后台服务器的登录参数信息。
S102:用户终端采用用户私钥对登录参数信息进行签名。
S103:用户终端将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口。
S104:区块链基于服务提供方的分布式身份标识生成服务提供方的分布式身份标识文档。
S105:区块链将服务提供方的分布式身份标识文档返回用户终端。
S106:用户终端从服务提供方的分布式身份标识文档中解析获取服务提供方公钥。
S107:用户终端使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求。
S108:用户终端将加密后的登录请求发送至服务提供方的后台服务器。
S109:后台服务器使用服务提供方私钥对加密后的登录请求进行解密,得到签名后的登录参数信息。
S110:后台服务器将用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口。
S111:区块链基于用户的分布式身份标识生成用户的分布式身份标识文档。
S112:区块链将用户的分布式身份标识文档返回后台服务器。
S113:后台服务器从用户的分布式身份标识文档中解析获取用户公钥并采用用户公钥对签名后的登录参数信息进行验证。
上述具体实施过程在前述已经进行了具体解释,在此不加赘述。
下述对用以执行的本申请所提供的基于区块链的用户登录的方法对应的装置、设备及存储介质等进行说明,其具体的实现过程以及技术效果参见上述,下述不再赘述。
图12示出了本申请实施例提供的应用于用户终端的基于区块链的用户登录装置的结构示意图,请参照图12,该装置包括:第一获取模块410、签名模块420、第二获取模块430、加密模块440以及验证模块450;
第一获取模块410,用于通过分布式身份标识应用程序获取登录参数信息,登录参数信息包括:用户的分布式身份标识和服务提供方的分布式身份标识;
签名模块420,用于采用用户私钥对登录参数信息进行签名;
第二获取模块430,用于根据服务提供方的分布式身份标识从区块链中获取服务提供方公钥;
加密模块440,用于使用服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;
验证模块450,用于将加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
可选地,该装置还包括存储模块,存储模块用于响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥;向区块链发送第一注册请求,以由区块链进行用户注册,第一注册请求中包括用户公钥;从区块链获取注册用户的分布式身份标识;存储注册用户的分布式身份标识以及用户私钥。
可选地,服务提供方公钥存储于区块链中服务提供方的分布式身份标识文档;第二获取模块430,具体用于将服务提供方的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取服务提供方的分布式身份标识文档;从服务提供方的分布式身份标识文档中解析获取服务提供方公钥,服务提供方公钥包括应用程序公钥或者网站公钥。
可选地,应用程序内嵌分布式身份标识软件开发工具包;服务提供方的分布式身份标识包括:应用程序的分布式身份标识;第一获取模块410,具体用于响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过调用分布式身份标识软件开发工具包获取应用程序的分布式身份标识。
可选地,登录参数信息还包括:应用程序的后台服务器的统一资源定位符;验证模块450,具体用于根据应用程序的后台服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,服务提供方的分布式身份标识包括:网站的分布式身份标识;第一获取模块410,具体用于响应登录分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过扫描网站二维码获取网站的分布式身份标识。
可选地,登录参数信息还包括:网站服务器的统一资源定位符;验证模块450,具体用于根据网站服务器的统一资源定位符将登录请求发送至服务提供方的后台服务器。
可选地,第一获取模块410,还用于响应登录应用程序的操作,显示授权请求的弹窗,授权请求的弹窗用于询问用户是否允许通过用户的分布式身份标识登录应用程序;响应同意授权请求的操作,获取登录参数信息。
图13示出了本申请实施例提供的应用于后台服务器的基于区块链的用户登录装置的结构示意图,请参照图13,该装置包括:接收模块510、解密模块520、获取验证模块530;
接收模块510,用于接收用户终端发送的登录请求,登录请求由用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到;
解密模块520,用于使用服务提供方私钥对登录请求进行解密,得到签名后的登录参数信息,登录参数信息包括:用户的分布式身份标识以及服务提供方的分布式身份标识;
获取验证模块530,用于根据用户的分布式身份标识从区块链获取用户公钥,并采用用户公钥对签名后的登录参数信息进行验证。
可选地,获取验证模块530,还用于基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥;向区块链发送第二注册请求,以由区块链进行服务提供方注册,第二注册请求中包括服务提供方公钥;从区块链获取注册服务提供方的分布式身份标识。
可选地,用户公钥存储于区块链中用户的分布式身份标识文档;获取验证模块530,具体用于将用户的分布式身份标识发送至区块链的分布式身份标识合约查询接口,以获取用户的分布式身份标识文档;从用户的分布式身份标识文档中解析获取用户公钥。
图14示出了本申请实施例提供的应用于区块链的分布式身份标识处理装置的结构示意图,请参照图14,该装置包括:接收请求模块610、生成模块620、返回模块630;
接收请求模块610,用于接收用户终端发送的第一注册请求,第一注册请求中包括用户公钥;
生成模块620,用于根据用户公钥,生成用户的分布式身份标识;
返回模块630,用于向用户终端返回用户的分布式身份标识。
可选地,接收请求模块610,还用于接收服务提供方的后台服务器发送的第二注册请求,第二注册请求中包括服务提供方公钥;生成模块620,还用于根据服务提供方公钥,生成服务提供方的分布式身份标识;返回模块630,还用于向服务提供方返回服务提供方的分布式身份标识。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
图15示出了本申请实施例提供的电子设备的结构示意图,请参照图15,电子设备,包括处理器720和存储器710,存储器710存储有能够被处理器720执行的机器可执行指令,处理器720可执行机器可执行指令以实现上述基于区块链的用户登录方法以及分布式身份标识处理方法的步骤。
可选地,该电子设备可以是上述用户终端、后台服务器或者区块链网络存储的实体设备,在此不作限制。
本申请实施例的另一方面,还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述基于区块链的用户登录方法以及分布式身份标识处理方法的步骤。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (19)
1.一种基于区块链的用户登录方法,其特征在于,应用于安装有分布式身份标识应用程序的用户终端,所述用户终端存储有用户的分布式身份标识和用户私钥,所述方法包括:
通过所述分布式身份标识应用程序获取登录参数信息,所述登录参数信息包括:所述用户的分布式身份标识和服务提供方的分布式身份标识;
采用所述用户私钥对所述登录参数信息进行签名;
根据所述服务提供方的分布式身份标识从所述区块链中获取服务提供方公钥;
使用所述服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;
将所述加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
2.根据权利要求1所述的方法,其特征在于,所述通过所述分布式身份标识应用程序获取登录参数信息之前,所述方法还包括:
响应用户注册分布式身份标识的操作,生成用户公钥和用户私钥;
向所述区块链发送第一注册请求,以由所述区块链进行用户注册,所述第一注册请求中包括所述用户公钥;
从所述区块链获取注册用户的分布式身份标识;
存储所述注册用户的分布式身份标识以及所述用户私钥。
3.根据权利要求1所述的方法,其特征在于,所述服务提供方公钥存储于区块链中服务提供方的分布式身份标识文档;
所述根据所述服务提供方的分布式身份标识从所述区块链中获取服务提供方公钥,包括:
将所述服务提供方的分布式身份标识发送至所述区块链的分布式身份标识合约查询接口,以获取所述服务提供方的分布式身份标识文档;
从所述服务提供方的分布式身份标识文档中解析获取所述服务提供方公钥,所述服务提供方公钥包括应用程序公钥或者网站公钥。
4.根据权利要求1所述的方法,其特征在于,所述应用程序内嵌分布式身份标识软件开发工具包;所述服务提供方的分布式身份标识包括:应用程序的分布式身份标识;
所述通过所述分布式身份标识应用程序获取登录参数信息,包括:
响应登录所述分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过调用所述分布式身份标识软件开发工具包获取所述应用程序的分布式身份标识。
5.根据权利要求4所述的方法,其特征在于,所述登录参数信息还包括:所述应用程序的后台服务器的统一资源定位符;
所述将所述加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:
根据所述应用程序的后台服务器的统一资源定位符将所述登录请求发送至所述服务提供方的后台服务器。
6.根据权利要求1所述的方法,其特征在于,所述服务提供方的分布式身份标识包括:网站的分布式身份标识;
所述通过所述分布式身份标识应用程序获取登录参数信息,包括:
响应登录所述分布式身份标识应用程序的操作,获取用户的分布式身份标识,以及,通过扫描网站二维码获取所述网站的分布式身份标识。
7.根据权利要求6所述的方法,其特征在于,所述登录参数信息还包括:网站服务器的统一资源定位符;
所述将所述加密后的登录请求发送至服务提供方的后台服务器进行身份验证,包括:
根据所述网站服务器的统一资源定位符将所述登录请求发送至所述服务提供方的后台服务器。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述登录参数信息还包括:随机数。
9.根据权利要求1所述的方法,其特征在于,所述通过所述分布式身份标识应用程序获取登录参数信息,包括:
响应登录所述应用程序的操作,显示授权请求的弹窗,所述授权请求的弹窗用于询问用户是否允许通过用户的分布式身份标识登录所述应用程序;
响应同意所述授权请求的操作,获取登录参数信息。
10.一种基于区块链的用户登录方法,其特征在于,应用于服务提供方的后台服务器,所述后台服务器存储有服务提供方私钥,所述方法包括:
接收用户终端发送的登录请求,所述登录请求由所述用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到;
使用所述服务提供方私钥对所述登录请求进行解密,得到签名后的登录参数信息,所述登录参数信息包括:所述用户的分布式身份标识以及所述服务提供方的分布式身份标识;
根据所述用户的分布式身份标识从区块链获取用户公钥,并采用所述用户公钥对所述签名后的登录参数信息进行验证。
11.根据权利要求10所述的方法,其特征在于,所述接收用户终端发送的登录请求之前,所述方法还包括:
基于服务提供方注册分布式身份标识的请求,生成服务提供方公钥和服务提供方私钥;
向区块链发送第二注册请求,以由所述区块链进行服务提供方注册,所述第二注册请求中包括所述服务提供方公钥;
从所述区块链获取注册服务提供方的分布式身份标识。
12.根据权利要求11所述的方法,其特征在于,所述用户公钥存储于区块链中用户的分布式身份标识文档;
所述根据所述用户的分布式身份标识从区块链获取所述用户公钥,包括:
将所述用户的分布式身份标识发送至所述区块链的分布式身份标识合约查询接口,以获取所述用户的分布式身份标识文档;
从所述用户的分布式身份标识文档中解析获取所述用户公钥。
13.一种分布式身份标识处理方法,其特征在于,应用于区块链,所述方法包括:
接收用户终端发送的第一注册请求,所述第一注册请求中包括用户公钥;
根据所述用户公钥,生成用户的分布式身份标识;
向所述用户终端返回所述用户的分布式身份标识。
14.根据权利要求13所述的方法,其特征在于,所述方法还包括:
接收服务提供方的后台服务器发送的第二注册请求,所述第二注册请求中包括服务提供方公钥;
根据所述服务提供方公钥,生成服务提供方的分布式身份标识;
向所述服务提供方返回所述服务提供方的分布式身份标识。
15.一种基于区块链的用户登录装置,其特征在于,应用于安装有分布式身份标识应用程序的用户终端,所述用户终端存储有用户的分布式身份标识和用户私钥,所述装置包括:第一获取模块、签名模块、第二获取模块、加密模块以及验证模块;
所述第一获取模块,用于通过所述分布式身份标识应用程序获取登录参数信息,所述登录参数信息包括:所述用户的分布式身份标识和服务提供方的分布式身份标识;
所述签名模块,用于采用所述用户私钥对所述登录参数信息进行签名;
所述第二获取模块,用于根据所述服务提供方的分布式身份标识从所述区块链中获取服务提供方公钥;
所述加密模块,用于使用所述服务提供方公钥对签名后的登录参数信息进行加密,得到加密后的登录请求;
所述验证模块,用于将所述加密后的登录请求发送至服务提供方的后台服务器进行身份验证。
16.一种基于区块链的用户登录装置,其特征在于,应用于服务提供方的后台服务器,所述后台服务器存储有服务提供方私钥,所述装置包括:接收模块、解密模块、获取验证模块;
所述接收模块,用于接收用户终端发送的登录请求,所述登录请求由所述用户终端使用服务提供方公钥对用户的分布式身份标识以及服务提供方的分布式身份标识进行加密得到;
所述解密模块,用于使用所述服务提供方私钥对所述登录请求进行解密,得到签名后的登录参数信息,所述登录参数信息包括:所述用户的分布式身份标识以及所述服务提供方的分布式身份标识;
所述获取验证模块,用于根据所述用户的分布式身份标识从区块链获取用户公钥,并采用所述用户公钥对所述签名后的登录参数信息进行验证。
17.一种分布式身份标识处理装置,其特征在于,应用于区块链,所述装置包括:接收请求模块、生成模块、返回模块;
所述接收请求模块,用于接收用户终端发送的第一注册请求,所述第一注册请求中包括用户公钥;
所述生成模块,用于根据所述用户公钥,生成用户的分布式身份标识;
所述返回模块,用于向所述用户终端返回所述用户的分布式身份标识。
18.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-14任一所述的方法。
19.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111406721.9A CN113961893A (zh) | 2021-11-24 | 2021-11-24 | 基于区块链的用户登录方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111406721.9A CN113961893A (zh) | 2021-11-24 | 2021-11-24 | 基于区块链的用户登录方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113961893A true CN113961893A (zh) | 2022-01-21 |
Family
ID=79471830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111406721.9A Pending CN113961893A (zh) | 2021-11-24 | 2021-11-24 | 基于区块链的用户登录方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113961893A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102760A (zh) * | 2022-06-21 | 2022-09-23 | 上海万向区块链股份公司 | 基于区块链和did的无密码安全登录系统、方法及介质 |
CN115150071A (zh) * | 2022-06-20 | 2022-10-04 | 中国联合网络通信集团有限公司 | 身份认证方法、装置、设备及存储介质 |
CN115982247A (zh) * | 2023-03-15 | 2023-04-18 | 中国信息通信研究院 | 基于区块链的账户信息查询方法和装置、设备和介质 |
-
2021
- 2021-11-24 CN CN202111406721.9A patent/CN113961893A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115150071A (zh) * | 2022-06-20 | 2022-10-04 | 中国联合网络通信集团有限公司 | 身份认证方法、装置、设备及存储介质 |
CN115102760A (zh) * | 2022-06-21 | 2022-09-23 | 上海万向区块链股份公司 | 基于区块链和did的无密码安全登录系统、方法及介质 |
CN115982247A (zh) * | 2023-03-15 | 2023-04-18 | 中国信息通信研究院 | 基于区块链的账户信息查询方法和装置、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI683567B (zh) | 安全校驗方法、裝置、伺服器及終端 | |
CN103295046B (zh) | 生成和使用安全二维码的方法和设备 | |
CN108496382B (zh) | 用于个人身份认证的安全信息传输系统和方法 | |
CN109873805B (zh) | 基于云安全的云桌面登陆方法、装置、设备和存储介质 | |
CN105515783B (zh) | 身份认证方法、服务器及认证终端 | |
CN113961893A (zh) | 基于区块链的用户登录方法、装置、电子设备及存储介质 | |
CN111770057B (zh) | 身份验证系统及身份验证方法 | |
CN111615105B (zh) | 信息提供、获取方法、装置及终端 | |
EP2874074B1 (en) | Method for implementing cross-domain jump, browser, and domain name server | |
CN108075888B (zh) | 动态url生成方法及装置、存储介质、电子设备 | |
CN112615834B (zh) | 一种安全认证方法及系统 | |
CN111130798B (zh) | 一种请求鉴权方法及相关设备 | |
CN110213195B (zh) | 一种登录认证方法、服务器及用户终端 | |
CN115039376B (zh) | 终端设备信息传输方法、设备指纹生成方法及相关产品 | |
CN111131416A (zh) | 业务服务的提供方法和装置、存储介质、电子装置 | |
CN105184557A (zh) | 支付认证方法及系统 | |
CN110505185A (zh) | 身份验证方法、设备和系统 | |
CN117118754B (zh) | 物联网设备的信息交互管理方法、装置、设备及介质 | |
CN108667784B (zh) | 互联网身份证核验信息保护的系统和方法 | |
CN110417740B (zh) | 用户数据的处理方法、智能终端、服务器及存储介质 | |
CN105577606B (zh) | 一种实现认证器注册的方法和装置 | |
Fahl et al. | Trustsplit: usable confidentiality for social network messaging | |
CN111726320B (zh) | 数据处理方法、装置及设备 | |
CN115567271B (zh) | 鉴权方法和装置、页面跳转方法和装置、电子设备及介质 | |
CN114598478B (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 |