A method, system, device and storage medium for verifying sensitive data in a database
Sensitive data is processed by non-orthogonal basis matrices and noise vectors to generate meaningless vectors for verification, which solves the problem of sensitive data leakage in traditional database verification and realizes safe and efficient sensitive data verification.
Patent Information
- Application Number
- CN202510948735.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-10
- Publication Date
- 2025-09-30
- Estimated Expiration
- 2045-07-10
AI Technical Summary
In traditional database verification methods, sensitive data is at risk of being illegally obtained, tampered with, or leaked during the interaction and comparison process, leading to data security risks.
A non-orthogonal basis matrix and noise vector are used to process the sensitive data vector to generate a second sensitive data vector, which is then verified using a test vector and noise value to avoid direct interaction with sensitive data and use noise interference to enhance the security of the verification process.
Effectively prevent the leakage of sensitive data, enhance the security and untraceability of the verification process, resist differential attacks, and ensure the accuracy and irreversibility of verification results.
Smart Images

Figure CN120470632B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of database technology, and in particular to a method, system, device, and storage medium for verifying sensitive data in a database. Background Art
[0002] In the digital age, database validation is crucial for ensuring data integrity, accuracy, and consistency. Whether migrating data, upgrading systems, or performing routine maintenance, validation is essential to ensure that database data meets expected standards, supporting stable business operations and accurate decision-making.
[0003] Traditional database verification methods typically employ a data comparison strategy, comparing each stored data against pre-defined standard data. During the verification process, the verifier reads all relevant data records within the database and uses hash value matching and field content verification to determine if any data is incorrect, missing, or abnormal.
[0004] However, this direct comparison verification model presents significant security risks. During the data exchange and comparison process, sensitive data in the database, such as user personal identity information and communication information, is inevitably exposed to the verification party, exposing this sensitive data to the risk of illegal access, tampering, or leakage. Therefore, current verification solutions for sensitive data present significant data security risks. Summary of the Invention
[0005] The present application provides a method, system, device and storage medium for verifying sensitive data in a database, which can reduce data security risks in verification schemes for sensitive data.
[0006] To achieve the above objectives, this application adopts the following technical solutions:
[0007] In a first aspect, the present application provides a method for verifying sensitive data in a database, comprising:
[0008] The data holding device obtains a first sensitive data vector of sensitive data at time t, generates a non-orthogonal basis matrix corresponding to the first sensitive data vector, and processes the first sensitive data vector using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector;
[0009] The data verification device generates a test vector according to the dimension of the non-orthogonal base matrix, and sends the test vector to the data holding device;
[0010] The data holding device processes the second sensitive data vector using the test vector and the second noise value to obtain a first verification value, and sends the first verification value to the data verification device;
[0011] The data verification device uses the test vector and the third noise value to process the third sensitive data vector to obtain a second verification value, and obtains a verification result based on the first verification value and the second verification value, wherein the third noise value and the second noise value are obtained through the same distribution curve, and the third sensitive data vector is obtained by the data holding device after processing the sensitive data at time t-1.
[0012] Optionally, the method further includes:
[0013] The data holding device receives the verification instruction sent by the data verification device;
[0014] The first sensitive data vector is processed using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector, including:
[0015] According to the verification instruction, the first sensitive data vector is processed using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector.
[0016] Optionally, the dimension of the non-orthogonal basis matrix is greater than the dimension of the first sensitive data vector.
[0017] Optionally, obtaining a verification result according to the first verification value and the second verification value includes:
[0018] Calculating an absolute value of a difference between the first verification value and the second verification value;
[0019] If the absolute value of the difference is greater than the absolute value threshold of the difference, a verification result of failure is obtained;
[0020] If the absolute value of the difference is less than or equal to the absolute value threshold of the difference, a verification result indicating that the verification has passed is obtained.
[0021] Optionally, the difference absolute value threshold is the sum of the initial threshold value and the noise tolerance.
[0022] Optionally, after obtaining a verification result indicating that the verification fails, the method further includes:
[0023] The data verification device transmits the data identifier corresponding to the data that fails the verification to the data holding device;
[0024] The data holding device determines the location of the data that failed verification based on the data identifier, and corrects the data that failed verification based on the location of the data that failed verification.
[0025] Optionally, the data holding device obtains a first sensitive data vector of sensitive data at time t, including:
[0026] The data holding device determines the target business type to which the sensitive data to be verified belongs, determines the target feature extraction rule corresponding to the target business type based on a pre-set mapping relationship between the business type and the feature extraction rule, and performs feature extraction on the sensitive data in the database according to the target feature extraction rule to obtain a first sensitive data vector.
[0027] In a second aspect, the present application provides a verification system for sensitive data in a database, the system comprising: a data holding device and a data verification device;
[0028] The data holding device is configured to obtain a first sensitive data vector of sensitive data at time t, generate a non-orthogonal basis matrix corresponding to the first sensitive data vector, and process the first sensitive data vector using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector;
[0029] a data verification device, configured to generate a test vector according to the dimension of the non-orthogonal basis matrix, and send the test vector to the data holding device;
[0030] a data holding device, configured to process the second sensitive data vector using the test vector and the second noise value to obtain a first check value, and send the first check value to the data verification device;
[0031] A data verification device is used to process a third sensitive data vector using the test vector and a third noise value to obtain a second verification value, and obtain a verification result based on the first verification value and the second verification value, wherein the third noise value and the second noise value are obtained through the same distribution curve, and the third sensitive data vector is obtained by the data holding device by processing the sensitive data at time t-1.
[0032] In a third aspect, the present application provides a computing device, including a memory and a processor;
[0033] One or more computer programs are stored in the memory, and the one or more computer programs include instructions; when the instructions are executed by the processor, the computing device executes the method as described in any one of the first aspects.
[0034] In a fourth aspect, the present application provides a computer-readable storage medium for storing a computer program for executing the method as described in any one of the first aspects.
[0035] It can be seen from the above technical solution that this application has at least the following beneficial effects:
[0036] In the present application, the data holding device only transmits the noise-processed scalar value to the verification party, and the original first sensitive data vector and the processed second sensitive data vector are always retained locally. The data verification device cannot obtain any original sensitive data throughout the process, thereby eliminating the possibility of sensitive data leakage due to direct interaction from the source; the generated non-orthogonal basis matrix breaks the reversibility of conventional linear transformations. Due to its non-orthogonal characteristics, the second sensitive data vector obtained after transforming the sensitive data vector based on the matrix is difficult to restore the original data through conventional matrix inversion methods. Even if the non-orthogonal basis matrix is intercepted, the attacker cannot infer the original sensitive data based on it, which greatly improves the security of the data; the sensitive data vector is processed with a pre-set first noise vector to obtain a second sensitive data vector, ensuring that the modification of a single data point will not significantly affect the final result, thereby resisting differential attacks; and the introduction of the second noise value and the third noise value makes the calculation results of the data holding device and the data verification device in the verification process contain noise interference. The real-time added noise makes the multiple verification results of the same data different, preventing attackers from inferring the original features through multiple interactions. During the verification and comparison, the noisy first verification value and the second verification value further enhance the security and untraceability of the verification process.
[0037] It should be understood that the description of technical features, technical solutions, beneficial effects or similar language in this application does not imply that all features and advantages can be realized in any single embodiment. On the contrary, it is understood that the description of a feature or beneficial effect means that a specific technical feature, technical solution or beneficial effect is included in at least one embodiment. Therefore, the description of a technical feature, technical solution or beneficial effect in this specification does not necessarily refer to the same embodiment. Furthermore, the technical features, technical solutions and beneficial effects described in the present embodiment can also be combined in any appropriate manner. Those skilled in the art will understand that the embodiment can be implemented without one or more specific technical features, technical solutions or beneficial effects of a specific embodiment. In other embodiments, additional technical features and beneficial effects can also be identified in specific embodiments that do not embody all embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 A schematic diagram of an application scenario provided in an embodiment of the present application;
[0039] Figure 2 A flowchart of a method for verifying sensitive data in a database provided in an embodiment of the present application;
[0040] Figure 3 A schematic diagram of a computing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0041] The terms "first", "second" and "third" in this application specification and the accompanying drawings are used to distinguish different objects rather than to limit a specific order.
[0042] In the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be interpreted as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.
[0043] In order to make the technical solution of the present application clearer, the technical solution provided by the embodiments of the present application is introduced below with reference to the accompanying drawings.
[0044] like Figure 1 As shown, this figure is a schematic diagram of an application scenario provided by an embodiment of the present application. In this application scenario, the data holding device 101 is used to store data, for example, it can be used to store sensitive data, or it can be used to store data after sensitive data is desensitized. The data holding device 101 not only has a data storage function, but also has a certain computing power and can process data. The data verification device 102 is an external device, for example, it can be a third-party device. The data verification device 102 is used to verify the data stored in the data holding device 101, thereby ensuring the integrity, accuracy and consistency of the data, thereby avoiding errors in the business processing process due to data problems.
[0045] However, if the data holding device 101 directly transmits the stored data to the data verification device 102, this will cause the sensitive data in the data holding device 101 to be exposed to the external environment (during the transmission process and when it is transmitted to the data verification device 102). Not only will there be a risk of the sensitive data being maliciously hijacked, but after being transmitted to the data verification device 102, the data holding device 101 will lose control of the sensitive data, and there will also be a risk of accidental leakage.
[0046] In view of this, an embodiment of the present application provides a method for verifying sensitive data in a database, which can be collaboratively executed by a data holding device and a data verification device. The data holding device and the data verification device can be a terminal or a server. For example, the data holding device is a server and the data verification device is a terminal. The terminal includes but is not limited to a smartphone, a tablet computer, a laptop computer, a personal digital assistant, or a smart wearable device. The server can be a cloud server, such as a central server in a central cloud computing cluster, or an edge server in an edge cloud computing cluster. Of course, the server can also be a server in a local data center. A local data center refers to a data center directly controlled by the user.
[0047] like Figure 2 As shown in the figure, this figure is a flowchart of a method for verifying sensitive data in a database provided by an embodiment of the present application, the method comprising:
[0048] S101. A data holding device obtains a first sensitive data vector of sensitive data at time t.
[0049] Sensitive data refers to data that, if leaked, misused, or compromised, could adversely impact individuals, organizations, or society. This includes identity information, financial information, and health and medical information. Identity information includes identity information 1 and identity information 2; financial information includes financial information 1 and financial information 2; and health and medical information includes health and medical information 1 and health and medical information 2. Time t may refer to the current time.
[0050] The data holding device may perform feature extraction on the sensitive data, and thereby obtain a first sensitive data vector corresponding to the sensitive data.
[0051] In some examples, different feature extraction methods are used for sensitive data belonging to different business types. For example, the feature extraction method for "identity information 1" is different from the feature extraction method for "identity information 2". Another example is the feature extraction method for "health care information 1" is different from the feature extraction method for "financial information 1".
[0052] The data holding device can first determine the target business type to which the sensitive data to be verified belongs, and then determine the target feature extraction rule corresponding to the target business type based on the pre-set mapping relationship between the business type and the feature extraction rule. According to the target feature extraction rule, the sensitive data in the database is subjected to feature extraction to obtain a first sensitive data vector.
[0053] The pre-set mapping relationship is shown in Table 1 below.
[0054] Table 1:
[0055]
[0056] The sensitive data stored in the data holding device all have corresponding labels of the business types to which they belong. The data holding device can determine the business type to which the sensitive data belongs based on the label, and then determine the method for feature extraction of the sensitive data by looking up the mapping relationship shown in Table 1, that is, determine the feature extraction rule corresponding to the sensitive data, and then, according to the feature extraction rule, perform feature extraction on the sensitive data to obtain the first sensitive data vector.
[0057] In some embodiments, the mapping relationship shown in Table 1 can also be updated periodically or in real time. After generating a new mapping relationship, a specific feature extraction rule is determined based on the new mapping relationship, and feature extraction processing is performed on the sensitive data at this time. Subsequently, subsequent processing is performed to obtain a fourth sensitive data vector. This fourth sensitive data vector is used to determine the third sensitive data vector at this time. The third sensitive data vector at this time is retained in the data verification device for subsequent verification. The specific verification process is described later.
[0058] In an embodiment of the present application, the data holding device dynamically updates the mapping relationship between the business type and the feature extraction rule, which can further reduce the risk of the feature extraction rule being leaked, thereby reducing the possibility of illegal elements obtaining sensitive data through vector inversion, thereby further improving the security of sensitive data.
[0059] S102: The data holding device generates a non-orthogonal basis matrix corresponding to the first sensitive data vector.
[0060] After the data holding device obtains the first sensitive data vector, it can generate a non-orthogonal basis matrix corresponding to the first sensitive data vector based on the dimension of the first sensitive data vector. For example, if the first sensitive data vector is an m×n matrix, the non-orthogonal basis matrix generated corresponding to the first sensitive data vector is l×m, where l, m, and n are all integers, and l>m, and the number of rows of the first sensitive data vector is equal to the number of columns of the non-orthogonal basis matrix. The elements in the non-orthogonal basis matrix can be randomly generated, as long as they meet the non-orthogonal requirement.
[0061] In some examples, the data holding device can set l to a multiple of m. For example, if m = 2, l can be 10 times m, i.e., l = 20. Since l is much larger than m, the first sensitive data vector can be converted to a higher dimension, thereby improving the security of the first sensitive data vector. The specific conversion process will be described later.
[0062] In some examples, the data holding device may also receive a verification instruction sent by a data verification device, which prompts the data holding device to prepare for a subsequent verification process. After receiving the verification instruction, the data holding device processes the first sensitive data vector using the non-orthogonal basis matrix and a pre-set first noise vector to obtain a second sensitive data vector. In an embodiment of the present application, when it is necessary to verify the sensitive data in the data holding device, the second sensitive data vector is regenerated, thereby ensuring that the second sensitive data vector used for subsequent verification is obtained based on the current sensitive data, thereby improving the accuracy of the verification result.
[0063] S103: The data holding device processes the first sensitive data vector using a non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector.
[0064] The preset first noise vector may be obtained by randomly sampling a Laplace distribution, and the first noise vector is an l×n matrix.
[0065] After obtaining the non-orthogonal basis matrix and the first noise vector, the data holding device can use the non-orthogonal basis matrix and the first noise vector to process the first sensitive data vector, thereby obtaining a second sensitive data vector. Specifically, the data holding device can multiply the first sensitive data vector with the non-orthogonal basis matrix (matrix multiplication), and then add the result to the first noise vector to obtain the second sensitive data vector. This second sensitive data vector is obtained by processing the first sensitive data vector using the non-orthogonal basis matrix and the first noise vector. Therefore, the information represented by this second sensitive data vector is chaotic or meaningless. Even if this second sensitive data vector is exposed to a third party, such as a data verification device, the data verification device cannot obtain the true information represented by the second sensitive data vector (i.e., the original sensitive data). To the third party, the second sensitive data vector is just meaningless characters that do not carry any valuable information.
[0066] In some examples, the data holding device may process the first sensitive data vector using the following formula to obtain the second sensitive data vector:
[0067]
[0068] in, represents the second sensitive data vector, represents a non-orthogonal basis matrix, represents the first sensitive data vector, represents the first noise vector, Represents matrix multiplication, and specifies The row elements of the matrix before The column elements of the matrix after multiplication and addition are corresponding. express Each row element in The corresponding elements in the matrix are multiplied and then accumulated to ultimately obtain a new vector (also a special form of a matrix). The second sensitive data vector is the sensitive data vector obtained by the data holding device after performing the above processing based on the current sensitive data. For example, the second sensitive data vector is the sensitive data vector obtained by the data holding device after performing the above processing based on the sensitive data at time t. Time t may be the time at which verification is required.
[0069] In this embodiment, a non-orthogonal basis matrix is used for high-dimensional mapping, diffusing the original sensitive data into a space that cannot be directly inverted. Even if the non-orthogonal basis matrix is intercepted, the lack of standard inverse transformation conditions prevents the first sensitive data vector from being recovered through conventional matrix inversion. The introduction of the first noise vector satisfies differential privacy, ensuring that modifications to a single data point do not significantly affect the second sensitive data vector, thus resisting differential attacks.
[0070] In an embodiment of the present application, after the data holding device updates the non-orthogonal basis matrix, it can use the new non-orthogonal basis matrix to process the first sensitive data vector corresponding to the sensitive data to obtain a fourth sensitive data vector. The fourth sensitive data vector is then transmitted to the data verification device for storage, allowing for subsequent verification based on the fourth sensitive data vector. After a certain period of time, the sensitive data in the database needs to be verified. The verification process will be described later.
[0071] S104: The data verification device generates a test vector according to the dimension of the non-orthogonal basis matrix.
[0072] The dimension of a non-orthogonal basis matrix refers to the dimension of the high-dimensional space. For example, in the above example, the dimension of the non-orthogonal basis matrix is l, i.e., l = 20. In some examples, the data holding device can send the dimension of the non-orthogonal basis matrix to the data verification device, and the data holding device can also agree on the dimension of the non-orthogonal basis matrix with the data verification device in advance.
[0073] After determining the dimension of the non-orthogonal basis matrix, a test vector may be generated based on the dimension. The test vector is a 1×1 matrix. The test vector may be a vector obtained by normalizing a unit vector.
[0074] S105: The data verification device sends a test vector to the data holding device.
[0075] After the data verification device generates a test vector, it can transmit the test vector to the data holding device so that the data holding device can perform subsequent calculations.
[0076] S106 : The data holding device processes the second sensitive data vector using the test vector and the second noise value to obtain a first check value.
[0077] The second noise value can be determined based on Gaussian noise. After the data holding device obtains the test vector and the second noise value, it can use the test vector and the second noise value to process the second sensitive data vector to obtain a first check value. Specifically, the data holding device can multiply the second sensitive data vector by the test vector, and then add the result to the second noise value to obtain the first check value. This first check value is obtained after processing the test vector and the second noise value, making it convenient to directly use the scalar result to verify the sensitive data, thereby preventing leakage of the original sensitive data.
[0078] Specifically, the data holding device may process the second sensitive data vector using the following formula to obtain the first check value:
[0079]
[0080] in, represents the first check value, represents the second sensitive data vector, represents the test vector, represents the second noise value, express and Dot product.
[0081] S107: The data holding device sends a first verification value to the data verification device.
[0082] After obtaining the first verification value, the data holding device may send the first verification value to the data verification device so that the data verification device can perform subsequent verification processing.
[0083] S108. The data verification device processes the third sensitive data vector using the test vector and the third noise value to obtain a second verification value.
[0084] The third noise value and the second noise value are obtained using the same distribution curve. Exemplarily, the third noise value and the second noise value both conform to a Gaussian distribution (e.g., a mean of 0 and a variance of 0.01). Exemplarily, the second noise value is 0.2 and the third noise value is 0.3.
[0085] In an embodiment of the present application, the data holding device may process the sensitive data at time t-1 in advance, and thereby obtain a third sensitive data vector. Specifically, the data holding device may obtain a fourth sensitive data vector in the same manner as the sensitive data at time t is processed, and the fourth sensitive data vector is a vector corresponding to the sensitive data at time t-1. The fourth sensitive data vector is used to generate a third sensitive data vector, and the third sensitive data vector may be obtained based on the fourth sensitive data vector, such as by performing homologous desensitization on the fourth sensitive data vector, wherein homologous desensitization refers to retaining the structure of the fourth sensitive data vector, but modifying the elements in the fourth sensitive data vector, and thereby obtaining the third sensitive data vector. In an embodiment of the present application, an error within ±5% may be randomly added to the elements in the fourth sensitive data vector, and thereby a small disturbance may be added. For example, taking the fourth sensitive data vector as For example, add a "-1%" error to the element "100" in the first row and first column, add a "+2%" error to the element "50" in the second row and first column, and add a "+5%" error to the element "20" in the third row and first column, and then get the third sensitive data vector: .
[0086] In some examples, the data processing device may perform homologous desensitization processing on the fourth sensitive data vector and then send the obtained third sensitive data vector to the data verification device; the data processing device may also directly send the fourth sensitive data vector to the data verification device, and the data verification device may perform homologous desensitization processing on the fourth sensitive data vector to obtain the third sensitive data vector.
[0087] The embodiment of the present application does not specifically limit which device performs homologous desensitization processing on the fourth sensitive data vector.
[0088] In an embodiment of the present application, it is necessary to process the sensitive data at time t-1 in advance to obtain the corresponding third sensitive data vector, and store it in a data verification device to facilitate subsequent verification processing by the data verification device.
[0089] After obtaining the test vector and the third noise value, the data holding device can use the test vector and the third noise value to process the third sensitive data vector to obtain a second check value. Specifically, the data holding device can perform a dot multiplication of the third sensitive data vector with the test vector, and then add the result to the third noise value to obtain the second check value. This second check value, obtained after processing the test vector and the third noise value, facilitates subsequent direct use of the scalar result to verify sensitive data, thereby preventing leakage of the original sensitive data.
[0090] Specifically, the data holding device may process the third sensitive data vector using the following formula to obtain the second check value:
[0091]
[0092] in, Represents the second check value, represents the third sensitive data vector, represents the test vector, represents the third noise value, express and Dot product.
[0093] S109: The data verification device obtains a verification result according to the first verification value and the second verification value.
[0094] After obtaining the first check value and the second check value, the data verification device can obtain a verification result based on the first check value and the second check value. In the embodiment of the present application, the data verification device converts the direct comparison of the original sensitive data in the traditional solution into a scalar after comparing the desensitized original sensitive data. Without relying on conventional encryption algorithms, it realizes the "data invisibility" of the sensitive data verification process, fundamentally avoiding the risk of data leakage caused by direct comparison of the original sensitive data.
[0095] In some embodiments, the data verification device can calculate the absolute value of the difference between the first verification value and the second verification value. If the absolute value of the difference is less than the absolute value threshold of the difference, a verification result of failed verification is obtained; if the absolute value of the difference is greater than or equal to the absolute value threshold of the difference, a verification result of passed verification is obtained.
[0096] Among them, the difference absolute value threshold is the sum of the threshold initial value and the noise tolerance. For example, the threshold initial value is 5, the noise tolerance is 0.1414, and the difference absolute value threshold is 5.1414. The threshold initial value can be set based on business needs. When the verification is strict, the threshold initial value can be lowered, and when the verification is not strict, the threshold initial value can be increased. The noise tolerance is determined by the variance in the distribution satisfied by the second noise value and the third noise value. For example, the variance of the distribution corresponding to the second noise value is 0.01, and the variance of the distribution corresponding to the third noise value is 0.01, then the noise tolerance is .
[0097] In the embodiment of the present application, the introduction of the second noise value and the third noise value causes the calculation results of the data holding device and the data verification device to be interfered with by noise during the verification process. The noise added in real time causes multiple verification results of the same data to be different, preventing attackers from inferring the original features through multiple interactions. During the verification comparison, the security and untraceability of the verification process are further enhanced based on the noisy first verification value and the second verification value.
[0098] In some embodiments, after obtaining a verification result indicating a failed verification, the data verification device may transmit a data identifier corresponding to the data that failed the verification to the data holding device. The data holding device may determine the location of the data that failed the verification based on the data identifier, and then, based on the location of the data that failed the verification, correct the data that failed the verification. The data holding device may use a mapping relationship between the data identifier and the data location to search for the data location when it needs to.
[0099] In an embodiment of the present application, the data holding device can divide sensitive data into multiple sub-sensitive data, which correspond to the same data identifier, and store these sub-sensitive data in different locations. In this way, the security of the sensitive data stored in the data holding device is further improved. After the data holding device splices all the sub-sensitive data with the same data identifier, the sensitive data can be obtained, and then the sensitive data can be corrected.
[0100] The following describes the verification process performed by the data verification device in the embodiment of the present application:
[0101] S21: The data holding device pre-processes the sensitive data at time t-1 to obtain a fourth sensitive data vector corresponding to the sensitive data at time t-1. The fourth sensitive data vector is used to generate a third sensitive data vector, which is stored in the data verification device.
[0102] S22: At time t, the sensitive data at time t needs to be verified because it is uncertain whether it is complete and accurate. The data holding device processes the sensitive data at time t to obtain a second sensitive data vector.
[0103] S23. The data holding device receives the test vector sent by the data verification device.
[0104] S24. The data holding device processes the second sensitive data vector based on the test vector and the second noise value to obtain a first verification value, and sends the first verification value to the data verification device.
[0105] S25. The data verification device processes the third sensitive data vector based on the test vector and the third noise value to obtain a second verification value, and then obtains a verification result based on the first verification value and the second verification value.
[0106] The above examples are relatively simple and the same or similar aspects can be found in the previous embodiments.
[0107] In some embodiments, the fourth sensitive data vector may not be subjected to homology desensitization processing, and the fourth sensitive data vector may be directly used for subsequent calculations and verifications.
[0108] Based on the above description, this technical solution processes the first sensitive data vector in combination with a non-orthogonal basis matrix and a first noise vector by the data holding device, thereby ensuring that the original sensitive data is not directly exposed, and the non-orthogonal basis matrix enhances security; during the verification process, the data holding device and the verification device use the test vector and the second noise value and the third noise value obtained from the same distribution curve to process the relevant vector to obtain the verification value and compare them, and the homologous desensitization processing ensures the accuracy of the verification, which not only achieves the strict protection of the original data during the sensitive data interactive verification process, but also takes into account the reliability and security of the verification.
[0109] Combined with the above Figures 1 to 2 The sensitive data verification method provided in the embodiment of the present application is introduced in detail. The system and device provided in the embodiment of the present application are introduced below.
[0110] An embodiment of the present application provides a sensitive data verification system, the system comprising: a data holding device and a data verification device;
[0111] The data holding device is configured to obtain a first sensitive data vector of sensitive data at time t, generate a non-orthogonal basis matrix corresponding to the first sensitive data vector, and process the first sensitive data vector using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector;
[0112] a data verification device, configured to generate a test vector according to the dimension of the non-orthogonal basis matrix, and send the test vector to the data holding device;
[0113] a data holding device, configured to process the second sensitive data vector using the test vector and the second noise value to obtain a first check value, and send the first check value to the data verification device;
[0114] A data verification device is used to process a third sensitive data vector using the test vector and a third noise value to obtain a second verification value, and obtain a verification result based on the first verification value and the second verification value, wherein the third noise value and the second noise value are obtained through the same distribution curve, and the third sensitive data vector is obtained by the data holding device by processing the sensitive data at time t-1.
[0115] Optionally, the data holding device is further configured to receive a verification instruction sent by the data verification device;
[0116] The data verification device is specifically used to process the first sensitive data vector according to the verification instruction using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector.
[0117] Optionally, the dimension of the non-orthogonal basis matrix is greater than the dimension of the first sensitive data vector.
[0118] Optionally, the data verification device is specifically used to calculate the absolute value of the difference between the first verification value and the second verification value; if the absolute value of the difference is greater than the absolute value threshold of the difference, a verification result of failed verification is obtained; if the absolute value of the difference is less than or equal to the absolute value threshold of the difference, a verification result of passed verification is obtained.
[0119] Optionally, the difference absolute value threshold is the sum of the initial threshold value and the noise tolerance.
[0120] Optionally, the data verification device is further configured to transmit a data identifier corresponding to data that fails verification to the data holding device;
[0121] The data holding device is further configured to determine the location of the data that failed verification based on the data identifier, and to correct the data that failed verification based on the location of the data that failed verification.
[0122] Optionally, the data holding device is specifically used to determine the target business type to which the sensitive data to be verified belongs, determine the target feature extraction rule corresponding to the target business type based on the mapping relationship between the pre-set business type and the feature extraction rule, and perform feature extraction on the sensitive data in the database according to the target feature extraction rule to obtain a first sensitive data vector.
[0123] The embodiment of the present application further provides a computing device, which can be a data holding device or a data verification device.
[0124] like Figure 3 As shown, this figure is a schematic diagram of a computing device provided by an embodiment of the present application, and the computing device 300 includes a bus 301, a processor 302, a communication interface 303 and a memory 304. The processor 302, the memory 304 and the communication interface 303 communicate with each other via the bus 301.
[0125] The bus 301 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.
[0126] The processor 302 may be any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0127] The communication interface 303 is used for communicating with the outside.
[0128] The memory 304 may include volatile memory, such as random access memory (RAM). The memory 304 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
[0129] The memory 304 stores executable code, and the processor 302 executes the executable code to perform the aforementioned sensitive data verification method.
[0130] Embodiments of the present application also provide a computer-readable storage medium. The computer-readable storage medium can be any available medium capable of being stored by a computing device, or a data storage device such as a data center that contains one or more available media. The available medium can be a magnetic medium (e.g., a floppy disk, hard disk, or magnetic tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive). The computer-readable storage medium includes instructions that instruct the computing device to execute the sensitive data verification method described above.
[0131] The present application also provides a computer program product comprising one or more computer instructions that, when loaded and executed on a computing device, fully or partially generate the process or function described in the present application.
[0132] The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from one website, computer, or data center to another website, computer, or data center via wired (e.g., coaxial cable, optical fiber, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means.
[0133] When the computer program product is executed by a computer, the computer performs any of the aforementioned sensitive data verification methods. The computer program product may be a software installation package, and when any of the aforementioned sensitive data verification methods is required, the computer program product may be downloaded and executed on the computer.
[0134] The descriptions of the processes or structures corresponding to the above figures have different emphases. For parts that are not described in detail in a certain process or structure, please refer to the relevant descriptions of other processes or structures.
[0135] The above description is only a specific implementation method of the present application, but the protection scope of the present application is not limited thereto. Any changes or replacements within the technical scope disclosed in the present application should be included in the protection scope of the present application.
Claims
1. A method for verifying sensitive data in a database, characterized in that: The method comprises: The data holding device obtains a first sensitive data vector of sensitive data at time t, generates a non-orthogonal basis matrix corresponding to the first sensitive data vector, and processes the first sensitive data vector using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector; The data verification device generates a test vector according to the dimension of the non-orthogonal base matrix, and sends the test vector to the data holding device; The data holding device processes the second sensitive data vector using the test vector and the second noise value to obtain a first verification value, and sends the first verification value to the data verification device; The data verification device processes a third sensitive data vector using the test vector and a third noise value to obtain a second verification value, and obtains a verification result based on the first verification value and the second verification value, wherein the third noise value and the second noise value are obtained using the same distribution curve, and the third sensitive data vector is obtained by the data holding device by processing the sensitive data at time t-1; Obtaining a verification result according to the first verification value and the second verification value includes: Calculating an absolute value of a difference between the first verification value and the second verification value; If the absolute value of the difference is greater than the absolute value threshold of the difference, a verification result of failure is obtained; If the absolute value of the difference is less than or equal to the absolute value threshold of the difference, a verification result of passing the verification is obtained; The data holding device obtains a first sensitive data vector of sensitive data at time t, including: The data holding device determines the target business type to which the sensitive data to be verified belongs, determines the target feature extraction rule corresponding to the target business type based on a pre-set mapping relationship between the business type and the feature extraction rule, and performs feature extraction on the sensitive data in the database according to the target feature extraction rule to obtain a first sensitive data vector of the sensitive data at the tth moment.
2. The method according to claim 1, characterized in that The method further comprises: The data holding device receives the verification instruction sent by the data verification device; The first sensitive data vector is processed using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector, including: According to the verification instruction, the first sensitive data vector is processed using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector.
3. The method according to claim 1, characterized in that The dimension of the non-orthogonal basis matrix is greater than the dimension of the first sensitive data vector.
4. The method according to claim 3, characterized in that The difference absolute value threshold is the sum of the initial threshold value and the noise tolerance.
5. The method according to claim 1, wherein After obtaining a verification result indicating that the verification fails, the method further includes: The data verification device transmits the data identifier corresponding to the data that fails the verification to the data holding device; The data holding device determines the location of the data that failed verification based on the data identifier, and corrects the data that failed verification based on the location of the data that failed verification.
6. A verification system for sensitive data in a database, characterized in that: The system includes: a data holding device and a data verification device; The data holding device is configured to obtain a first sensitive data vector of sensitive data at time t, generate a non-orthogonal basis matrix corresponding to the first sensitive data vector, and process the first sensitive data vector using the non-orthogonal basis matrix and a preset first noise vector to obtain a second sensitive data vector; a data verification device, configured to generate a test vector according to the dimension of the non-orthogonal basis matrix, and send the test vector to the data holding device; a data holding device, configured to process the second sensitive data vector using the test vector and the second noise value to obtain a first check value, and send the first check value to the data verification device; a data verification device, configured to process a third sensitive data vector using the test vector and a third noise value to obtain a second verification value, and obtain a verification result based on the first verification value and the second verification value, wherein the third noise value and the second noise value are obtained using the same distribution curve, and the third sensitive data vector is obtained by the data holding device by processing sensitive data at time t-1; The data verification device is specifically configured to calculate an absolute value of a difference between the first verification value and the second verification value; if the absolute value of the difference is greater than a difference absolute value threshold, a verification result indicating a failed verification is obtained; if the absolute value of the difference is less than or equal to the difference absolute value threshold, a verification result indicating a passed verification is obtained; The data holding device is specifically used to determine the target business type to which the sensitive data to be verified belongs, determine the target feature extraction rule corresponding to the target business type based on the pre-set mapping relationship between the business type and the feature extraction rule, and perform feature extraction on the sensitive data in the database according to the target feature extraction rule to obtain a first sensitive data vector.
7. A computing device, characterized in that including memory and processor; One or more computer programs are stored in the memory, and the one or more computer programs include instructions; when the instructions are executed by the processor, the computing device executes the method according to any one of claims 1 to 5.
8. A computer-readable storage medium, characterized in that The computer-readable storage medium is used to store a computer program, and the computer program is used to execute the method according to any one of claims 1 to 5.