Request data processing method, apparatus and server
By generating the target verification code on the server of the financial service institution and generating the target key on the client terminal, the security risks caused by fixed keys are solved, and high-security and low-cost encryption and decryption processing is achieved in the data processing process.
Patent Information
- Application Number
- CN202310861888.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-14
- Publication Date
- 2026-01-06
- Estimated Expiration
- 2043-07-14
AI Technical Summary
In existing technologies, financial service institutions use fixed keys for data encryption and decryption on their servers, which poses a significant security risk. Once the key is leaked, it will seriously threaten the security of user transaction data, and there is a lack of effective solutions.
The server generates a target verification code and sends its byte stream to the client terminal. After the client terminal performs security verification, it generates a target key according to preset processing rules for data encryption and decryption. Instead of directly transmitting the key, the server uses the key generated from the randomly generated target verification code for encryption and decryption.
By generating random target keys for encryption and decryption, data security during data processing is improved, key generation costs are reduced, and the risk of key leakage during transmission is avoided.
Smart Images

Figure CN116781384B_ABST
Abstract
Description
Technical Field
[0001] This specification pertains to the field of Internet technology, and in particular relates to request data processing methods, apparatus, and servers. Background Technology
[0002] In financial business scenarios, financial service institutions typically configure a fixed key for each user's server. Every time a user interacts with the server using a client to process specific transaction data, the same fixed key is usually used to encrypt and decrypt the relevant data during the transaction processing.
[0003] While the aforementioned data processing method is relatively simple to implement, it poses significant security risks. If the key is leaked during use, it will inevitably pose a serious threat to the data security of users' transaction data processing.
[0004] There is currently no effective solution to the above problems. Summary of the Invention
[0005] This specification provides a request data processing method, apparatus, and server that can generate and use highly secure keys for encryption and decryption at a low cost, thereby effectively protecting the data security of related data during the request data processing process.
[0006] This specification provides a request data processing method applied to a server, including:
[0007] Receive the target data processing request;
[0008] Respond to the target data processing request and generate the corresponding target verification code;
[0009] The target verification code byte stream is sent to the target client terminal; the target client terminal receives and performs corresponding security verification based on the target verification code byte stream.
[0010] According to preset processing rules, a target key corresponding to the target data processing request is generated using the byte stream of the target verification code; wherein, the target key is used to encrypt and decrypt data related to the target data processing request; generating the target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules includes: splitting the byte stream of the target verification code into multiple sequentially arranged byte arrays according to preset processing rules; converting the multiple byte arrays into corresponding target strings; extracting multiple characters from the target strings and combining them to obtain the target key; wherein, converting the multiple byte arrays into corresponding target strings includes: mapping the multiple byte arrays into sequentially arranged number sequences according to preset processing rules; converting the numbers in the number sequences into corresponding encoded characters according to preset encoding rules to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements.
[0011] In one embodiment, the target data processing request includes: an account login verification request; wherein the account login verification request is request data generated by the target client terminal in response to an account login trigger operation initiated by the target user.
[0012] In one embodiment, after sending the byte stream of the target verification code to the target client terminal, the method further includes:
[0013] The system receives verification feedback data about a target verification code sent by a target client terminal; wherein the target client terminal receives and displays the corresponding target verification code to the target user according to the byte stream of the target verification code, and obtains verification feedback data for the target verification code.
[0014] Based on the verification feedback data, a security verification is performed;
[0015] Once the security verification is successful, the target user is allowed to log in to their account through the target client terminal.
[0016] In one embodiment, if the security verification is determined to be successful, the method further includes:
[0017] The system receives an account login verification request initiated by a target client terminal. The account login verification request carries at least encrypted data of the target account identifier of the target account to be logged in, and encrypted data of the target identity verification data corresponding to the target account. The encrypted data of the target account identifier and the encrypted data of the target identity verification data are obtained by the target client terminal using a target key. The target key is generated locally by the target client terminal using the byte stream of the target verification code according to preset processing rules.
[0018] The target key is used to decrypt the ciphertext data of the target account identifier and the ciphertext data of the target identity verification data to obtain the target account identifier and the target identity verification data.
[0019] Based on the target account identifier and target identity verification data, perform identity verification to obtain the corresponding target verification result.
[0020] In one embodiment, after receiving an account login verification request initiated by the target client terminal, the method further includes:
[0021] According to the preset protocol rules, using the ciphertext data of the target key, the target account identifier, and the target identity verification data, identity verification is performed in the ciphertext state to obtain the corresponding target verification result; wherein, the preset protocol rules include protocol rules based on homomorphic encryption algorithms.
[0022] In one embodiment, multiple characters are extracted from the target string and combined to obtain the target key, including:
[0023] Based on preset processing rules, multiple starting positions are determined in the target string;
[0024] Starting from the beginning position, extract a preset number of consecutive encoded characters from the target string to obtain multiple encoded strings;
[0025] By concatenating multiple encoded strings, the target key can be obtained.
[0026] In one embodiment, after obtaining the target key, the method further includes:
[0027] Based on preset processing rules, multiple characters are extracted from the target account identifier as fuzzy characters;
[0028] The obfuscated characters are inserted into the target key at a specified position to obtain the obfuscated target key.
[0029] This specification also provides a request data processing method for use on a client terminal, including:
[0030] Receive and respond to user operations, and send a target data processing request to the server; wherein, the server receives and responds to the target data processing request and generates the corresponding target verification code;
[0031] Receive the byte stream of the target verification code provided by the server;
[0032] Based on the byte stream of the target verification code, the corresponding target verification code is displayed to the target user for security verification. A target key corresponding to the target data processing request is generated using the byte stream of the target verification code according to preset processing rules. This target key is used to encrypt and decrypt data related to the target data processing request. Generating the target key according to the byte stream of the target verification code according to preset processing rules includes: splitting the byte stream of the target verification code into multiple sequentially arranged byte arrays according to preset processing rules; converting the multiple byte arrays into corresponding target strings; extracting and combining multiple characters from the target strings to obtain the target key. Converting the multiple byte arrays into the corresponding target strings includes: mapping the multiple byte arrays into sequentially arranged number sequences according to preset processing rules; converting the numbers in the number sequence into corresponding encoded characters according to preset encoding rules to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a compliant target string.
[0033] This specification also provides a request data processing apparatus for use on a server, comprising:
[0034] The receiving module is used to receive target data processing requests;
[0035] The first generation module is used to respond to the target data processing request and generate the corresponding target verification code;
[0036] The sending module is used to send the byte stream of the target verification code to the target client terminal; wherein, the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code;
[0037] The second generation module is used to generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request; wherein the second generation module is specifically used to split the byte stream of the target verification code into multiple sequentially arranged byte arrays according to preset processing rules; convert the multiple byte arrays into corresponding target strings; extract multiple characters from the target strings and combine them to obtain the target key; wherein converting the multiple byte arrays into corresponding target strings includes: mapping the multiple byte arrays into sequentially arranged number sequences according to preset processing rules; converting the numbers in the number sequences into corresponding encoded characters according to preset encoding rules to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements.
[0038] This specification also provides a request data processing apparatus for use in a client terminal, comprising:
[0039] The sending module is used to receive and respond to user operations and send target data processing requests to the server; wherein, the server receives and responds to the target data processing requests and generates the corresponding target verification code;
[0040] The receiving module is used to receive the byte stream of the target verification code provided by the server;
[0041] The processing module is used to display the corresponding target verification code to the target user based on the byte stream of the target verification code for security verification; and to generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein, the target key is used to encrypt and decrypt data related to the target data processing request; generating the target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules includes: splitting the byte stream of the target verification code into multiple sequentially arranged byte arrays according to preset processing rules; converting the multiple byte arrays into corresponding target strings; extracting multiple characters from the target strings and combining them to obtain the target key; wherein, converting the multiple byte arrays into corresponding target strings includes: mapping the multiple byte arrays into sequentially arranged number sequences according to preset processing rules; converting the numbers in the number sequence into corresponding encoded characters according to preset encoding rules to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements.
[0042] This specification also provides a server, including a processor and a memory for storing processor-executable instructions, wherein the processor, when executing the instructions, implements the relevant steps of the request data processing method.
[0043] This specification also provides a computer-readable storage medium storing computer instructions that, when executed by a processor, perform the following steps: receiving a target data processing request; responding to the target data processing request and generating a corresponding target verification code; sending a byte stream of the target verification code to a target client terminal; wherein the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code; generating a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request; and generating a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules. The method for processing the target key corresponding to the request includes: splitting the byte stream of the target verification code into multiple sequentially arranged byte arrays according to preset processing rules; converting the multiple byte arrays into corresponding target strings; extracting multiple characters from the target strings and combining them to obtain the target key; wherein, converting the multiple byte arrays into corresponding target strings includes: mapping the multiple byte arrays into sequentially arranged number sequences according to preset processing rules; converting the numbers in the number sequences into corresponding encoded characters according to preset encoding rules to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements.
[0044] Based on the request data processing method, apparatus, and server provided in this specification, after receiving a target data processing request, the server can first respond to the request by generating a corresponding target verification code; then, it can send the byte stream of the target verification code to the target client terminal for security verification based on the target verification code; simultaneously, it can also generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules, so that the target key can be used to encrypt and decrypt data related to the target data processing request in the future. This allows for the generation and use of a highly secure key for encryption and decryption at a lower cost, thereby effectively protecting the data security of related data during the request data processing process. Attached Figure Description
[0045] To more clearly illustrate the embodiments of this specification, the accompanying drawings used in the embodiments will be briefly introduced below. The drawings described below are only some embodiments recorded in this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0046] Figure 1 This is a flowchart illustrating a request data processing method provided in one embodiment of this specification;
[0047] Figure 2 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0048] Figure 3 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0049] Figure 4 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0050] Figure 5 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0051] Figure 6 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0052] Figure 7 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0053] Figure 8 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0054] Figure 9 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0055] Figure 10 This is a schematic diagram illustrating one embodiment of the request data processing method provided in the embodiments of this specification, applied in a scenario example.
[0056] Figure 11 This is a schematic diagram of the structural composition of a server provided in one embodiment of this specification;
[0057] Figure 12This is a schematic diagram of the structural composition of a request data processing apparatus provided in one embodiment of this specification;
[0058] Figure 13 This is a schematic diagram of the structural composition of a request data processing device provided in another embodiment of this specification. Detailed Implementation
[0059] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this specification, and not all embodiments. Based on the embodiments in this specification, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this specification.
[0060] It should be noted that all user-related information and data mentioned in this manual were obtained and used with the user's knowledge and consent. Furthermore, the acquisition, storage, use, and processing of the aforementioned information and data comply with relevant national laws and regulations.
[0061] See Figure 1 As shown in the embodiments of this specification, a request data processing method is provided, wherein the method is specifically applied to the server side. In specific implementation, the method may include the following:
[0062] S101: Receive target data processing request;
[0063] S102: Respond to the target data processing request and generate the corresponding target verification code;
[0064] S103: Send the byte stream of the target verification code to the target client terminal; wherein, the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code;
[0065] S104: According to the preset processing rules, generate a target key corresponding to the target data processing request using the byte stream of the target verification code; wherein, the target key is used to encrypt and decrypt data related to the target data processing request.
[0066] Specifically, the aforementioned preset processing rules can be understood as a set of data encryption and protection rules agreed upon in advance between the server and the target client terminal. Specifically, the preset processing rules include at least: key generation rules and key usage rules, etc.
[0067] In practice, after receiving the byte stream of the target verification code, the target client terminal can, on the one hand, generate and use the corresponding target verification code for security verification based on the byte stream of the target verification code; on the other hand, it can generate a target key corresponding to the target data processing request locally using the byte stream of the target verification code according to preset processing rules, so that the target key can be used to encrypt the relevant data when interacting with the server to perform data processing related to the target data processing request.
[0068] Based on the above embodiments, when the server receives the target data processing request and provides the target client with a byte stream of the target verification code for security verification, it also generates a target key corresponding to the current target data processing request using the byte stream of the target verification code according to the preset processing rules agreed upon with the target client. Subsequently, when the target client terminal and the server perform data processing related to the target data processing request, they can use the target key to encrypt and decrypt the relevant data, thereby better protecting data security.
[0069] In a specific scenario example, see Figure 2 As shown, the above request data processing method can be specifically applied to the server side.
[0070] Specifically, the aforementioned server may include a backend server applied to the business platform (XX Banking Business Platform) side, capable of data transmission, data processing, and other functions. Specifically, the server may be, for example, an electronic device with data processing, storage, and network interaction capabilities. Alternatively, the server may be a software program running on the electronic device, providing support for data processing, storage, and network interaction. In this embodiment, the number of servers is not specifically limited. The server may be a single server, several servers, or a server cluster formed by several servers.
[0071] In practice, when a target user interacts with the server for the first time using the target client terminal, the server can agree on and share preset processing rules with the target client terminal based on the corresponding interaction protocol. These preset processing rules include at least: key generation rules and key usage rules.
[0072] Specifically, the aforementioned target customer terminal may include a front-end device applied to the target user side, capable of data collection, data transmission, and other functions. Specifically, the target customer terminal may be an electronic device such as a desktop computer, tablet computer, laptop computer, or smartphone. Alternatively, the target customer terminal may also be a software application that can run on the aforementioned electronic device. For example, a bank's APP installed and running on a smartphone.
[0073] When a target user wants to use the target client terminal to process target data, such as logging into a target account held by the target user, the target user can first click the account login icon displayed on the target client terminal to initiate an account login trigger operation. Correspondingly, the target client terminal can respond to the above account login trigger operation, generate a corresponding account login verification request as a target data processing request, and send the account login verification request to the server.
[0074] After receiving the aforementioned account login verification request, the server can respond to the request by randomly determining a target verification code for that account. This target verification code is then sent to the target client terminal as a byte stream. Simultaneously, the server can also generate a target key corresponding to this login verification request using the byte stream of the target verification code, according to preset processing rules. This target key can then be used for encryption and decryption during subsequent data processing related to this login verification request.
[0075] After receiving the target verification code byte stream from the server, the target client terminal can first recover the corresponding target verification code from the byte stream; then, it can fill the target verification code into the corresponding account login interface; and finally, it can display the account login interface containing the target verification code to the target user. For details, please refer to [link to documentation / reference]. Figure 3 As shown. Simultaneously, the target client terminal will also generate a target key corresponding to this login verification request locally on the target client using the byte stream of the aforementioned target verification code, according to preset processing rules.
[0076] On the account login screen described above, the target user can follow the instructions to enter the username of the target account to be logged in as the target account identifier, for example, userName:xiaoming; and enter the password for that target account as the target identity verification data, for example, password:123456. In addition, the target user will also enter the corresponding target verification code in the verification field to perform security verification.
[0077] The target client terminal can first perform security verification by checking the accuracy of the target verification code entered on the account login interface. If the target verification code is confirmed to be accurate, it indicates that the operation is performed manually by the target user, rather than through an attack initiated by malware, thus confirming that the security verification has passed. Further, the target client terminal can use the target key to encrypt the target account's username and password entered on the account login interface, obtaining encrypted data of the target account identifier and encrypted data of the target identity verification data. Then, based on the encrypted data of the target account identifier and the encrypted data of the target identity verification data, a corresponding account login verification request is generated. This account login verification request carries at least the encrypted data of the target account identifier and the encrypted data of the target identity verification data. The target client terminal then sends the account login verification request to the server.
[0078] Upon receiving the aforementioned account login verification request, the server can first parse and extract the encrypted data of the target account identifier and the encrypted data of the target identity verification data; then, it can decrypt the data using the target key to obtain the plaintext account name and password; based on the account name, it can query the user database to match the password; if the password matches successfully, the identity verification is considered successful; and then the target user can be allowed to log in to the target account through the target client terminal to perform specific business data processing.
[0079] Based on the above scenario example, the target client terminal and the server generate a new target key for each newly initiated target data processing request, and use this target key to encrypt and decrypt the relevant data during the current processing, effectively improving data security during the data processing process. At the same time, the target client terminal and the server do not directly exchange keys, avoiding key leakage during transmission. In addition, the target key used each time is generated based on preset processing rules, using the byte stream of the randomly generated target verification code, making the target key highly random and reliable. Furthermore, since the target key is generated using the byte stream of the target verification code that must be generated during data processing, the data value of the target verification code is fully utilized, reducing the key generation cost to a certain extent.
[0080] In some embodiments, the aforementioned target data processing request can be specifically understood as the initial request data corresponding to a single target data processing operation.
[0081] In practice, depending on the application scenario and processing requirements, the aforementioned target data processing request can be the starting request data for different types of data processing. For example, in an account login scenario, the aforementioned target data processing request can be the starting request data for account login data processing. As another example, in an account transfer scenario, the aforementioned target data processing request can also be the starting request data for account transfer processing. Yet another example, in a consumer payment scenario, the aforementioned target data processing request can also be the starting request data for consumer payment processing, and so on.
[0082] Specifically, the target data processing request may include: an account login verification request; wherein, the account login verification request is request data generated by the target client terminal in response to an account login trigger operation initiated by the target user. The aforementioned account login verification request can be understood as the initial request data for account login data processing.
[0083] It should be noted that the target data processing requests listed above are merely illustrative. In actual implementation, depending on the specific application scenario and processing requirements, the target data processing requests may include other types of request data. This specification does not limit this.
[0084] In some embodiments, the server may respond to a target data processing request and randomly generate a verification code as the target verification code.
[0085] The target verification code can be a verification image, a verification character set, or verification information, etc.
[0086] Specifically, the server can perform a modulo operation based on the reception time of the target data processing request to obtain the corresponding calculation result; based on the calculation result, it determines the verification code type for the target verification code of the target data processing request; and then randomly generates a verification code of the corresponding type as the target verification code. Alternatively, the service can prepare multiple verification code libraries in advance, each corresponding to a verification code type, and store multiple verification codes of that type. In practice, the server can also randomly select a verification code from the corresponding type of verification code library as the target verification code.
[0087] In some embodiments, the server can convert the target verification code into a corresponding verification code byte stream consisting of 1s and 0s; and then send the target verification code to the target client terminal in the form of a byte stream.
[0088] Specifically, the byte stream of a target verification code can be represented, for example, as follows: 1000 10010101 0000 01100011 1110…….
[0089] After receiving the byte stream of the target verification code, the target client terminal can perform appropriate conversion processing to reconstruct the corresponding target verification code based on the byte stream. This target verification code is then used for security verification related to target data processing. Only after successful security verification can the target client terminal continue interacting with the server to perform subsequent processing related to target data processing.
[0090] In some embodiments, see Figure 4 As shown, the above process generates a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules. In specific implementation, this may include the following:
[0091] S1: According to the preset processing rules, split the byte stream of the target verification code into multiple byte arrays arranged in order;
[0092] S2: Convert the multiple byte arrays into the corresponding target strings;
[0093] S3: Extract multiple characters from the target string and combine them to obtain the target key.
[0094] Correspondingly, on the target client terminal side, the target client terminal generates the corresponding target key locally using the same target verification code byte stream in the same way, according to the same preset processing rules.
[0095] Based on the above embodiments, the server and the target client terminal can respectively generate the target key corresponding to the target data processing request locally using the byte stream of the target verification code according to preset processing rules, thereby avoiding direct transmission of the target key.
[0096] In some embodiments, see Figure 5 As shown, in specific implementation, the server can split the target verification code byte stream into multiple sequentially arranged byte arrays, grouped into sets of 8 bytes each, for example, [10001001, 01010000, 01100011, ...]. Here, "10001001", "01010000", and "01100011" correspond to the first, second, and third bytes of the sorted byte array, respectively. Based on this splitting method, these multiple byte arrays can then be converted into a letter string that is more suitable for computer processing and has a relatively lower processing difficulty, serving as the target string to generate the target key.
[0097] Of course, in practice, the target verification code byte stream can be split into multiple sequentially arranged byte arrays according to GB2312 (16-bit encoding of commonly used Chinese characters), grouped into 16-byte sets. Based on this splitting method, the multiple byte arrays can then be converted into corresponding Chinese character strings as the target string to generate the target key.
[0098] In some embodiments, combined with Figure 5 See Figure 6 As shown, the above-described conversion of multiple byte arrays into corresponding target strings can, in practice, include the following:
[0099] S1: Based on preset processing rules, map multiple byte arrays into a sequentially arranged number sequence;
[0100] S2: According to the preset encoding rules, convert the numbers in the number sequence into their corresponding encoded characters to obtain the initial target string;
[0101] S3: Detect and adjust special encoded characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements.
[0102] In practice, according to preset processing rules, each byte array in a sequence of byte arrays can be mapped to its corresponding decimal number, resulting in a sorted sequence of numbers. For example, the byte arrays "10001001", "01010000", and "01100011" can be mapped to the corresponding decimal numbers "137", "80", and "99" respectively, following decimal rules. Similarly, the mapping of subsequent byte arrays continues, resulting in a sequence of numbers represented as [137, 80, 99, ...].
[0103] In practice, the ASCII encoding rules can be used as the preset encoding rules to convert the numbers in the number sequence into their corresponding ASCII codes, resulting in ordered ASCII codes, which serve as the initial target string. ASCII (American Standard Code for Information Interchange) is a computer encoding system based on the Latin alphabet, primarily used to display modern English and other Western European languages.
[0104] Correspondingly, when the encoded characters in the target string are ASCII codes, the special encoded characters can be ASCII characters that cannot be displayed normally through text character graphics (or cannot be printed normally).
[0105] Specifically, the aforementioned special encoded characters can be control characters or communication-specific characters with ASCII values of 0-31 and 127 in the ASCII table. For example, control characters include: LF (newline), CR (carriage return), FF (form feed), DEL (delete), BS (backspace), BEL (bell), etc.; communication-specific characters include: SOH (start of file), EOT (end of file), ACK (acknowledgment), etc.; ASCII codes with ASCII values of 8, 9, 10, and 13 can be converted into backspace, tab, newline, and carriage return characters, respectively.
[0106] These special encoded characters cannot be displayed using specific text character graphics, resulting in garbled text and other anomalies. Furthermore, depending on the application, they can affect the display of other encoded text characters, leading to errors in subsequent processing and preventing the accurate generation of the corresponding target key according to the preset processing rules. Therefore, after obtaining the initial target string, it is necessary to detect and identify any special encoded characters that do not meet the requirements, and to make targeted adjustments.
[0107] In practice, the server can first detect and locate special encoded characters in the initial target string that do not meet the requirements, such as control characters or communication-specific characters in ASCII code; then, based on preset adjustment rules (e.g., base64 encoding), it can adjust the special encoded characters in the initial target string that do not meet the requirements to the corresponding encoded characters that can be displayed normally through text character graphics, thereby obtaining a string that only contains encoded characters such as lowercase letters az, uppercase letters AZ, numbers 0-9, and symbols "+", " / ", and "=" that can be displayed normally through text character graphics (i.e., meet the requirements), as the target string that meets the requirements.
[0108] Based on the above method, a relatively complex and irregular target string can be obtained from the byte stream of the target CAPTCHA. For details, please refer to [link / reference needed]. Figure 7 As shown, a target key with good reliability and difficult to crack can then be generated based on the target string.
[0109] In some embodiments, see Figure 8 As shown, multiple characters are extracted from the target string and combined to obtain the target key, including:
[0110] S1: Determine multiple starting positions in the target string according to preset processing rules;
[0111] S2: Starting from the starting position, extract a preset number of consecutive encoded characters from the target string to obtain multiple encoded strings;
[0112] S3: Concatenate multiple encoded strings to obtain the target key.
[0113] In practice, for example, according to preset processing rules, the position in the target string whose position number is divisible by 7 can be determined as the starting position; then, starting from each starting position, three consecutive encoded characters including the starting position are extracted to obtain multiple encoded strings corresponding to the multiple starting positions; then, according to the order of the starting positions in the target string, the multiple encoded strings are arranged and concatenated to obtain the final target key.
[0114] For example, according to preset processing rules, the position with a prime number in the target string can be determined as the starting position; then the encoded characters at each starting position can be extracted from the target string, arranged and concatenated in order to obtain the required target key.
[0115] For example, according to preset processing rules, 16 consecutive encoded characters can be taken starting from position 100 in the target string, or encoded characters with even positions can be taken starting from position 100 in the target string and arranged and concatenated in order to obtain the target key.
[0116] Based on the above embodiments, the target string can be fully utilized to generate a target key with better security.
[0117] In some embodiments, after obtaining the target key, the method may further include the following when it is specifically implemented:
[0118] S1: Based on preset processing rules, extract multiple characters from the target account identifier as fuzzy characters;
[0119] S2: Insert the obfuscated characters into the specified position in the target key to obtain the obfuscated target key.
[0120] Based on the above embodiments, the target key can be further obfuscated using obfuscated characters to increase the difficulty of cracking the target key, thereby obtaining a target key with relatively better security.
[0121] In practice, based on preset processing rules, the target data processing request can be processed to obtain the corresponding IP address, receiving time and other information; and then the fuzzy characters can be extracted based on the above information.
[0122] In practice, the even-numbered positions in the target key can be used as the designated positions, and multiple obfuscated characters can be inserted into these even-numbered positions to further obfuscate the target key.
[0123] When performing obfuscation, the system can also determine the specified encoded characters in the target key according to preset processing rules and perform corresponding replacement processing on the specified encoded characters.
[0124] Specifically, for example, according to preset processing rules, the encoded character "a" can be used as the specified encoded character; after detecting the encoded character "a" in the target key, the encoded character "a" can be replaced with the encoded character "+" according to preset processing rules, thereby achieving the obfuscation of the target key.
[0125] Referring to the server embodiment described above, the target client terminal can generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules in a similar manner. This specification will not elaborate further on this.
[0126] In some embodiments, to prevent the preset processing rules from being leaked, the server and the target client terminal can jointly hold and use the preset processing rules by sharing them secretly.
[0127] Based on Secret Sharing (SS), the preset processing rules can be divided into two parts, with the server and the target client terminal each holding and storing a portion of the rules. When the preset processing rules need to be used, the server and the target client terminal can use their respective portions of the rules, based on a secure multi-party protocol, to perform calculations and recover the complete preset processing rules.
[0128] In some embodiments, to prevent the preset processing rules from being leaked, the server and the target client terminal may respectively store the preset processing rules in a local trusted execution environment.
[0129] Specifically, the aforementioned trusted execution environment can include a high-security area within the server (e.g., a security level that meets preset security requirements). More specifically, the trusted execution environment can be a hardware area separated from commonly used, relatively open environment areas (e.g., Rich Execution Environment, REE, etc.) by means of hardware configuration or other methods.
[0130] In this example scenario, the Trust Execution Environment (TEE) described above can run a complete operating system, which can be understood as the Secure World within the server. Unlike the Normal World (e.g., the REE in a server), the TEE typically has a relatively small memory space, for example, perhaps only 100MB. In a server, usually only a portion of data with high security requirements is processed within the TEE; most data is processed in the Normal World, such as the REE. Of course, the TEE listed above is only an illustrative example. In specific implementations, depending on the specific application scenario and the server's configuration, other high-security areas within the server can be selected to replace the TEE.
[0131] Furthermore, to prevent the target key from being leaked, the server and the target client can also generate the target key in a local trusted execution environment using preset processing rules; and / or, use the key to perform related encryption and decryption processing in the local trusted execution environment.
[0132] In some embodiments, after sending the byte stream of the target verification code to the target client terminal, the method may further include the following:
[0133] S1: Receive verification feedback data about the target verification code sent by the target client terminal; wherein, the target client terminal receives and displays the corresponding target verification code to the target user according to the byte stream of the target verification code, and obtains verification feedback data for the target verification code;
[0134] S2: Perform security verification based on the verification feedback data;
[0135] S3: If the security verification is successful, allow the target user to log in to the account through the target client terminal.
[0136] In practice, the target client terminal can use its built-in application to first display a target verification code to the target user, and then guide the target user to input relevant data based on the verification code. The target client terminal can collect the relevant data input by the target user as verification feedback data and send this verification feedback data to the server for security verification.
[0137] If the server detects, based on the verification feedback data, that it is not the target user operating the target client terminal, it can determine that the security verification has failed. At this point, it can generate a request failure message and send the message to the target client terminal.
[0138] Conversely, if the server detects that a real user is operating the target client terminal based on the verification feedback data, it can confirm that the security verification has passed. At this point, it can generate a confirmation command and send it to the target client terminal. Accordingly, the target client terminal can use this confirmation command to allow the target user to continue the account login process and input the necessary data for account login.
[0139] Based on the above embodiments, security verification can be effectively achieved using target verification codes.
[0140] In some embodiments, see Figure 9 As shown, assuming the security verification passes, the method may further include the following in its specific implementation:
[0141] S1: Receive an account login verification request initiated by the target client terminal; wherein, the account login verification request carries at least the encrypted data of the target account identifier of the target account to be logged in, and the encrypted data of the target identity verification data corresponding to the target account; the encrypted data of the target account identifier and the encrypted data of the target identity verification data are obtained by the target client terminal using the target key; the target key is generated locally by the target client terminal using the byte stream of the target verification code according to the preset processing rules;
[0142] S2: Use the target key to decrypt the ciphertext data of the target account identifier and the ciphertext data of the target identity verification data to obtain the target account identifier and the target identity verification data;
[0143] S3: Perform identity verification based on the target account identifier and target identity verification data to obtain the corresponding target verification result.
[0144] In practice, once security verification is successful, the target user can log in to their account normally through the target client terminal, inputting relevant data such as the target account identifier (e.g., the target account name) and target identity verification data (e.g., the account password). Correspondingly, the target client terminal can collect this data and encrypt it using the target key to obtain ciphertext data of the target account identifier and ciphertext data of the target identity verification data. It then generates an account login verification request carrying at least the aforementioned ciphertext data of the target account identifier and the target identity verification data, and sends the account login verification request to the server.
[0145] After receiving an account login verification request, the server can first use the target key to decrypt the encrypted data of the target account identifier and the target identity verification data to obtain the target account identifier and target identity verification data in plaintext form. In plaintext form, the server queries the user database and performs identity verification based on the target account identifier and target identity verification data to determine whether the user has permission to log in to the target account and obtain the corresponding target verification result.
[0146] Based on the target verification results, if it is determined that the target user has permission to log in to the target account, the server can allow the target user to log in to the target account normally using the target client terminal, so as to use the target account for specific data processing.
[0147] Conversely, based on the target verification result, if it is determined that the target user does not have permission to log in to the target account, the server can generate a verification failure message and send the message to the target client terminal, thereby informing the target user that the verification failed and that they cannot log in to the account.
[0148] Based on the above embodiments, identity verification can be performed securely and effectively using the target key.
[0149] In some embodiments, after receiving an account login verification request initiated by the target client terminal, the method may further include the following: according to preset protocol rules, using the ciphertext data of the target key, the target account identifier, and the target identity verification data in ciphertext state, to perform identity verification and obtain the corresponding target verification result; wherein, the preset protocol rules include protocol rules based on homomorphic encryption algorithms.
[0150] Based on the above embodiments, it is possible to use the encrypted data of the target account identifier and the encrypted data of the target identity verification data in the encrypted state to perform identity verification, which can better protect the user's data security and has higher security.
[0151] In some embodiments, after completing the target data processing related to the target data processing request, the server and the target client terminal may, according to preset processing rules, set the target key corresponding to the target data processing request to invalid and destroy the target key.
[0152] In some embodiments, when it is not necessary to generate and use the target verification code for security verification, the server may also use the above method to generate a byte stream of the target verification code and interact with the target client terminal to generate the corresponding target key.
[0153] It should be added that the request data processing method provided in this manual has several advantages. First, it offers high security and uniqueness. Since each target verification code is randomly generated, the target verification code used for each target data processing request is also random. Furthermore, the verification code generation rules have a high probability of ensuring that no two verification codes are generated exactly the same. This effectively guarantees that a different key can be generated for each user's request, solving the problem of fixed user keys and insecurity. Second, the key generated using the target verification code according to the preset processing rules has a short lifespan, valid only for the current user login. Moreover, it does not involve key transmission security issues and does not require additional key confidentiality measures. Third, there are no consistency issues; it effectively ensures that the keys generated and used by the target client terminal (front-end) and the server (back-end) are consistent, because the verification code is issued by the server and is independent of the target client terminal's usage environment. In addition, it has advantages such as easy maintenance and simple and efficient key generation. Each time a user logs in, the corresponding key is generated simultaneously with refreshing the verification code.
[0154] As can be seen from the above, based on the request data processing method provided in the embodiments of this specification, after receiving a target data processing request, the server first responds to the target data processing request and generates a corresponding target verification code; then, it sends the byte stream of the target verification code to the target client terminal to perform security verification based on the target verification code; simultaneously, according to preset processing rules, it uses the byte stream of the target verification code to generate a target key corresponding to the target data processing request, so that the target key can be used to encrypt and decrypt data related to the target data processing request in the future. This allows for the generation and use of a highly secure key for corresponding encryption and decryption processing at a lower cost, thereby effectively protecting data security during the request data processing process.
[0155] See Figure 10 As shown in the embodiments of this specification, a request data processing method is also provided, applied to a client terminal. In specific implementations, it may include the following:
[0156] S1001: Receive and respond to user operation, and send target data processing request to server; wherein, server receives and responds to target data processing request, and generates corresponding target verification code;
[0157] S1002: Receive the byte stream of the target verification code provided by the server;
[0158] S1003: Based on the byte stream of the target verification code, display the corresponding target verification code to the target user for security verification; and generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein, the target key is used to encrypt and decrypt data related to the target data processing request.
[0159] Based on the above embodiments, the client terminal can efficiently and securely generate a target key corresponding to the target data processing request locally using the byte stream of the target verification code according to preset processing rules. Then, the target key can be used to perform corresponding data processing to effectively protect the security of related data.
[0160] See Figure 11 As shown in the embodiments of this specification, a specific server is also provided, wherein the server includes a network communication port 1101, a processor 1102 and a memory 1103, and the above structures are connected by internal cables so that the various structures can perform specific data interaction.
[0161] Specifically, the network communication port 1101 can be used to receive target data processing requests.
[0162] The processor 1102 can specifically be used to respond to a target data processing request, generate a corresponding target verification code, send the byte stream of the target verification code to a target client terminal, wherein the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code, and generates a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules, wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0163] The memory 1103 can be used to store the corresponding instruction program.
[0164] In this embodiment, the network communication port 1101 can be a virtual port bound to different communication protocols, thereby enabling the sending or receiving of different data. For example, the network communication port can be a port responsible for web data communication, a port responsible for FTP data communication, or a port responsible for email data communication. Furthermore, the network communication port can also be a physical communication interface or communication chip. For example, it can be a wireless mobile network communication chip, such as GSM or CDMA; it can also be a Wi-Fi chip; or it can be a Bluetooth chip.
[0165] In this embodiment, the processor 1102 can be implemented in any suitable manner. For example, the processor can take the form of a microprocessor or processor and a computer-readable medium storing computer-readable program code (e.g., software or firmware) executable by the (micro)processor, logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers, and embedded microcontrollers, etc. This specification is not limiting.
[0166] In this embodiment, the memory 1103 may include multiple layers. In a digital system, anything that can store binary data can be a memory. In an integrated circuit, a circuit with storage function but no physical form is also called a memory, such as RAM, FIFO, etc. In a system, a storage device with a physical form is also called a memory, such as a memory stick, TF card, etc.
[0167] This specification also provides a client terminal, including a processor and a memory for storing processor-executable instructions. When the processor executes the instructions, it performs the following steps: receiving and responding to a user operation, and sending a target data processing request to a server; wherein the server receives and responds to the target data processing request and generates a corresponding target verification code; receiving a byte stream of the target verification code provided by the server; displaying the corresponding target verification code to the target user based on the byte stream of the target verification code for security verification; and generating a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0168] This specification also provides a computer-readable storage medium based on the above-described request data processing method. The computer-readable storage medium stores computer program instructions that, when executed, implement: receiving a target data processing request; responding to the target data processing request and generating a corresponding target verification code; sending the byte stream of the target verification code to a target client terminal; wherein the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code; and generates a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0169] In this embodiment, the storage medium includes, but is not limited to, Random Access Memory (RAM), Read-Only Memory (ROM), Cache, Hard Disk Drive (HDD), or Memory Card. The memory can be used to store computer program instructions. The network communication unit can be an interface configured according to standards specified in the communication protocol for network connection communication.
[0170] In this embodiment, the specific functions and effects implemented by the program instructions stored in the computer-readable storage medium can be explained in comparison with other embodiments, and will not be repeated here.
[0171] This specification also provides another computer-readable storage medium based on the above-described request data processing method. The computer-readable storage medium stores computer program instructions that, when executed, implement the following steps: receiving and responding to a user operation, and sending a target data processing request to a server; wherein the server receives and responds to the target data processing request and generates a corresponding target verification code; receiving a byte stream of the target verification code provided by the server; displaying the corresponding target verification code to the target user based on the byte stream of the target verification code for security verification; and generating a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0172] This specification also provides another computer-readable storage medium based on the above-described request data processing method. The computer-readable storage medium stores computer program instructions that, when executed, implement the following steps: receiving and responding to a user operation, and sending a target data processing request to a server; wherein the server receives and responds to the target data processing request and generates a corresponding target verification code; receiving a byte stream of the target verification code provided by the server; displaying the corresponding target verification code to the target user based on the byte stream of the target verification code for security verification; and generating a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0173] See Figure 12 As shown, at the software level, this specification also provides a request data processing apparatus, which may specifically include the following structural modules:
[0174] The receiving module 1201 can be specifically used to receive target data processing requests;
[0175] The first generation module 1202 can be used to respond to the target data processing request and generate the corresponding target verification code;
[0176] The sending module 1203 is specifically used to send the byte stream of the target verification code to the target client terminal; wherein, the target client terminal receives and performs corresponding security verification based on the byte stream of the target verification code;
[0177] The second generation module 1204 can be used to generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein, the target key is used to encrypt and decrypt data related to the target data processing request.
[0178] In some embodiments, the target data processing request may specifically include: an account login verification request; wherein, the account login verification request may specifically be request data generated by the target client terminal in response to an account login triggering operation initiated by the target user.
[0179] In some embodiments, after sending the byte stream of the target verification code to the target client terminal, the device may further be used to: receive verification feedback data about the target verification code sent by the target client terminal; wherein the target client terminal receives and displays the corresponding target verification code to the target user according to the byte stream of the target verification code, and obtains verification feedback data for the target verification code; performs security verification based on the verification feedback data; and, if the security verification is successful, allows the target user to perform account login operations through the target client terminal.
[0180] In some embodiments, when the security verification is successful, the device may further be used to: receive an account login verification request initiated by a target client terminal; wherein the account login verification request carries at least encrypted data of the target account identifier of the target account to be logged in, and encrypted data of the target identity verification data corresponding to the target account; the encrypted data of the target account identifier and the encrypted data of the target identity verification data are obtained by the target client terminal using a target key; the target key is generated locally by the target client terminal using the byte stream of the target verification code according to a preset processing rule; the encrypted data of the target account identifier and the encrypted data of the target identity verification data are decrypted using the target key to obtain the target account identifier and the target identity verification data; and identity verification is performed based on the target account identifier and the target identity verification data to obtain the corresponding target verification result.
[0181] In some embodiments, after receiving an account login verification request initiated by the target client terminal, the device may further be used to: perform identity verification in ciphertext state using the target key, the ciphertext data of the target account identifier, and the ciphertext data of the target identity verification data, according to preset protocol rules, to obtain the corresponding target verification result; wherein, the preset protocol rules include protocol rules based on homomorphic encryption algorithms.
[0182] In some embodiments, when the second generation module 1204 is specifically implemented, it can generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to the preset processing rules in the following manner: according to the preset processing rules, the byte stream of the target verification code is split into multiple byte arrays arranged in order; the multiple byte arrays are converted into corresponding target strings; multiple characters are extracted from the target strings and combined to obtain the target key.
[0183] In some embodiments, when the second generation module 1204 is specifically implemented, the multiple byte arrays can be converted into corresponding target strings in the following manner: according to preset processing rules, the multiple byte arrays are mapped into a sequence of numbers arranged in order; according to preset encoding rules, the numbers in the number sequence are converted into corresponding encoded characters to obtain an initial target string; special encoded characters in the initial target string that do not meet the requirements are detected and adjusted to obtain a target string that meets the requirements.
[0184] In some embodiments, when the second generation module 1204 is specifically implemented, it can extract multiple characters from the target string and combine them to obtain the target key in the following manner: determine multiple starting positions in the target string according to preset processing rules; extract a preset number of consecutive encoded characters from the target string from the starting positions to obtain multiple encoded strings; and concatenate the multiple encoded strings to obtain the target key.
[0185] In some embodiments, after obtaining the target key, the device can also be used to: extract multiple characters from the target account identifier as fuzzy characters according to preset processing rules; insert the fuzzy characters into a specified position in the target key to obtain the fuzzy target key.
[0186] See Figure 13 As shown, at the software level, this specification also provides another request data processing device applied to a client terminal, which may specifically include the following structural modules:
[0187] The sending module 1301 can be used to receive and respond to user operations and send a target data processing request to the server; wherein, the server receives and responds to the target data processing request and generates a corresponding target verification code;
[0188] The receiving module 1302 can be specifically used to receive the byte stream of the target verification code provided by the server;
[0189] The processing module 1303 is specifically used to display the corresponding target verification code to the target user based on the byte stream of the target verification code for security verification; and to generate a target key corresponding to the target data processing request using the byte stream of the target verification code according to preset processing rules; wherein the target key is used to encrypt and decrypt data related to the target data processing request.
[0190] It should be noted that the units, devices, or modules described in the above embodiments can be implemented by computer chips or physical entities, or by products with certain functions. For ease of description, the above devices are described by dividing them into various modules according to their functions. Of course, in implementing this specification, the functions of each module can be implemented in one or more software and / or hardware, or the module that implements the same function can be implemented by a combination of multiple sub-modules or sub-units, etc. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and there may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection between the devices or units shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.
[0191] As can be seen from the above, the request data processing apparatus provided in the embodiments of this specification can generate and use a highly secure key for corresponding encryption and decryption processing at a lower cost, thereby effectively protecting data security during the request data processing process.
[0192] While this specification provides the steps of operation for the methods described in the embodiments or flowcharts, more or fewer steps may be included based on conventional or non-inventive means. The order of steps listed in the embodiments is merely one possible order of execution among many steps and does not represent the only possible order. In actual device or client product execution, the methods shown in the embodiments or drawings may be executed sequentially or in parallel (e.g., in a parallel processor or multi-threaded processing environment, or even a distributed data processing environment). The terms "comprising," "including," or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, product, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, product, or apparatus. Without further limitations, the presence of other identical or equivalent elements in a process, method, product, or apparatus that includes said elements is not excluded. The terms "first," "second," etc., are used to denote names and do not indicate any particular order.
[0193] Those skilled in the art will also know that, besides implementing the controller using purely computer-readable program code, the same functions can be achieved by logically programming the method steps, making the controller function as logic gates, switches, application-specific integrated circuits (ASICs), programmable logic controllers (PLCs), and embedded microcontrollers. Therefore, such a controller can be considered a hardware component, and the devices within it used to implement various functions can also be considered structures within that hardware component. Alternatively, the devices used to implement various functions can be considered as both software modules implementing the method and structures within a hardware component.
[0194] This specification can be described in the general context of computer-executable instructions that are executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, classes, etc., that perform a specific task or implement a specific abstract data type. This specification can also be practiced in distributed computing environments, where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer-readable storage media, including storage devices.
[0195] As can be seen from the above description of the embodiments, those skilled in the art can clearly understand that this specification can be implemented by means of software plus necessary general-purpose hardware platforms. Based on this understanding, the technical solutions of this specification can essentially be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, mobile terminal, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments of this specification.
[0196] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to interchangeably. Each embodiment focuses on its differences from other embodiments. This specification can be used in numerous general-purpose or special-purpose computer system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable electronic devices, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices, etc.
[0197] Although this specification has been described by way of examples, those skilled in the art will recognize that many variations and modifications are possible without departing from the spirit of this specification, and it is intended that the appended claims cover such variations and modifications without departing from the spirit of this specification.
Claims
1. A request data processing method applied to a server, characterized in that, The method comprises: receiving a target data processing request of a target client terminal; wherein the target data processing request is a starting request data corresponding to target data processing; in response to the target data processing request, generating a corresponding target verification code; comprising: performing a remainder operation according to the receiving time of the target data processing request; determining the verification code type of the target verification code for the target data processing request according to the operation result; randomly extracting a verification code from the verification code library of the corresponding type as the target verification code; the verification code type comprises at least one of the following: verification picture, verification character group, verification information; sending the byte stream of the target verification code to the target client terminal; wherein the target client terminal receives and performs corresponding security verification according to the byte stream of the target verification code; in the case where it is determined that the security verification of the target verification code is passed, receiving the other data processing request of the target data processing sent by the target client terminal; the other data processing request is obtained by encrypting the target secret key generated by the target client terminal using the byte stream of the target verification code and the preset processing rule; generating the target secret key using the byte stream of the target verification code according to the preset processing rule; wherein the target secret key is used for decrypting the other data processing request sent by the target client terminal; generating the target secret key using the byte stream of the target verification code according to the preset processing rule comprises: according to the preset processing rule, the byte stream of the target verification code is split into a plurality of byte arrays arranged in sequence; according to the preset processing rule, the plurality of byte arrays are mapped into a digital sequence arranged in sequence; according to the preset encoding rule, the numbers in the digital sequence are respectively converted into corresponding encoding characters to obtain an initial target string; detecting and adjusting the special encoding characters in the initial target string that do not meet the requirements to obtain a target string that meets the requirements; determining a plurality of starting positions in the target string according to the preset processing rule; extracting a preset number of consecutive encoding characters from the target string from the starting position to obtain a plurality of encoding strings; splicing the plurality of encoding strings to obtain the target secret key; and after obtaining the target secret key, according to the preset processing rule, a plurality of characters are extracted from the target account identifier as fuzzy characters; the fuzzy characters are inserted into the specified position in the target secret key to obtain the target secret key after fuzzy processing.
2. The method of claim 1, wherein, The target data processing request comprises: an account login verification request; wherein the account login verification request is the request data generated by the target client terminal in response to the account login trigger operation initiated by the target user.
3. The method of claim 2, wherein, After sending the byte stream of the target verification code to the target client terminal, the method further comprises: receiving the verification feedback data about the target verification code sent by the target client terminal; wherein the target client terminal receives and displays the corresponding target verification code to the target user according to the byte stream of the target verification code, and obtains the verification feedback data for the target verification code; performing security verification according to the verification feedback data; in the case where it is determined that the security verification is passed, allowing the target user to perform the account login operation through the target client terminal.
4. The method of claim 3, wherein, In the case of determining that the security verification is passed, the method further comprises: receiving an account login verification request initiated by a target client terminal; wherein the account login verification request carries at least ciphertext data of a target account identifier of a target account to be logged in, and ciphertext data of target identity verification data corresponding to the target account; the ciphertext data of the target account identifier and the ciphertext data of the target identity verification data are obtained by encrypting the target client terminal using a target secret key; the target secret key is generated by the target client terminal locally using a byte stream of a target verification code according to a preset processing rule; decrypting the ciphertext data of the target account identifier and the ciphertext data of the target identity verification data using the target secret key to obtain the target account identifier and the target identity verification data; performing identity verification according to the target account identifier and the target identity verification data to obtain a corresponding target verification result.
5. The method of claim 4, wherein, After receiving the account login verification request initiated by the target client terminal, the method further comprises: performing identity verification in a ciphertext state using the target secret key, the ciphertext data of the target account identifier, and the ciphertext data of the target identity verification data according to a preset protocol rule to obtain a corresponding target verification result; wherein the preset protocol rule includes a protocol rule based on a homomorphic encryption algorithm.
6. A request data processing method applied to a client terminal, characterized in that, Comprise: receiving and responding to user operations, and sending a target data processing request to a server; wherein the server receives and responds to the target data processing request to generate a corresponding target verification code; the server generates the target verification code in the following manner: performing a modulo operation according to the receiving time of the target data processing request; determining the verification code type of the target verification code for the target data processing request according to the operation result; randomly extracting a verification code from a verification code library of the corresponding type as the target verification code; the verification code type includes at least one of the following: a verification picture, a verification character group, and verification information; the target data processing request is the starting request data corresponding to the target data processing; receiving a byte stream of the target verification code provided by the server; According to the byte stream of the target verification code, a corresponding target verification code is displayed to a target user for security verification, and a target secret key corresponding to the target data processing request is generated according to a preset processing rule by using the byte stream of the target verification code; wherein the target secret key is used to encrypt other data processing requests of the target data processing; the target secret key corresponding to the target data processing request is generated according to the preset processing rule by using the byte stream of the target verification code, including: according to the preset processing rule, the byte stream of the target verification code is split into a plurality of byte arrays arranged in sequence; according to the preset processing rule, the plurality of byte arrays are mapped into a sequence of numbers arranged in sequence; according to the preset encoding rule, the numbers in the sequence of numbers are respectively converted into corresponding encoded characters to obtain an initial target string; the special encoded characters in the initial target string that do not meet the requirements are detected and adjusted to obtain a target string that meets the requirements; according to the preset processing rule, a plurality of starting positions are determined in the target string; from the starting position, a preset number of consecutive encoded characters are extracted from the target string to obtain a plurality of encoded strings; the plurality of encoded strings are spliced to obtain the target secret key; and after obtaining the target secret key, according to the preset processing rule, a plurality of characters are extracted from the target account identifier as fuzzy characters; the fuzzy characters are inserted into the target secret key at a specified position to obtain a fuzzy processed target secret key; and the server is configured to receive other data processing requests sent by the client terminal under the condition that the security verification of the target verification code is passed, generate the target secret key by using the byte stream of the target verification code according to the preset processing rule, and decrypt the other data processing requests by using the target secret key.
7. A requesting data processing apparatus, applied to a server, characterized in that, The device comprises: a receiving module configured to receive a target data processing request of a target client terminal; wherein the target data processing request is a starting request data corresponding to target data processing; a first generating module configured to generate a corresponding target verification code in response to the target data processing request; a sending module configured to send a byte stream of the target verification code to the target client terminal; wherein the target client terminal receives and performs corresponding security verification according to the byte stream of the target verification code; the device is further configured to receive other data processing requests of the target data processing sent by the target client terminal under the condition that the security verification of the target verification code is passed; and the other data processing requests are encrypted by using a target secret key generated by the target client terminal by using the byte stream of the target verification code and a preset processing rule. The second generation module is configured to generate a target secret key according to a preset processing rule and using a byte stream of the target verification code; the target secret key is used to decrypt and process other data processing requests sent by the target client terminal; the target secret key is generated according to the preset processing rule and using the byte stream of the target verification code, including: according to the preset processing rule, the byte stream of the target verification code is split into a plurality of byte arrays arranged in sequence; according to the preset processing rule, the plurality of byte arrays are mapped into a numerical sequence arranged in sequence; according to a preset encoding rule, the numbers in the numerical sequence are respectively converted into corresponding encoded characters to obtain an initial target string; special encoded characters in the initial target string that do not meet the requirements are detected and adjusted to obtain a target string that meets the requirements; according to the preset processing rule, a plurality of starting positions are determined in the target string; a preset number of continuous encoded characters are extracted from the target string from the starting positions to obtain a plurality of encoded strings; the plurality of encoded strings are spliced to obtain the target secret key; and after obtaining the target secret key, a plurality of characters are extracted from the target account identifier as fuzzy characters according to the preset processing rule; the fuzzy characters are inserted into the target secret key at a specified position to obtain a target secret key after fuzzy processing.
8. A requesting data processing device applied to a client terminal, characterized in that, The sending module is configured to receive and respond to a user operation, and send a target data processing request to a server; the server receives and responds to the target data processing request to generate a corresponding target verification code; the server generates the target verification code in the following manner: performing a modulo operation according to a receiving time of the target data processing request; determining a verification code type of the target verification code for the target data processing request according to an operation result; randomly extracting a verification code from a verification code library of a corresponding type as the target verification code; the verification code type includes at least one of the following: a verification picture, a verification character group, and verification information; the target data processing request is a starting request data corresponding to target data processing; The receiving module is configured to receive a byte stream of the target verification code provided by the server; The processing module is configured to display a target verification code corresponding to a byte stream of the target verification code to a target user for security verification, and generate a target secret key corresponding to a target data processing request by using the byte stream of the target verification code according to a preset processing rule, wherein the target secret key is used to encrypt other data processing requests of the target data processing; and the generating of the target secret key corresponding to the target data processing request by using the byte stream of the target verification code according to the preset processing rule comprises: splitting the byte stream of the target verification code into a plurality of byte arrays arranged in sequence according to the preset processing rule; mapping the plurality of byte arrays into a digital sequence arranged in sequence according to the preset processing rule; converting the numbers in the digital sequence into corresponding encoded characters respectively according to a preset encoding rule to obtain an initial target string; detecting and adjusting special encoded characters in the initial target string that do not meet the requirements to obtain a target string meeting the requirements; determining a plurality of starting positions in the target string according to the preset processing rule; extracting a preset number of continuous encoded characters from the target string from the starting positions to obtain a plurality of encoded strings; splicing the plurality of encoded strings to obtain the target secret key; and after obtaining the target secret key, extracting a plurality of characters from the target account identifier as fuzzy characters according to the preset processing rule; inserting the fuzzy characters into a specified position in the target secret key to obtain a fuzzy processed target secret key; and the server is configured to receive other data processing requests sent by the client terminal under the condition that the security verification of the target verification code is passed, generate the target secret key by using the byte stream of the target verification code according to the preset processing rule, and perform decryption processing on the other data processing requests by using the target secret key.
9. A server, characterized by A computer program product comprising a processor and a memory storing processor-executable instructions for implementing the steps of the method of any one of claims 1 to 5 when executed by the processor.
10. A computer-readable storage medium, characterized in that, A computer program product comprising a processor and a memory storing processor-executable instructions for implementing the steps of the method of any one of claims 1 to 5 when executed by the processor.
Citation Information
Patent Citations
Encryption authentication method and system, storage medium and equipment
CN112738024A
Device Authentication
US20080022377A1