Method, device and equipment for adding watermarks to numeric data and medium

By constructing a watermark function and adjusting the offset of numerical data, the problem of difficulty in adding watermarks in numerical data scenarios in the existing technology is solved, and traceability and risk control of data leakage are achieved.

CN119359517APending Publication Date: 2025-01-24PEOPLE'S INSURANCE COMPANY OF CHINA
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411355636.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-26
Publication Date
2025-01-24

AI Technical Summary

Technical Problem

The prior art is difficult to effectively add watermarks in numerical type data scenarios, resulting in difficult control of traceability and risks of data leakage.

Method used

By obtaining the basic information of the data set to be processed, the watermark function is constructed, and the offset corresponding to the data corresponding to the data to be processed is determined according to the watermark function, and the numerical data is adjusted to achieve the addition of watermarks.

Benefits of technology

It implements the addition of watermarks to numerical data, improves the traceability of data leaks, and reduces the risk of data leaks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119359517A_ABST
    Figure CN119359517A_ABST
Patent Text Reader

Abstract

The invention provides a method and device for adding watermarks to numeric data, equipment and a medium, and the method comprises the steps: obtaining the basic information of a to-be-processed data set, the to-be-processed data set comprises a plurality of pieces of to-be-processed data, and the to-be-processed data is numeric data; constructing a watermark function according to the basic information; determining an offset corresponding to the to-be-processed data according to the watermark function; and adjusting to-be-processed data in the to-be-processed data set according to the offset to obtain a target data set. By implementing the method disclosed by the invention, the watermark addition of the numeric data can be realized, so that the traceability of data leakage is improved, and the risk of data leakage is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of data security technology, and in particular to a method, device, equipment and medium for adding watermarks to numerical data. Background Art

[0002] As an important data security technology, data watermarking technology has broad application prospects in protecting data security and copyright of digital works.

[0003] In the related technologies, most of the watermark adding technical solutions are aimed at images, audio and video, text data, etc., and perform calculations and processing on the data as a whole. Once the data is split, the watermark cannot be restored, so the current technical solutions are not suitable for scenarios with numerical data. Summary of the invention

[0004] The present disclosure aims to solve one of the technical problems in the related art at least to some extent.

[0005] To this end, the purpose of the present disclosure is to propose a method, device, computer equipment and storage medium for adding watermarks to numerical data, which can realize the addition of watermarks to numerical data, thereby improving the traceability of data leakage and reducing the risk of data leakage.

[0006] To achieve the above-mentioned purpose, the method for adding watermark to numerical data proposed in the first aspect of the present disclosure includes:

[0007] Acquire basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data;

[0008] Constructing a watermark function according to the basic information;

[0009] Determining, according to the watermark function, an offset corresponding to the data to be processed;

[0010] The data to be processed in the data set to be processed is adjusted according to the offset to obtain a target data set.

[0011] To achieve the above-mentioned purpose, the device for adding watermark to numerical data proposed in the second aspect of the present disclosure includes:

[0012] An acquisition module is used to acquire basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data;

[0013] A construction module, used to construct a watermark function according to the basic information;

[0014] A determination module, configured to determine an offset corresponding to the data to be processed according to the watermark function;

[0015] The adjustment module is used to adjust the data to be processed in the data set to be processed according to the offset to obtain a target data set.

[0016] The computer device proposed in the third aspect embodiment of the present disclosure includes: a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the program, the method for adding watermarks to numerical data proposed in the first aspect embodiment of the present disclosure is implemented.

[0017] The fourth aspect embodiment of the present disclosure proposes a non-temporary computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, it implements the method for adding watermarks to numerical data as proposed in the first aspect embodiment of the present disclosure.

[0018] The fifth aspect of the present disclosure provides a computer program product. When the instructions in the computer program product are executed by a processor, the method for adding watermarks to numerical data as provided in the first aspect of the present disclosure is performed.

[0019] The method, device, computer equipment and storage medium for adding watermarks to numerical data provided by the present disclosure obtain basic information of a data set to be processed, wherein the data set to be processed includes multiple data to be processed, and the data to be processed is numerical data; a watermark function is constructed according to the basic information; an offset corresponding to the data to be processed is determined according to the watermark function; and the data to be processed in the data set to be processed is adjusted according to the offset to obtain a target data set. Thus, watermarking of numerical data can be achieved, thereby improving the traceability of data leakage and reducing the risk of data leakage.

[0020] Additional aspects and advantages of the present disclosure will be given in part in the following description and in part will be obvious from the following description or learned through practice of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The above and / or additional aspects and advantages of the present disclosure will become apparent and easily understood from the following description of the embodiments in conjunction with the accompanying drawings, in which:

[0022] Figure 1 It is a flowchart of a method for adding watermarks to numerical data proposed in one embodiment of the present disclosure;

[0023] Figure 2 is a flow chart of a method for adding watermarks to numerical data proposed in another embodiment of the present disclosure;

[0024] Figure 3It is a schematic diagram of the process of adding watermarks to data proposed in the present disclosure;

[0025] Figure 4 is a schematic diagram of calculating the offset of the watermark function proposed in the present disclosure;

[0026] Figure 5 is a schematic diagram of the relationship between period length and amplitude proposed in the present disclosure;

[0027] Figure 6 It is a schematic diagram of the data leakage backtracking process proposed in the present disclosure;

[0028] Figure 7 It is a structural schematic diagram of a device for adding watermarks to numerical data proposed in an embodiment of the present disclosure;

[0029] Figure 8 A block diagram of an exemplary computer device suitable for implementing embodiments of the present disclosure is shown. DETAILED DESCRIPTION

[0030] Embodiments of the present disclosure are described in detail below, examples of which are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present disclosure, and should not be construed as limitations on the present disclosure. On the contrary, the embodiments of the present disclosure include all changes, modifications and equivalents that fall within the spirit and connotation of the appended claims.

[0031] Figure 1 It is a flowchart of a method for adding watermarks to numerical data proposed in an embodiment of the present disclosure.

[0032] It should be noted that the executor of the method for adding watermarks to numerical data in this embodiment is a device for adding watermarks to numerical data, which can be implemented by software and / or hardware. The device can be configured in a computer device, which can include but is not limited to a terminal, a server, etc. For example, the terminal can be a mobile phone, a handheld computer, etc.

[0033] like Figure 1 As shown, the method for adding watermarks to numerical data includes:

[0034] S101: Obtain basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data.

[0035] The data set to be processed may refer to a data set to be subjected to a watermark adding operation in the embodiment of the present disclosure, for example, a data set that a user needs to query or download from a database.

[0036] Among them, the basic information can be used to describe the relevant basic features of the data set to be processed.

[0037] The data to be processed may refer to the data to be watermarked in the data set to be processed.

[0038] In the disclosed embodiment, when basic information of a data set to be processed is obtained, reliable reference information can be provided for the subsequent construction of a watermark function.

[0039] S102: Construct a watermark function according to the basic information.

[0040] The watermark function may refer to a function used to process the data to be processed to achieve a watermarking effect.

[0041] In the disclosed embodiment, when constructing a watermark function according to basic information, it may be based on a pre-trained machine learning model, or it may be based on a third-party watermark function generating device, and there is no limitation on this.

[0042] It is understandable that different data sets to be processed may have significant feature differences, resulting in the same watermark function being less applicable to different data sets to be processed.

[0043] Therefore, in the embodiments of the present disclosure, when constructing a watermark function based on basic information, relevant features of the data set to be processed can be effectively combined to ensure the applicability of the obtained watermark function.

[0044] S103: Determine an offset corresponding to the data to be processed according to the watermark function.

[0045] The offset refers to the amount of offset processing performed on the data to be processed.

[0046] That is, after constructing the watermark function in the embodiment of the present disclosure, the offset corresponding to the data to be processed can be determined according to the watermark function, thereby providing a reliable execution basis for subsequently adding a watermark to the data to be processed.

[0047] S104: Adjust the data to be processed in the data set to be processed according to the offset to obtain a target data set.

[0048] The target data set refers to a data set formed after the data to be processed in the data set to be processed is adjusted based on the offset.

[0049] In the embodiment of the present disclosure, when adjusting the data to be processed in the data set to be processed according to the offset, the sum of the data to be processed and the corresponding offset may be calculated as the adjusted data.

[0050] That is, in the embodiment of the present disclosure, when adding a watermark to the data to be processed, the data to be processed may be offset so that there is an offset between the corresponding data of the obtained target data set and the data set to be processed, and the offset is used as the data watermark.

[0051] In this embodiment, by obtaining basic information of a data set to be processed, wherein the data set to be processed includes multiple data to be processed, and the data to be processed is numerical data; constructing a watermark function according to the basic information; determining an offset corresponding to the data to be processed according to the watermark function; and adjusting the data to be processed in the data set to be processed according to the offset to obtain a target data set. Thus, watermarking of numerical data can be achieved, thereby improving the traceability of data leakage and reducing the risk of data leakage.

[0052] Figure 2 It is a flowchart of a method for adding watermarks to numerical data proposed in another embodiment of the present disclosure.

[0053] like Figure 2 As shown, the method for adding watermarks to numerical data includes:

[0054] S201: Obtain basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, the data to be processed is numerical data, and the basic information includes a maximum value, a minimum value, and a minimum precision of the data to be processed in the data set to be processed.

[0055] The maximum value and the minimum value may refer to the maximum value and the minimum value of multiple data to be processed in the data set to be processed.

[0056] The minimum precision may refer to the minimum unit or resolution that the data to be processed can achieve in data representation.

[0057] S202: Determine the amplitude of the frequency function according to the minimum precision.

[0058] The frequency function is a function that describes the distribution characteristics of the signal in the frequency domain. It shows the amplitude and phase of different frequency components. The amplitude of the frequency function can be used to describe the maximum allowable offset.

[0059] Optionally, in some embodiments, when determining the amplitude of the frequency function according to the minimum precision, a first product value of the minimum precision and a first preset multiple may be determined; a second product value of the minimum precision and a second preset multiple may be determined, wherein the first preset multiple and the second preset multiple are positive integers greater than 1, and the first preset multiple is less than the second preset multiple; an amplitude value range is determined based on the first product value and the second product value, and the amplitude of the frequency function is determined within the amplitude value range. In this way, the flexibility of the amplitude determination process can be ensured, and it is suitable for personalized application scenarios, thereby effectively improving the practicality and applicability of the obtained amplitude.

[0060] Among them, the first preset multiple and the second preset multiple can be flexibly configured in advance according to the application scenario requirements, and the embodiments of the present disclosure do not limit this.

[0061] For example, the first preset multiple may be 10, and the corresponding second preset multiple may be 100.

[0062] The amplitude value range may refer to a value range determined by the first product value and the second product value as boundaries.

[0063] In the disclosed embodiment, when the amplitude of the frequency function is determined according to the minimum precision, the rationality of the adjustment range of the obtained watermark function on the data to be processed can be ensured.

[0064] S203: Determine the period and horizontal phase shift of the frequency function according to the maximum value, the minimum value and the amplitude.

[0065] The period of the frequency function refers to the interval at which the signal repeats in time, indicating how the frequency components of the signal change periodically. The horizontal phase shift refers to the movement of the signal on the time axis, which can be advanced or delayed, affecting the starting point of the signal. Together, they determine the performance of the signal in the time and frequency domains, affecting its characteristics and analysis.

[0066] Optionally, in some embodiments, when determining the period and horizontal phase shift of the frequency function according to the maximum value, the minimum value and the amplitude, the difference between the maximum value and the minimum value may be determined; the quotient of the difference divided by the amplitude may be determined; the target value may be determined according to the quotient, wherein the target value is a positive integer less than the middle value, and the middle value is three quarters of the quotient; the period and horizontal phase shift may be determined based on the target value and the difference. Thus, the obtained period and horizontal phase shift may realize the difference of the watermark function output and reduce the algorithm complexity to facilitate the implementation of the algorithm.

[0067] The target value may refer to an intermediate parameter used to calculate and determine the period and the horizontal phase shift during the watermark function construction process.

[0068] For example, in the embodiment of the present disclosure, when determining the period and horizontal phase shift based on the target value and the difference, the quotient of the difference divided by the target value may be calculated as the period value; and then the parameter value of the horizontal phase shift is determined based on the period value and the minimum precision.

[0069] S204: Construct a watermark function based on the amplitude, period and horizontal phase shift.

[0070] That is, in the embodiment of the present disclosure, after determining the above parameters such as amplitude, period and horizontal phase shift, these parameters can be brought into the frequency function relationship to obtain the watermark function.

[0071] Optionally, in some embodiments, when constructing a watermark function based on amplitude, period, and horizontal phase shift, a target parameter group may be constructed based on amplitude, period, and horizontal phase shift; a first matching result between the target parameter group and the historical parameter group is determined, wherein the historical parameter group refers to a target parameter group that has been constructed for the processed data set; if the first matching result indicates that there is a historical parameter group that is the same as the target parameter group, at least one parameter in the target parameter group is adjusted to determine a new target parameter group; if the first matching result indicates that there is no historical parameter group that is the same as the target parameter group, a watermark function is constructed based on the target parameter group. Thus, adding the same watermark to the processed data set can be effectively avoided, thereby effectively improving the reliability of the watermark adding process.

[0072] The historical parameter group may refer to a parameter group for generating a watermark function constructed for a data set to be processed within a period of time in the past.

[0073] Optionally, in some embodiments, when constructing a watermark function based on the amplitude, period and horizontal phase shift, the following steps may be performed: determining the difference between the maximum value and the minimum value; if the difference is greater than four thirds of the amplitude, constructing the watermark function based on the amplitude, period and horizontal phase shift; if the difference is less than or equal to four thirds of the amplitude, adjusting the amplitude, and constructing the watermark function based on the adjusted amplitude, period and horizontal phase shift. Thus, the applicability of the obtained watermark function to the data set to be processed can be effectively guaranteed.

[0074] It can be understood that, when determining the period and horizontal phase shift of the frequency function, the difference between the maximum value and the minimum value is determined; the quotient of the difference divided by the amplitude is determined; the target value is determined according to the quotient, wherein the target value is a positive integer less than the middle value, and the middle value is three quarters of the quotient; the period and horizontal phase shift are determined based on the target value and the difference. Let the maximum value be V max , the minimum value is V min , the amplitude is A, the target value is N, then:

[0075]

[0076] The corresponding can be deduced:

[0077] V max -V min >4NA / 3

[0078] That is, in the embodiment of the present disclosure, the basic information may include the maximum value, minimum value and minimum precision of the data to be processed in the data set to be processed, and the watermark function is a frequency function. After obtaining the basic information of the data set to be processed, the amplitude of the frequency function may be determined according to the minimum precision; the period and horizontal phase shift of the frequency function may be determined according to the maximum value, minimum value and amplitude; and the watermark function may be constructed based on the amplitude, period and horizontal phase shift. In this way, the reliability and practicality of the obtained watermark function may be effectively improved.

[0079] S205: Determine an offset corresponding to the data to be processed according to the watermark function.

[0080] S206: Adjust the data to be processed in the data set to be processed according to the offset to obtain a target data set.

[0081] The description of S205 and S206 can be specifically referred to the above embodiment, which will not be repeated here.

[0082] S207: Determine the user identifier corresponding to the target user, and generate the timestamp of the target data set.

[0083] The user identifier can be used to identify different users, for example, it can be a unique ID configured for different users.

[0084] The timestamp may be used to indicate the specific time when the target data set is generated.

[0085] In the disclosed embodiment, when the user identifier corresponding to the target user is determined and the timestamp of the target data set is generated, reliable data support can be provided for recording the subsequent watermark adding behavior.

[0086] S208: The user identification, the timestamp and the watermark function are stored in a preset database in association with each other.

[0087] The preset database may refer to a pre-configured database for associating and storing user identification, timestamp, and watermark function.

[0088] That is, in the embodiment of the present disclosure, the user ID corresponding to the target user can be determined, and the timestamp of the target data set can be generated; the user ID, timestamp and watermark function are associated and stored in a preset database. Thus, a reliable execution basis can be provided for the data leakage tracing process.

[0089] S209: Determine at least one piece of leaked data from the leaked data set.

[0090] Among them, leaked data refers to the data that has been leaked in the dataset to be processed, and a leaked dataset refers to a dataset consisting of multiple leaked data.

[0091] It can be understood that the specific number of leaked data determined from the leaked data set in the embodiment of the present disclosure can be flexibly selected according to the application scenario. The more the number selected, the more accurate the data leakage tracing result, and the higher the corresponding data calculation cost.

[0092] S210: Processing the data to be processed corresponding to the leaked data based on different watermark functions in a preset database to obtain reference data.

[0093] The reference data may refer to data obtained by adding a watermark to the data to be processed corresponding to the leaked data based on different watermark functions in a preset database.

[0094] The specific watermark adding process of this step can refer to the above description of the data watermark adding process, which will not be repeated here.

[0095] S211: If each reference data obtained based on the target watermark function is the same as the corresponding leaked data, then the user identifier associated with the target watermark function in the preset database is updated to the leaked data user identifier.

[0096] Among them, the leaked data user identifier can be used to indicate that the corresponding user may have leaked data.

[0097] That is, after data leakage is discovered, in the disclosed embodiment, at least one piece of leaked data can be determined from the leaked data set; the to-be-processed data corresponding to the leaked data is processed based on different watermark functions in the preset database to obtain reference data; if each reference data obtained based on the target watermark function is the same as the corresponding leaked data, the user identifier associated with the target watermark function in the preset database is updated to the leaked data user identifier. In this way, the leaked data can be traced back based on the data watermark to find and locate the root cause of the leak.

[0098] In this embodiment, the basic information includes the maximum value, minimum value and minimum precision of the data to be processed in the data set to be processed, and the watermark function is a frequency function. After obtaining the basic information of the data set to be processed, the amplitude of the frequency function can be determined according to the minimum precision; the period and horizontal phase shift of the frequency function can be determined according to the maximum value, minimum value and amplitude; and the watermark function can be constructed based on the amplitude, period and horizontal phase shift. Thus, the reliability and practicality of the obtained watermark function can be effectively improved. By determining the user identifier corresponding to the target user and generating the timestamp of the target data set; the user identifier, timestamp and watermark function are associated and stored in a preset database. Thus, a reliable execution basis can be provided for the data leakage tracing process. By determining at least one leaked data from the leaked data set; processing the data to be processed corresponding to the leaked data based on different watermark functions in the preset database to obtain reference data; if each reference data obtained based on the target watermark function is the same as the corresponding leaked data, the user identifier associated with the target watermark function in the preset database is updated to the leaked data user identifier. Thus, the leaked data can be traced based on the data watermark to find and locate the root cause of the leak.

[0099] Based on the above embodiments, the present disclosure proposes a method for adding watermarks to data types in order to effectively reduce the risk of data leakage and increase the ability to trace data leakage. By sacrificing a certain accuracy of the numerical data, within a certain allowable error range, the numerical value is offset calculated by introducing methods such as frequency functions in the value domain space of the numerical data of the data set, and records the parameters of the watermark calculation function used in the user application detail data, the maximum and minimum values ​​of the data set, the user ID, the timestamp and other information.

[0100] After a data leak occurs, the records of the user's application details are traversed, the true value of the leaked data is calculated by applying the watermark calculation function of each record in turn, and the calculated value is compared with the leaked value to trace the information of the leaked user.

[0101] The technical solution of this application consists of two parts: "data watermarking" and "data leakage backtracking".

[0102] 1. Data watermarking process:

[0103] The process of adding watermarks to data is to calculate the offset of the data. By controlling the coefficients of the watermark function, the data viewed by the user is differentiated, so that the user has different offsets when viewing the data. Then the watermark function coefficients, data set information, and user information are stored in the storage medium to facilitate subsequent comparison and data leakage tracing. Figure 3 As shown, Figure 3 It is a schematic diagram of the process of adding watermarks to data proposed in the present disclosure.

[0104] The detailed steps are as follows:

[0105] Step 1: The user applies to view / download the data details with numerical types. If the data is provided separately offline, the user needs to fill in information such as the dataset name, dimension, and value range. If the dataset is presented in the form of a report, a function for recording users' access to report data can be added to the report system, and the watermark function can be replaced regularly to facilitate the differentiation of access users in different time periods.

[0106] Step 2: Select a suitable watermark function. Obtain the basic information of the dataset that the user applies to view or download, including: the maximum value, the minimum value, the minimum precision, etc. Select a suitable watermark function coefficient according to the basic information of the dataset. The specific watermark formula is as follows:

[0107] F(x) = A sin(Bx + C)

[0108] Where A, B, and C are function coefficients. Regarding the watermark function as a frequency function, A is the amplitude of the frequency function, 2π / B is the period of the frequency function, and -C / B is the horizontal phase shift of the frequency function.

[0109] Apply the numerical type data to the above formula, calculate the offset F(x) of each value, and then use x + F(x) as the output value. By controlling the coefficient values of the watermark function A, B, and C, the differentiation of different data access users is achieved.

[0110] As Figure 4 shown, Figure 4 is a schematic diagram of calculating the offset according to the watermark function proposed in the present disclosure.

[0111] The selection of the watermark function coefficient should follow the following principles:

[0112] ① Selection of coefficient A (amplitude): will be used as the maximum allowable offset. The value should not be less than x times the minimum precision and not greater than y times the minimum precision (1 < x < y, and both x and y are positive integers). The values of x and y can be set according to experience (such as x = 5, y = 50). Let the minimum precision of the dataset be V 精度 , that is, the value range of coefficient A is expressed as:

[0113] A ∈ [x * V 精度 , y * V 精度

[0114] If the minimum precision is 0.01, and the default settings are x = 5 and y = 50, then the value range of A is [0.05, 0.5].

[0115] ② Selection of coefficient B: While increasing the offset, the statistical characteristics of the data set should be kept basically unchanged. The period plays a key role here. The minimum and maximum values ​​of the value must contain at least one period. Let the maximum value be V max , the minimum value is V min , then the coefficient B must satisfy:

[0116] (V max -V min ) / (2π / B)≥1

[0117] In addition, to ensure that the maximum and minimum values ​​of the data set will not be rewritten after the offset, the maximum and minimum values ​​should be at the beginning and end of the function cycle, and the length of the 3 / 4 cycle should be greater than the maximum offset (such as Figure 5 As shown, Figure 5 This is a schematic diagram of the relationship between cycle length and amplitude proposed in this disclosure. If the offset is greater than 3 / 4 of the cycle, the maximum and minimum values ​​of the data set will change after the offset is added), then it must meet the following conditions:

[0118] (V max -V min ) / (2π / B)=N, (where N is a positive integer and 1≤N)

[0119] At the same time: (3 / 4)*(2π / B)>A

[0120] Furthermore, the value of B can be derived:

[0121] B=2πN / (V max -V min ), (where 1≤N<3(V max -V min ) / 4A)

[0122] ③Choice of coefficient C: -C / B is the phase shift of the frequency function. To ensure that the minimum value is at the beginning of the cycle, the phase shift should be equal to the minimum value, that is:

[0123] -C / B=V min

[0124] In the above, the values ​​of coefficients A and B have a certain selection range and can be selected by random method, where the value of B is affected by the value of N (i.e. the above target value). Once the value of N is determined, the values ​​of B and C can be determined. Therefore, when actually recording the coefficients of the watermark function, only the values ​​of A and N need to be recorded.

[0125] The watermark function calculation logic for special data sets:

[0126] If the data set is small or the value range of the data set is narrow, the coefficients B and C of the watermark function may not meet the conditions (such as V max -V min =0) and cannot be calculated. In order to ensure that the values ​​of watermark functions B and C can be calculated, it is necessary to adjust the range of the maximum and minimum values ​​of the data set. max Keep unchanged and use a new minimum value V′ min Replace V min , then it should satisfy:

[0127]

[0128] It can be deduced that:

[0129] V max -V′ min >4NA / 3

[0130] The default value is V max -V′ min =2NA, then the calculation formulas for B and C are:

[0131] B=π / A

[0132] C=-π(V max -2NA) / A

[0133] Deduplication logic of watermark function coefficients:

[0134] The same data set may be applied for by multiple people. If the data set information is consistent, the watermark function coefficients selected according to the above principles may be repeated. If the watermark function is repeated, it may cause difficulty in backtracking.

[0135] In order to minimize the probability of watermark function repetition in the same data set, after determining the values ​​of watermark function coefficients A, B, and C (actually determining the values ​​of A and N) by random methods, it is also necessary to perform global deduplication operations on the watermark functions that have appeared in the history of the data set. If repetition occurs, the values ​​of A, B, and C need to be reselected until there is no repetition.

[0136] Step 3: Record data access event information. After confirming the coefficients of the watermark function according to the second step, record the information such as "user ID", "name of the data set accessed by the user", "field to add watermark", "maximum value of the data set", "minimum value", "precision", "timestamp", "coefficients of the watermark function (A, N)", and "method of providing data" to facilitate subsequent query and tracing.

[0137] Step 4: Calculate the offset of the watermarking function. Apply the watermarking function obtained in step 2 to calculate the field to be watermarked in the data set, obtain the offset of each data, and then add the offset to the data to obtain the result set after adding the watermark.

[0138] Step 5: User views / downloads the dataset. After the dataset is processed, the user accesses the dataset.

[0139] 2. Data Breach Tracing Process

[0140] Once data leakage occurs, the data set of the leaked data is first determined, and then the user records of historical access requests to the data set are found based on historical records. Then, several leaked data and true values ​​are selected, and the data after the true value is increased by the watermark function in the user record is calculated in sequence, and then compared with the leaked data, thereby locking the data leaker.

[0141] The data leakage backtracking process can be divided into three parts, including: locating the scope of the leaked data, finding the true value of the leaked data, and locating the leaker by traversing the watermark function.

[0142] like Figure 6 As shown, Figure 6 This is a schematic diagram of the data leakage backtracking process proposed in this disclosure. It includes the following steps:

[0143] Step 1: Locate the scope of the leaked data. Confirm the scope of the leaked data set according to the fields of the leaked data, search for historical access records, and find out the records of users accessing the data set (including "user ID", "name of the data set accessed by the user", "field to add watermark", "maximum value of the data set", "minimum value", "data set accuracy", "access timestamp", "coefficients of the watermark function (A, N)", "method of providing data", etc.).

[0144] Step 2: Find the true value of the leaked data. Select several leaked data (there is no special requirement for the number of leaked data, but the more data used for comparison and verification, the higher the accuracy of tracing), and find the true value of the data before adding the offset in the original data storage table according to the dimension of the leaked data.

[0145] Step 3: Traverse the watermark function to locate the leaker. Apply the watermark function of the user who accessed the data set in turn to calculate the offset of the found real value, and compare it with the leaked value after the calculation is completed. If the result calculated by a watermark function is found to be exactly the same as the leaked data, the leaker can be confirmed through the user associated with the watermark function.

[0146] That is to say, the present disclosure proposes a watermark calculation method for numerical data, introduces a frequency function as a watermark function to perform offset calculation on numerical data, and while ensuring accuracy, differentially calculates the data viewed by the user by controlling the coefficient of the watermark function, so that the user views the data with different offsets, and then stores the watermark function coefficient, data set information, and user information in a storage medium to facilitate subsequent comparison and data leakage tracing. A highly feasible data leakage backtracking method is also proposed. Once data leakage occurs, the data set of the leaked data is first determined, and then the user records of historical access requests to the data set are found based on historical records, and then several leaked data and true values ​​are selected, and the data after the true value plus the offset is calculated in turn by traversing the watermark function in the user record, and then compared with the leaked data, thereby locking the data leaker.

[0147] For example, based on the above embodiment, the calculation process example of adding watermark to the disclosed data is as follows:

[0148] 1. Data details and calculation results

[0149] Assume that a user requests to view a list of insurance data, the fields involved are:

[0150] User name, policy number, policy start date, policy end date, insured amount, etc.

[0151] This technical solution is tried to add a watermark to the insured amount, as shown in Table 1.

[0152] Table 1

[0153]

[0154] 2. Determine the coefficients of the watermark function

[0155] Apply the rules to determine the value range of coefficients A, B, and C.

[0156] (1) Determine the value of A

[0157] Formula: A∈[x*V 精度 ,y*V 精度 ]

[0158] The minimum precision of the "Insurance Amount" field is 0.01. You can set the values ​​of x and y to 5 and 50 respectively, and the value range of A is: [0.05, 0.5];

[0159] Randomly select the value of A within the range of values. Suppose the value of A is determined to be 0.2.

[0160] (2) Determine the values ​​of B and C

[0161] Formula 1: 1≤N<3(V max-V min ) / 4A

[0162] Formula 2: B = 2πN / (V max -V min )

[0163] Formula 3: -C / B = V min

[0164] The maximum and minimum values ​​of the data set are: 400.32, 2100.20;

[0165] Then the value range of N is: 1≤N<6375;

[0166] The value of N is randomly selected to be 20, then:

[0167] B=2*π*20 / (2100.2-400.32), C=-400.32*2*π20 / (2100.2-400.32)

[0168] Then the watermark function is determined as:

[0169] F(x)=0.2*sin(2*π*20 / (2100.0-400.32)*x-400.32*2*π*20) / (2100.2-400.32)) Simplified: F(x)=0.2*sin(π*(x-400.32)*0.023531)

[0170] 3. Calculation of data watermark

[0171] Substitute the "insured amount" column in the table as the value of x into the above watermark function calculation formula, and calculate the deviation value of each value (the "offset" column in the table) respectively. The calculated deviation value retains the minimum precision and 2 as a decimal.

[0172] F(400.32)=0; F(485.34)=0; F(500.45)=0.18; F(540.12)=-0.16; F(567.12)=-0.05; F(1000.02)=0.07; F(1234.89)=-0.18; F(2100.20)=0.

[0173] Add the "insured amount" to the "offset" to get the insured amount after adding the watermark.

[0174] For example, the watermark function leakage backtracking example is as follows:

[0175] 1. The leaked data is shown in Table 2:

[0176] Table 2

[0177] username Other properties Amount insured User1 ... 1000.09 User2 ... 539.96 User3 ... 485.34 User4 ... 567.07

[0178] 2. Data Breach Retrospection

[0179] (1) Confirm the data range based on the leaked data. For example, the leaked data is locked as the "X City January Insurance List" data. It is found that two users have requested this data in the past. The coefficients of the watermark function and the information of the data set are shown in Table 3:

[0180] Table 3

[0181]

[0182] (2) Find the true value of the leaked data without adding the offset, as shown in Table 4.

[0183] Table 4

[0184]

[0185] (3) Traversing the watermark function, the watermark functions of the two user access events are:

[0186] F1(x)=0.2*sin(2*π*20 / (2100.2-400.32)*x-400.32*2*π*20 / (2100.2-400.32))

[0187] and:

[0188] F2(x)=0.15*sin(2*π*15 / (2100.2-400.32)*x-400.32*2*π*15 / (2100.2-400.32))

[0189] Traversing the watermark function for this data set, we calculated the four leaked data respectively and obtained the data in Table 5.

[0190] Table 5

[0191]

[0192] The results calculated by each watermark function are compared with the leaked data, and it is found that the results calculated by the watermark function of event-1 are consistent. It can be clearly concluded that the data leak came from event-1.

[0193] Figure 7 It is a schematic diagram of the structure of a device for adding watermarks to numerical data proposed in an embodiment of the present disclosure.

[0194] like Figure 7 As shown, the device 70 for adding watermark to numerical data includes:

[0195] The acquisition module 701 is used to acquire basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data;

[0196] A construction module 702, used to construct a watermark function according to basic information;

[0197] A determination module 703, configured to determine an offset corresponding to the data to be processed according to the watermark function;

[0198] The adjustment module 704 is used to adjust the data to be processed in the data set to be processed according to the offset to obtain a target data set.

[0199] It should be noted that the above explanation of the method for adding watermarks to numerical data is also applicable to the device for adding watermarks to numerical data of this embodiment, and will not be repeated here.

[0200] In this embodiment, by obtaining basic information of a data set to be processed, wherein the data set to be processed includes multiple data to be processed, and the data to be processed is numerical data; constructing a watermark function according to the basic information; determining an offset corresponding to the data to be processed according to the watermark function; and adjusting the data to be processed in the data set to be processed according to the offset to obtain a target data set. Thus, watermarking of numerical data can be achieved, thereby improving the traceability of data leakage and reducing the risk of data leakage.

[0201] Figure 8 A block diagram of an exemplary computer device suitable for implementing embodiments of the present disclosure is shown. Figure 8 The computer device 12 shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.

[0202] like Figure 8 As shown, the computer device 12 is in the form of a general-purpose computing device. The components of the computer device 12 may include, but are not limited to: one or more processors or processing units 16, a system memory 28, and a bus 18 that connects various system components (including the system memory 28 and the processing unit 16).

[0203] The bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, a graphics acceleration port, a processor or a local bus using any of a variety of bus structures. For example, these architectures include but are not limited to Industry Standard Architecture (ISA) bus, Micro Channel Architecture (MAC) bus, Enhanced ISA bus, Video Electronics Standards Association (VESA) local bus and Peripheral Component Interconnection (PCI) bus.

[0204] The computer device 12 typically includes a variety of computer system readable media. These media can be any available media that can be accessed by the computer device 12, including volatile and non-volatile media, removable and non-removable media.

[0205] The memory 28 may include computer system readable media in the form of volatile memory, such as random access memory (RAM) 30 and / or cache memory 32. The computer device 12 may further include other removable / non-removable, volatile / non-volatile computer system storage media. By way of example only, the storage system 34 may be used to read and write non-removable, non-volatile magnetic media ( Figure 8 Not shown, often called a "hard drive").

[0206] although Figure 8 Not shown, a disk drive for reading and writing a removable non-volatile disk (e.g., a "floppy disk"), and an optical disk drive for reading and writing a removable non-volatile optical disk (e.g., a compact disc read only memory (Compact Disc Read Only Memory; hereinafter referred to as: CD-ROM), a digital versatile disc read only memory (Digital Video Disc Read Only Memory; hereinafter referred to as: DVD-ROM) or other optical media) may be provided. In these cases, each drive may be connected to the bus 18 via one or more data medium interfaces. The memory 28 may include at least one program product having a set (e.g., at least one) of program modules that are configured to perform the functions of the various embodiments of the present disclosure.

[0207] A program / utility 40 having a set (at least one) of program modules 42 may be stored, for example, in the memory 28, such program modules 42 including but not limited to an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include an implementation of a network environment. The program modules 42 generally perform the functions and / or methods of the embodiments described in the present disclosure.

[0208] The computer device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), one or more devices that enable a human body to interact with the computer device 12, and / or any device that enables the computer device 12 to communicate with one or more other computing devices (e.g., network card, modem, etc.). Such communication may be performed via an input / output (I / O) interface 22. In addition, the computer device 12 may also communicate with one or more networks (e.g., a local area network (LAN), a wide area network (WAN), and / or a public network, such as the Internet) via a network adapter 20. As shown, the network adapter 20 communicates with other modules of the computer device 12 via a bus 18. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the computer device 12, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems. The processing unit 16 executes various functional applications and data processing by running the programs stored in the system memory 28, such as implementing the method of adding watermarks to numerical data mentioned in the above embodiment.

[0209] In order to implement the above embodiments, the present disclosure further proposes a non-temporary computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method for adding watermarks to numerical data proposed in the above embodiments of the present disclosure is implemented.

[0210] In order to implement the above embodiments, the present disclosure further proposes a computer program product. When an instruction processor in the computer program product executes, the method for adding watermarks to numerical data proposed in the above embodiments of the present disclosure is performed.

[0211] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are to be considered exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.

[0212] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

[0213] It should be noted that, in the description of the present disclosure, the terms "first", "second", etc. are only used for descriptive purposes and cannot be understood as indicating or implying relative importance. In addition, in the description of the present disclosure, unless otherwise specified, the meaning of "plurality" is two or more.

[0214] Any process or method description in a flowchart or otherwise described herein may be understood to represent a module, segment or portion of code that includes one or more executable instructions for implementing the steps of a specific logical function or process, and the scope of the preferred embodiments of the present disclosure includes alternative implementations in which functions may not be performed in the order shown or discussed, including performing functions in a substantially simultaneous manner or in the reverse order depending on the functions involved, which should be understood by those skilled in the art to which the embodiments of the present disclosure belong.

[0215] It should be understood that the various parts of the present disclosure can be implemented in hardware, software, firmware or a combination thereof. In the above-mentioned embodiments, multiple steps or methods can be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system. For example, if implemented in hardware, as in another embodiment, it can be implemented by any one of the following technologies known in the art or their combination: a discrete logic circuit having a logic gate circuit for implementing a logic function for a data signal, a dedicated integrated circuit having a suitable combination of logic gate circuits, a programmable gate array (PGA), a field programmable gate array (FPGA), etc.

[0216] A person skilled in the art may understand that all or part of the steps in the method for implementing the above-mentioned embodiment may be completed by instructing related hardware through a program, and the program may be stored in a computer-readable storage medium, which, when executed, includes one or a combination of the steps of the method embodiment.

[0217] In addition, each functional unit in each embodiment of the present disclosure may be integrated into a processing module, or each unit may exist physically separately, or two or more units may be integrated into one module. The above-mentioned integrated module may be implemented in the form of hardware or in the form of a software functional module. If the integrated module is implemented in the form of a software functional module and sold or used as an independent product, it may also be stored in a computer-readable storage medium. The above-mentioned storage medium may be a read-only memory, a disk or an optical disk, etc.

[0218] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present disclosure. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner.

[0219] Although the embodiments of the present disclosure have been shown and described above, it is to be understood that the above embodiments are exemplary and are not to be construed as limitations of the present disclosure. A person skilled in the art may change, modify, replace and vary the above embodiments within the scope of the present disclosure.

Claims

1. A method for adding watermarks to numerical data, characterized in that: include: Acquire basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data; Constructing a watermark function according to the basic information; Determining, according to the watermark function, an offset corresponding to the data to be processed; The data to be processed in the data set to be processed is adjusted according to the offset to obtain a target data set.

2. The method according to claim 1, characterized in that The basic information includes the maximum value, minimum value and minimum precision of the data to be processed in the data set to be processed, and the watermark function is a frequency function; The step of constructing a watermark function according to the basic information includes: determining an amplitude of the frequency function according to the minimum precision; Determining a period and a horizontal phase shift of the frequency function according to the maximum value, the minimum value and the amplitude; The watermark function is constructed based on the amplitude, the period and the horizontal phase shift.

3. The method according to claim 2, characterized in that Determining the amplitude of the frequency function according to the minimum precision includes: Determine a first product value of the minimum precision and a first preset multiple; Determine a second product value of the minimum precision and a second preset multiple, wherein the first preset multiple and the second preset multiple are positive integers greater than 1, and the first preset multiple is less than the second preset multiple; An amplitude value range is determined based on the first product value and the second product value, and the amplitude of the frequency function is determined within the amplitude value range.

4. The method according to claim 2, characterized in that Determining the period and horizontal phase shift of the frequency function according to the maximum value, the minimum value and the amplitude comprises: determining a difference between the maximum value and the minimum value; determining a quotient of the difference divided by the amplitude; Determine a target value according to the quotient, wherein the target value is a positive integer smaller than the intermediate value, and the intermediate value is three quarters of the quotient; Based on the target value and the difference, the period and the horizontal phase shift are determined.

5. The method according to claim 2, characterized in that The constructing the watermark function based on the amplitude, the period and the horizontal phase shift comprises: constructing a target parameter set based on the amplitude, the period and the horizontal phase shift; Determine a first matching result between the target parameter group and the historical parameter group, wherein the historical parameter group refers to a target parameter group that has been constructed for the data set to be processed; If the first matching result indicates that there is a historical parameter group that is the same as the target parameter group, adjusting at least one parameter in the target parameter group to determine a new target parameter group; If the first matching result indicates that there is no historical parameter group identical to the target parameter group, the watermark function is constructed based on the target parameter group.

6. The method according to claim 2, characterized in that The constructing the watermark function based on the amplitude, the period and the horizontal phase shift further comprises: determining a difference between the maximum value and the minimum value; If the difference is greater than three-fourths of the amplitude, constructing the watermark function based on the amplitude, the period and the horizontal phase shift; If the difference is less than or equal to four thirds of the amplitude, the amplitude is adjusted, and the watermark function is constructed based on the adjusted amplitude, the period and the horizontal phase shift.

7. The method according to claim 1, characterized in that The target data set is used to provide to a target user; wherein the method further comprises: Determine a user identifier corresponding to the target user, and generate a timestamp of the target data set; The user identification, the timestamp and the watermark function are associated and stored in a preset database.

8. The method according to claim 7, characterized in that The method further comprises: Identify at least one piece of leaked data from the leaked data set; Processing the data to be processed corresponding to the leaked data based on different watermark functions in the preset database to obtain reference data; If each of the reference data obtained based on the target watermark function is the same as the corresponding leaked data, the user identifier associated with the target watermark function in the preset database is updated to the leaked data user identifier.

9. A device for adding watermarks to numerical data, characterized in that: include: An acquisition module is used to acquire basic information of a data set to be processed, wherein the data set to be processed includes a plurality of data to be processed, and the data to be processed is numerical data; A construction module, used to construct a watermark function according to the basic information; A determination module, configured to determine an offset corresponding to the data to be processed according to the watermark function; The adjustment module is used to adjust the data to be processed in the data set to be processed according to the offset to obtain a target data set.

10. A computer device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 8.

11. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: in, The computer instructions are used to cause the computer to execute the method according to any one of claims 1 to 8.

12. A computer program product, characterized in that The invention comprises a computer program which, when executed by a processor, implements the steps of the method according to any one of claims 1 to 8.