User invitation method and apparatus, computer device, and computer readable storage medium
Patent Information
- Application Number
- CN202010296248.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-04-15
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2040-04-15
AI Technical Summary
但是,这个二维码被分享出去之后,即可被无限次转发,无法控制其传播范围,获取到二维码的各个用户均可以通过扫码来获取二维码中的信息,也即是,获取到二维码的用户均可以响应用户邀请,这就导致邀请发起用户无法控制用户邀请的范围,对于被邀请的用户也无法确定是通过哪种途径收到邀请的
[0018]本申请实施例提供的技术方案,通过接收目标邀请链接,在访问目标邀请链接时提供终端当前登录用户的用户标识,判断当前登录用户是否为被邀请用户,响应于当前登录用户是被邀请用户,从该服务器获取目标邀请链接所对应的目标二维码的私钥,应用私钥对目标二维码进行解密,响应于该目标二维码解密成功,显示该目标二维码所指示的目标邀请页面;响应于对该目标邀请页面的提交操作,将该目标邀请页面中已填写的用户信息提交至该服务器。应用上述方案,通过对二维码进行加密,只有被邀请用户可以进行解密,确保二维码中信息的安全性,避免二维码被盗刷。
Smart Images

Figure CN111506884B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of Internet technology, and in particular to a user invitation method, apparatus, computer device, and computer-readable storage medium. Background Technology
[0002] With the development of internet technology, more and more information can be conveyed through QR codes. For example, in user invitation scenarios, QR codes can be used to convey invitation information, inviting users to join a group. Invited users can scan the QR code to join the group. However, once a QR code is shared, it can be forwarded an unlimited number of times, making its spread uncontrollable. Any user who obtains the QR code can scan it to access the information within, meaning any user who obtains the QR code can respond to the user's invitation. This results in the user initiating the invitation having no control over the scope of the invitation, and the invited user being unable to determine how they received the invitation. Therefore, how to control the spread of QR codes and prevent their misuse is an important research direction. Summary of the Invention
[0003] This application provides a user invitation method, apparatus, computer device, and computer-readable storage medium, which can prevent QR code theft and provide QR code data security. The technical solution is as follows: On the one hand, a user invitation method is provided, which includes: In response to the triggering operation of the target invitation link on the server, the user identifier of the currently logged-in user of the terminal is obtained. The target invitation link is a link to the target QR code, which is used to indicate a jump to the target invitation page. Accessing the target invitation link based on the user identifier, and in response to the user identifier matching the target user identifier corresponding to the target invitation link, obtaining the private key of the target QR code from the server; The private key is used to decrypt the target QR code linked to by the target invitation link. In response to the successful decryption of the target QR code, the target invitation page is displayed. In response to the submission operation of the target invitation page, the user information filled in on the target invitation page is submitted to the server.
[0004] On the one hand, a user invitation method is provided, which includes: Send a target invitation link to the terminal. The target invitation link corresponds to the target user identifier. The target invitation link is a link to a target QR code. The target QR code is used to indicate that the user should be redirected to the target invitation page. Receive an access request for the target invitation link, the access request carrying the user identifier of the currently logged-in user of the terminal; In response to the user identifier matching the user identifier of the target user, the private key of the target QR code is sent to the terminal, and the terminal decrypts the target QR code based on the private key and displays the target invitation page; In response to a submission request to the target invitation page, retrieve the user information already filled in on the target invitation page; Based on the consensus mechanism, the user information is stored in the blockchain.
[0005] On the one hand, a user invitation device is provided, the device comprising: The identifier acquisition module is used to obtain the user identifier of the currently logged-in user of the terminal in response to the triggering operation of the target invitation link of the server. The target invitation link is a link to the target QR code, which is used to indicate the jump to the target invitation page. The private key acquisition module is used to access the target invitation link based on the user identifier. In response to the user identifier matching the target user identifier corresponding to the target invitation link, the module obtains the private key of the target QR code from the server. The decryption module is used to decrypt the target QR code pointed to by the target invitation link using the private key. In response to the successful decryption of the target QR code, the target invitation page is displayed. The sending module is used to respond to the submission operation of the target invitation page and submit the user information filled in on the target invitation page to the server.
[0006] In one possible implementation, the decryption module is used for: Display the application page from the target invitation page; In response to a submission request for the application page, display the information entry page from the target invitation page.
[0007] In one possible implementation, the device further includes: The display module is used to display the invitation card, which is associated with the target invitation link.
[0008] In one possible implementation, the display module is used for: In response to displaying the target invitation page, the target invitation code is obtained from the card title of the invitation card and then filled into the invitation code display area of the target invitation page.
[0009] In one possible implementation, the display module is used for: In response to displaying the target invitation page, a target invitation code is generated based on the private key, and the target invitation code is filled into the invitation code display area of the target invitation page.
[0010] In one possible implementation, the device further includes: The detection module is used to detect whether the target client is currently installed on the terminal; if not, a download guide option is displayed on the successful submission page, which guides the user to download the target client provided by the server.
[0011] On the one hand, a user invitation device is provided, the device comprising: The sending module is used to send a target invitation link to the terminal. The target invitation link corresponds to the target user identifier. The target invitation link is a link to a target QR code. The target QR code is used to indicate that the user should be redirected to the target invitation page. The receiving module is used to receive access requests for the target invitation link, and the access request carries the user identifier of the currently logged-in user of the terminal. The sending module is used to send the private key of the target QR code to the terminal in response to the user identifier matching the user identifier of the target user. The terminal then decrypts the target QR code based on the private key and displays the target invitation page. The acquisition module is used to retrieve the user information already filled in on the target invitation page in response to a submission request for the target invitation page; The storage module is used to store the user information in the blockchain based on a consensus mechanism.
[0012] In one possible implementation, the device further includes: The generation module is used to generate the target QR code; in response to a sharing request for the target QR code, it generates the target invitation link based on the QR code.
[0013] In one possible implementation, the generation module is used for: In response to a request to share the target QR code, obtain the public and private keys corresponding to the target QR code from the authentication platform; The public key is used to encrypt the target QR code; Generate an invitation link for the target based on the encrypted target QR code.
[0014] In one possible implementation, the device further includes: The review module is used to review user qualifications based on target conditions and user information, including data restriction information corresponding to the user information; in response to the user qualification review being passed, the module executes the step of storing the user information to the blockchain.
[0015] In one possible implementation, the storage module is used for: Obtain the user ID of the user who initiated the invitation; Based on the user identifier of the user who initiated the invitation and the user information, construct the target data; Based on the consensus mechanism, the target data is stored in the blockchain.
[0016] On one hand, a computer device is provided, the computer device including one or more processors and one or more memories, the one or more memories storing at least one piece of program code, the at least one piece of program code being loaded and executed by the one or more processors to implement the operations performed by the user invitation method.
[0017] On one hand, a computer-readable storage medium is provided that stores at least one piece of program code, which is loaded and executed by a processor to implement the operations performed by the user invitation method.
[0018] The technical solution provided in this application, upon receiving a target invitation link and providing the user identifier of the currently logged-in user when accessing the link, determines whether the currently logged-in user is an invited user. If the currently logged-in user is an invited user, the private key of the target QR code corresponding to the target invitation link is obtained from the server, and the target QR code is decrypted using the private key. If the target QR code is successfully decrypted, the target invitation page indicated by the target QR code is displayed. In response to a submission operation on the target invitation page, the user information already filled in on the target invitation page is submitted to the server. By applying the above solution, the QR code is encrypted, and only the invited user can decrypt it, ensuring the security of the information in the QR code and preventing its unauthorized use. Attached Figure Description
[0019] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0020] Figure 1 This is a schematic diagram illustrating the implementation environment of a user invitation method provided in an embodiment of this application; Figure 2 This is a data interaction diagram of an authentication platform provided in an embodiment of this application; Figure 3 This is a flowchart of a user invitation method provided in an embodiment of this application; Figure 4 This is a flowchart of a user invitation method provided in an embodiment of this application; Figure 5 This is a flowchart of a user invitation method provided in an embodiment of this application; Figure 6This is a schematic diagram of a user-introduced page provided in an embodiment of this application; Figure 7 This is a schematic diagram of an invitation card provided in an embodiment of this application; Figure 8 This is a schematic diagram of a target invitation page provided in an embodiment of this application; Figure 9 This is a schematic diagram of a successful submission page provided in an embodiment of this application; Figure 10 This is a schematic diagram illustrating an example of inviting merchants to join a live streaming platform, as provided in an embodiment of this application. Figure 11 This is a schematic diagram of the structure of a user invitation device provided in an embodiment of this application; Figure 12 This is a schematic diagram of the structure of a user invitation device provided in an embodiment of this application; Figure 13 This is a schematic diagram of the structure of a terminal provided in an embodiment of this application; Figure 14 This is a schematic diagram of the structure of a server provided in an embodiment of this application. Detailed Implementation
[0021] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0022] To facilitate understanding of the technical processes involved in the embodiments of this application, some terms used in the embodiments of this application are explained below: Blockchain is a novel application model of computer technologies such as distributed data storage, peer-to-peer transmission, consensus mechanisms, and cryptographic algorithms. Essentially, a blockchain is a decentralized database, a chain of data blocks linked together using cryptographic methods. Each block contains information about a network transaction, used to verify the validity of the information (anti-counterfeiting) and generate the next block. Each block contains a timestamp and a link to the previous block. In a narrower sense, blockchain is a chain-like data structure that combines data blocks sequentially according to time, and is a distributed ledger that is cryptographically guaranteed to be immutable and unforgeable; that is, data in a blockchain is irreversible once recorded.
[0023] A consensus mechanism is a mathematical algorithm used in blockchain systems to establish trust and assign rights among different nodes. In a blockchain system, transactions can be verified and confirmed in a very short time through voting by specific nodes. If several nodes with unrelated interests can reach a consensus on a transaction, it can be assumed that all nodes in the system can also reach a consensus on it.
[0024] A public key and a private key are a key pair (a public key and a private key) obtained through an algorithm. The public key is the publicly known part of the key pair, while the private key is the private key. The public key is typically used to encrypt session keys, verify digital signatures, or encrypt data that can be decrypted using the corresponding private key. Key pairs obtained through this algorithm are guaranteed to be unique. Using this key pair enables asymmetric encryption, meaning that if data is encrypted with one key, it must be decrypted with the other key. For example, data encrypted with the public key must be decrypted with the private key, and vice versa; otherwise, decryption will fail.
[0025] A hash table is a data structure that allows direct access to data based on a key value, or key element. In other words, a key value can be mapped to a location in the table, allowing direct access to the data at that location, thus speeding up the search process.
[0026] The technical solution provided in this application can be applied to various user invitation scenarios and combined with multiple fields. In one possible implementation, this solution can be combined with the live streaming field. Specifically, in the live streaming field, when service providers invite qualified users or merchants to join the live streaming platform, they can apply the user invitation method provided in this application. When the service provider shares a QR code carrying invitation information with the invited target user, it can use the public key in the key pair to encrypt the QR code. Only the invited target user can obtain the private key corresponding to the QR code, and then decrypt the QR code to obtain the information in the QR code. Applying the user invitation method provided in this application can prevent QR codes from being stolen by other users and prevent unqualified users from joining the live streaming platform, thus ensuring the quality of users on the live streaming platform. Of course, the user invitation method provided in this application can also be applied to user invitation scenarios in other fields. In this application, only the application of this method to the live streaming field is used as an example for illustration.
[0027] Figure 1 This is a schematic diagram illustrating the implementation environment of a user invitation method provided in this application embodiment. See also... Figure 1 The implementation environment may include a first terminal 110, a second terminal 120, a server 130, a computer device 140 corresponding to the authentication platform, and a blockchain system 150.
[0028] The first terminal 110 can be the terminal used by the user who initiates the invitation, for example, the user can be a service provider of a live streaming platform. The second terminal 120 can be the terminal used by the user being invited. Both the first terminal 110 and the second terminal 120 can have a client application with the target application installed and running. The target application can be a social application. The user who initiates the invitation and the user being invited can communicate through the target application, that is, they can share QR codes through the target application. Both the first terminal 110 and the second terminal 120 can have user accounts logged in. The first terminal 110 and the second terminal 120 can be smartphones, tablets, e-book readers, MP3 (Moving Picture Experts Group Audio Layer III) players, MP4 (Moving Picture Experts Group Audio Layer IV) players, laptops, and desktop computers, etc.
[0029] The server 130 can be the server corresponding to the target application, used to provide backend services for the target application. The server 130 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It can also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0030] The computer device 140 corresponding to this authentication platform can be used for user authentication and key pair generation. This authentication platform can be a third-party authentication platform, or it can be another organization or platform. Taking the application of this solution in the live streaming field as an example, the authentication platform can be a live streaming platform. This live streaming platform can authenticate service providers and registered users, and can also generate key pairs based on data transmission requests from service providers or users. See also... Figure 2 , Figure 2This is a data interaction diagram of an authentication platform provided in this application embodiment. The authentication platform 140 can authenticate the identities of organization A and organization B. In response to the successful authentication of each organization, a signature certificate is issued to each organization. The signature certificate may carry the private key signature of the authentication platform 140. When any organization needs to send encrypted data, it can obtain the key pair generated by the authentication platform to encrypt the data. For example, when organization A sends encrypted data to organization B, it can use the public key in the key pair to encrypt the data, and organization B uses the private key to decrypt it. Organization A can also send its own signature certificate to organization B so that organization B can verify the identity of the data sender. The authentication platform 140 can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.
[0031] The blockchain system 150 may include multiple node devices 1501. Each node device 1501 can be a computer device belonging to different organizations, a computer device belonging to the same organization, or a computer device belonging to an ordinary user; this embodiment does not limit this. The node device 1501 can be any form of computing device in the network, such as a server, host, or user terminal. Node devices 1501 can share data. Specifically, the node devices 1501 can establish a P2P network based on a peer-to-peer (P2P) protocol. This P2P protocol is an application layer protocol running on top of the Transmission Control Protocol (TCP).
[0032] During normal operation, each node device 1501 can receive input information and maintain the shared data within the blockchain system 150 based on the received input information; that is, it maintains the blockchain within the blockchain system 150. To ensure information interoperability within the blockchain system 150, each node device 1501 in the blockchain system 150 can have information connections, and information can be transmitted between node devices 1501 through these connections. For example, when any node device 1501 in the blockchain system 150 receives input information, other node devices 1501 in the blockchain system 150 can also obtain this input information and store it as data in the shared data, ensuring that the data stored on all node devices 1501 in the blockchain system 150 is consistent.
[0033] The aforementioned first terminal 110, second terminal 120, server 130, computer equipment 140 corresponding to the authentication platform, and blockchain system 150 can be connected via wired or wireless networks, enabling data interaction between the various devices.
[0034] Figure 3 This is a flowchart of a user invitation method provided in an embodiment of this application. This method can be applied to a second terminal in the above-described implementation environment. In this embodiment, the second terminal is used as the execution subject, combined with... Figure 3 Here is a brief introduction to the user invitation method: 301. In response to the triggering operation of the target invitation link on the server, the second terminal obtains the user identifier of the currently logged-in user of the terminal. The target invitation link is a link to a target QR code, which is used to indicate a redirect to the target invitation page.
[0035] The target invitation link can be a link sent by the user initiating the invitation, and the target invitation page indicated by the target QR code can be used to collect the user information of the invited user. Taking the application of this solution in the live streaming field as an example, when a live streaming platform service provider invites a user to join the platform, it can send the target invitation link to that user and share the target QR code through the target invitation link, so that the invited user can obtain the target invitation page based on the target QR code to complete the subsequent user information filling steps.
[0036] In one possible implementation, the second terminal can display the received target invitation link. When a user's triggering action on the target invitation link is detected, the user identifier of the currently logged-in user on the terminal can be obtained. This triggering action can be a click, a long press, etc., and this embodiment of the application does not limit this.
[0037] 302. The second terminal accesses the target invitation link based on the user identifier. In response to the user identifier matching the target user identifier corresponding to the target invitation link, the terminal obtains the private key of the target QR code from the server.
[0038] The target user identifier is the user identifier of the invited user.
[0039] In this embodiment of the application, the target QR code is encrypted using asymmetric encryption technology. For example, the target QR code can be encrypted using the public key in the key pair. When a user obtains the target QR code, they need to use the private key in the key pair to decrypt it in order to obtain the information in the QR code.
[0040] In this embodiment, it is necessary to verify the user accessing the target invitation link to ensure that only the invited user can decrypt the target QR code. In one possible implementation, the second terminal can initiate an access request to the server based on the user identifier of the currently logged-in user. The server then compares the user identifier in the access request with the target user identifier corresponding to the target invitation link. If the two user identifiers match, the currently logged-in user is determined to be an invited user, and the second terminal is allowed to obtain the private key corresponding to the target QR code; if the two user identifiers do not match, the currently logged-in user is determined not to be an invited user, and the second terminal is not allowed to obtain the private key corresponding to the target QR code.
[0041] By applying the above solution, the shared QR code is encrypted during the user invitation process. Only the invited user can decrypt it and obtain the information in the QR code, which can prevent the QR code from being stolen and improve the information security of the QR code.
[0042] 303. The second terminal uses the private key to decrypt the target QR code pointed to by the target invitation link. In response to the successful decryption of the target QR code, the target invitation page is displayed.
[0043] In this embodiment of the application, after the private key obtained by the second terminal application decrypts the target QR code, it can automatically scan and recognize the target QR code and display the target invitation page indicated by the target QR code so that the user can complete the subsequent information filling steps.
[0044] In this application, after the second terminal decrypts the target QR code, it can automatically scan and recognize it without displaying the image of the target QR code again, which can prevent users from forwarding the QR code and prevent the information in the QR code from being leaked.
[0045] 304. In response to the submission operation of the target invitation page, the second terminal submits the user information filled in on the target invitation page to the server.
[0046] In one possible implementation, users can fill in relevant user information on the target invitation page. This user information may include the user's identity information, etc. Taking this solution as an example in the live streaming field, when the invited user is a merchant, the user information may include the merchant's store name, main category, business license information, and the number of followers the merchant has on a certain platform. This embodiment does not limit the specific content of this user information. When the second terminal detects that the user has confirmed the submission of information on the target invitation page, it can submit the user information filled in by the user to the server.
[0047] The technical solution provided in this application, upon receiving a target invitation link and providing the user identifier of the currently logged-in user when accessing the link, determines whether the currently logged-in user is an invited user. If the currently logged-in user is an invited user, the private key of the target QR code corresponding to the target invitation link is obtained from the server, and the target QR code is decrypted using the private key. If the target QR code is successfully decrypted, the target invitation page indicated by the target QR code is displayed. In response to a submission operation on the target invitation page, the user information already filled in on the target invitation page is submitted to the server. By applying the above solution, the QR code is encrypted, and only the invited user can decrypt it, ensuring the security of the information in the QR code and preventing its unauthorized use.
[0048] Figure 4 This is a flowchart of a user invitation method provided in an embodiment of this application. This method can be applied to a server in the above-described implementation environment. In this embodiment, the server is used as the execution subject, combined with... Figure 4 Here is a brief introduction to the user invitation method: 401. The server sends a target invitation link to the second terminal. The target invitation link corresponds to the target user identifier. The target invitation link is a link to a target QR code, which is used to indicate a redirect to the target invitation page.
[0049] The target user identifier can be the user identifier of the invited user. In this embodiment of the application, a user identifier can uniquely identify a user.
[0050] In one possible implementation, the server can receive a user invitation request from the user who initiated the invitation. The user invitation request may carry the target QR code and the target user identifier. The server can create the target invitation link based on the target QR code and the target user identifier, and send the target invitation link to the terminal of the invited user, i.e., the second terminal.
[0051] 402. The server receives an access request for the target invitation link, which carries the user identifier of the currently logged-in user of the terminal.
[0052] In one possible implementation, when the second terminal detects that a user has triggered an operation on the target invitation link, it can obtain the user identifier of the currently logged-in user, generate an access request for the target invitation link based on the user identifier of the currently logged-in user, and send the access request to the server.
[0053] 403. In response to the user identifier matching the target user's user identifier, the server sends the private key of the target QR code to the terminal, which then decrypts the target QR code based on the private key and displays the target invitation page.
[0054] In this embodiment, the server can verify whether the currently logged-in user of the terminal is an invited user based on the user identifier in the access request and the target user identifier. If the user identifier matches the target user's user identifier, it is determined that the currently logged-in user is an invited user, and the second terminal is allowed to obtain the private key corresponding to the target QR code, decrypt the target QR code, and the user performs subsequent information filling steps based on the decrypted target QR code. If the user identifier does not match the target user's user identifier, it is determined that the currently logged-in user is not an invited user, the second terminal is not allowed to obtain the private key, and the user cannot obtain the target invitation page indicated by the target QR code.
[0055] 404. The server responds to the submission request for the target invitation page and retrieves the user information already filled in on the target invitation page.
[0056] In one possible implementation, the server can also perform user qualification verification on the acquired user information, which is not limited in this embodiment. For example, taking the application of this solution in the live streaming field as an example, the service can determine whether a user is qualified to join a live streaming platform based on user information.
[0057] 405. The server stores the user information in the blockchain based on a consensus mechanism.
[0058] In this embodiment, the server can store user information submitted by the user in a blockchain. Because data stored in a blockchain is immutable and undeletable, it ensures that user information will not be lost or altered, facilitating subsequent information verification.
[0059] Using the above method, the server verifies the user requesting access to the target invitation link to determine whether the user is an invited user, ensuring that only invited users can obtain the private key of the target QR code, thus preventing the QR code from being stolen; storing the obtained user information on the blockchain can ensure the security and validity of the data, and ensure that the user information is traceable and verifiable.
[0060] The above embodiments are a brief introduction to the user invitation method. Specifically, in conjunction with... Figure 5 Taking the application of this user invitation method in the live streaming field as an example, this method will be explained in detail. Figure 5 This is a flowchart of a user invitation method provided in an embodiment of this application. This method can be applied to... Figure 1 In the implementation environment shown, see Figure 5 The user invitation method may specifically include the following steps: 501. The server generates a target QR code and sends the target QR code to the first terminal.
[0061] In one possible implementation, the server can respond to the QR code acquisition request from the first terminal and generate the target QR code. Taking the application of this solution in the live streaming field as an example, the first terminal can be a terminal used by the service provider of the live streaming platform. The service provider can send a QR code acquisition request to the server through the first terminal. The server can generate the target QR code based on the QR code acquisition request and send the target QR code to the first terminal. The service provider can then share the target QR code with other users to invite them to join the live streaming platform. In another possible implementation, the first terminal can display a user referral page, see [link to relevant documentation]. Figure 6 , Figure 6 This is a schematic diagram of a user referral page provided in an embodiment of this application. When the user initiating the invitation, i.e., the service provider, is not logged in, the user referral page can be displayed as follows: Figure 6 As shown in Figure (a), the user referral page can display a login control 601 to prompt the user to log in. When the user who initiated the invitation, i.e., the service provider, is already logged in, the user referral page can display the following: Figure 6 As shown in Figure (b), the user referral page can display the target QR code 602 and a sharing control 603, wherein the sharing control can be used to share the target QR code. In one possible implementation, if the first terminal detects that the service provider has accessed the user referral page and that the service provider is logged in, it can send a QR code acquisition request to the server. The server can generate a target QR code based on the QR code acquisition request, and the target QR code can carry the address of the target invitation page.
[0062] It should be noted that the above description of the target QR code generation method is only an exemplary description, and the embodiments of this application do not limit which specific method is used to generate the target QR code.
[0063] 502. The first terminal sends a sharing request for the target QR code to the server.
[0064] In one possible implementation, when the first terminal detects an invitation-initiating user (i.e., a service provider triggering a sharing control on a page for that user), it can display the invitation-initiating user's contact list, from which the user can select an invited user. The invitation-initiating user can select one or more users, or a group; this embodiment does not limit this selection. This embodiment only illustrates the example of the invitation-initiating user selecting one user. The first terminal can use the user selected by the invitation-initiating user from the contact list as the invited user, obtain the target user identifier of the invited user, generate a sharing request based on the target user identifier and the target QR code, and send the sharing request to the server.
[0065] 503. In response to the sharing request for the target QR code, the server generates an invitation link for the target based on the QR code.
[0066] In one possible implementation, in response to a sharing request for the target QR code, the server may send a key pair acquisition request to the authentication platform, obtain the public and private keys corresponding to the target QR code from the authentication platform, encrypt the target QR code using the public key, and generate the target invitation link based on the encrypted target QR code.
[0067] In one possible implementation, after receiving the key pair acquisition request, the authentication platform can generate a key pair based on the RSA encryption algorithm, that is, generate the public key and private key. Specifically, firstly, the authentication platform can randomly generate two prime numbers p and q, where the prime numbers can be prime numbers greater than a target threshold, which can be set by the developer, and this application embodiment does not limit this. Then, the authentication platform can obtain the product of p and q, denoted as n, and obtain the product of p-1 and q-1, denoted as Φ(n); then select a random integer e with a value greater than 1 and less than Φ(n), such that the greatest common divisor of e and Φ(n) is 1. Finally, the authentication platform can obtain the parameter d based on e and Φ(n), where the value of d must satisfy the following formula (1): d e=1mod Φ(n)(1) Where mod represents the modulo operation, e is a random integer, and Φ(n) is the product of p-1 and q-1.
[0068] The authentication platform can determine {e,n} as the public key and {d,n} as the private key. Of course, to ensure the security of the key pair and prevent it from being derived, the authentication platform needs to destroy p and q. The specific process of encryption based on this key pair can be expressed as the following formula (2), and the corresponding decryption process can be expressed as the following formula (3): Ek(x)=xe mod n(2) Dk(y)=yd mod n(3) Where x can represent the encrypted object, such as the target QR code; y can represent the encrypted object, such as the encrypted target QR code; Ek() can represent the encryption operation, and Dk() can represent the decryption operation.
[0069] It should be noted that the above description of the key pair generation method is only an exemplary description, and the embodiments of this application do not limit which specific method is used to obtain the key pair.
[0070] In this embodiment of the application, the target QR code is encrypted using asymmetric encryption technology, which can effectively improve the security of the target QR code and prevent it from being stolen and used fraudulently.
[0071] 504. The server sends the target invitation link to the second terminal.
[0072] In one possible implementation, the server, based on the target user identifier carried in the sharing request of the first terminal, determines the invited user and then sends the target invitation link to the invited user's terminal, i.e., the second terminal.
[0073] 505. The second terminal receives the target invitation link and displays the invitation card corresponding to the target invitation link.
[0074] In one possible implementation, the target invitation link can be displayed as an invitation card, meaning the invitation card is associated with the target invitation link, and a user's action on the invitation card triggers an action on the target invitation link. See also Figure 7 , Figure 7 This is a schematic diagram of an invitation card provided in an embodiment of this application. The invitation card 701 can be displayed on the conversation page between the service provider and the invited user. The invitation card 701 may include a card title 702 to indicate the main content of the link corresponding to the invitation card to the user.
[0075] It should be noted that the above description of the method for displaying the target invitation link is only an exemplary description, and the target invitation link can also be displayed in other forms, which is not limited in this application embodiment.
[0076] 506. In response to the triggering operation of the target invitation link, the second terminal obtains the user identifier of the currently logged-in user of the terminal, and sends an access request for the target invitation link to the server based on the user identifier.
[0077] In one possible implementation, when the second terminal detects a user's triggered action on the invitation card, i.e., the target invitation link, it can obtain the user identifier of the currently logged-in user, generate an access request for the target invitation link based on the user identifier, and send the access request to the server. When the server receives the access request for the target invitation link, it can obtain the user identifier carried in the access request, and the server can perform subsequent user verification steps based on the user identifier.
[0078] 507. The server verifies the currently logged-in user of the second terminal based on the user identifier in the invitation request and the target user identifier corresponding to the target invitation link.
[0079] In one possible implementation, the server can determine whether the user identifier matches the target user's user identifier, thereby determining whether the currently logged-in user of the second terminal is an invited user. If the two user identifiers match, it can be determined that the currently logged-in user of the second terminal is an invited user, and the server can send the private key of the target QR code to the terminal, that is, execute step 508 below. If the two user identifiers do not match, it can be determined that the currently logged-in user of the second terminal is not an invited user, and the server can send an access denied message to the second terminal. By applying the above scheme and verifying the user accessing the target invitation connection, the illegal acquisition of the target QR code can be prevented.
[0080] In one possible implementation, the server can also determine whether the user currently logged in on the second terminal has been invited. Taking the application of this solution in the live streaming field as an example, the server can determine whether the user currently logged in on the second terminal has already joined the live streaming platform. Specifically, the user information of each user who has joined the live streaming platform can be stored on the blockchain. The server can query the user information corresponding to the user identifier from the blockchain based on the user identifier. If the user information corresponding to the user identifier exists in the blockchain, it is determined that the user has joined the live streaming platform, and the user verification fails. The server can send a prompt message to the first terminal and the second terminal indicating that the user has joined the live streaming platform and the user invitation has failed. If the user information corresponding to the user identifier does not exist in the blockchain, it is determined that the user has not joined the live streaming platform, and the user verification passes. The server continues to execute the following step 508. It should be noted that the embodiments of this application do not limit which method is used to search for user information in the blockchain. In the embodiments of this application, by searching for user information from the blockchain to determine whether the user has been invited, duplicate invitations can be avoided, and data conflicts can be avoided.
[0081] 508. In response to successful verification, the server sends the private key corresponding to the target QR code to the second terminal.
[0082] 509. The second terminal uses the private key to decrypt the target QR code pointed to by the target invitation link. In response to the successful decryption of the target QR code, the target invitation page is displayed.
[0083] In this embodiment of the application, after the second terminal obtains the private key, it can use the private key to decrypt the target QR code and automatically scan and recognize the QR code to display the target invitation page indicated by the target QR code.
[0084] In one possible implementation, the target invitation page may include multiple levels of pages. See also Figure 8 , Figure 8This is a schematic diagram of a target invitation page provided in an embodiment of this application. The target invitation page may include a first-level application page, such as... Figure 8 As shown in Figure (a), the application page may include an invitation code display area 801 and an application confirmation control 802. The target invitation page may also include a second-level information entry page, such as... Figure 8 As shown in Figure (b), the information entry page may include an information entry area 803 and a submit control 804.
[0085] In this embodiment, after the second terminal recognizes the target QR code, it can display the application page on the target invitation page and also display the target invitation code in the invitation code display area of the application page. In one possible implementation, the invitation code can associate the user who initiated the invitation with the user who was invited, enabling traceability of the invitation process and determining which user invited each user. The target invitation code can be obtained through any of the following methods.
[0086] Method 1: In response to displaying the target invitation page, obtain the target invitation code from the card title of the invitation card and populate the target invitation code display area of the target invitation page with the target invitation code. In one possible implementation, the target invitation link may correspond to a target invitation code, which may be displayed in the card title of the invitation card.
[0087] Method 2: In response to displaying the target invitation page, a target invitation code is generated based on the private key, and the target invitation code is filled into the invitation code display area of the target invitation page. In one possible implementation, after the second terminal obtains the private key, it can use the private key as the target invitation code or convert the private key into a target invitation code based on preset conditions. The preset conditions can be set by the developer, and this embodiment does not limit this.
[0088] Of course, the target invitation code can also be obtained in other ways, such as by the user entering it himself, and this application embodiment does not limit this.
[0089] In one possible implementation, a user's click on the confirmation control on the application page can trigger a submission request for the application page. In response to the submission request, the second terminal displays the information filling page on the target invitation page, where the user can provide relevant user information.
[0090] 510. In response to the submission operation of the target invitation page, the second terminal submits the user information filled in on the target invitation page to the server.
[0091] In one possible implementation, when the second terminal detects that a user has triggered a submit control on the information entry page, it can obtain the user information entered in the information entry area, generate a submit request based on the user information, and send the submit request to the server. In response to the submit request for the target invitation page, the server can obtain the user information already entered on the target invitation page and perform subsequent user qualification verification steps based on the user information.
[0092] 511. The server verifies the user's qualifications based on the user information and sends the verification results to the second terminal.
[0093] In one possible implementation, the server can perform user qualification verification based on target conditions and the user information. The target conditions may include data restriction information corresponding to the user information. The specific content of the target conditions can be set by the developers, and this embodiment does not limit this. For example, the target conditions may include the merchant's main business category range, the merchant's follower count limit, etc. The server can compare the obtained user information with the data restriction information in the target conditions. If the user information meets the target conditions, the user qualification verification can be determined to be successful.
[0094] The server can send the review result to a second terminal. When the review is successful, the second terminal can check whether the target client is currently installed. Taking this solution as an example in the live streaming field, the target client can be the live streaming platform's client. If it is not installed, the second terminal can display a download guide option on the submission success page. This download guide option is used to guide the user to download the target client provided by the server. See also Figure 9 , Figure 9 This is a schematic diagram of a submission success page provided in an embodiment of this application. The page can display a notification message indicating successful review and a download guide option 901. When the review fails, the second terminal can display a notification message indicating that the review has not passed, prompting the user to re-enter and submit their user information.
[0095] 512. The server stores the user information in the blockchain based on a consensus mechanism.
[0096] In this embodiment, after the server determines that the user information has been approved, it can store the user information in the blockchain for future verification. In one possible implementation, the server can obtain the user identifier of the user who initiated the invitation; based on the user identifier and the user information, target data is constructed. For example, the target data can be represented as key-value pairs, where the user identifier of the user who initiated the invitation can be the key element, and the user information can be the value element. In this embodiment, by constructing target data based on the user identifier of the user who initiated the invitation and the user information of the invited user, the user information of the user who initiated the invitation and the invited user are associated, making each invitation process traceable. Of course, the target data can also be represented in other forms, and this embodiment does not limit this.
[0097] In one possible implementation, the server can send the target data to a target node device in the blockchain system, which then broadcasts the target data throughout the blockchain system. Each node device in the blockchain system verifies the target data; if verification is successful, each node device stores the target data in its local transaction pool. The nodes in the blockchain system can package the data in the transaction pool according to a target period, generating a new block, and then broadcast this new block. The nodes or consensus nodes in the blockchain system then reach a consensus on this new block. If the consensus on the new block passes, it can be added to the end of the target blockchain, that is, the target data containing user information is stored in the blockchain; if consensus fails, the step of adding the new block is unnecessary. The transaction pool can be a database maintained locally by each node device, used to store transaction data that has not yet been uploaded to the blockchain. The target period can be set by the developers; this embodiment does not limit this setting. For example, in the Bitcoin system, the target period can be set to 10 minutes. The consensus mechanism involved in the above consensus process can be a proof-of-work mechanism, etc., and this application embodiment does not limit it.
[0098] In one possible implementation, the target node device can also construct a chained hash table based on the target data received within the target period. This chained hash table can include multiple sub-chains, and target data with the same key element can be stored in the same sub-chain. The target node device can aggregate and store the target data in the form of a chained hash table to the blockchain. For example, the target node device can perform a hash operation based on the key element in the target data, mapping the key element to a location code. This location code can be used to indicate the storage location of the target data in the chained hash table.
[0099] It should be noted that the above description of the method for storing target data in the blockchain is merely an illustrative example, and the embodiments of this application do not limit which specific method is used to store the target data in the blockchain.
[0100] The technical solution provided in this application, upon receiving a target invitation link and providing the user identifier of the currently logged-in user when accessing the link, determines whether the currently logged-in user is an invited user. If the currently logged-in user is an invited user, the private key of the target QR code corresponding to the target invitation link is obtained from the server, and the target QR code is decrypted using the private key. If the target QR code is successfully decrypted, the target invitation page indicated by the target QR code is displayed. In response to a submission operation on the target invitation page, the user information already filled in on the target invitation page is submitted to the server. By applying the above solution, the QR code is encrypted, and only the invited user can decrypt it, ensuring the security of the information in the QR code and preventing its unauthorized use.
[0101] The above embodiments are a detailed description of the user invitation method provided in this application, combined with... Figure 10 This solution will be explained in the specific scenario of its application in the live streaming field. Figure 10 This is a schematic diagram illustrating an example of inviting merchants to join a live streaming platform, as provided in an embodiment of this application. Figure 10 The service provider sends an invitation link to the merchant, which is step 1001. This invitation link can be generated based on the service provider's name, identifier, and an encrypted QR code. The merchant accesses the invitation link to obtain the private key corresponding to the QR code, which is step 1002. Based on the invitation link, the merchant fills in the registration information and submits it for review, which is step 1003. If the review fails, the submitted information is returned for the merchant to modify. If the review passes, the server executes step 1004, generating a block based on the service provider's identifier, the merchant's identifier, and the merchant's registration information. Then, step 1005, storing the block on the blockchain, is executed, whereby the nodes reach a consensus on the blockchain to complete the data storage on the chain. Applying this solution in the live streaming field can, on the one hand, prevent QR code theft by encrypting it, thus preventing unqualified merchants from joining the live streaming platform; on the other hand, storing merchant information on the blockchain makes the information traceable and searchable.
[0102] All of the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this application, and will not be described in detail here.
[0103] Figure 11 This is a schematic diagram of the structure of a user invitation device provided in an embodiment of this application. See also... Figure 11 The device includes: The identifier acquisition module 1101 is used to acquire the user identifier of the currently logged-in user of the terminal in response to the triggering operation of the target invitation link of the server. The target invitation link is a link to the target QR code, which is used to indicate the jump to the target invitation page. The private key acquisition module 1102 is used to access the target invitation link based on the user identifier, and in response to the user identifier being consistent with the target user identifier corresponding to the target invitation link, it obtains the private key of the target QR code from the server. The decryption module 1103 is used to decrypt the target QR code pointed to by the target invitation link using the private key, and displays the target invitation page in response to the successful decryption of the target QR code; The sending module 1104 is used to submit the user information filled in on the target invitation page to the server in response to the submission operation on the target invitation page.
[0104] In one possible implementation, the decryption module 1103 is used for: Display the application page from the target invitation page; In response to a submission request for the application page, display the information entry page from the target invitation page.
[0105] In one possible implementation, the device further includes: The display module is used to display the invitation card, which is associated with the target invitation link.
[0106] In one possible implementation, the display module is used for: In response to displaying the target invitation page, the target invitation code is obtained from the card title of the invitation card and then filled into the invitation code display area of the target invitation page.
[0107] In one possible implementation, the display module is used for: In response to displaying the target invitation page, a target invitation code is generated based on the private key, and the target invitation code is filled into the invitation code display area of the target invitation page.
[0108] In one possible implementation, the device further includes: The detection module is used to detect whether the target client is currently installed on the terminal; if not, a download guide option is displayed on the successful submission page, which guides the user to download the target client provided by the server.
[0109] The apparatus provided in this application receives a target invitation link and, upon accessing the link, provides the user identifier of the currently logged-in user to determine whether the currently logged-in user is an invited user. If the currently logged-in user is an invited user, the apparatus obtains the private key of the target QR code corresponding to the target invitation link from the server, decrypts the target QR code using the private key, and displays the target invitation page indicated by the target QR code upon successful decryption. In response to a submission operation on the target invitation page, the apparatus submits the user information already filled in on the target invitation page to the server. By encrypting the QR code, only the invited user can decrypt it, ensuring the security of the information in the QR code and preventing its unauthorized use.
[0110] Figure 12 This is a schematic diagram of the structure of a user invitation device provided in an embodiment of this application. See also... Figure 12 The device includes: The sending module 1201 is used to send a target invitation link to the terminal. The target invitation link corresponds to a target user identifier. The target invitation link is a link to a target QR code. The target QR code is used to indicate a jump to the target invitation page. The receiving module 1202 is used to receive an access request for the target invitation link, the access request carrying the user identifier of the currently logged-in user of the terminal; The sending module 1201 is used to send the private key of the target QR code to the terminal in response to the user identifier being consistent with the user identifier of the target user. The terminal then decrypts the target QR code based on the private key and displays the target invitation page. The acquisition module 1203 is used to retrieve the user information already filled in on the target invitation page in response to the submission request for the target invitation page; Storage module 1204 is used to store the user information into the blockchain based on a consensus mechanism.
[0111] In one possible implementation, the device further includes: The generation module is used to generate the target QR code; in response to a sharing request for the target QR code, it generates the target invitation link based on the QR code.
[0112] In one possible implementation, the generation module is used for: In response to a request to share the target QR code, obtain the public and private keys corresponding to the target QR code from the authentication platform; The public key is used to encrypt the target QR code; Generate an invitation link for the target based on the encrypted target QR code.
[0113] In one possible implementation, the device further includes: The review module is used to review user qualifications based on target conditions and user information, including data restriction information corresponding to the user information; in response to the user qualification review being passed, the module executes the step of storing the user information to the blockchain.
[0114] In one possible implementation, the storage module 1204 is used for: Obtain the user ID of the user who initiated the invitation; Based on the user identifier of the user who initiated the invitation and the user information, construct the target data; Based on the consensus mechanism, the target data is stored in the blockchain.
[0115] It should be noted that the user invitation device provided in the above embodiments is only illustrated by the division of the above functional modules. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. In addition, the user invitation device and the user invitation method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.
[0116] The computer equipment provided by the above technical solution can be implemented as a terminal or a server, for example, Figure 13 This is a schematic diagram of the structure of a terminal provided in an embodiment of this application. The terminal 1300 can be: a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP4 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. The terminal 1300 may also be referred to as user equipment, portable terminal, laptop terminal, desktop terminal, or other names.
[0117] Typically, terminal 1300 includes one or more processors 1301 and one or more memories 1302.
[0118] Processor 1301 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 1301 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 1301 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 1301 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 1301 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0119] The memory 1302 may include one or more computer-readable storage media, which may be non-transitory. The memory 1302 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1302 are used to store at least one line of program code, which is executed by the processor 1301 to implement the user invitation method provided in the method embodiments of this application.
[0120] In some embodiments, the terminal 1300 may also optionally include a peripheral device interface 1303 and at least one peripheral device. The processor 1301, memory 1302, and peripheral device interface 1303 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 1303 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 1304, a display screen 1305, a camera assembly 1306, an audio circuit 1307, and a power supply 1309.
[0121] Peripheral interface 1303 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 1301 and memory 1302. In some embodiments, processor 1301, memory 1302 and peripheral interface 1303 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 1301, memory 1302 and peripheral interface 1303 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0122] The radio frequency (RF) circuit 1304 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 1304 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 1304 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 1304 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The RF circuit 1304 can communicate with other terminals through at least one wireless communication protocol. This wireless communication protocol includes, but is not limited to: metropolitan area networks (MANs), various generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks (WLANs), and / or WiFi (Wireless Fidelity) networks. In some embodiments, the RF circuit 1304 may also include circuitry related to NFC (Near Field Communication), which is not limited in this application.
[0123] Display screen 1305 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 1305 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 1301 for processing. In this case, display screen 1305 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 1305, which serves as the front panel of terminal 1300; in other embodiments, there may be at least two display screens 1305, respectively disposed on different surfaces of terminal 1300 or in a folded design; in some embodiments, display screen 1305 may be a flexible display screen, disposed on a curved or folded surface of terminal 1300. Furthermore, display screen 1305 may be configured as a non-rectangular, irregular shape, i.e., a non-rectangular screen. Display screen 1305 may be made of materials such as LCD (Liquid Crystal Display) or OLED (Organic Light-Emitting Diode).
[0124] The camera assembly 1306 is used to acquire images or videos. Optionally, the camera assembly 1306 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal, and the rear-facing camera is located on the back of the terminal. In some embodiments, there are at least two rear-facing cameras, which are any one of a main camera, a depth-sensing camera, a wide-angle camera, and a telephoto camera, to achieve background blurring by fusion of the main camera and the depth-sensing camera, panoramic shooting by fusion of the main camera and the wide-angle camera, VR (Virtual Reality) shooting, or other fusion shooting functions. In some embodiments, the camera assembly 1306 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm-light flash and a cool-light flash, which can be used for light compensation at different color temperatures.
[0125] The audio circuit 1307 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, converting the sound waves into electrical signals that are input to the processor 1301 for processing, or input to the radio frequency circuit 1304 for voice communication. For stereo sound acquisition or noise reduction purposes, multiple microphones may be used, each located at a different part of the terminal 1300. The microphone may also be an array microphone or an omnidirectional microphone. The speaker is used to convert electrical signals from the processor 1301 or the radio frequency circuit 1304 into sound waves. The speaker may be a conventional diaphragm speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can convert electrical signals not only into audible sound waves but also into inaudible sound waves for purposes such as distance measurement. In some embodiments, the audio circuit 1307 may also include a headphone jack.
[0126] Power supply 1309 is used to power the various components in terminal 1300. Power supply 1309 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 1309 includes a rechargeable battery, the rechargeable battery can support wired charging or wireless charging. The rechargeable battery can also be used to support fast charging technology.
[0127] In some embodiments, the terminal 1300 further includes one or more sensors 1310. The one or more sensors 1310 include, but are not limited to: an acceleration sensor 1311, a gyroscope sensor 1312, a pressure sensor 1313, an optical sensor 1315, and a proximity sensor 1316.
[0128] Accelerometer 1311 can detect the magnitude of acceleration along the three axes of a coordinate system established by terminal 1300. For example, accelerometer 1311 can be used to detect the components of gravitational acceleration along the three axes. Processor 1301 can control display screen 1305 to display the user interface in either a landscape or portrait view based on the gravitational acceleration signal acquired by accelerometer 1311. Accelerometer 1311 can also be used for games or for acquiring user motion data.
[0129] The gyroscope sensor 1312 can detect the orientation and rotation angle of the terminal 1300. The gyroscope sensor 1312, in conjunction with the accelerometer sensor 1311, can collect 3D motion data from the user on the terminal 1300. Based on the data collected by the gyroscope sensor 1312, the processor 1301 can perform the following functions: motion sensing (e.g., changing the UI based on the user's tilt), image stabilization during shooting, game control, and inertial navigation.
[0130] The pressure sensor 1313 can be disposed on the side bezel of the terminal 1300 and / or on the lower layer of the display screen 1305. When the pressure sensor 1313 is disposed on the side bezel of the terminal 1300, it can detect the user's grip signal on the terminal 1300, and the processor 1301 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 1313. When the pressure sensor 1313 is disposed on the lower layer of the display screen 1305, the processor 1301 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 1305. The operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.
[0131] The optical sensor 1315 is used to collect ambient light intensity. In one embodiment, the processor 1301 can control the display brightness of the display screen 1305 based on the ambient light intensity collected by the optical sensor 1315. Specifically, when the ambient light intensity is high, the display brightness of the display screen 1305 is increased; when the ambient light intensity is low, the display brightness of the display screen 1305 is decreased. In another embodiment, the processor 1301 can also dynamically adjust the shooting parameters of the camera assembly 1306 based on the ambient light intensity collected by the optical sensor 1315.
[0132] The proximity sensor 1316, also known as a distance sensor, is typically located on the front panel of the terminal 1300. The proximity sensor 1316 is used to detect the distance between the user and the front of the terminal 1300. In one embodiment, when the proximity sensor 1316 detects that the distance between the user and the front of the terminal 1300 is gradually decreasing, the processor 1301 controls the display screen 1305 to switch from a screen-on state to a screen-off state; when the proximity sensor 1316 detects that the distance between the user and the front of the terminal 1300 is gradually increasing, the processor 1301 controls the display screen 1305 to switch from a screen-off state to a screen-on state.
[0133] Those skilled in the art will understand that Figure 13 The structure shown does not constitute a limitation on terminal 1300 and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0134] Figure 14This is a schematic diagram of a server structure provided in an embodiment of this application. The server 1400 can vary considerably due to different configurations or performance. It may include one or more Central Processing Units (CPUs) 1401 and one or more memories 1402. The one or more memories 1402 store at least one line of program code, which is loaded and executed by the one or more processors 1401 to implement the methods provided in the various method embodiments described above. Of course, the server 1400 may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server 1400 may also include other components for implementing device functions, which will not be elaborated here.
[0135] In an exemplary embodiment, a computer-readable storage medium is also provided, such as a memory including at least one line of program code, which can be executed by a processor to complete the user invitation method in the above embodiments. For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.
[0136] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware, or by a program with at least one piece of program code associated with the hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0137] The above are merely optional embodiments of this application and are not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A user invitation method, characterized in that, The method includes: In response to a trigger operation on the target invitation link of the server, the user identifier of the currently logged-in user of the terminal is obtained. The target invitation link is a link to a target QR code, which is used to indicate a redirect to a target invitation page. The target invitation page is used to invite the user to join the live streaming platform. The target invitation link is generated by the server based on an encrypted target QR code, which is obtained by encrypting the target QR code using the public key of the target QR code. Based on the user identifier, an access request for the target invitation link is sent to the server. The access request is used to request the server to return the private key of the target QR code if the user identifier is consistent with the target user identifier corresponding to the target invitation link and there is no user information corresponding to the user identifier in the blockchain. The blockchain is used to store the user information of the invited user. The private key is used to decrypt the encrypted target QR code pointed to by the target invitation link. In response to the successful decryption of the encrypted target QR code, the target invitation page is displayed. In response to the submission operation of the target invitation page, the user information filled in on the target invitation page is submitted to the server, so that the server performs user qualification review based on the user information and the data restriction information corresponding to the user information, returns the review result, and if the review result is that the user has the qualification to join the live streaming platform, the filled user information is stored in the blockchain based on the consensus mechanism. If the review result indicates that the user is qualified to join the live streaming platform and the terminal does not currently have the live streaming platform's client installed, a download guide option will be displayed on the submission success page. The download guide option is used to guide the user to download the live streaming platform's client.
2. The method according to claim 1, characterized in that, The response to successful decryption of the encrypted target QR code, displaying the target invitation page, includes: Display the application page from the target invitation page; In response to a submission request for the application page, the information entry page of the target invitation page is displayed.
3. The method according to claim 1, characterized in that, Before obtaining the user identifier of the currently logged-in user of the terminal in response to the triggering operation of the target invitation link to the server, the method further includes: An invitation card is displayed, which is associated with the target invitation link.
4. The method according to claim 3, characterized in that, The display of the target invitation page includes: In response to displaying the target invitation page, the target invitation code is obtained from the card title of the invitation card and filled into the invitation code display area of the target invitation page.
5. The method according to claim 1, characterized in that, The display of the target invitation page includes: In response to displaying the target invitation page, a target invitation code is generated based on the private key, and the target invitation code is filled into the invitation code display area of the target invitation page.
6. A user invitation method, characterized in that, The method includes: The target QR code is encrypted using the public key of the target QR code to obtain an encrypted target QR code. Based on the encrypted target QR code, a target invitation link is generated. Send the target invitation link to the terminal. The target invitation link corresponds to the target user identifier. The target invitation link is a link to the target QR code. The target QR code is used to indicate a jump to the target invitation page. The target invitation page is used to invite users to join the live streaming platform. Receive an access request for the target invitation link, the access request carrying the user identifier of the currently logged-in user of the terminal; In response to the user identifier matching the target user identifier and the absence of user information corresponding to the user identifier in the blockchain, the private key of the target QR code is sent to the terminal. The terminal then decrypts the encrypted target QR code based on the private key and displays the target invitation page. The blockchain is used to store user information of the invited users. In response to a submission request to the target invitation page, obtain the user information already filled in on the target invitation page; Based on the user information and the corresponding data restriction information, the user's qualifications are reviewed, and the review result is sent to the terminal. If the review result indicates that the user is qualified to join the live streaming platform and the client of the live streaming platform is not currently installed, the terminal displays a download guide option on the submission success page. The download guide option is used to guide the user to download the client of the live streaming platform. If the review result indicates that the user is qualified to join the live streaming platform, the user information that has been filled in will be stored in the blockchain based on the consensus mechanism.
7. The method according to claim 6, characterized in that, The target QR code is encrypted using the public key of the application target QR code to obtain an encrypted target QR code. Based on the encrypted target QR code, a target invitation link is generated, including: Generate the target QR code; In response to a sharing request for the target QR code, the target QR code is encrypted using the public key of the target QR code to obtain an encrypted target QR code. Based on the encrypted target QR code, the target invitation link is generated.
8. The method according to claim 7, characterized in that, In response to a sharing request for the target QR code, encrypting the target QR code using the public key of the target QR code includes: In response to a sharing request for the target QR code, the public and private keys corresponding to the target QR code are obtained from the authentication platform. The target QR code is encrypted using the public key.
9. The method according to claim 6, characterized in that, The process of storing the entered user information into the blockchain based on a consensus mechanism includes: Obtain the user ID of the user who initiated the invitation; Based on the user identifier of the user who initiated the invitation and the user information that has been filled in, construct the target data; Based on the consensus mechanism, the target data is stored in the blockchain.
10. A user invitation device, characterized in that, The device includes: The identifier acquisition module is used to acquire the user identifier of the currently logged-in user of the terminal in response to the triggering operation of the target invitation link of the server. The target invitation link is a link to a target QR code, which is used to indicate a jump to a target invitation page. The target invitation page is used to invite users to join the live streaming platform. The target invitation link is generated by the server based on an encrypted target QR code, which is obtained by encrypting the target QR code using the public key of the target QR code. The private key acquisition module is used to send an access request to the server for the target invitation link based on the user identifier. The access request is used to request the server to return the private key of the target QR code if the user identifier is consistent with the target user identifier corresponding to the target invitation link and there is no user information corresponding to the user identifier in the blockchain. The blockchain is used to store the user information of the invited user. The decryption module is used to decrypt the encrypted target QR code pointed to by the target invitation link using the private key, and displays the target invitation page in response to the successful decryption of the encrypted target QR code. The sending module is used to respond to the submission operation of the target invitation page, submit the user information filled in on the target invitation page to the server, so that the server can perform user qualification review based on the user information and the data restriction information corresponding to the user information, return the review result, and if the review result is that the user has the qualification to join the live streaming platform, store the filled user information in the blockchain based on the consensus mechanism. The detection module is used to display a download guide option on the submission success page when the review result indicates that the user is qualified to join the live streaming platform and the terminal does not currently have the live streaming platform's client installed. The download guide option is used to guide the user to download the live streaming platform's client.
11. The apparatus according to claim 10, characterized in that, The decryption module is used to display the application page in the target invitation page; in response to a submission request for the application page, it displays the information filling page in the target invitation page.
12. The apparatus according to claim 10, characterized in that, The device further includes: The display module is used to display an invitation card, which is associated with the target invitation link.
13. The apparatus according to claim 12, characterized in that, The display module is configured to, in response to displaying the target invitation page, obtain the target invitation code from the card title of the invitation card and fill the target invitation code into the invitation code display area of the target invitation page.
14. The apparatus according to claim 10, characterized in that, The device further includes: The display module is used to generate a target invitation code based on the private key in response to displaying the target invitation page, and to fill the target invitation code into the invitation code display area of the target invitation page.
15. A user invitation device, characterized in that, The device includes: The generation module is used to encrypt the target QR code using the public key of the target QR code to obtain an encrypted target QR code, and generate a target invitation link based on the encrypted target QR code. The sending module is used to send the target invitation link to the terminal. The target invitation link corresponds to the target user identifier. The target invitation link is a link to the target QR code. The target QR code is used to indicate a jump to the target invitation page. The target invitation page is used to invite users to join the live streaming platform. A receiving module is used to receive an access request for the target invitation link, the access request carrying the user identifier of the currently logged-in user of the terminal; The sending module is configured to, in response to the user identifier matching the target user identifier and the absence of user information corresponding to the user identifier in the blockchain, send the private key of the target QR code to the terminal, and the terminal decrypts the encrypted target QR code based on the private key to display the target invitation page; the blockchain is used to store user information of invited users; The acquisition module is used to acquire the user information already filled in on the target invitation page in response to the submission request of the target invitation page; The review module is used to review the user's qualifications based on the user information and the corresponding data restriction information, and send the review result to the terminal. If the review result indicates that the user is qualified to join the live streaming platform and does not currently have the live streaming platform's client installed, the terminal will display a download guide option on the submission success page. The download guide option is used to guide the user to download the live streaming platform's client. The storage module is used to store the filled-in user information into the blockchain based on a consensus mechanism, provided that the review result indicates the user is qualified to join the live streaming platform.
16. The apparatus according to claim 15, characterized in that, The generation module is used to generate the target QR code; in response to a sharing request for the target QR code, the target QR code is encrypted using the public key of the target QR code to obtain an encrypted target QR code, and the target invitation link is generated based on the encrypted target QR code.
17. The apparatus according to claim 16, characterized in that, The generation module is used to respond to a sharing request for the target QR code by obtaining the public key and private key corresponding to the target QR code from the authentication platform; and encrypting the target QR code using the public key.
18. The apparatus according to claim 15, characterized in that, The storage module is used to obtain the user identifier of the user who initiated the invitation; and to construct target data based on the user identifier of the user who initiated the invitation and the user information that has been filled in. Based on the consensus mechanism, the target data is stored in the blockchain.
19. A computer device, characterized in that, The computer device includes one or more processors and one or more memories, wherein at least one piece of program code is stored in the one or more memories, and the at least one piece of program code is loaded and executed by the one or more processors to perform the operation performed by the user invitation method as described in any one of claims 1 to 5; or the operation performed by the user invitation method as described in any one of claims 6 to 9.
20. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one piece of program code, which is loaded and executed by a processor to perform the operations performed by the user invitation method as described in any one of claims 1 to 5; or the operations performed by the user invitation method as described in any one of claims 6 to 9.
Citation Information
Patent Citations
User business card sharing method, friend adding method and related devices
CN110035004A