Data query method, device, apparatus, and storage medium
By identifying and encrypting the fields of the raw data during the data query process, target data is generated to reduce the risk of sensitive content leakage, solving the leakage problem that may be caused by directly returning data and improving the security of data query.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHONGQING ANT CONSUMER FINANCE CO LTD
- Filing Date
- 2023-02-20
- Publication Date
- 2026-04-24
AI Technical Summary
Directly returning the retrieved data during the data query process may pose a risk of leaking sensitive information.
By identifying fields in the raw data, determining the field types of multiple fields, and encrypting the data based on these types, the target data is generated and returned.
It improves the security of the data query process and reduces the risk of sensitive content leakage.
Smart Images

Figure CN116305255B_ABST
Abstract
Description
Technical Field
[0001] This specification relates to the field of computer technology, and in particular to a data query method, apparatus, device, and storage medium. Background Technology
[0002] With the development of computer technology, the amount of data generated is increasing. For example, in financial scenarios, financial data is constantly generated as financial activities proceed. To improve data utilization, data is often stored in databases, which can then be retrieved later.
[0003] In related technologies, the retrieved data is directly returned to the data querying party during the data query process. However, the retrieved data may contain sensitive content, and directly returning the retrieved data may pose a risk of sensitive content leakage. Summary of the Invention
[0004] This specification provides a data query method, apparatus, device, and storage medium, which can improve the security of the data query process and reduce the risk of sensitive content leakage. The technical solution is as follows:
[0005] On the one hand, a data query method is provided, the method comprising:
[0006] In response to a data query request, obtain the original data corresponding to the data query request;
[0007] Field identification is performed on the original data to obtain the field types of multiple fields in the original data;
[0008] Based on the field types of the multiple fields, the original data is encrypted to obtain the target data;
[0009] The target data is returned to the terminal that sent the data query request.
[0010] On the one hand, a data query method is provided, the method comprising:
[0011] Displays a data query interface, which is used to perform data queries;
[0012] In response to a data query operation on the data query interface, a data query request is sent to the server so that the server can obtain the original data corresponding to the data query request and perform field identification on the original data to obtain the field types of multiple fields in the original data.
[0013] Obtain the target data returned by the server, which is obtained by the server encrypting the original data based on the field types of the multiple fields;
[0014] The target data is displayed on the data query interface.
[0015] On the one hand, a data query device is provided, the device comprising:
[0016] The raw data acquisition module is used to acquire the raw data corresponding to the data query request in response to the data query request;
[0017] The field identification module is used to identify fields in the original data to obtain the field types of multiple fields in the original data;
[0018] An encryption module is used to encrypt the original data based on the field types of the multiple fields to obtain the target data;
[0019] The data sending module is used to return the target data to the sending terminal of the data query request.
[0020] In one possible implementation, the field identification module is used to extract features from the original data to obtain data features of the original data; and based on the data features of the original data, to determine the field types of multiple fields in the original data.
[0021] In one possible implementation, the field recognition module is used to segment the original data into words to obtain multiple fields in the original data; and to extract features from the multiple fields to obtain data features of the original data.
[0022] In one possible implementation, the field recognition module is used to split the original data into multiple characters; and to combine adjacent characters among the multiple characters to obtain the multiple fields.
[0023] In one possible implementation, the field identification module is configured to perform any of the following:
[0024] Convolution is performed on the multiple fields to obtain the data features of the original data, wherein the data features include the convolution features of each of the fields;
[0025] A full join is performed on the multiple fields to obtain the data features of the original data, wherein the data features include the full join features of each of the fields;
[0026] The multiple fields are encoded based on an attention mechanism to obtain the data features of the original data.
[0027] In one possible implementation, the field identification module is configured to perform any of the following:
[0028] Based on the data features, multiple rounds of iterative decoding are performed to obtain the field types of multiple fields in the original data;
[0029] The data features are fully connected and normalized to obtain the field types of multiple fields in the original data.
[0030] In one possible implementation, the encryption module is used to encrypt the target field in the original data using a preset encryption algorithm to obtain the target data, wherein the target field is a field of the target field type among the plurality of fields, and the preset encryption algorithm is an asymmetric encryption algorithm or a symmetric encryption algorithm.
[0031] In one possible implementation, the device further includes:
[0032] The decryption module is used to obtain the decryption request from the sending terminal for the target data; in response to the decryption request, decrypt the target data to obtain the decrypted target data; and return the decrypted target data to the sending terminal.
[0033] In one possible implementation, the decryption module is used to decrypt the encrypted fields in the target data using a preset decryption algorithm to obtain the decrypted target data, wherein the preset decryption algorithm corresponds to the algorithm used to encrypt the original data.
[0034] In one possible implementation, the raw data acquisition module is configured to, in response to a data query request, acquire verification information from the data query request; and, if the verification information passes verification, acquire the raw data corresponding to the data query request.
[0035] On the one hand, a data query device is provided, the device comprising:
[0036] The display module is used to display the data query interface, which is used to perform data queries.
[0037] The request sending module is used to respond to the data query operation on the data query interface by sending a data query request to the server so that the server can obtain the original data corresponding to the data query request and perform field identification on the original data to obtain the field types of multiple fields in the original data.
[0038] The data acquisition module is used to acquire the target data returned by the server, which is obtained by the server encrypting the original data based on the field types of the multiple fields;
[0039] The display module is also used to display the target data on the data query interface.
[0040] In one possible implementation, the display module is further configured to send a decryption request for the target data to the server in response to a data decryption operation on the data query interface, so that the server decrypts the target data and obtains the decrypted target data.
[0041] Obtain the decrypted target data; display the decrypted target data on the data query interface.
[0042] On one hand, a computer device is provided, the computer device including one or more processors and one or more memories, the one or more memories storing at least one computer program, the computer program being loaded and executed by the one or more processors to implement the data query method.
[0043] On one hand, a computer-readable storage medium is provided, wherein at least one computer program is stored in the computer-readable storage medium, the computer program being loaded and executed by a processor to implement the data query method.
[0044] On one hand, a computer program product or computer program is provided, which includes program code stored in a computer-readable storage medium. The processor of a computer device reads the program code from the computer-readable storage medium and executes the program code, causing the computer device to perform the aforementioned data query method.
[0045] The technical solution provided in the embodiments of this specification, in response to a data query request, obtains the original data corresponding to the data query request. After obtaining the original data, it is not directly returned to the terminal that sent the data query request. Instead, the original data undergoes field identification to obtain the field types of multiple fields. Based on the field types of these multiple fields, the original data is encrypted to obtain the target data, which is also the encrypted original data. Returning the target data to the sending terminal improves the security of the data query process and reduces the risk of leakage of sensitive content in the original data. Attached Figure Description
[0046] To more clearly illustrate the technical solutions in the embodiments of this specification, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this specification. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0047] Figure 1This is a schematic diagram of the implementation environment of a data query method provided in the embodiments of this specification;
[0048] Figure 2 This is a flowchart of a data query method provided in the embodiments of this specification;
[0049] Figure 3 This is a flowchart of another data query method provided in the embodiments of this specification;
[0050] Figure 4 This is a flowchart of yet another data query method provided in the embodiments of this specification;
[0051] Figure 5 This is a schematic diagram of a data query interface provided in an embodiment of this specification;
[0052] Figure 6 This is a schematic diagram of another data query interface provided in the embodiments of this specification;
[0053] Figure 7 This is a schematic diagram of yet another data query interface provided in the embodiments of this specification;
[0054] Figure 8 This is a flowchart of another data query method provided in the embodiments of this specification;
[0055] Figure 9 This is a schematic diagram of the structure of a data query device provided in the embodiments of this specification;
[0056] Figure 10 This is a schematic diagram of another data query device provided in the embodiments of this specification;
[0057] Figure 11 This is a schematic diagram of the structure of a terminal provided in an embodiment of this specification;
[0058] Figure 12 This is a schematic diagram of the structure of a server provided in the embodiments of this specification. Detailed Implementation
[0059] To make the objectives, technical solutions, and advantages of this specification clearer, the embodiments of this specification will be further described in detail below with reference to the accompanying drawings.
[0060] In this manual, the terms "first," "second," etc., are used to distinguish identical or similar items with essentially the same function. It should be understood that there is no logical or temporal dependency between "first," "second," and "nth," nor are there any restrictions on quantity or execution order.
[0061] Artificial intelligence (AI) is the theory, methods, technology and application system that uses digital computers or machines controlled by digital computers to simulate, extend and expand human intelligence, perceive the environment, acquire knowledge and use knowledge to obtain better results.
[0062] Machine learning is the core of artificial intelligence and the fundamental way to endow computers with intelligence. Its applications span all areas of artificial intelligence. Machine learning and deep learning typically include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and learning by demonstration.
[0063] Intelligent text classification: "Intelligent text classification" refers to the automatic classification and labeling of text according to a certain classification system or standard based on "artificial intelligence" technologies such as machine learning. It uses a pre-labeled training text set to find a relationship model between text features and text categories, and then uses this learned relationship model to determine the category of new text. Based on "intelligent text classification," a piece of text can be automatically classified into a pre-given category.
[0064] Encryption / Decryption Extraction: Sensitive field "encryption / decryption extraction" refers to the operation of de-identifying and decrypting sensitive fields in the data interface. Sensitive field encryption is the process of converting plaintext information of sensitive fields into information without sensitivity through a certain algorithm; sensitive field decryption is the process of restoring the de-identified fields to their original information through a certain decryption algorithm.
[0065] Normalization: Mapping sequences of values with different ranges to the interval (0, 1) to facilitate data processing. In some cases, normalized values can be directly expressed as probabilities.
[0066] Embedded coding, mathematically speaking, represents a correspondence, that is, mapping data in space X to space Y using a function F. This function F is injective, and the mapping result preserves the structure. An injective function means that the mapped data uniquely corresponds to the original data, and preserving the structure means that the order of the original data remains the same. For example, if there are data X1 and X2 before mapping, after mapping we get Y1 corresponding to X1 and Y2 corresponding to X2. If the original data X1 > X2, then correspondingly, the mapped data Y1 > Y2. For words, this means mapping words to another space to facilitate subsequent machine learning and processing.
[0067] Attention weights represent the importance of a piece of data during training or prediction. Importance indicates the magnitude of the influence of input data on output data. Data with high importance corresponds to higher attention weights, while data with low importance corresponds to lower attention weights. The importance of data varies in different scenarios, and training the model to assign attention weights is essentially the process of determining data importance.
[0068] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, data stored, data displayed, etc.) and signals involved in this manual are authorized by the user or fully authorized by all parties, and the collection, use and processing of related data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0069] Figure 1 This is a schematic diagram illustrating the implementation environment of a data query method provided in the embodiments of this specification. See also... Figure 1 The implementation environment may include terminal 110 and server 140.
[0070] Terminal 110 is connected to server 140 via a wireless or wired network. Optionally, terminal 110 may be a smartphone, tablet, laptop, desktop computer, smartwatch, etc., but is not limited to these. Terminal 110 has an application installed and running that supports data querying.
[0071] Server 140 is a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, Content Delivery Network (CDN), and big data and artificial intelligence platforms. Server 140 provides background services for the applications running on terminal 110, that is, it provides data query-related services.
[0072] Those skilled in the art will understand that the number of terminals described above can be more or less. For example, there may be only one terminal, or there may be dozens or hundreds of terminals, or even more, in which case other terminals may also be included in the above implementation environment. This specification does not limit the number of terminals or the type of devices in the embodiments.
[0073] After introducing the implementation environment of the embodiments of this specification, the application scenarios of the embodiments of this specification will be described below in conjunction with the above implementation environment. In the following description, the terminal is the terminal 110 in the above implementation environment, and the server is the server 140 in the above implementation environment.
[0074] The technical solutions provided in the embodiments of this specification can be applied to scenarios of querying various types of data, such as querying financial data, querying user data, or querying navigation data.
[0075] Taking the technical solution provided in the embodiments of this specification as an example in a scenario of querying financial data, the terminal sends a data query request to the server. This data query request is used to request the query of financial data. The server receives the data query request and, in response, obtains the original financial data corresponding to the data query request. This original financial data is the data generated during financial activities. The server identifies the fields in the original financial data to obtain the field types of multiple fields. These field types indicate whether a field is a sensitive field. For example, in some scenarios, the specific amount in the financial data is a sensitive field. Based on the field types of these multiple fields, the server encrypts the original financial data to obtain the target financial data. The server sends the target financial data to the terminal. This target financial data is the encrypted original financial data, and transmitting the target financial data does not disclose sensitive content.
[0076] It should be noted that the above description is based on the application of the technical solution provided in the embodiments of this specification to the scenario of querying financial data. The implementation process of the technical solution provided in the embodiments of this specification in other scenarios belongs to the same inventive concept as described above. The implementation process is described above and will not be repeated here.
[0077] After introducing the implementation environment and application scenarios of the embodiments in this specification, the data query method provided in the embodiments of this specification will be described below. See [link to documentation]. Figure 2 Taking the server as the executing entity as an example, the method includes the following steps.
[0078] 202. In response to a data query request, the server retrieves the original data corresponding to the data query request.
[0079] This data query request is used to request a data query. The data type requested in this request varies depending on the application scenario. For example, in a scenario involving financial data, the request requests financial data; in a scenario involving user data, it requests user data; and in a scenario involving navigation data, it requests navigation data. Accordingly, the original data corresponding to this data query request is the data retrieved based on the query request. In some embodiments, the server maintains a database, and the server can query this database based on the data query request to obtain the original data.
[0080] 204. The server performs field identification on the original data to obtain the field types of multiple fields in the original data.
[0081] The original data comprises multiple fields, which together constitute the original data. Field identification is performed on the original data to determine the field types of these multiple fields. In some embodiments, field types include target field types and non-target field types. Fields of the target field type are also known as sensitive fields, while fields of the non-target field type are also known as ordinary fields. The field type refers to the field type of each individual field; that is, field identification on the original data can determine the field type of each field in the original data.
[0082] 206. The server encrypts the original data based on the field types of these multiple fields to obtain the target data.
[0083] In this process, the original data is encrypted based on the field type of the field. That is, the fields in the original data are encrypted based on the field type of the field, thereby encrypting the original data. The target data is the encrypted original data.
[0084] 208. The server returns the target data to the terminal that sent the data query request.
[0085] In this context, the sending terminal is also the terminal that requests a data query, and the target data is returned to the requesting terminal, which is the result of the data query.
[0086] The technical solution provided in the embodiments of this specification, in response to a data query request, obtains the original data corresponding to the data query request. After obtaining the original data, it is not directly returned to the terminal that sent the data query request. Instead, the original data undergoes field identification to obtain the field types of multiple fields. Based on the field types of these multiple fields, the original data is encrypted to obtain the target data, which is also the encrypted original data. Returning the target data to the sending terminal improves the security of the data query process and reduces the risk of leakage of sensitive content in the original data.
[0087] This specification also provides another data query method in its embodiments; see [link to documentation]. Figure 3 Taking the terminal as the executing entity as an example, the method includes the following steps.
[0088] 302. The terminal displays a data query interface, which is used for data querying.
[0089] The data query interface is used for data querying. It provides human-computer interaction functions during the data query process, allowing users to perform data query-related operations.
[0090] 304. In response to the data query operation on the data query interface, the terminal sends a data query request to the server so that the server can obtain the original data corresponding to the data query request, and perform field identification on the original data to obtain the field types of multiple fields in the original data.
[0091] The data query operation on the data query interface is the interactive operation performed on the data query interface, and the data query request is triggered by the execution of the data query operation.
[0092] 306. The terminal obtains the target data returned by the server. This target data is obtained by the server encrypting the original data based on the field types of the multiple fields.
[0093] 308. The terminal displays the target data on the data query interface.
[0094] The target data is the result of performing a data query operation on the data query interface, and the target data is the original data after encryption.
[0095] The technical solutions provided in the embodiments of this specification utilize a data query interface to offer data query functionality, enabling quick and easy data retrieval. By performing a data query operation on this interface, a data query request can be sent to the server, and the target data can be obtained based on this request. This target data is encrypted raw data, thereby enhancing data security during the data query process.
[0096] Steps 202-208 and 302-308 above are a brief introduction to the data query method provided in the embodiments of this specification. The following will illustrate the data query method provided in the embodiments of this specification more clearly with some examples. See [link to documentation]. Figure 4 Taking the method implemented through the interaction between the terminal and the server as an example, the method includes the following steps.
[0097] 402. The terminal displays a data query interface, which is used for data querying.
[0098] This data query interface is used for data querying and provides human-computer interaction functions during the data query process, allowing users to perform data query-related operations. In some embodiments, this data query interface is a functional interface of an application running on the terminal, through which the application provides data query functions. The type of data queried through this data query interface varies depending on the application scenario.
[0099] In some embodiments, the data query interface includes a data query area and a data query control. The data query area is used to input data query information, and the data query control is used to trigger a data query request. The data query information indicates the data to be queried. Entering different data query information in the data query area can retrieve different data. For example, see... Figure 5 The terminal displays a data query interface 500, which includes a data query area 501 and a data query control 502.
[0100] Alternatively, the data query interface may include multiple data query controls, each used to query different data. For example, in a financial data query scenario, the first control might be for total assets, while the second might be for transaction records. Clicking on different controls will retrieve different data. See also... Figure 6 The terminal displays a data query interface 600, which includes multiple data query controls 601-605.
[0101] 404. In response to the data query operation on the data query interface, the terminal sends a data query request to the server.
[0102] This data query request is used to request a data query. The type of data to be queried varies depending on the application scenario. For example, in a scenario involving financial data, the data query request is used to request financial data. In a scenario involving user data, the data query request is used to request user data. In a scenario involving navigation data, the data query request is used to request navigation data.
[0103] In one possible implementation, the data query interface includes a data query area and a data query control. In response to a click on the data query control, the terminal sends a data query request to the server, which carries the data query information from the data query area. Clicking on the data query control is equivalent to performing a data query on the data query interface.
[0104] In this implementation, clicking the data query control can trigger a data query request based on the data query information in the data query area, resulting in high efficiency in triggering the data query request.
[0105] For example, see Figure 5 The terminal displays a data query interface 500, which includes a data query area 501 and a data query control 502. In response to a click on the data query area 501, the terminal displays a data query information selection area 503 below the data query area 501. This data query information selection area 503 includes multiple candidate data query information. In response to an information selection operation in the data query information selection area 503, the terminal displays the selected target data query information within the data query area 501. In response to a click on the data query control 502, the terminal generates a data query request based on the target data query information and sends the data query request to the server.
[0106] In one possible implementation, the data query interface includes multiple data query controls. In response to a click operation on a target data query control among the multiple data query controls, the terminal sends a data query request to the server, which carries the data query information corresponding to the target data query control.
[0107] In this implementation, data query requests can be quickly triggered by clicking different data query controls, resulting in high efficiency in triggering data query requests.
[0108] For example, see Figure 6 The terminal displays a data query interface 600, which includes multiple data query controls 601-605. In response to a click on a target data query control 602 among these multiple data query controls, the terminal generates a data query request based on the data query information corresponding to the target data query control 602 and sends the data query request to the server.
[0109] 406. The server retrieves this data query request.
[0110] 408. In response to a data query request, the server retrieves the original data corresponding to the data query request.
[0111] The original data corresponding to the data query request is the data retrieved based on the data query request. In some embodiments, the server maintains a database, and the server can query the database based on the data query request to obtain the original data.
[0112] In one possible implementation, in response to a data query request, the server retrieves data query information from the request. Based on this information, the server performs a query in the database to obtain the original data.
[0113] In this database, different types of data are stored depending on the application scenario. For example, when querying financial data, the database stores financial data; when querying user data, it stores user data. Correspondingly, the original data is the data stored in the database. It should be noted that all data stored in the database is only stored with user permission. This data query information is used to identify the data to be queried and can also be referred to as a data identifier.
[0114] In this implementation, the server can obtain data query information from the data query request, and perform a query in the database based on the data query information to obtain the original data, thus achieving high efficiency in obtaining the original data.
[0115] In one possible implementation, in response to a data query request, the server retrieves verification information from the data query request. If the verification information passes verification, the server retrieves the original data corresponding to the data query request.
[0116] This verification information is used for identity verification, which is to determine whether one has permission to query data.
[0117] In this implementation, before performing a data query based on a data query request, the data is first verified based on the verification information in the data query request. Only if the verification is successful will the relevant data query operations be performed, thereby improving data security.
[0118] For example, in response to a data query request, the server retrieves verification information from the request. The server then performs authentication based on this information and obtains a verification result. If the verification result indicates successful authentication, the server retrieves data query information from the request. The server then performs a query in the database based on this data query information to obtain the original data.
[0119] Accordingly, based on the above implementation method, if the verification information fails, the server sends a prompt message to the terminal indicating that the verification failed. In the event of verification failure, the server will not retrieve the original data from the database.
[0120] 410. The server performs field identification on the original data to obtain the field types of multiple fields in the original data.
[0121] The original data comprises multiple fields, which together constitute the original data. Field identification is performed on the original data to determine the field types of these multiple fields. In some embodiments, field types include target field types and non-target field types. Fields of the target field type are also known as sensitive fields, while fields of the non-target field type are also known as ordinary fields. The field type refers to the field type of each individual field; that is, field identification on the original data can determine the field type of each field in the original data.
[0122] In one possible implementation, the server performs feature extraction on the original data to obtain its data features. Based on these data features, the server determines the field types of multiple fields within the original data.
[0123] Feature extraction from the original data aims to abstract and represent it, allowing the resulting features to represent the original data in a higher dimension and facilitating further processing. Field types are the result of field identification (classification), including target and non-target field types. Therefore, identifying fields based on data features is essentially a binary classification process.
[0124] In this implementation, features are extracted from the original data to obtain the data features of the original data. These data features are then used to identify multiple fields in the original data, resulting in high identification efficiency.
[0125] To provide a clearer explanation of the above embodiments, the following description will be divided into two parts.
[0126] The first part involves the server extracting features from the original data to obtain its data features.
[0127] In one possible implementation, the server performs word segmentation on the original data to obtain multiple fields. The server then performs feature extraction on these multiple fields to obtain the data features of the original data.
[0128] The purpose of word segmentation of the original data is to divide the original data into multiple fields in order to facilitate feature extraction from the original data.
[0129] To provide a clearer explanation of the above embodiments, the following description will be divided into two parts.
[0130] A. The server performs word segmentation on the original data to obtain multiple fields from the original data.
[0131] In one possible implementation, the server splits the original data into multiple characters. The server then combines adjacent characters from these multiple characters to obtain the multiple fields.
[0132] In this implementation, the server first splits the original data into multiple characters, and then combines adjacent characters from these multiple characters to obtain multiple fields, which makes the word segmentation of the original data more efficient.
[0133] For example, the server splits the original data into multiple characters. The server combines adjacent characters from these multiple characters to obtain multiple candidate fields. The server uses these multiple candidate fields to match in a dictionary to obtain these multiple fields. The dictionary includes multiple preset fields, and matching the candidate fields in the dictionary is equivalent to determining whether the candidate fields match the preset fields in the dictionary. Accordingly, these multiple fields are the matched preset fields.
[0134] In one possible implementation, the server performs entity identification on the original data to obtain multiple fields in the original data, all of which are entities in the original data.
[0135] In this implementation, entity recognition can be used to segment the original data into words, and the resulting multiple fields are all entities in the original data, resulting in high accuracy in word segmentation.
[0136] For example, the server inputs the raw data into an entity recognition model, performs entity recognition on the raw data using the entity recognition model, and outputs the multiple fields. The entity recognition model can be any named entity recognition model, and this specification does not limit this type of model in the embodiments.
[0137] B. The server performs feature extraction on these multiple fields to obtain the data features of the original data.
[0138] In one possible implementation, the server performs convolution on the multiple fields to obtain data features of the original data, which include the convolution features of each field.
[0139] In the above implementation, the server can extract data features from the original data through convolution operations. Since convolution operations are fast, the server can quickly complete feature extraction. Furthermore, convolution operations can perform deeper feature extraction from the original data, resulting in data features with strong expressive power.
[0140] For example, the server inputs multiple fields of the original data into the feature extraction unit of the field recognition model. Through multiple convolutional layers of the feature extraction unit, multiple convolution operations are performed on the multiple fields of the original data to obtain the field features of the multiple fields in the original data. The field features of the multiple fields constitute the data features.
[0141] For example, for the first convolutional layer, the server uses multiple convolutional kernels to slide across multiple fields of the original data. During this sliding process, convolution operations are performed with the covered portions, resulting in multiple convolutional features corresponding to each kernel. The server then fuses these multiple convolutional features to obtain a first feature map of the original data's multiple fields; this first feature map is the field feature extracted by the first convolutional layer. For the second convolutional layer, the server inputs the first feature map into it. Through this second convolutional layer, multiple convolutional kernels slide across the first feature map, performing convolution operations with the covered portions, resulting in multiple convolutional features corresponding to each kernel. The server then fuses these multiple convolutional features to obtain a second feature map of the original data's multiple fields; this second feature map is the field feature extracted by the second convolutional layer. Similarly, the feature map output by the last convolutional layer in the multiple convolutional layers is the field feature of multiple fields in the original data, and the field feature of these multiple fields constitutes the data feature.
[0142] In one possible implementation, the server performs a full join on the multiple fields to obtain the data characteristics of the original data, which include the full join characteristics of each field.
[0143] In the above implementation, the server can extract data features from the original data through a full connection. Since full connections are faster, the server can quickly complete feature extraction.
[0144] For example, the server inputs multiple fields of the original data into the feature extraction unit of the field recognition model. Through multiple fully connected layers of the feature extraction unit, multiple full connections are performed on the multiple fields of the original data to obtain the field features of the multiple fields in the original data. The field features of the multiple fields constitute the data features.
[0145] For example, for the first fully connected layer among the multiple fully connected layers, the server multiplies multiple fields of the original data with the fully connected matrix of the first fully connected layer to obtain a first feature map of the multiple fields of the original data. This first feature map is also the field feature extracted by the first fully connected layer. For the second fully connected layer among the multiple fully connected layers, the server multiplies the first feature map with the fully connected matrix of the second fully connected layer to obtain a second feature map of the multiple fields of the original data. This second feature map is also the field feature extracted by the second fully connected layer. And so on, the feature map output by the last fully connected layer among the multiple fully connected layers is the field feature of the multiple fields in the original data, and the field features of these multiple fields constitute the data feature.
[0146] In one possible implementation, the server encodes the multiple fields based on an attention mechanism to obtain the data features of the original data.
[0147] In this implementation, attention mechanisms can be used to encode the original data, thereby leveraging the relationships between different fields of the original data to obtain data features that more accurately reflect the original data.
[0148] For example, the server performs embedding encoding on the multiple fields to obtain multiple embedding features for each field, with one embedding feature corresponding to one field. The server inputs these multiple embedding features into the attention encoding layer of the field recognition model. Based on the multiple embedding features, the attention weight between each pair of fields is determined by the attention encoding layer of the field recognition model. Then, based on the attention weights and the multiple embedding features, the server determines multiple field features for each field, with one field feature corresponding to one field. These multiple field features constitute the data feature. In some embodiments, the attention encoding layer is the encoder of the BERT model or the encoder of a variant of the BERT model, such as RoBERT or GPT.
[0149] It should be noted that the server can extract the data features of the original data through any of the above methods, and the embodiments in this specification do not limit this.
[0150] Part Two: Based on the data characteristics of the original data, the server determines the field types of multiple fields in the original data.
[0151] In one possible implementation, the server performs multiple rounds of iterative decoding based on the data characteristics to obtain the field types of multiple fields in the original data.
[0152] In the process of multi-round iterative decoding based on this data feature, each round of iterative decoding outputs the field type of one field in the original data. After multiple rounds of iterative decoding, the field types of all fields can be obtained. In addition, during the multi-round iterative decoding process, each round of iterative decoding utilizes the result of the previous round of iterative decoding and the data feature, until the termination symbol is obtained.
[0153] In this implementation, the data characteristics can be fully utilized through multiple rounds of iterative decoding, resulting in a high degree of accuracy in the obtained field types.
[0154] In one possible implementation, the server performs a full join and normalization on the data features to obtain the field types of multiple fields in the original data.
[0155] The server performs a full join and normalization on the data feature, which means performing a full join and normalization on the field features in the data feature to obtain the field types of multiple fields in the original data.
[0156] For example, for any field in the original data, the server performs a full join and normalization on the field's features to obtain the field's classification value. If the classification value is greater than or equal to a classification value threshold, the server determines the field type as the target field type; if the classification value is less than the threshold, the server determines the field type as a non-target field type. This classification value threshold is set by technical personnel based on actual conditions, and this embodiment does not limit its setting. When the field type is the target field type, it means that the field is a sensitive field, such as monetary amounts in financial data or disease information in user data.
[0157] It should be noted that the server can determine the field type using any of the above methods, and the embodiments in this specification do not limit this.
[0158] 412. The server encrypts the original data based on the field types of these multiple fields to obtain the target data.
[0159] In this process, the original data is encrypted based on the field type of the field. That is, the fields in the original data are encrypted based on the field type of the field, thereby encrypting the original data. The target data is the encrypted original data.
[0160] In one possible implementation, the server uses a preset encryption algorithm to encrypt the target field in the original data to obtain the target data. The target field is a field of the target field type among the multiple fields. The preset encryption algorithm is an asymmetric encryption algorithm or a symmetric encryption algorithm.
[0161] In this implementation, the server can use a preset encryption algorithm to encrypt the target field in the original data, thereby improving the security of the target field. The content of the sensitive field cannot be directly seen through the target data.
[0162] The above implementation method is illustrated below with two examples.
[0163] Example 1: When the preset encryption algorithm is a symmetric encryption algorithm, the server uses the target key to encrypt the target field in the original data, obtaining the encrypted field. The target key is the key for the symmetric encryption algorithm and is randomly generated by the server. The server then replaces the target field in the original data with this encrypted field to obtain the target data.
[0164] Example 2: When the preset encryption algorithm is an asymmetric encryption algorithm, the server uses a public key to encrypt the target field in the original data, obtaining an encrypted field. The public key is a randomly generated key pair by the server, and the key pair also includes a private key. The server uses this encrypted field to replace the target field in the original data, obtaining the target data. In some embodiments, the asymmetric encryption algorithm is the RSA encryption algorithm.
[0165] 414. The server returns the target data to the terminal that sent the data query request.
[0166] In this context, the sending terminal is also the terminal that requests a data query, and the target data is returned to the requesting terminal, which is the result of the data query.
[0167] 416. The terminal obtains the target data returned by the server.
[0168] 418. The terminal displays the target data on the data query interface.
[0169] The target data is the result of performing a data query operation on the data query interface. The target data is the original data after encryption. Compared with the original data, the sensitive fields (target fields) in the target data are encrypted. Therefore, the target data can also be called de-identified data.
[0170] In one possible implementation, the data query interface also includes a query results display area, in which the terminal displays the target data.
[0171] For example, see Figure 7 The terminal displays a data query interface 700, which includes a query result display area 701. The terminal displays the target data 702 within the query result display area 701.
[0172] Optionally, after step 418, the following steps can also be performed.
[0173] 420. In response to the data decryption operation on the data query interface, the terminal sends a decryption request for the target data to the server.
[0174] In one possible implementation, in response to a click on the decryption control on the data query interface, the terminal sends a decryption request for the target data to the server.
[0175] In this implementation, the terminal can be quickly controlled to send a decryption request to the server by clicking the decryption control on the data query interface, and the sending efficiency of the decryption request is relatively high.
[0176] For example, see Figure 7 The data query interface 700 also includes a decryption control 703. In response to clicking the decryption control 703, the terminal sends a decryption request for the target data to the server.
[0177] In one possible implementation, in response to a click on a target field in the target data displayed on the data query interface, the terminal sends a decryption request for the target data to the server.
[0178] In this context, the decryption request for the target data refers to the decryption request for the clicked target field within the target data. In some embodiments, the target data includes multiple target fields, and clicking any one of these target fields triggers a decryption request for that target field.
[0179] In this implementation, clicking on the target field in the target data can quickly trigger a decryption request for the target data, and the sending efficiency of the decryption request is high.
[0180] For example, the terminal displays the data query interface 700, which shows target data 702. In response to a click on the target field 7021 in the target data 702, the terminal sends a decryption request for the target data to the server.
[0181] 422. The server obtains the decryption request from the sending terminal for the target data.
[0182] 424. In response to the decryption request, the server decrypts the target data to obtain the decrypted target data.
[0183] Decrypting the target data means decrypting the encrypted target fields within the target data.
[0184] In one possible implementation, the server uses a preset decryption algorithm to decrypt the encrypted fields in the target data to obtain the decrypted target data. The preset decryption algorithm corresponds to the algorithm used to encrypt the original data.
[0185] In this implementation, the server can decrypt the target data in response to the decryption request, making it convenient for users to view the target fields in the target data, and the efficiency of human-computer interaction is relatively high.
[0186] The above implementation method is illustrated below with two examples.
[0187] Example 1: When the algorithm used to encrypt the original data is a symmetric encryption algorithm, the server uses the target key to decrypt the encrypted target field in the target data to obtain the target field. The server then replaces the encrypted target field in the target data with this target field to obtain the decrypted target data.
[0188] Example 2: When the algorithm used to encrypt the original data is an asymmetric encryption algorithm, the server uses its private key to decrypt the encrypted target field in the target data to obtain the target field. The server then replaces the encrypted target field in the target data with this target field to obtain the decrypted target data.
[0189] 426. The server returns the decrypted target data to the sending terminal.
[0190] 428. The terminal obtains the decrypted target data.
[0191] 430. The terminal displays the decrypted target data on the data query interface.
[0192] The following will combine Figure 8 The data query method provided in the embodiments of this specification will be described.
[0193] See Figure 8When a user uses a terminal to query data, the terminal sends a data query request to a transaction system, which provides transaction-related services. The transaction system responds to the query request by retrieving the original data. This original data is then sent to a smart field encryption / decryption system, which identifies the field types of multiple fields within the original data. The smart field encryption / decryption system encrypts the target field (sensitive field) using an asymmetric encryption algorithm, obtaining the target data, which is then returned to the terminal. The user then uses the terminal to decrypt the target data, sending a decryption request to the smart field encryption / decryption system. In response, the smart field encryption / decryption system uses an asymmetric decryption algorithm to decrypt the target data, obtaining the decrypted target data, which is then returned to the terminal. The transaction system and the smart field encryption / decryption system are collectively referred to as the server.
[0194] All the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this specification, and will not be described in detail here.
[0195] The technical solutions provided in the embodiments of this specification utilize a data query interface to offer data query functionality, enabling quick and easy data retrieval. By performing a data query operation on this interface, a data query request can be sent to the server, and the target data can be obtained based on this request. This target data is encrypted raw data, thereby enhancing data security during the data query process.
[0196] By classifying all returned fields using the technical solutions provided in the embodiments of this specification, sensitive fields can be automatically identified, reducing additional personnel input, improving R&D efficiency, achieving the required compliance, and realizing field-level privacy control.
[0197] Figure 9 This is a schematic diagram of the structure of a data query device provided in an embodiment of this specification. See also... Figure 9 The device includes: a raw data acquisition module 901, a field recognition module 902, an encryption module 903, and a data transmission module 904.
[0198] The raw data acquisition module 901 is used to acquire the raw data corresponding to the data query request in response to the data query request.
[0199] The field identification module 902 is used to identify the fields in the original data and obtain the field types of multiple fields in the original data.
[0200] Encryption module 903 is used to encrypt the original data based on the field types of the multiple fields to obtain the target data.
[0201] The data sending module 904 is used to return the target data to the sending terminal of the data query request.
[0202] In one possible implementation, the field identification module 902 is used to extract features from the original data to obtain the data features of the original data. Based on the data features of the original data, the field types of multiple fields in the original data are determined.
[0203] In one possible implementation, the field recognition module 902 is used to segment the original data into words to obtain multiple fields in the original data. Feature extraction is then performed on these multiple fields to obtain the data features of the original data.
[0204] In one possible implementation, the field recognition module 902 is used to split the original data into multiple characters. Adjacent characters among these multiple characters are then combined to obtain the multiple fields.
[0205] In one possible implementation, the field identification module 902 is configured to perform any of the following:
[0206] Convolution is performed on these multiple fields to obtain the data features of the original data, which include the convolution features of each field.
[0207] Perform a full join on the multiple fields to obtain the data features of the original data, which include the full join features of each field.
[0208] The data features of the original data are obtained by encoding the multiple fields based on the attention mechanism.
[0209] In one possible implementation, the field identification module 902 is configured to perform any of the following:
[0210] Based on this data feature, multiple rounds of iterative decoding are performed to obtain the field types of multiple fields in the original data.
[0211] Perform a full connection and normalization on the data features to obtain the field types of multiple fields in the original data.
[0212] In one possible implementation, the encryption module 903 is used to encrypt the target field in the original data using a preset encryption algorithm to obtain the target data. The target field is a field of the target field type among the multiple fields, and the preset encryption algorithm is an asymmetric encryption algorithm or a symmetric encryption algorithm.
[0213] In one possible implementation, the device further includes:
[0214] The decryption module is used to obtain the decryption request from the sending terminal for the target data. In response to the decryption request, it decrypts the target data to obtain the decrypted target data. The decrypted target data is then returned to the sending terminal.
[0215] In one possible implementation, the decryption module is used to decrypt the encrypted field in the target data using a preset decryption algorithm to obtain the decrypted target data. The preset decryption algorithm corresponds to the algorithm used to encrypt the original data.
[0216] In one possible implementation, the raw data acquisition module 901 is configured to obtain verification information from a data query request in response to the data query request. If the verification information passes verification, the raw data corresponding to the data query request is acquired.
[0217] It should be noted that the data query device provided in the above embodiments is only illustrated by the division of the above functional modules when querying data. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the computer device can be divided into different functional modules to complete all or part of the functions described above. In addition, the data query device and the data query method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.
[0218] The technical solution provided in the embodiments of this specification, in response to a data query request, obtains the original data corresponding to the data query request. After obtaining the original data, it is not directly returned to the terminal that sent the data query request. Instead, the original data undergoes field identification to obtain the field types of multiple fields. Based on the field types of these multiple fields, the original data is encrypted to obtain the target data, which is also the encrypted original data. Returning the target data to the sending terminal improves the security of the data query process and reduces the risk of leakage of sensitive content in the original data.
[0219] Figure 10 This is a schematic diagram of the structure of a data query device provided in an embodiment of this specification. See also... Figure 10 The device includes: a display module 1001, a request sending module 1002, and a data acquisition module 1003.
[0220] Display module 1001 is used to display a data query interface, which is used for data querying.
[0221] The request sending module 1002 is used to respond to the data query operation on the data query interface by sending a data query request to the server so that the server can obtain the original data corresponding to the data query request and perform field identification on the original data to obtain the field types of multiple fields in the original data.
[0222] The data acquisition module 1003 is used to acquire the target data returned by the server. The target data is obtained by the server encrypting the original data based on the field types of the multiple fields.
[0223] The display module 1001 is also used to display the target data on the data query interface.
[0224] In one possible implementation, the display module 1001 is further configured to, in response to a data decryption operation on the target data on the data query interface, send a decryption request for the target data to the server, so that the server decrypts the target data to obtain the decrypted target data. The decrypted target data is then retrieved and displayed on the data query interface.
[0225] It should be noted that the data query device provided in the above embodiments is only illustrated by the division of the above functional modules when querying data. In actual applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the computer device can be divided into different functional modules to complete all or part of the functions described above. In addition, the data query device and the data query method embodiments provided in the above embodiments belong to the same concept, and the specific implementation process can be found in the method embodiments, which will not be repeated here.
[0226] The technical solutions provided in the embodiments of this specification utilize a data query interface to offer data query functionality, enabling quick and easy data retrieval. By performing a data query operation on this interface, a data query request can be sent to the server, and the target data can be obtained based on this request. This target data is encrypted raw data, thereby enhancing data security during the data query process.
[0227] This specification provides a computer device for performing the above-described method. This computer device can be implemented as a terminal or a server. The structure of a terminal will be described below:
[0228] Figure 11 This is a schematic diagram of the structure of a terminal provided in an embodiment of this specification. The terminal 1100 can be a smartphone, tablet computer, laptop computer, or desktop computer. The terminal 1100 may also be referred to as user equipment, portable terminal, laptop terminal, desktop terminal, or other names.
[0229] Typically, terminal 1100 includes one or more processors 1101 and one or more memories 1102.
[0230] Processor 1101 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 1101 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 1101 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 1101 may further integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the screen. In some embodiments, processor 1101 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0231] The memory 1102 may include one or more computer-readable storage media, which may be non-transitory. The memory 1102 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1102 are used to store at least one computer program, which is executed by the processor 1101 to implement the data query method provided in the method embodiments of this specification.
[0232] In some embodiments, the terminal 1100 may also optionally include a peripheral device interface 1103 and at least one peripheral device. The processor 1101, memory 1102, and peripheral device interface 1103 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 1103 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 1104, a display screen 1105, a camera assembly 1106, an audio circuit 1107, and a power supply 1108.
[0233] Peripheral device interface 1103 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 1101 and memory 1102. In some embodiments, processor 1101, memory 1102 and peripheral device interface 1103 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 1101, memory 1102 and peripheral device interface 1103 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0234] The radio frequency (RF) circuit 1104 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 1104 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 1104 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 1104 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc.
[0235] Display screen 1105 is used to display a user interface (UI). This UI may include graphics, text, icons, video, and any combination thereof. When display screen 1105 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 1101 for processing. In this case, display screen 1105 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard.
[0236] The camera assembly 1106 is used to capture images or videos. Optionally, the camera assembly 1106 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal, and the rear-facing camera is located on the back of the terminal.
[0237] The audio circuit 1107 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals that are input to the processor 1101 for processing, or input to the radio frequency circuit 1104 to realize voice communication.
[0238] Power supply 1108 is used to supply power to the various components in terminal 1100. Power supply 1108 can be AC power, DC power, a disposable battery, or a rechargeable battery.
[0239] In some embodiments, the terminal 1100 further includes one or more sensors 1109. The one or more sensors 1109 include, but are not limited to: an acceleration sensor 1110, a gyroscope sensor 1111, a pressure sensor 1112, an optical sensor 1113, and a proximity sensor 1114.
[0240] Accelerometer 1110 can detect the magnitude of acceleration on the three coordinate axes of a coordinate system established with terminal 1100.
[0241] The gyroscope sensor 1111 can detect the orientation and rotation angle of the terminal 1100. The gyroscope sensor 1111 can work in conjunction with the accelerometer sensor 1110 to collect the user's 3D movements on the terminal 1100.
[0242] The pressure sensor 1112 can be installed on the side bezel of the terminal 1100 and / or on the lower layer of the display screen 1105. When the pressure sensor 1112 is installed on the side bezel of the terminal 1100, it can detect the user's grip signal on the terminal 1100, and the processor 1101 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 1112. When the pressure sensor 1112 is installed on the lower layer of the display screen 1105, the processor 1101 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 1105.
[0243] An optical sensor 1113 is used to collect ambient light intensity. In one embodiment, a processor 1101 can control the display brightness of a display screen 1105 based on the ambient light intensity collected by the optical sensor 1113.
[0244] The proximity sensor 1114 is used to detect the distance between the user and the front of the terminal 1100.
[0245] Those skilled in the art will understand that Figure 11 The structure shown does not constitute a limitation on terminal 1100 and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0246] The aforementioned computer equipment can also be implemented as a server. The structure of a server is described below:
[0247] Figure 12This is a schematic diagram of a server structure provided in an embodiment of this specification. The server 1200 can vary significantly due to differences in configuration or performance. It may include one or more Central Processing Units (CPUs) 1201 and one or more memories 1202. The one or more memories 1202 store at least one computer program, which is loaded and executed by the one or more processors 1201 to implement the methods provided in the various method embodiments described above. Of course, the server 1200 may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The server 1200 may also include other components for implementing device functions, which will not be elaborated upon here.
[0248] In an exemplary embodiment, a computer-readable storage medium is also provided, such as a memory including a computer program that can be executed by a processor to perform the data query method described in the above embodiments. For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.
[0249] In an exemplary embodiment, a computer program product or computer program is also provided, which includes program code stored in a computer-readable storage medium. The processor of a computer device reads the program code from the computer-readable storage medium and executes the program code, causing the computer device to perform the data query method described above.
[0250] In some embodiments, the computer program described in this specification may be deployed and executed on a single computer device, or on multiple computer devices located in one location, or on multiple computer devices distributed across multiple locations and interconnected via a communication network. These multiple computer devices distributed across multiple locations and interconnected via a communication network may constitute a blockchain system.
[0251] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0252] The above are merely optional embodiments of this specification and are not intended to limit this specification. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this specification shall be included within the protection scope of this specification.
Claims
1. A data query method, the method comprising: In response to a data query request, obtain the original data corresponding to the data query request; The original data is split into multiple characters; By combining adjacent characters among the multiple characters, multiple candidate fields are obtained; The candidate fields are matched in a dictionary to obtain multiple fields in the original data; wherein, the dictionary includes multiple preset fields, and the multiple fields are the preset fields matched in the dictionary; Determine the field types of multiple fields in the original data; Based on the field types of the multiple fields, the original data is encrypted to obtain the target data; The target data is returned to the terminal that sent the data query request; Obtain the decryption request of the sending terminal for the target data; wherein, the decryption request for the target data refers to the decryption request for the clicked target field in the target data, the target data includes multiple target fields, and clicking any target field among the multiple target fields is used to trigger the decryption request of the clicked target field; In response to the decryption request, the clicked target field in the target data is decrypted to obtain the decrypted target data; The decrypted target data is returned to the sending terminal.
2. The method according to claim 1, wherein determining the field types of the multiple fields in the original data includes: Feature extraction is performed on the original data to obtain the data features of the original data; Based on the data characteristics of the original data, the field types of multiple fields in the original data are determined.
3. The method according to claim 2, wherein the feature extraction of the plurality of fields to obtain the data features of the original data includes any one of the following: Convolution is performed on the multiple fields to obtain the data features of the original data, wherein the data features include the convolution features of each of the fields; A full join is performed on the multiple fields to obtain the data features of the original data, wherein the data features include the full join features of each of the fields; The multiple fields are encoded based on an attention mechanism to obtain the data features of the original data.
4. The method according to claim 2, wherein determining the field type of multiple fields in the original data based on the data characteristics of the original data includes any one of the following: Based on the data features, multiple rounds of iterative decoding are performed to obtain the field types of multiple fields in the original data; The data features are fully connected and normalized to obtain the field types of multiple fields in the original data.
5. The method according to claim 1, wherein encrypting the original data based on the field types of the plurality of fields to obtain the target data includes: The target field in the original data is encrypted using a preset encryption algorithm to obtain the target data. The target field is a field of the target field type among the multiple fields. The preset encryption algorithm is an asymmetric encryption algorithm or a symmetric encryption algorithm.
6. The method according to claim 1, wherein in response to the decryption request, decrypting the clicked target field in the target data to obtain the decrypted target data includes: A preset decryption algorithm is used to decrypt the clicked target field in the target data to obtain the decrypted target data. The preset decryption algorithm corresponds to the algorithm used to encrypt the original data.
7. The method according to claim 1, wherein obtaining the original data corresponding to the data query request in response to the data query request includes: In response to a data query request, verification information is obtained from the data query request; If the verification information passes verification, the original data corresponding to the data query request is obtained.
8. A data query method, the method comprising: Displays a data query interface, which is used to perform data queries; In response to a data query operation on the data query interface, a data query request is sent to the server so that the server obtains the original data corresponding to the data query request and splits the original data into multiple characters; adjacent characters among the multiple characters are combined to obtain multiple candidate fields; the multiple candidate fields are matched in a dictionary to obtain multiple fields in the original data; wherein, the dictionary includes multiple preset fields, and the multiple fields are preset fields matched in the dictionary; the field type of the multiple fields in the original data is determined; Obtain the target data returned by the server, which is obtained by the server encrypting the original data based on the field types of the multiple fields; The target data is displayed on the data query interface; In response to the data decryption operation of the target data on the data query interface, a decryption request for the target data is sent to the server so that the server can decrypt the target data to obtain the decrypted target data; wherein, the decryption request for the target data refers to the decryption request for the clicked target field in the target data, the target data includes multiple target fields, and clicking any of the multiple target fields is used to trigger the decryption request of the clicked target field; Obtain the decrypted target data; The decrypted target data is displayed on the data query interface.
9. A data query device, the device comprising: The raw data acquisition module is used to acquire the raw data corresponding to the data query request in response to the data query request; A field recognition module is used to split the original data into multiple characters; combine adjacent characters among the multiple characters to obtain multiple candidate fields; match the multiple candidate fields in a dictionary to obtain multiple fields in the original data; wherein, the dictionary includes multiple preset fields, and the multiple fields are preset fields matched in the dictionary; and determine the field type of the multiple fields in the original data. An encryption module is used to encrypt the original data based on the field types of the multiple fields to obtain the target data; The data sending module is used to return the target data to the sending terminal of the data query request; The decryption module is used to obtain the decryption request from the sending terminal for the target data; wherein, the decryption request for the target data refers to the decryption request for a clicked target field in the target data, the target data includes multiple target fields, and clicking any target field among the multiple target fields triggers a decryption request for the clicked target field; in response to the decryption request, the clicked target field in the target data is decrypted to obtain the decrypted target data; and the decrypted target data is returned to the sending terminal.
10. A data query device, the device comprising: The display module is used to display the data query interface, which is used to perform data queries. A request sending module is used to respond to a data query operation on the data query interface by sending a data query request to the server, so that the server can obtain the original data corresponding to the data query request and split the original data into multiple characters; combine adjacent characters among the multiple characters to obtain multiple candidate fields; match the multiple candidate fields in a dictionary to obtain multiple fields in the original data; wherein, the dictionary includes multiple preset fields, and the multiple fields are preset fields matched in the dictionary; and determine the field type of the multiple fields in the original data. The data acquisition module is used to acquire the target data returned by the server, which is obtained by the server encrypting the original data based on the field types of the multiple fields; The display module is also used to display the target data on the data query interface; The decryption module is used to respond to a data decryption operation on the target data on the data query interface by sending a decryption request for the target data to the server, so that the server decrypts the target data to obtain the decrypted target data; wherein, the decryption request for the target data refers to a decryption request for a clicked target field in the target data, the target data includes multiple target fields, and clicking any of the multiple target fields triggers a decryption request for the clicked target field; and the decrypted target data is obtained; The display module is also used to display the decrypted target data on the data query interface.
11. A computer device comprising one or more processors and one or more memories, wherein at least one computer program is stored in the one or more memories, the computer program being loaded and executed by the one or more processors to implement the data query method as claimed in any one of claims 1 to 8.
12. A computer-readable storage medium storing at least one computer program, the computer program being loaded and executed by a processor to implement the data query method as described in any one of claims 1 to 8.
13. A computer program product comprising a computer program that, when executed by a processor, implements the data query method according to any one of claims 1 to 8.
Citation Information
Patent Citations
User data processing method and device, computer equipment and storage medium
CN112632581A
Secure database access through partial encryption
US20040181679A1