Verifiable certificate-based block chain authorization unified login system, third-party platform and system

By registering distributed identities on the blockchain and using verifiable credentials, the challenges of user privacy protection and unified login under the characteristics of blockchain disclosure are solved, and users' trusted unified login and information security are realized, and multi-platform login is supported. Reduces the risk of information leakage.

CN119172059AActive Publication Date: 2024-12-20HUAZHONG UNIV OF SCI & TECH

Patent Information

Application Number
CN202411048737.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-08-01
Publication Date
2024-12-20
Estimated Expiration
2044-08-01

AI Technical Summary

Technical Problem

It is difficult for the existing technology to ensure the privacy and security of users while achieving unified login. Especially under the characteristics of blockchain disclosure, there are challenges in the privacy protection and unified login management of distributed identities.

Method used

By registering a distributed identity on the blockchain, using verified credentials for unified login. The credentials are generated by the identity provider and saved by the user, including user information ciphertext, distributed identity identifier, and distributed identity identity identity of the identity provider For symbols, vouchers validity period and digital signature, third-party platforms verify the validity and signature of vouchers through blockchain, avoiding users from entering account passwords, and ensuring the encryption and privacy of user information.

Benefits of technology

It realizes the trusted unified login function of users without relying on centralized institutions, reduces the risk of information leakage, ensures the security and privacy protection of user information, and supports multi-platform login, avoiding users registering on different platforms. Multiple accounts need.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119172059A_ABST
    Figure CN119172059A_ABST
Patent Text Reader

Abstract

The invention discloses a verifiable certificate-based block chain authorized unified login method, a third-party platform and a system, and belongs to the field of digital identity authentication, and the method comprises the following steps: after the third-party platform receives a login request sent by a user, executing the following steps: returning a random character string S to the user, the user encrypts S by using a private key of the user and then sends the S and a verifiable certificate to a third-party platform, and the verifiable certificate is issued by an identity provider; requesting a user public key PKu from a block chain; and if the random character string is consistent with S and the verifiable certificate is still in a valid period, requesting a public key PKp of an identity provider from the block chain, verifying a digital signature of the verifiable certificate by using the PKp, if the verification is passed, decrypting the user ciphertext information by using the PKp, judging whether the user is a user of a third-party platform, and if yes, sending the user to the third-party platform. And if so, returning successful login. According to the invention, the credible unified login function can be realized without depending on a centralized mechanism, and the risk of user information leakage is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of digital identity authentication, and more specifically, to a blockchain-authorized unified login method, a third-party platform, and a system based on verifiable credentials. Background Art

[0002] Digital identity is the basis for users to conduct digital activities. With the rapid popularization of digital technology in today's society, digital identity authentication for Internet users has become increasingly important. However, the current management model of digital identity authentication is mainly centralized, with user identities created by enterprises and user information managed by enterprises. This not only results in the sovereignty of user information not belonging to the user, but may also cause the leakage and abuse of user information by enterprises during the process of multi-party login. In addition, centralized identity management solutions are susceptible to single point failures, and due to the closed nature of centralized solutions, identity information lacks the characteristics of auditability and traceability.

[0003] With the rapid development of blockchain technology, researchers have proposed the concept of distributed identity. Blockchain is a decentralized distributed database technology. All transactions need to be verified and agreed upon. Once a transaction is recorded in a block, it cannot be changed, which makes blockchain a highly trusted and reliable distributed ledger. Distributed identity uses asymmetric encryption and digital signature technology to make the owner of the private key the only owner of this identity, and store information such as the public key on the chain. This not only ensures the reliability of the public key information, but also makes the distributed identity independent of centralized nodes. However, due to the public nature of blockchain, privacy protection and unified login management of distributed identities have become a challenging task.

[0004] According to the disclosed technical solutions, the technical solution with publication number CN116827520B proposes a distributed identity authentication system based on WEB3 technology, which divides the authentication information of the first user into n information fragments, respectively to n authentication nodes and establishes an authentication index. After receiving the authentication request of other users for the first user, m authentication nodes are selected as the selected authentication nodes, thereby ensuring the access and authentication reliability of a large amount of user data; the technical solution with publication number CN116527328A proposes a cross-platform resource access method and a unified login platform. Users log in to the third-party platform by requesting the Token of the unified login platform, which simplifies the complex login operation when accessing cross-platform resources. process, improving resource access efficiency; the technical solution with publication number CN117278242A proposes a distributed identity aggregation authentication method based on a cross-alliance chain based on a contract, constructs a Merkle tree according to the identity information, verifies the identity information by providing the path of the Merkle tree, adds randomization to avoid providing redundant information, and can effectively respond to the needs of obtaining and verifying identity information across application chains; the technical solution with publication number CN117294719A proposes a communication authentication and point-to-point encrypted transmission method and device based on DID, which can realize trusted identity communication without relying on the national electronic root CA certificate system, realize trusted point-to-point communication between entities, and reduce the possibility of information leakage.

[0005] The above technical solutions all propose several means of distributed identity authentication and identity information transmission. However, these technical solutions cannot guarantee the privacy security of users while achieving unified login. Summary of the invention

[0006] In view of the defects and improvement needs of the prior art, the present invention provides a blockchain-authorized unified login method, a third-party platform and a system based on verifiable credentials, the purpose of which is to achieve a trusted unified login function and reduce the risk of user information leakage without relying on a centralized organization for identity management.

[0007] To achieve the above object, according to one aspect of the present invention, a blockchain-authorized unified login method based on verifiable credentials is provided, comprising: after any third-party platform receives a login request sent by a user, performing the following steps:

[0008] S1: Return a random string S to the user, so that the user can encrypt the random string S with his private key and send it to the third-party platform together with the verifiable certificate;

[0009] The verifiable credential is issued by the identity provider to the user and saved by the user; both the user and the identity provider have registered the distributed identity with the blockchain using the public key in the locally generated public-private key pair, and the distributed identity identifier returned by the blockchain is stored locally; the verifiable credential includes the user information ciphertext, the user's distributed identity identifier, the identity provider's distributed identity identifier, the credential validity period and the digital signature; the user information ciphertext is generated by the identity provider using its private key to encrypt the user information, and the user information includes basic information such as the user name; the digital signature is generated by the identity provider using its private key;

[0010] S2: Request the user’s public key PK from the blockchain using the user’s distributed identity identifier in the verifiable credential u ;

[0011] S3: Using PK u After decrypting the encrypted random string, compare it with the random string S. If they are consistent, go to S4; otherwise, return a login failure to the user.

[0012] S4: Determine whether the verifiable credential is still valid. If so, use the distributed identity identifier of the identity provider in the verifiable credential to request the public key PK of the identity provider from the blockchain. p , and transfer to S5; otherwise, return login failure to the user;

[0013] S5: Utilizing PK p Verify the digital signature of the verifiable credential. If the verification is successful, proceed to S6; otherwise, return a login failure to the user.

[0014] S6: Use PK p After decrypting the user's ciphertext information in the verifiable credential, determine whether the user is a user of the third-party platform. If so, return a successful login to the user;

[0015] Among them, users, identity providers and third-party platforms are all nodes connected to the blockchain.

[0016] Furthermore, step S6 further includes:

[0017] If the user is not a user of the third-party platform, the decrypted user information is used to create a corresponding account, and a successful login is returned to the user.

[0018] Furthermore, the blockchain authorized unified login method based on verifiable credentials provided by the present invention also includes:

[0019] At the initial moment, the user generates a public key PK locally using an asymmetric encryption algorithm u and private key SK u , and use the public key PK uRegister the distributed identity to the blockchain so that the blockchain can save the public key PK u , and returns the user's distributed identity identifier DID to the user u ; The identity provider uses an asymmetric encryption algorithm to generate a public key PK locally p and private key SK p , and use the public key PK p Register the distributed identity to the blockchain so that the blockchain can save the public key PK p , and returns the distributed identity identifier DID of the identity provider to the identity provider p .

[0020] The blockchain authorized unified login method based on verifiable credentials provided by the present invention also includes:

[0021] After both the user and the identity provider complete the distributed identity registration, the user sends the user information and the user's distributed identity identifier DID to the identity provider. u , so that the identity provider uses its private key SK p Encrypt user information, obtain the ciphertext of user information, and generate a verifiable credential.

[0022] Furthermore, when the user and the identity provider generate a public-private key pair locally, the asymmetric encryption algorithm used is the SM2 algorithm.

[0023] According to another aspect of the present invention, there is provided a third-party platform, including a receiving module and a verification module;

[0024] A receiving module is used to receive a login request sent by a user and trigger a verification module after receiving the login request sent by the user;

[0025] The verification module includes a computer-readable storage medium and a processor; the computer-readable storage medium is used to store a computer program, and the processor is used to read the computer program stored in the computer-readable storage medium, and execute steps S1 to S6 of the above-mentioned blockchain authorized unified login method based on verifiable credentials provided by the present invention.

[0026] According to another aspect of the present invention, a blockchain-authorized unified login system based on verifiable credentials is provided, comprising: a blockchain, a user, an identity provider, and the third-party platform provided by the present invention, wherein the user, the identity provider, and the third-party platform are all nodes connected to the blockchain;

[0027] User, used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment u and private key SK u , and use the public key PK u Register the distributed identity to the blockchain so that the blockchain can save the public key PKu , and returns the user's distributed identity identifier DID to the user u ;

[0028] The identity provider is used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment. p and private key SK p , and use the public key PK p Register the distributed identity to the blockchain so that the blockchain can save the public key PK p , and returns the distributed identity identifier DID of the identity provider to the identity provider p ;

[0029] The user is also used to send user information and the user's distributed identity identifier DID to the identity provider after both the user and the identity provider have completed the distributed identity registration. u , so that the identity provider uses its private key SK p Encrypt the user information, obtain the ciphertext of the user information, and generate a verifiable credential; the verifiable credential includes: the ciphertext of the user information, the distributed identity identifier of the user, the distributed identity identifier of the identity provider, the validity period of the credential, and the digital signature; the ciphertext of the user information is generated by the identity provider using its private key to encrypt the user information, and the user information includes the user name; the digital signature is generated by the identity provider using its private key;

[0030] The user is also used to send a login request to the third-party platform when logging in to the third-party platform is needed.

[0031] Furthermore, the blockchain-authorized unified login system based on verifiable credentials provided by the present invention has multiple third-party platforms for providing different services.

[0032] In general, the above technical solutions conceived by the present invention can achieve the following beneficial effects:

[0033] (1) In the present invention, the verifiable credential used to verify the user's identity is provided by a dedicated identity provider, which ensures the reliability of the verifiable credential. When performing login verification, the user's distributed identity identifier is first used to request the user's public key from the blockchain, and then the random string encrypted by the user's private key is decrypted and compared for verification to prevent illegal access by imposters and to terminate the subsequent complex verification process in a timely manner, thereby avoiding the waste of computing resources. After that, verification is performed based on the verifiable credential, which includes the verification of the validity period of the verifiable credential, the verification of the digital signature, and the verification of the user information in sequence. The entire verification process only relies on the public key of the identity provider obtained from the blockchain, and the user does not need to enter the account password information, thereby avoiding the problem of account leakage. In addition, the user information in the verifiable credential has been encrypted, thereby avoiding the abuse and leakage of user information, and effectively ensuring the privacy and security of the user. In addition, the verifiable credential is platform-independent, and the same verifiable credential can be used for multiple third-party platforms to achieve unified login. In general, the present invention realizes the unified login function through blockchain technology, distributed identity and verifiable credential, and effectively protects the privacy and security of the user.

[0034] (2) In the preferred embodiment of the present invention, when the random character string, the validity period of the verifiable credential, and the digital signature verification are all passed, if it is determined based on the user information that the user is not a user of the third-party platform, the decrypted user information will be used to create a corresponding account, allowing the user to log in and provide corresponding services to the user, thereby enabling the user to quickly access different third-party platform resources and avoiding the user from registering multiple accounts on different platforms. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1 A flowchart of a unified blockchain authorization login method based on verifiable credentials provided in an embodiment of the present invention;

[0036] Figure 2 A schematic diagram of the timing of a user logging into a third-party platform provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0037] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below can be combined with each other as long as they do not conflict with each other.

[0038] In the present invention, the terms "first", "second", etc. (if any) in the present invention and the drawings are used to distinguish similar objects but not necessarily to describe a specific order or sequence.

[0039] In order to realize unified login based on distributed identity while ensuring user privacy and security, the present invention provides a blockchain-authorized unified login method, a third-party platform and a system based on verifiable credentials, which can realize a trusted unified login function without relying on the identity management of a centralized organization, and reduce the risk of information leakage. The system involved in the present invention includes multiple nodes connected to the blockchain network, and these nodes can be divided into users, identity providers and third-party platforms according to their functions; these nodes need to have the ability to interact with the blockchain, and complete the registration of distributed identities, the issuance and verification of verifiable credentials through smart contracts; the registration of distributed identities will store the public key and identity address of the node in the blockchain; the identity provider provides the user with a verifiable credential carrying identity information and performs asymmetric encryption on the identity information and digitally signs the entire verifiable credential; the third-party platform can verify and decrypt the verifiable credential according to the public key of the identity provider; the user carries the verifiable credential to request services from different third-party platforms, and the ability of unified login can be realized.

[0040] The following are examples.

[0041] Embodiment 1:

[0042] A blockchain-based unified login method for authorization based on verifiable credentials, such as Figure 1 As shown, it mainly includes three stages:

[0043] Phase 1: Users and identity providers register distributed identities on the blockchain;

[0044] The second stage: the user requests the identity provider to provide a verifiable credential VC that carries encrypted identity information;

[0045] The third stage: The user sends a login request to the third-party platform based on the verifiable credentials VC for unified login.

[0046] The specific implementation of each stage is described in detail below.

[0047] like Figure 1 As shown, the first stage specifically includes the following steps:

[0048] R1: The user generates a public key PK locally using an asymmetric encryption algorithm u and private key SK u The identity provider uses an asymmetric encryption algorithm to generate a public key PK locally p and private key SK u ;

[0049] Optionally, in order to further improve encryption performance, in this embodiment, the user and the identity provider both use the SM2 algorithm to generate public keys and private keys; in some other embodiments of the present invention, other asymmetric encryption algorithms such as RSA may also be used;

[0050] R2: User uses public key PK u Call the smart contract to register the distributed identity to the blockchain, and the identity provider uses the public key PK p Call the smart contract to register the distributed identity to the blockchain;

[0051] R3: Blockchain saves public key PK u and PK p , and returns the user's distributed identity identifier DID to the user u , returns the distributed identity identifier DID of the identity provider to the identity provider p .

[0052] In this embodiment, the private key is kept by the user and the identity provider to avoid leakage. After the blockchain receives the request to register a distributed identity, it will execute the corresponding smart contract to generate a DID Document for recording the distributed identity information. The specific format is as follows:

[0053] {"id":"string","authentication":{"type":"string","publicKeyMultibase":"string"}};

[0054] Among them, "id" represents the distributed identity identifier, "authentication" represents the public key information, "type" represents the encryption scheme, "publicKeyMultibase" represents the public key; "string" means storage in string format.

[0055] The blockchain will return the id of the corresponding DID Document as a distributed identity identifier to the user and the identity provider.

[0056] This embodiment is based on distributed identity technology, allowing the owner of the private key to become the sole owner of this identity, and storing information such as the public key on the chain to ensure the reliability of relevant information.

[0057] The second phase includes the following steps:

[0058] V1: The user sends user information and the user's distributed identity identifier to the identity provider to apply for a verifiable credential; the user information includes real information used to verify the user's identity, as well as basic information such as the user name;

[0059] V2: After the identity provider verifies the user's identity, it uses its public key SK p Encrypt user information and generate user information ciphertext;

[0060] V3: The identity provider generates a verifiable credential VC; wherein the verifiable credential VC includes: user information ciphertext, the user's distributed identity identifier, the identity provider's distributed identity identifier, the credential validity period and the digital signature; wherein the digital signature is generated by the identity provider using its private key;

[0061] Optionally, in this embodiment, the format of the verifiable credential VC is:

[0062] {"id":"string","type":"string","issuer":"string","issuanceDate":"int","expirationDate":"int","credentialSubject":{"did":"string","personInfoEnc":"string"},"proof":{"type":"string","proofValue":"string"}};

[0063] Among them, "id" represents the ID of the verifiable credential, "type" represents the type, "issuer" represents the distributed identity identifier of the identity provider, "issuanceDate" represents the issuance time of the verifiable credential VC, "expirationDate" represents the expiration time of the verifiable credential, "credentialSubject" represents the content of the verifiable credential VC, "did" represents the distributed identity identifier of the user, "personInfoEnc" represents the user information ciphertext, "proof" represents the digital signature of the verifiable credential VC, "proofValue" represents the digital signature content, "string" represents storage in string format, and "int" represents storage in integer format;

[0064] V4: The identity provider sends the verifiable credential VC to the user, who keeps it safe.

[0065] Based on the verifiable credentials VC issued in the second phase, users can apply to log in to different third-party platforms to achieve a unified login function. Specifically, the third phase includes:

[0066] The user sends a login request to the third-party platform, such as Figure 2 As shown, after receiving the user's login request, the third-party platform performs the following steps:

[0067] S1: Return a random string S to the user so that the user can use his private key SK u After encrypting the random string S, a ciphertext ENC_S is generated, and the ciphertext ENC_S is sent to the third-party platform together with the verifiable credential VC; the user and the third-party platform negotiate the random string and encrypt it using the user's private key, which can ensure that the logged-in subject is the user himself in the candidate verification;

[0068] S2: Use the user's distributed identity identifier in the verifiable credential VC to request the user's public key PK from the blockchain u ;

[0069] S3: Using PK u After decrypting the ciphertext ENC_S, it is compared with the random string S. If they are consistent, it goes to S4; otherwise, it returns a login failure to the user.

[0070] S4: Determine whether the verifiable credential is still valid. If so, use the distributed identity identifier of the identity provider in the verifiable credential to request the public key PK of the identity provider from the blockchain. p , and transfer to S5; otherwise, return login failure to the user;

[0071] S5: Utilizing PK p Verify the digital signature of the verifiable credential. If the verification is successful, proceed to S6; otherwise, return a login failure to the user.

[0072] S6: Use PK p After decrypting the user's ciphertext information in the verifiable credential, determine whether the user is a user of the third-party platform. If so, return a successful login to the user;

[0073] Considering that the user identity is credible when the random string, the validity period of the verifiable credential, and the digital signature verification are all passed, therefore, in this embodiment, step S6 further includes:

[0074] If the user is not a user of the third-party platform, the corresponding account is created using the decrypted user information, and a successful login is returned to the user, thereby enabling the user to quickly access different third-party platform resources and avoiding the user from registering multiple accounts on different platforms. It is easy to understand that the account created in this way will only be granted default permissions.

[0075] The above steps S1 to S6 can be performed multiple times to log in to different third-party platforms. In this embodiment, the distributed identity and verifiable credentials are based on the W3C standard and have better cross-platform capabilities. It is easy to understand that, considering the verification requirements of the third-party platform that actually needs to be logged in, when the user applies for a verifiable credential from the identity provider, the user information may include other information in addition to the user name. For example, if you need to log in to a third-party platform for purchasing train tickets, the user information must also include ID card information. If you need to log in to a third-party platform for purchasing tobacco and alcohol, the user information must also include age information.

[0076] In general, this embodiment realizes the function of unified login through distributed identity DID, verifiable credentials VC, blockchain technology and privacy protection technology, and can quickly access the resources of different third-party platforms, avoiding the creation of users registering multiple accounts in different systems. At the same time, because of the use of asymmetric encryption technology, users do not need to enter their account passwords when logging into each platform, avoiding problems such as account leakage. In addition, user information is encrypted to avoid abuse and leakage of user information. Finally, a random string is encrypted with the user's private key to determine whether the user is the holder of the private key, which is used to prevent illegal access by imposters.

[0077] Embodiment 2:

[0078] A third-party platform is used to implement the above steps S1 to S6. Specifically, the third-party platform provided in this embodiment includes:

[0079] Receiving module and verifying module;

[0080] A receiving module is used to receive a login request sent by a user and trigger a verification module after receiving the login request sent by the user;

[0081] The verification module includes a computer-readable storage medium and a processor; the computer-readable storage medium is used to store a computer program, and the processor is used to read the computer program stored in the computer-readable storage medium, and execute steps S1 to S6 in the above-mentioned blockchain authorized unified login method based on verifiable credentials provided by the present invention.

[0082] Embodiment 3:

[0083] A blockchain-based unified login system for authorization based on verifiable credentials, comprising: a blockchain, a user, an identity provider, and a third-party platform provided in the above-mentioned embodiment 2, wherein the user, the identity provider, and the third-party platform are all nodes connected to the blockchain;

[0084] User, used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment u and private key SK u , and use the public key PKu Register the distributed identity to the blockchain so that the blockchain can save the public key PK u , and returns the user's distributed identity identifier DID to the user u ;

[0085] The identity provider is used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment. p and private key SK p , and use the public key PK p Register the distributed identity to the blockchain so that the blockchain can save the public key PK p , and returns the distributed identity identifier DID of the identity provider to the identity provider p ;

[0086] The user is also used to send user information and the user's distributed identity identifier DID to the identity provider after both the user and the identity provider have completed the distributed identity registration. u , so that the identity provider uses its private key SK p Encrypt the user information, obtain the ciphertext of the user information, and generate a verifiable credential; the verifiable credential includes: the ciphertext of the user information, the distributed identity identifier of the user, the distributed identity identifier of the identity provider, the validity period of the credential, and the digital signature; the ciphertext of the user information is generated by the identity provider using its private key to encrypt the user information, and the user information includes the user name; the digital signature is generated by the identity provider using its private key;

[0087] Users are also used to send login requests to third-party platforms when they need to log in to the third-party platform;

[0088] Optionally, in this embodiment, there are multiple third-party platforms for providing different services.

[0089] It will be easily understood by those skilled in the art that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A blockchain-based unified login method for authorization based on verifiable credentials, characterized in that: include: After any third-party platform receives the login request sent by the user, it performs the following steps: S1: Return a random string S to the user, so that the user encrypts the random string S with his private key and sends it to the third-party platform together with the verifiable credential; The verifiable credential is issued by the identity provider to the user and is saved by the user; the user and the identity provider have registered the distributed identity with the blockchain using the public key in the locally generated public-private key pair, and the distributed identity identifier returned by the blockchain is stored locally; the verifiable credential includes the user information ciphertext, the user's distributed identity identifier, the distributed identity identifier of the identity provider, the credential validity period and the digital signature; the user information ciphertext is generated by the identity provider using its private key to encrypt the user information, and the user information includes the user name; the digital signature is generated by the identity provider using its private key; S2: Request the user's public key PK from the blockchain using the user's distributed identity identifier in the verifiable credential u ; S3: Using PK u After decrypting the encrypted random string, compare it with the random string S. If they are consistent, go to S4; otherwise, return a login failure to the user. S4: Determine whether the verifiable credential is still valid. If so, use the distributed identity identifier of the identity provider in the verifiable credential to request the public key PK of the identity provider from the blockchain. p , and transfer to S5; otherwise, return login failure to the user; S5: Utilizing PK p Verify the digital signature of the verifiable credential. If the verification is successful, proceed to S6; otherwise, return a login failure to the user. S6: Use PK p After decrypting the user ciphertext information in the verifiable credential, determining whether the user is a user of the third-party platform, and if so, returning a login success to the user; Among them, users, identity providers and third-party platforms are all nodes connected to the blockchain.

2. The blockchain-based unified login method for authorization based on verifiable credentials as claimed in claim 1, characterized in that: Step S6 also includes: If the user is not a user of the third-party platform, a corresponding account is created using the decrypted user information, and a successful login is returned to the user.

3. The blockchain-based unified login method for authorization based on verifiable credentials as claimed in claim 1 or 2, characterized in that: Also includes: At the initial moment, the user generates a public key PK locally using an asymmetric encryption algorithm u and private key SK u , and use the public key PK u Register the distributed identity with the blockchain so that the blockchain stores the public key PK u , and returns the user's distributed identity identifier DID to the user u ; The identity provider generates a public key PK locally using an asymmetric encryption algorithm p and private key SK p , and use the public key PK p Register the distributed identity with the blockchain so that the blockchain stores the public key PK p , and returns the distributed identity identifier DID of the identity provider to the identity provider p .

4. The blockchain-based unified login method for authorization based on verifiable credentials as claimed in claim 3, characterized in that: Also includes: After the user and the identity provider complete the distributed identity registration, the user sends the user information and the user's distributed identity identifier DID to the identity provider. u , so that the identity provider uses its private key SK p The user information is encrypted to obtain the ciphertext of the user information, and then the verifiable credential is generated.

5. The blockchain-based unified login method for authorization based on verifiable credentials as claimed in claim 4, characterized in that: When the user and the identity provider generate a public-private key pair locally, the asymmetric encryption algorithm used is the SM2 algorithm.

6. A third-party platform, characterized in that: It includes a receiving module and a verification module; The receiving module is used to receive a login request sent by a user, and trigger the verification module after receiving the login request sent by the user; The verification module includes a computer-readable storage medium and a processor; The computer-readable storage medium is used to store a computer program, and the processor is used to read the computer program stored in the computer-readable storage medium to execute steps S1 to S6 in claim 1 or 2.

7. A blockchain-based unified login system for authorization based on verifiable credentials, characterized in that: include: A blockchain, a user, an identity provider, and the third-party platform of claim 6, wherein the user, the identity provider, and the third-party platform are all nodes connected to the blockchain; The user is used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment. u and private key SK u , and use the public key PK u Register the distributed identity with the blockchain so that the blockchain stores the public key PK u , and returns the user's distributed identity identifier DID to the user u ; The identity provider is used to generate a public key PK locally using an asymmetric encryption algorithm at the initial moment. p and private key SK p , and use the public key PK p Register the distributed identity with the blockchain so that the blockchain stores the public key PK p , and returns the distributed identity identifier DID of the identity provider to the identity provider p ; The user is also used to send user information and the user's distributed identity identifier DID to the identity provider after both the user and the identity provider complete the distributed identity registration. u , so that the identity provider uses its private key SK p Encrypting the user information, obtaining the ciphertext of the user information, and generating a verifiable credential; the verifiable credential includes: the ciphertext of the user information, the distributed identity identifier of the user, the distributed identity identifier of the identity provider, the validity period of the credential, and the digital signature; The user information ciphertext is generated by the identity provider using its private key to encrypt the user information, wherein the user information includes the user name; the digital signature is generated by the identity provider using its private key; The user is also used to send a login request to the third-party platform when it is necessary to log in to the third-party platform.

8. The blockchain-based unified login system for authorization based on verifiable credentials as claimed in claim 7, characterized in that: There are multiple third-party platforms for providing different services.

Citation Information

Patent Citations

  • Secure decentralized self-sovereign identity authentication protocol method for privacy protection

    CN113204783A

  • Authentication method and system based on key derived function, client and server

    CN116566705A

  • Railing for deck load

    KR102814973B1

  • System and method for blockchain-based cross-entity authentication

    US20200145229A1

  • Identity verification method and system, storage medium, and chip

    WO2024140274A1

Cited By

  • Distributed identity association and verification method and system combining alliance chain and trusted CA

    CN121664423A