Watermark information processing method and device, equipment, storage medium and product

By calculating the field string of each row of data in the structured data, determining the embedded fields and embedding the watermark encoded bit value, the problem that watermark technology in the existing technology cannot resist the primary key deletion attack is solved, and automated watermark embedding and extraction is realized, improving the Data security.

CN119397501AActive Publication Date: 2025-02-07CHINA MOBILE COMM LTD RES INST +1
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411391762.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-30
Publication Date
2025-02-07
Estimated Expiration
2044-09-30

AI Technical Summary

Technical Problem

The prior art watermark technology is based on an algorithm for grouping data by primary keys, and cannot resist primary key deletion attacks, resulting in the inability to extract watermark information.

Method used

By calculating the string corresponding to each field in each row of data in the structured data set, the first field to be embedded in each row of data is determined, and the corresponding corresponding to each row of data is determined based on the string and watermark information of each field. The watermark encoded bit value is embedded in it.

Benefits of technology

The embedding and extraction of automated structured data watermarks is realized, avoiding the invalidation or loss of watermark information by deleting primary keys, and improving data security.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119397501A_ABST
    Figure CN119397501A_ABST
Patent Text Reader

Abstract

The invention discloses a watermark information processing method. The method comprises the following steps: acquiring a first data set and watermark information; calculating a character string corresponding to each field in each row of data in the first data set; based on the character string corresponding to each field, determining a first field of to-be-embedded watermark information in each row of data; based on the character string and the watermark information corresponding to each field, determining a watermark coding bit value corresponding to each row of data; and embedding the watermark coding bit value corresponding to each row of data into the corresponding first field to obtain a second data set after embedding. The invention further discloses a watermark information processing device, electronic equipment, a computer readable storage medium and a computer program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to but is not limited to the field of communications, and in particular to a method for processing watermark information, a device for processing watermark information, an electronic device, a computer-readable storage medium, and a computer program product. Background Art

[0002] Data has become the fifth largest production factor after land, labor, capital, and technology. Currently, Internet companies have a large amount of valuable data and need to circulate the data to generate greater value. However, after the data is released from the network, there may be problems such as data leakage and data resale. How to trace the source of such data has become a difficult problem. Digital watermark technology is a solution.

[0003] Digital watermarking is an information security technology that embeds watermark information into digital carriers (such as digital images, digital videos, and structured data) through certain rules and algorithms to achieve the purpose of confirming digital copyright owners and tracking data leakers. Structured data watermarking is one of them, which is mainly for structured data sets involved in various systems or platforms and with external publishing needs. Structured data sets can be carried in relational databases, Excel files, comma-separated values ​​(CSV) files, text format (TXT) files and other file formats, and generally have less redundant space for watermark embedding.

[0004] It should be noted that the watermark technology of the related art is based on the algorithm of grouping data based on the primary key, which cannot resist the primary key deletion attack. Therefore, after deleting the primary key, the grouping information cannot be obtained, and the watermark information cannot be extracted. Summary of the invention

[0005] The embodiments of the present application provide a method for processing watermark information, a device for processing watermark information, an electronic device, a computer-readable storage medium, and a computer program product, and provide a method for automatically embedding and extracting structured data watermarks.

[0006] The technical solution of this application is implemented as follows:

[0007] In a first aspect, an embodiment of the present application provides a method for processing watermark information, the method comprising:

[0008] Obtaining a first data set and watermark information;

[0009] Calculate the character string corresponding to each field in each row of data in the first data set;

[0010] Based on the character string corresponding to each field, determining the first field to be embedded with watermark information in each row of data;

[0011] Determine the watermark encoding bit value corresponding to each line of data based on the character string corresponding to each field and the watermark information;

[0012] The watermark encoding bit value corresponding to each row of data is embedded in the corresponding first field to obtain an embedded second data set.

[0013] In a second aspect, an embodiment of the present application provides a watermark information processing device, the watermark information processing device comprising:

[0014] An acquisition module, used to acquire a first data set and watermark information;

[0015] A processing module, used for calculating the character string corresponding to each field in each row of data in the first data set;

[0016] The processing module is further used to determine the first field to be embedded with watermark information in each line of data based on the character string corresponding to each field;

[0017] The processing module is further used to determine the watermark encoding bit value corresponding to each line of data based on the character string corresponding to each field and the watermark information;

[0018] The processing module is further used to embed the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain the embedded second data set.

[0019] In a third aspect, an embodiment of the present application provides an electronic device, the electronic device comprising: a processor, a memory, and a communication bus;

[0020] A memory for storing executable instructions;

[0021] The processor is used to execute the executable instructions stored in the memory to implement the steps of the watermark information processing method as described above.

[0022] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the steps of the watermark information processing method as described above.

[0023] In a fifth aspect, an embodiment of the present application provides a computer program product, including a computer program, which, when executed by a processor, implements the steps of the watermark information processing method as described above.

[0024] This application does not use the primary key as the anchor field. Before embedding the watermark information, the anchor field, that is, the first field, is determined based on the character string corresponding to each field in each row of data. Therefore, the anchor field of each row of data is different; and the embedded content is also determined based on the character string corresponding to each field and the watermark information. Therefore, the embedded content of each row of data is different, so the watermark information cannot be invalidated or lost by deleting the primary key, attribute or least significant bit. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 Schematic diagram of the process of processing watermark information provided in the embodiment of the present application Figure 1 ;

[0026] Figure 2 Schematic diagram of the process of processing watermark information provided in the embodiment of the present application Figure 2 ;

[0027] Figure 3 Schematic diagram of the process of processing watermark information provided in the embodiment of the present application Figure 3 ;

[0028] Figure 4 Schematic diagram of the process of processing watermark information provided in the embodiment of the present application Figure 4 ;

[0029] Figure 5 A schematic block diagram of a watermark information processing device provided in an embodiment of the present application;

[0030] Figure 6 A schematic structural diagram of an electronic device provided in an embodiment of the present application;

[0031] Figure 7 A schematic structural diagram of a chip provided in an embodiment of the present application. DETAILED DESCRIPTION

[0032] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0033] The terms "first", "second", etc. in the specification and claims of this application and the above-mentioned drawings are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally includes steps or units that are not listed, or optionally includes other steps or units inherent to these processes, methods, products or devices.

[0034] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0035] The embodiment of the present application provides a method for processing watermark information, and the method for processing watermark information is applied to electronic equipment, referring to Figure 1 As shown, the method comprises the following steps:

[0036] Step 101: Obtain a first data set and watermark information.

[0037] In the embodiment of the present application, the first data set may be a set of any number of data, which is not specifically limited in the present application. It should be noted that the first data set may be the entire data set or part of the data in the entire data set.

[0038] In the embodiment of the present application, the watermark information may be any type of identification information that can identify the owner of the data set, or selected by the owner of the data set, and the present application does not specifically limit this.

[0039] Step 102: Calculate the character string corresponding to each field in each row of data in the first data set.

[0040] In the embodiment of the present application, each field in each row of data corresponds to a string, and N fields in each row of data correspond to N strings, that is, one field corresponds to one string. The string corresponding to each row of fields is the string obtained after a certain transformation of the data in each row of fields.

[0041] It should be noted that the calculation method of the string corresponding to each row of data can be completely different, or partially different, or completely the same; if different, the calculated strings need to be normalized to the same range.

[0042] Step 103: Based on the character string corresponding to each field, determine the first field in each row of data where watermark information is to be embedded.

[0043] It should be noted that the first field selected in each row of data may be completely different, or partially different, that is, the selected field is not fixed, but determined by calculation.

[0044] It should be noted that the first field is used as an anchor field, that is, the primary key is not used as the anchor field in this application, and the anchor field of each row of data is different. Therefore, the solution proposed in this application can resist primary key deletion attacks, and the watermark cannot be invalidated by deleting the primary key.

[0045] Step 104: Based on the character string and watermark information corresponding to each field, determine the watermark encoding bit value corresponding to each line of data.

[0046] Step 105: embed the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain an embedded second data set.

[0047] The embodiment of the present application discloses a method for processing watermark information, which includes: obtaining a first data set and watermark information; calculating the string corresponding to each field in each row of data in the first data set; determining the first field to be embedded with watermark information in each row of data based on the string corresponding to each field; determining the watermark encoding bit value corresponding to each row of data based on the string corresponding to each field and the watermark information; embedding the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain the embedded second data set. That is to say, the present application does not use the primary key as the anchor field. Before embedding the watermark information, the anchor field, i.e., the first field, is first determined based on the string corresponding to each field in each row of data. Then, the anchor field of each row of data is different; and the embedded content is also determined based on the string corresponding to each field and the watermark information. Then, the embedded content of each row of data is different, so the watermark information cannot be invalidated or lost by deleting the primary key, attribute or least significant bit. At the same time, when embedding the watermark information into the data carrier, i.e., the first data set, no parameters other than the watermark information need to be input, so no parameters need to be recorded, and the implementation difficulty is small.

[0048] It should be noted that the current demand for using watermark traceability technology is that the data collected by a data platform through terminal devices needs to be shared with third parties for use. The collected data will pass through a transit device in the middle, and the transit device is not its own device. Therefore, the watermark information processing method provided in this application does not require recording parameters, including grouping fields, embedded fields, number of groups and other parameters, thereby improving data security.

[0049] The embodiment of the present application provides a method for processing watermark information, and the method for processing watermark information is applied to electronic equipment, referring to Figure 2 As shown, the method comprises the following steps:

[0050] Step 201: Obtain a first data set and watermark information.

[0051] Step 202: Determine the embedding position.

[0052] In the embodiment of the present application, the embedded bits can be preset, such as the first N bits, the last N bits, or the middle N bits in the field; wherein N is a positive integer and is less than or equal to the remainder value. Of course, the embedded bits can also be set by the electronic device based on actual conditions.

[0053] Step 203: remove the embedded bit data of each field to obtain the first data of each field.

[0054] Step 204: Encrypt the first data of each field to obtain a character string corresponding to each field.

[0055] In the embodiment of the present application, the electronic device uses the key information to calculate the first data of each field to obtain the character string corresponding to each field. The calculation method is not limited to the key-related hash operation message authentication code (Hash-basedMessage Authentication Code, HMAC) and stream cipher encryption. It should be noted that the key information introduced in this application can make it impossible to calculate the sequence value without the key even if the calculation rules are understood, and it is impossible to restore the watermark information.

[0056] Step 205: sort the character strings corresponding to each field to obtain sorted data.

[0057] In the embodiment of the present application, the sorting method can be pre-configured or obtained from the outside.

[0058] In the embodiment of the present application, the character strings may be sorted based on the ASCII code value corresponding to each character string.

[0059] Step 206: Determine that the field corresponding to the data satisfying the first condition in the sorted data is the first field.

[0060] The data satisfying the first condition includes data corresponding to the maximum value in the sorted data, or data corresponding to the minimum value in the sorted data.

[0061] Step 207: Obtain a preset remainder value.

[0062] It should be noted that the preset remainder value is determined by the watermark encoding method and can be set to a fixed value (eg, 60, 100, 1000, etc.).

[0063] Step 208: Encode the watermark information to obtain a first encoding result.

[0064] Here, the watermark information is encoded based on a watermark encoding method to obtain a first encoding result. Here, the watermark encoding method includes but is not limited to using hexadecimal encoding to form a byte stream, using the Chinese remainder theorem to form a fragment value, and the like.

[0065] Step 209: Modulo the string corresponding to the first field in each row of data and the modulo value to obtain the sequence value corresponding to each row of data.

[0066] Step 210: fill in the first encoding result to obtain a second encoding result.

[0067] The number of bits of the second encoding result is the same as the number of bits of the remainder value.

[0068] Step 211: Determine a watermark coding bit value based on the sequence value and the second coding result.

[0069] It should be noted that the bit value corresponding to the i-th bit in the second encoding result is determined to be the watermark encoding bit value; wherein i is equal to the sequence value and i is a positive integer.

[0070] Step 212: embed the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain an embedded second data set.

[0071] It should be noted that, for the description of the same steps and the same contents in this embodiment as those in other embodiments, reference can be made to the description in other embodiments and will not be repeated here.

[0072] The embodiment of the present application provides a method for processing watermark information, and the method for processing watermark information is applied to electronic equipment, referring to Figure 3 As shown, the method comprises the following steps:

[0073] Step 301: Determine a sequence pair for each row of data in a second data set.

[0074] The sequence pair includes a sequence value corresponding to each row of data and a watermark encoding bit value corresponding to each row of data.

[0075] Step 302: restore the watermark information based on the sequence pairs of each row of data.

[0076] In the embodiment of the present application, for the same sequence value, the watermark coding sequence value is obtained by counting method. All the watermark coding sequence values ​​are combined with the watermark coding method to restore the watermark information.

[0077] In the embodiment of the present application, the extraction process corresponding to step 301 to step 302 is the reverse of the embedding process of step 201 to step 212, except that the order of the steps is slightly different; that is, each field of each row of data is sorted after a specific transformation, the maximum / minimum value is calculated to obtain the sequence value of each row of data, the watermark coding sequence value is extracted, and the sequence value and the watermark coding sequence value pair are recorded. The watermark coding information is obtained by statistics, and the watermark information is restored by combining the watermark coding method.

[0078] In some embodiments, step 301, determining the sequence pair of each row of data in the second data set, can be implemented by the following steps:

[0079] Step A1: Calculate the character string corresponding to each field in each row of data in the second data set.

[0080] Here, calculating the string corresponding to each field in each row of data in the second data set includes: determining the embedded bit; removing the embedded bit data of each field to obtain the first data of each field; encrypting the first data of each field to obtain the string corresponding to each field.

[0081] Step A2: Based on the character string corresponding to each field, determine the second field in each row of data where the watermark information has been embedded.

[0082] Here, based on the character string corresponding to each field, determining the second field in each row of data in which the watermark information has been embedded includes: sorting the character string corresponding to each field to obtain sorted data; determining that the field corresponding to the data satisfying the first condition in the sorted data is the second field; wherein the data satisfying the first condition includes data corresponding to the maximum value in the sorted data, or data corresponding to the minimum value in the sorted data.

[0083] Step A3: Obtain a preset remainder value.

[0084] Step A4: Determine that the value obtained by taking the modulus of the character string corresponding to the second field in each row of data and the modulus value is the sequence value in the sequence pair.

[0085] Step A5: Determine that the bit value corresponding to the jth bit in the character string corresponding to the second field is the watermark encoding bit value in the sequence pair.

[0086] Among them, j is equal to the sequence value and j is a positive integer.

[0087] under, Figure 4 This is an exemplary application of the watermark embedding solution of the present application in a practical application scenario, such as Figure 4 As shown:

[0088] Step 401: perform a specific transformation on each field of each row of data and then sort them, and calculate the sequence value of each row of data and the field to be embedded.

[0089] First, the specific transformation refers to the removal of embedded bit data from the content of each field, and the use of key information to calculate the field content to obtain a value. The calculation method is not limited to HMAC, stream cipher encryption, etc. The use of key information can make it impossible to calculate the sequence value without the key even if the calculation rules are understood, and thus the watermark information cannot be restored.

[0090] Secondly, sort the values ​​and select the minimum value (which can also be the maximum value), and then take the remainder to get the sequence value. The remainder value is determined by the watermark encoding method and is set to a fixed value (such as 60, 100, 1000, etc.). The encoding method includes but is not limited to using hexadecimal encoding to form a byte stream, using the Chinese remainder theorem to form a fragment value, etc.

[0091] Finally, the field where the minimum value is located is the field to be embedded in the row; at the same time, according to the sequence value, the watermark coding sequence value corresponding to the watermark coding information is taken out.

[0092] It should be noted that the original data set is shown in Table 1.

[0093] time msg_id …… rtt_id 20220227165941 178689490 …… 96001057 20220227165943 177105056 …… 92001002 20220227165942 177105088 …… 92005310 …… …… …… …… 20220227170142 177105028 …… 92001002

[0094] Table 1

[0095] Exemplarily, the calculation is performed on the first row of data of the original data set in Table 1, assuming that the calculation method uses HMAC, the key is "cmcc", and the embedded bit is the last bit.

[0096] Then, after removing the embedded bit data, "20220227165941", "178689490", and "96001057" are converted into "2022022716594", "17868949", and "9600105". After HMAC calculation, we get "0ad4a42a530110b5088ecf9258b9c353", "b7a8534f2bf296e4be00b46be5f32b0b", and "86d4e524e8f999cbe618107ea7c514d5". After sorting, we take the minimum value, which is "0ad4a42a530110b5088ecf9258b9c353". That is, the field corresponding to "20220227165941" is the field to be embedded in the first row of data, and the watermark information encoding sequence value will be embedded in the field corresponding to "20220227165941".

[0097] Assume that the watermark encoding method is to convert to a decimal byte stream, the remainder value is 60, and the watermark information encoding sequence value and the remainder value are modulo operation to obtain the sequence value "26".

[0098] Step 402: embed the watermark information encoding sequence value into the field to be embedded according to the watermark information encoding sequence value corresponding to the row of data and the field information to be embedded.

[0099] A specific implementation method may be, assuming that the watermark information is "cmri0702", the watermark encoding method is to convert it into a decimal byte stream "7164508378322383268", and according to the remainder value 60, the byte stream is filled with "0000000000000000000000000000000000000000000007164508378322383268"; then, the watermark encoding sequence value corresponding to the sequence value 26 is "0". Finally, the watermark encoding sequence value, that is, 0, is embedded into the data whose embedding bit has been removed in the field to be embedded.

[0100] That is, the first row of data in the original data set:

[0101] 20220227165941 178689490……96001057

[0102] After embedding the watermark code sequence value, it is updated to:

[0103] 20220227165940 178689490……96001057

[0104] Further, the main steps of the watermark extraction scheme are:

[0105] Step B1: perform a specific transformation on each field of each row of data and then sort them, calculate the sequence value of each row of data, extract the watermark coding sequence value, and record the sequence value and watermark coding sequence value pair.

[0106] It should be noted that the watermark extraction scheme uses the same calculation method as the watermark embedding method.

[0107] Exemplarily, for the first row of data in the data set after the watermark coding sequence value is embedded, HMAC is used, the key is "cmcc", the embedded bit is the last bit, and the watermark encoding method is converted to a decimal byte stream with a remainder value of 60: after removing the embedded bit data, "20220227165941", "178689490", and "96001057" are converted into "2022022716594", "17868949", and "9600105". After HMAC calculation, we get "0ad4a42a530110b5088ecf9258b9c353", "b7a8534f2bf296e4be00b46be5f32b0b", "86d4e524e8f999cbe618107ea7c514d5", sort them and get the minimum value "0ad4a42a530110b5088ecf9258b9c353". That is, "20220227165940" is the field to be embedded in this row. The modulus operation is performed on the data corresponding to the field to be embedded and the modulus value, and the sequence value is "26". The watermark code sequence value obtained by the embedded bit is "0", and the sequence value and watermark code sequence value pair are {26, 0}.

[0108] Step B2: Statistically obtain watermark encoding information, and restore the watermark information in combination with the watermark encoding method.

[0109] For the same sequence value, the watermark coding sequence value is obtained by counting method. All watermark coding sequence values ​​are combined with the watermark coding method to restore the watermark information.

[0110] The embodiment of the present application provides a watermark information processing device, which can be used to implement Figures 1 to 3 A corresponding embodiment provides a method for processing watermark information, referring to Figure 5 As shown, the watermark information processing device 500 includes:

[0111] An acquisition module 501 is used to acquire a first data set and watermark information;

[0112] Processing module 502, used to calculate the character string corresponding to each field in each row of data in the first data set;

[0113] The processing module 502 is further used to determine the first field to be embedded with watermark information in each row of data based on the character string corresponding to each field;

[0114] The processing module 502 is further used to determine the watermark encoding bit value corresponding to each line of data based on the character string and watermark information corresponding to each field;

[0115] The processing module 502 is further configured to embed the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain an embedded second data set.

[0116] In other embodiments of the present application, the processing module 502 is used to determine a sequence pair for each row of data in the second data set; wherein the sequence pair includes a sequence value corresponding to each row of data and a watermark encoding bit value corresponding to each row of data;

[0117] The processing module 502 is used to restore the watermark information based on the sequence pair of each row of data.

[0118] In other embodiments of the present application, the processing module 502 is used to determine the embedding position;

[0119] The processing module 502 is further used to remove the embedded bit data of each field to obtain the first data of each field;

[0120] The processing module 502 is further used to encrypt the first data of each field to obtain a character string corresponding to each field.

[0121] In other embodiments of the present application, the processing module 502 is used to sort the character strings corresponding to each field to obtain sorted data;

[0122] The processing module 502 is further used to determine that the field corresponding to the data satisfying the first condition in the sorted data is the first field; wherein the data satisfying the first condition includes the data corresponding to the maximum value in the sorted data, or the data corresponding to the minimum value in the sorted data.

[0123] In other embodiments of the present application, the acquisition module 501 is used to obtain a preset remainder value;

[0124] The processing module 502 is used to encode the watermark information to obtain a first encoding result;

[0125] The processing module 502 is further used to modulo the string corresponding to the first field in each row of data and the modulo value to obtain the sequence value corresponding to each row of data;

[0126] The processing module 502 is further used to fill the first coding result to obtain a second coding result; wherein the number of bits of the second coding result is the same as the number of bits of the remainder value;

[0127] The processing module 502 is further configured to determine a watermark coding bit value based on the sequence value and the second coding result.

[0128] In other embodiments of the present application, the processing module 502 is used to determine that the bit value corresponding to the i-th bit in the second encoding result is the watermark encoding bit value; wherein i is equal to the sequence value, and i is a positive integer.

[0129] In other embodiments of the present application, the processing module 502 is used to calculate the character string corresponding to each field in each row of data in the second data set;

[0130] A processing module 502 is used to determine the second field in each row of data where watermark information is embedded based on the character string corresponding to each field;

[0131] An acquisition module 501 is used to acquire a preset remainder value;

[0132] Processing module 502, used to determine that a value obtained by performing modulo operation on the character string corresponding to the second field in each row of data and the modulo value is a sequence value in the sequence pair;

[0133] The processing module 502 is used to determine that the bit value corresponding to the jth bit in the character string corresponding to the second field is the watermark encoding bit value in the sequence pair; wherein j is equal to the sequence value and j is a positive integer.

[0134] In other embodiments of the present application, the processing module 502 is used to determine the embedding position;

[0135] A processing module 502 is used to remove the embedded bit data of each field to obtain the first data of each field;

[0136] The processing module 502 is used to encrypt the first data of each field to obtain a character string corresponding to each field.

[0137] In other embodiments of the present application, the processing module 502 is used to sort the character strings corresponding to each field to obtain sorted data;

[0138] Processing module 502 is used to determine that the field corresponding to the data satisfying the first condition in the sorted data is the second field; wherein the data satisfying the first condition includes data corresponding to the maximum value in the sorted data, or data corresponding to the minimum value in the sorted data.

[0139] The description of the above device embodiment is similar to the description of the above method embodiment, and has similar beneficial effects as the method embodiment. For technical details not disclosed in the device embodiment of the present application, please refer to the description of the method embodiment of the present application for understanding.

[0140] It should be noted that in the embodiments of the present application, if the above-mentioned watermark information processing method is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiment of the present application can be essentially or partly embodied in the form of a software product that contributes to the relevant technology. The computer software product is stored in a storage medium, including several instructions for a terminal device to execute all or part of the methods of each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a magnetic disk or an optical disk. In this way, the embodiments of the present application are not limited to any specific combination of hardware and software.

[0141] Figure 6 600 is a schematic structural diagram of an electronic device 600 provided in an embodiment of the present application. The communication device can be a device for processing watermark information. Figure 6 The electronic device 600 shown includes a first processor 610, and the first processor 610 can call and run a computer program from a memory to implement the method in the embodiment of the present application.

[0142] Alternatively, if Figure 6 As shown, the electronic device 600 may further include a first memory 620. The first processor 610 may call and run a computer program from the first memory 620 to implement the method in the embodiment of the present application.

[0143] The first memory 620 may be a separate device independent of the first processor 610 , or may be integrated into the first processor 610 .

[0144] Alternatively, if Figure 6 As shown, the electronic device 600 may further include a transceiver 630, and the first processor 610 may control the transceiver 630 to communicate with other devices, specifically, may send information or data to other devices, or receive information or data sent by other devices.

[0145] The transceiver 630 may include a transmitter and a receiver. The transceiver 630 may further include an antenna, and the number of the antennas may be one or more.

[0146] Optionally, the electronic device 600 may specifically be a watermark information processing device of the embodiment of the present application, and the electronic device 600 may implement the corresponding processes implemented by the watermark information processing device in each method of the embodiment of the present application, which will not be described in detail here for the sake of brevity.

[0147] Figure 7It is a schematic structural diagram of the chip of an embodiment of the present application. Figure 7 The chip 700 shown includes a second processor 710, which can call and run a computer program from a memory to implement the method in the embodiment of the present application.

[0148] Alternatively, if Figure 7 As shown, the chip 700 may further include a second memory 720. The second processor 710 may call and run a computer program from the second memory 720 to implement the method in the embodiment of the present application.

[0149] The second memory 720 may be a separate device independent of the second processor 710 , or may be integrated into the second processor 710 .

[0150] Optionally, the chip 700 may further include an input interface 730. The second processor 710 may control the input interface 730 to communicate with other devices or chips, and specifically, may obtain information or data sent by other devices or chips.

[0151] Optionally, the chip 700 may further include an output interface 740. The second processor 710 may control the output interface 740 to communicate with other devices or chips, and specifically, may output information or data to other devices or chips.

[0152] Optionally, the chip can be applied to the watermark information processing device / electronic device in the embodiments of the present application, and the chip can implement the corresponding processes implemented by the watermark information processing device / electronic device in each method of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0153] It should be understood that the chip mentioned in the embodiments of the present application can also be called a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.

[0154] It should be understood that the processor of the embodiment of the present application may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method embodiment can be completed by the hardware integrated logic circuit or software instructions in the processor. The above processor can be a general processor, a digital signal processor (Digital Signal Processor, DSP), an application-specific integrated circuit (Application Specific Integrated Circuit, ASIC), a field programmable gate array (Field Programmable Gate Array, FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. The general processor can be a microprocessor or the processor can also be any conventional processor. The steps of the method disclosed in the embodiment of the present application can be directly embodied as a hardware decoding processor to perform, or the hardware and software modules in the decoding processor are combined and performed. The software module can be located in a random access memory, a flash memory, a read-only memory, a programmable read-only memory or an electrically erasable programmable memory, a register, and other mature storage media in the art. The storage medium is located in the memory, and the processor reads the information in the memory and completes the steps of the above method in combination with its hardware.

[0155] As an embodiment, the processor may include one or more general-purpose central processing units (CPUs). Each of these processors may be a single-core (single-CPU) processor or a multi-core (multi-CPU) processor. The processor here may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer execution instructions).

[0156] It can be understood that the memory in the embodiments of the present application can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a ROM, a programmable read-only memory (Programmable ROM, PROM), an erasable programmable read-only memory (Erasable PROM, EPROM), an electrically erasable programmable read-only memory (Electrically EPROM, EEPROM) or a flash memory. The volatile memory can be a random access memory (Random Access Memory, RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM), and direct memory bus random access memory (DR RAM). It should be noted that the memory of the systems and methods described herein is intended to include, but is not limited to, these and any other suitable types of memory.

[0157] It should be understood that the above-mentioned memory is exemplary but not restrictive. For example, the memory in the embodiments of the present application may also be static random access memory (static RAM, SRAM), dynamic random access memory (dynamic RAM, DRAM), synchronous dynamic random access memory (synchronous DRAM, SDRAM), double data rate synchronous dynamic random access memory (double data rate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (synch link DRAM, SLDRAM) and direct memory bus random access memory (Direct Rambus RAM, DR RAM), etc. That is to say, the memory in the embodiments of the present application is intended to include but not limited to these and any other suitable types of memory.

[0158] An embodiment of the present application also provides a computer-readable storage medium for storing a computer program.

[0159] The computer-readable storage medium can be applied to the watermark information processing device / electronic device in the embodiments of the present application, and the computer program enables the computer to execute the corresponding processes implemented by the watermark information processing device / electronic device in the various methods of the embodiments of the present application. For the sake of brevity, they will not be repeated here.

[0160] The embodiment of the present application also provides a computer program product, including a computer program, which can be executed by a processor of the electronic device 600 to complete the steps of any of the aforementioned methods.

[0161] In the above embodiments, all or part of the embodiments may be implemented by software, hardware, firmware or any combination thereof. When implemented by software, all or part of the embodiments may be implemented in the form of a computer program product.

[0162] The computer program product includes one or more computer instructions. When loading and executing the computer program instructions on a computer, the process or function according to the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instruction can be stored in a computer-readable storage medium, or transmitted from a computer-readable storage medium to another computer-readable storage medium. For example, the computer instruction can be transmitted from a website site, a computer, a server, or a data center by wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) mode to another website site, computer, server, or data center. The computer-readable storage medium can be any available medium that a computer can store or a data storage device such as a server, a data center, etc. that includes one or more available media integration. Available media can be magnetic media, (e.g., floppy disk, hard disk, tape), optical media (e.g., DVD), or semiconductor media (e.g., solid-state hard disk (SSD)), etc.

[0163] The above is a detailed introduction to the watermark information processing method, watermark information processing device, electronic device, computer-readable storage medium and computer program product provided in the embodiments of the present application. Specific examples are used in this article to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea; at the same time, for general technical personnel in this field, according to the idea of ​​the present application, there will be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as a limitation on the present application.

[0164] It should be understood that the "one embodiment" or "an embodiment" or "an embodiment of the present application" or "the aforementioned embodiment" or "some implementations" or "some embodiments" mentioned throughout the specification means that the specific features, structures or characteristics related to the embodiment are included in at least one embodiment of the present application. Therefore, "in one embodiment" or "in an embodiment" or "an embodiment of the present application" or "the aforementioned embodiment" or "some implementations" or "some embodiments" appearing throughout the specification do not necessarily refer to the same embodiment. In addition, these specific features, structures or characteristics can be combined in one or more embodiments in any suitable manner. It should be understood that in various embodiments of the present application, the size of the sequence number of the above-mentioned processes does not mean the order of execution, and the execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiment of the present application. The above-mentioned sequence numbers of the embodiments of the present application are only for description and do not represent the advantages and disadvantages of the embodiments.

[0165] Unless otherwise specified, the watermark information processing device / electronic device performs any step in the embodiments of the present application, and the processor of the watermark information processing device / electronic device may perform the step. Unless otherwise specified, the embodiments of the present application do not limit the order in which the watermark information processing device / electronic device performs the following steps. In addition, the methods used to process data in different embodiments may be the same method or different methods.

[0166] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as: multiple units or components can be combined, or can be integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the components shown or discussed can be through some interfaces, and the indirect coupling or communication connection of the devices or units can be electrical, mechanical or other forms.

[0167] The units described above as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units; they may be located in one place or distributed on multiple network units; some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0168] In addition, all functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may be a separate unit, or two or more units may be integrated into one unit; the above-mentioned integrated units may be implemented in the form of hardware or in the form of hardware plus software functional units.

[0169] The methods disclosed in the several method embodiments provided in this application can be arbitrarily combined without conflict to obtain a new method embodiment. The features disclosed in the several product embodiments provided in this application can be arbitrarily combined without conflict to obtain a new product embodiment. The features disclosed in the several method or device embodiments provided in this application can be arbitrarily combined without conflict to obtain a new method embodiment or device embodiment.

[0170] A person of ordinary skill in the art can understand that all or part of the steps of implementing the above method embodiment can be completed by hardware related to program instructions, and the aforementioned program can be stored in a computer storage medium. When the program is executed, it executes the steps of the above method embodiment; and the aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROM, magnetic disks or optical disks.

[0171] Alternatively, if the above-mentioned integrated unit of the present application is implemented in the form of a software function module and sold or used as an independent product, it can also be stored in a computer storage medium. Based on such an understanding, the technical solution of the embodiment of the present application can be essentially or partly embodied in the form of a software product that contributes to the relevant technology. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as mobile storage devices, ROMs, magnetic disks, or optical disks.

[0172] As used in the embodiments of the present application and the appended claims, the singular forms "a," "an," "said," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise.

[0173] It should be noted that in each embodiment involved in the present application, all steps may be executed or part of the steps may be executed as long as a complete technical solution can be formed.

[0174] The above is only an implementation method of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.

Claims

1. A method for processing watermark information, characterized in that: The method comprises: Obtaining a first data set and watermark information; Calculate the character string corresponding to each field in each row of data in the first data set; Based on the character string corresponding to each field, determining the first field to be embedded with watermark information in each row of data; Determine the watermark encoding bit value corresponding to each line of data based on the character string corresponding to each field and the watermark information; The watermark encoding bit value corresponding to each row of data is embedded in the corresponding first field to obtain an embedded second data set.

2. The method according to claim 1, characterized in that The method further comprises: Determine a sequence pair for each row of data in the second data set; wherein the sequence pair includes a sequence value corresponding to each row of data and a watermark encoding bit value corresponding to each row of data; The watermark information is restored based on the sequence pairs of each row of data.

3. The method according to claim 1, characterized in that The calculating the character string corresponding to each field in each row of data in the first data set includes: Determine the embedding position; Remove the embedded bit data of each field to obtain the first data of each field; The first data of each field is encrypted to obtain a character string corresponding to each field.

4. The method according to claim 1, characterized in that: The determining, based on the character string corresponding to each field, the first field to be embedded with watermark information in each line of data comprises: Sort the strings corresponding to each field to obtain sorted data; Determine that the field corresponding to the data satisfying the first condition in the sorted data is the first field; wherein the data satisfying the first condition includes data corresponding to the maximum value in the sorted data, or data corresponding to the minimum value in the sorted data.

5. The method according to claim 1, characterized in that The step of determining the watermark information encoding bit value based on the character string and the watermark information includes: Get the preset remainder value; Encoding the watermark information to obtain a first encoding result; Modulo the string corresponding to the first field in each row of data and the modulo value to obtain a sequence value corresponding to each row of data; Filling the first encoding result to obtain a second encoding result; wherein the number of bits of the second encoding result is the same as the number of bits of the remainder value; The watermark coding bit value is determined based on the sequence value and the second encoding result.

6. The method according to claim 5, characterized in that The determining the watermark coding bit value based on the sequence value and the second coding result includes: Determine that the bit value corresponding to the i-th bit in the second encoding result is the watermark encoding bit value; wherein, i is equal to the sequence value, and i is a positive integer.

7. The method according to claim 2, characterized in that The determining of the sequence pair of each row of data in the second data set comprises: Calculate the character string corresponding to each field in each row of data in the second data set; Based on the character string corresponding to each field, determining the second field in each row of data in which the watermark information is embedded; Get the preset remainder value; Determine a value obtained by performing modulo calculation on the character string corresponding to the second field in each row of data and the modulo value as a sequence value in the sequence pair; Determine that the bit value corresponding to the j-th bit in the character string corresponding to the second field is the watermark encoding bit value in the sequence pair; wherein j is equal to the sequence value and is a positive integer.

8. The method according to claim 7, characterized in that The calculating the character string corresponding to each field in each row of data in the second data set includes: Determine the embedding position; Remove the embedded bit data of each field to obtain the first data of each field; The first data of each field is encrypted to obtain a character string corresponding to each field.

9. The method according to claim 7, characterized in that: The step of determining the second field in each row of data in which the watermark information is embedded based on the character string corresponding to each field includes: Sort the strings corresponding to each field to obtain sorted data; Determine that the field corresponding to the data satisfying the first condition in the sorted data is the second field; wherein the data satisfying the first condition includes data corresponding to the maximum value in the sorted data, or data corresponding to the minimum value in the sorted data.

10. A watermark information processing device, characterized in that: The watermark information processing device comprises: An acquisition module, used to acquire a first data set and watermark information; A processing module, used for calculating the character string corresponding to each field in each row of data in the first data set; The processing module is further used to determine the first field to be embedded with watermark information in each line of data based on the character string corresponding to each field; The processing module is further used to determine the watermark encoding bit value corresponding to each line of data based on the character string corresponding to each field and the watermark information; The processing module is further used to embed the watermark encoding bit value corresponding to each row of data into the corresponding first field to obtain the embedded second data set.

11. An electronic device, characterized in that: The electronic device comprises: A memory for storing executable instructions; A processor is used to implement the watermark information processing method according to any one of claims 1 to 9 when executing the executable instructions stored in the memory.

12. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores one or more programs, and the one or more programs can be executed by one or more processors to implement the watermark information processing method according to any one of claims 1 to 9.

13. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, the method for processing watermark information according to any one of claims 1 to 9 is implemented.

Citation Information

Patent Citations

  • Watermark embedding method, tracing method and device for structured database

    CN114356919A

  • Database watermark processing method and device, equipment and storage medium

    CN115114599A

  • Information processing method and device, equipment and storage medium

    CN115965516A

  • Watermark embedding method and device for structured data, extraction method and device and storage medium

    CN118133300A

  • Database watermark embedding method and device, equipment and medium

    CN118296575A