Database data watermark adding and tracing method, system and device and medium
By combining explicit and implicit watermark methods in relational databases, unique codes and encrypted ciphertexts are generated, and the problem of watermarks being easily discovered or lost is solved, and reliable rights confirmation and traceability after data leakage is achieved, reducing the cost of transformation.
Patent Information
- Application Number
- CN202510956049.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2025-08-29
AI Technical Summary
The prior art method of adding data watermarks to relational databases is easily discovered or lost, making it difficult to confirm and trace the property after data leakage, and the transformation cost is high.
Using a combination of explicit watermarks and implicit watermarks, we use the method of combining fields that determine the uniqueness of the data and will not be changed, and add plaintext watermarks and add salt to generate a unique code. This is used as the key fields of the data table. The plaintext watermark and the unique code are combined and symmetric encryption is generated to generate an encrypted ciphertext, split into invisible strings and insert non-key fields, and control the number of rows of the watermark with the amount of data.
It improves the complexity of watermark removal, ensures that rights confirmation and traceability can be reliably carried out after data leakage, reduces the cost of transformation, and reduces the storage cost of implicit watermarks.
Smart Images

Figure CN120561900A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and in particular to a method, system, device and medium for adding and tracing data watermarks to a database. Background Art
[0002] With the rapid development of information technology, enterprise data security has become increasingly important. Data watermarking has become widely used to verify ownership and trace data after a breach. Currently, data watermarking in relational databases is typically done through pseudo-rows, pseudo-columns, or by adding invisible strings to fields. Pseudo-rows require additional rows, impacting the total number of data and quality. Pseudo-columns require additional columns, making them more noticeable. Adding invisible strings to fields can easily lead to data loss after data governance.
[0003] The explicit watermark is a unique code for data and is used in table association. The modification cost is high when the data volume is large.
[0004] The implicit watermark contains the explicit watermark. The watermark information in each line is inconsistent, making it difficult to find a pattern to crack it. In addition, the implicit watermark is inserted in alternate lines in the form of invisible characters, which is also difficult to detect.
[0005] Therefore, how to improve the complexity of watermark removal in relational databases and improve the verifiability and traceability of data after leakage is a technical problem that needs to be solved urgently. Summary of the Invention
[0006] The technical task of the present invention is to provide a method, system, device and medium for adding and tracing data watermarks in a database to solve the problem of how to improve the complexity of watermark removal in a relational database and improve the authenticity and traceability of data after leakage.
[0007] The technical task of the present invention is achieved in the following manner: a method for adding watermarks to and tracing the source of data in a database, the method being specifically as follows:
[0008] Adding explicit watermarks: Combine fields in a relational database table that determine data uniqueness and do not change, add a plaintext watermark and salt, and then encrypt it with MD5 to generate a unique code. The unique code is used as the key field of the data table.
[0009] Adding implicit watermark: The plaintext watermark to be added is combined with the unique code and then encrypted using a symmetric encryption algorithm to generate ciphertext. The number of rows to be added to the watermark is controlled based on the amount of data.
[0010] Explicit watermark tracing: Obtain the traceability content of the fields that determine data uniqueness in the leaked data, generate a new unique code by adding an explicit watermark, or obtain a unique code from the local database based on key information, and compare the unique code with the leaked data to see if it is consistent;
[0011] Implicit watermark tracing: Based on the tracing content of non-critical fields in the leaked data and the partial data corresponding to the leaked data in the local database, determine whether the leaked data is a local leak and complete the tracing.
[0012] As a preferred method, when adding a hidden watermark, if the number of non-key fields in the data table is N, the encrypted ciphertext is split into N parts, and then the N parts of the ciphertext are converted into invisible strings. The invisible strings are inserted after the non-key fields in the data table in the order of fields. When the non-key fields change, the previous watermark is removed and a new hidden watermark is generated and reinserted to avoid the loss of local watermarks.
[0013] In this case, the invisible string refers to a zero-width string.
[0014] Preferably, the fields that will not change include a creation time field;
[0015] The plaintext watermark to be added includes data ownership information.
[0016] Preferably, the implicit watermark traceability is as follows:
[0017] Obtaining leaked data;
[0018] Obtain the traceability content of non-key fields in the leaked data and extract the invisible strings contained in the traceability content of non-key fields;
[0019] Convert the invisible string into encrypted ciphertext, and combine the encrypted ciphertext M1 according to the field insertion order when adding the hidden watermark;
[0020] Obtain the partial data corresponding to the leaked data in the local database through the key field, convert the invisible string in the peer data into encrypted ciphertext, and assemble the encrypted ciphertext M2 according to the field insertion order when adding the implicit watermark;
[0021] Compare the matching degree of encrypted ciphertext M1 and encrypted ciphertext M2:
[0022] If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree.
[0023] Decrypt the encrypted ciphertext M1 to obtain the plaintext watermark and data unique code. Combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak and complete the traceability.
[0024] A data watermarking and source tracing system for a database, the system comprising:
[0025] The explicit watermark adding module is used to combine the fields in the data table of the relational database that determine the uniqueness of the data and will not change, add the plaintext watermark and salt, and then encrypt it through MD5 to generate a unique code. The unique code is used as the key field of the data table;
[0026] The implicit watermark adding module is used to combine the plaintext watermark to be added with the unique code and generate the encrypted ciphertext through the symmetric encryption algorithm, and control the number of rows to add the watermark according to the amount of data;
[0027] The explicit watermark traceability module is used to obtain the traceability content of the fields in the leaked data that determine the data uniqueness, generate a new unique code by adding an explicit watermark, or obtain a unique code from the local database based on key information, and compare the unique code with the leaked data to see if it is consistent;
[0028] The implicit watermark tracing module is used to determine whether the leaked data is a local leak based on the tracing content of non-key fields in the leaked data and the partial data corresponding to the leaked data in the local database, and complete the tracing.
[0029] Preferably, the implicit watermark adding module includes:
[0030] The non-key field determination submodule is used to determine the non-key fields of the data table;
[0031] The ciphertext generation submodule is used to combine the plaintext watermark and the unique code field content and generate the encrypted ciphertext through symmetric encryption;
[0032] The splitting submodule is used to split the encrypted ciphertext into N parts according to the non-key fields in the data table being N;
[0033] The conversion submodule is used to convert N ciphertexts into invisible strings;
[0034] The insert submodule is used to insert invisible strings into the back of non-key fields in the data table in field order. When non-key fields change, the previous watermark is removed and a new invisible watermark is generated and reinserted to avoid local watermark loss.
[0035] In this case, the invisible string refers to a zero-width string.
[0036] Preferably, the implicit watermark traceability module includes:
[0037] Acquisition submodule, used to obtain leaked data;
[0038] The non-key field extraction submodule is used to obtain the traceability content of non-key fields in the leaked data and extract the invisible strings contained in the traceability content of non-key fields;
[0039] The conversion and insertion submodule 1 is used to convert the invisible string into encrypted ciphertext and assemble the encrypted ciphertext M1 according to the field insertion order when adding the implicit watermark;
[0040] The second conversion and insertion submodule is used to obtain the partial data corresponding to the leaked data in the local database through the key field, convert the invisible string in the peer data into encrypted ciphertext, and assemble the encrypted ciphertext M2 according to the field insertion order when adding the implicit watermark;
[0041] The matching comparison submodule is used to compare the matching degree between the encrypted ciphertext M1 and the encrypted ciphertext M2:
[0042] If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree.
[0043] The decryption submodule is used to decrypt the encrypted ciphertext M1, obtain the plaintext watermark and data unique code, and combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak and complete the traceability.
[0044] An electronic device comprising: a memory and at least one processor;
[0045] Wherein, the memory stores a computer program;
[0046] The at least one processor executes the computer program stored in the memory, so that the at least one processor executes the above-mentioned method for adding data watermarks and tracing the source of the database.
[0047] A computer-readable storage medium stores a computer program, which can be executed by a processor to implement the above-mentioned data watermarking and tracing method for a database.
[0048] The database data watermarking and source tracing method, system, device and medium of the present invention have the following advantages:
[0049] (1) The present invention adds copyright information to the fields that can determine the uniqueness of the data and will not change, and then generates a data unique code as an explicit watermark after adding salt. For the non-key fields in the remaining fields (assuming there are N), the plaintext watermark to be added is encrypted into ciphertext information, the ciphertext information is split into N parts, and then the N parts of information are transcoded into invisible strings and added to the back of the non-key fields as implicit watermarks. By combining the addition of explicit watermarks and implicit watermarks to the data, the cost of data modification is greatly reduced, and the traceability of data after leakage is guaranteed.
[0050] (2) The present invention adds watermarks to data by using pseudo columns and adding invisible strings to fields. Since pseudo columns are easily discovered, they are simply displayed directly as unique codes. Invisible strings are added to fields as implicit watermarks that complement explicit watermarks, preventing watermark loss after data cleaning.
[0051] (3) The present invention adds data watermarks to database tables by combining explicit and implicit watermarks, ensuring that leaked data can be traced, improving the complexity of watermark removal in relational databases, and enhancing the verifiability and traceability of data after leakage;
[0052] (4) The present invention splits the watermark information into different fields, reducing the amount of invisible character data stored in each field, and adds watermarks every other line, which reduces the storage cost of the implicit watermark and retains the traceability of the watermark. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] The present invention will be further described below with reference to the accompanying drawings.
[0054] Attachment Figure 1 A flowchart for adding an explicit watermark;
[0055] Attachment Figure 2 A flowchart for adding an implicit watermark;
[0056] Attachment Figure 3 This is a flowchart of the explicit watermark traceability process;
[0057] Attachment Figure 4 This is a flowchart of the implicit watermark traceability process. DETAILED DESCRIPTION
[0058] The following is a detailed description of the method, system, device and medium for adding watermarks and tracing the source of data in a database of the present invention with reference to the accompanying drawings and specific embodiments.
[0059] Example 1:
[0060] This embodiment provides a method for adding data watermarks and tracing the source of a database. The method is specifically as follows:
[0061] S1, add explicit watermark;
[0062] S2, adding invisible watermark;
[0063] S3, explicit watermark traceability;
[0064] S4. Implicit watermark tracing: Based on the tracing content of non-key fields in the leaked data and the partial data corresponding to the leaked data in the local database, determine whether the leaked data is a local leak and complete the tracing.
[0065] As attached Figure 1As shown, the adding of explicit watermark in step S1 of this embodiment is specifically as follows:
[0066] S1. Determine the unique field (key field) in the data table;
[0067] S2. Combine the data in the unique field and add the plaintext watermark and salt;
[0068] S3, generate a unique code after MD5 encryption;
[0069] S4. The unique code is used as the key field of the data table.
[0070] As attached Figure 2 As shown, the adding of the implicit watermark in step S2 of this embodiment is specifically as follows:
[0071] S201, determine the non-key fields in the data table, and set the non-key fields in the data table to N;
[0072] S202, combining the plaintext watermark and the unique code field content and generating an encrypted ciphertext through symmetric encryption;
[0073] S203, splitting the encrypted ciphertext into N parts;
[0074] S204, converting the N ciphertexts into invisible strings; wherein the invisible strings are zero-width strings;
[0075] S205. Insert the invisible string after the non-key field in the data table in the order of fields. When the non-key field changes, remove the previous watermark and regenerate the invisible watermark and reinsert it to avoid the loss of the local watermark.
[0076] As attached Figure 3 As shown, the explicit watermark traceability in step S3 of this embodiment is specifically as follows:
[0077] S301, obtaining leaked data;
[0078] S302, obtaining key fields in the leaked data (fields that can determine the uniqueness of the data when generating an explicit watermark);
[0079] S303, obtaining a unique code in the leaked data;
[0080] S304, obtaining the unique code in the local database through the key field in the leaked data;
[0081] S305: Compare the unique code with the leaked data to see if they are consistent.
[0082] As attached Figure 4 As shown, the implicit watermark traceability in step S4 of this embodiment is specifically as follows:
[0083] S401, obtaining leaked data;
[0084] S402: Obtain the traceability content of non-key fields in the leaked data, and extract the invisible character strings contained in the traceability content of the non-key fields;
[0085] S403, converting the invisible character string into encrypted ciphertext, and combining the encrypted ciphertext M1 according to the field insertion order when adding the hidden watermark;
[0086] S404, obtaining part of the data corresponding to the leaked data in the local database through the key field, converting the invisible string in the same data into encrypted ciphertext, and combining the encrypted ciphertext M2 according to the field insertion order when adding the hidden watermark;
[0087] S405. Compare the matching degree of the encrypted ciphertext M1 and the encrypted ciphertext M2:
[0088] If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree.
[0089] S406. Decrypt the encrypted ciphertext M1 to obtain the plaintext watermark and data unique code. Combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak, and complete the traceability.
[0090] Example 2:
[0091] This embodiment provides a system for adding watermarks and tracing the source of data in a database, the system comprising:
[0092] The explicit watermark adding module is used to combine the fields in the data table of the relational database that determine the uniqueness of the data and will not change, add the plaintext watermark and salt, and then encrypt it through MD5 to generate a unique code. The unique code is used as the key field of the data table;
[0093] The implicit watermark adding module is used to combine the plaintext watermark to be added with the unique code and generate the encrypted ciphertext through the symmetric encryption algorithm, and control the number of rows to add the watermark according to the amount of data;
[0094] The explicit watermark traceability module is used to obtain the traceability content of the fields in the leaked data that determine the data uniqueness, generate a new unique code by adding an explicit watermark, or obtain a unique code from the local database based on key information, and compare the unique code with the leaked data to see if it is consistent;
[0095] The implicit watermark tracing module is used to determine whether the leaked data is a local leak based on the tracing content of non-key fields in the leaked data and the partial data corresponding to the leaked data in the local database, and complete the tracing.
[0096] The implicit watermark adding module in this embodiment includes:
[0097] The non-key field determination submodule is used to determine the non-key fields of the data table;
[0098] The ciphertext generation submodule is used to combine the plaintext watermark and the unique code field content and generate the encrypted ciphertext through symmetric encryption;
[0099] The splitting submodule is used to split the encrypted ciphertext into N parts according to the non-key fields in the data table being N;
[0100] The conversion submodule is used to convert N ciphertexts into invisible strings;
[0101] The insert submodule is used to insert invisible strings into the back of non-key fields in the data table in field order. When non-key fields change, the previous watermark is removed and a new invisible watermark is generated and reinserted to avoid local watermark loss.
[0102] In this case, the invisible string refers to a zero-width string.
[0103] The implicit watermark traceability module in this embodiment includes:
[0104] Acquisition submodule, used to obtain leaked data;
[0105] The non-key field extraction submodule is used to obtain the traceability content of non-key fields in the leaked data and extract the invisible strings contained in the traceability content of non-key fields;
[0106] The conversion and insertion submodule 1 is used to convert the invisible string into encrypted ciphertext and assemble the encrypted ciphertext M1 according to the field insertion order when adding the implicit watermark;
[0107] The second conversion and insertion submodule is used to obtain the partial data corresponding to the leaked data in the local database through the key field, convert the invisible string in the peer data into encrypted ciphertext, and assemble the encrypted ciphertext M2 according to the field insertion order when adding the implicit watermark;
[0108] The matching comparison submodule is used to compare the matching degree between the encrypted ciphertext M1 and the encrypted ciphertext M2:
[0109] If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree.
[0110] The decryption submodule is used to decrypt the encrypted ciphertext M1, obtain the plaintext watermark and data unique code, and combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak and complete the traceability.
[0111] Example 3:
[0112] This embodiment also provides an electronic device, including: a memory and a processor;
[0113] wherein the memory stores computer-executable instructions;
[0114] The processor executes the computer-executable instructions stored in the memory, so that the processor executes the method for adding data watermarks and tracing the source of a database in any embodiment of the present invention.
[0115] The processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The processor may be a microprocessor or any conventional processor, etc.
[0116] The memory can be used to store computer programs and / or modules. The processor implements various functions of the electronic device by running or executing the computer programs and / or modules stored in the memory, and calling the data stored in the memory. The memory can mainly include a program storage area and a data storage area. The program storage area can store an operating system, at least one application required for a function, etc.; the data storage area can store data created based on the use of the terminal, etc. In addition, the memory can also include high-speed random access memory and non-volatile memory, such as a hard disk, internal memory, a plug-in hard disk, a smart memory card (SMC), a secure digital (SD) card, a flash memory card, at least one disk storage period, a flash memory device, or other volatile solid-state memory devices.
[0117] Example 4:
[0118] This embodiment further provides a computer-readable storage medium storing a plurality of instructions, which are loaded by a processor to cause the processor to execute the database data watermarking and traceability method according to any embodiment of the present invention. Specifically, a system or device equipped with a storage medium can be provided, wherein the storage medium stores software program code that implements the functions of any of the above-described embodiments, and a computer (or CPU or MPU) of the system or device can read and execute the program code stored in the storage medium.
[0119] In this case, the program code itself read from the storage medium can realize the function of any one of the above-mentioned embodiments, and thus the program code and the storage medium storing the program code constitute part of the present invention.
[0120] Examples of storage media for providing program code include floppy disks, hard disks, magneto-optical disks, optical disks (e.g., CD-ROMs, CD-Rs, CD-RWs, DVD-ROMs, DVD-RYMs, DVD-RWs, DVD+RWs), magnetic tapes, non-volatile memory cards, and ROMs. Alternatively, the program code may be downloaded from a server computer via a communications network.
[0121] In addition, it should be clear that the functions of any of the above embodiments can be achieved not only by executing the program code read by the computer, but also by enabling the operating system operating on the computer to complete part or all of the actual operations based on the instructions of the program code.
[0122] In addition, it can be understood that the program code read from the storage medium is written into the memory provided in the expansion board inserted into the computer or into the memory provided in the expansion unit connected to the computer, and then based on the instructions of the program code, the CPU installed on the expansion board or expansion unit is enabled to perform part or all of the actual operations, thereby realizing the functions of any of the above embodiments.
[0123] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the above embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the above embodiments, or replace some or all of the technical features therein with equivalents. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for adding watermarks and tracing the source of data in a database, characterized in that: The method is as follows: Adding explicit watermarks: Combine fields in a relational database table that determine data uniqueness and do not change, add a plaintext watermark and salt, and then encrypt it with MD5 to generate a unique code. The unique code is used as the key field of the data table. Adding implicit watermark: The plaintext watermark to be added is combined with the unique code and then encrypted using a symmetric encryption algorithm to generate ciphertext. The number of rows to be added to the watermark is controlled based on the amount of data. Explicit watermark tracing: Obtain the traceability content of the fields that determine data uniqueness in the leaked data, generate a new unique code by adding an explicit watermark, or obtain a unique code from the local database based on key information, and compare the unique code with the leaked data to see if it is consistent; Implicit watermark tracing: Based on the tracing content of non-critical fields in the leaked data and the partial data corresponding to the leaked data in the local database, determine whether the leaked data is a local leak and complete the tracing.
2. The method for adding watermarks and tracing the source of a database according to claim 1, characterized in that: When adding a hidden watermark, if there are N non-key fields in the data table, the encrypted ciphertext will be split into N parts, and then the N ciphertext parts will be converted into invisible strings. The invisible strings will be inserted after the non-key fields in the data table in field order. When the non-key fields change, the previous watermark will be removed and a new hidden watermark will be generated and reinserted to avoid the loss of local watermarks. In this case, the invisible string refers to a zero-width string.
3. The method for adding watermarks and tracing the source of a database according to claim 1, characterized in that: Fields that will not change include the creation time field; The plaintext watermark to be added includes data ownership information.
4. The method for adding watermarks and tracing the source of a database according to any one of claims 1 to 3, characterized in that: The traceability of implicit watermark is as follows: Obtaining leaked data; Obtain the traceability content of non-key fields in the leaked data and extract the invisible strings contained in the traceability content of non-key fields; Convert the invisible string into encrypted ciphertext, and combine the encrypted ciphertext M1 according to the field insertion order when adding the hidden watermark; Obtain the partial data corresponding to the leaked data in the local database through the key field, convert the invisible string in the peer data into encrypted ciphertext, and assemble the encrypted ciphertext M2 according to the field insertion order when adding the implicit watermark; Compare the matching degree of encrypted ciphertext M1 and encrypted ciphertext M2: If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree. Decrypt the encrypted ciphertext M1 to obtain the plaintext watermark and data unique code. Combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak and complete the traceability.
5. A data watermarking and tracing system for a database, characterized in that: The system includes: The explicit watermark adding module is used to combine the fields in the data table of the relational database that determine the uniqueness of the data and will not change, add the plaintext watermark and salt, and then encrypt it through MD5 to generate a unique code. The unique code is used as the key field of the data table; The implicit watermark adding module is used to combine the plaintext watermark to be added with the unique code and generate the encrypted ciphertext through the symmetric encryption algorithm, and control the number of rows to add the watermark according to the amount of data; The explicit watermark traceability module is used to obtain the traceability content of the fields in the leaked data that determine the data uniqueness, generate a new unique code by adding an explicit watermark, or obtain a unique code from the local database based on key information, and compare the unique code with the leaked data to see if it is consistent; The implicit watermark tracing module is used to determine whether the leaked data is a local leak based on the tracing content of non-key fields in the leaked data and the partial data corresponding to the leaked data in the local database, and complete the tracing.
6. The database data watermarking and tracing system according to claim 5, characterized in that: The implicit watermark adding module includes: The non-key field determination submodule is used to determine the non-key fields of the data table; The ciphertext generation submodule is used to combine the plaintext watermark and the unique code field content and generate the encrypted ciphertext through symmetric encryption; The splitting submodule is used to split the encrypted ciphertext into N parts according to the non-key fields in the data table being N; The conversion submodule is used to convert N ciphertexts into invisible strings; The insert submodule is used to insert invisible strings into the back of non-key fields in the data table in field order. When non-key fields change, the previous watermark is removed and a new invisible watermark is generated and reinserted to avoid local watermark loss. In this case, the invisible string refers to a zero-width string.
7. The database data watermarking and tracing system according to claim 5 or 6, characterized in that: The implicit watermark traceability module includes: Acquisition submodule, used to obtain leaked data; The non-key field extraction submodule is used to obtain the traceability content of non-key fields in the leaked data and extract the invisible strings contained in the traceability content of non-key fields; The conversion and insertion submodule 1 is used to convert the invisible string into encrypted ciphertext and assemble the encrypted ciphertext M1 according to the field insertion order when adding the implicit watermark; The second conversion and insertion submodule is used to obtain the partial data corresponding to the leaked data in the local database through the key field, convert the invisible string in the peer data into encrypted ciphertext, and assemble the encrypted ciphertext M2 according to the field insertion order when adding the implicit watermark; The matching comparison submodule is used to compare the matching degree between the encrypted ciphertext M1 and the encrypted ciphertext M2: If they are completely consistent, the leaked data is traced. The higher the overlap of ciphertext fragments, the higher the matching degree. The decryption submodule is used to decrypt the encrypted ciphertext M1, obtain the plaintext watermark and data unique code, and combine the data unique code and plaintext watermark information to determine whether the leaked data is a local leak and complete the traceability.
8. An electronic device, characterized in that: include: memory and at least one processor; Wherein, the memory stores a computer program; The at least one processor executes the computer program stored in the memory, so that the at least one processor executes the method for adding data watermarks and tracing the source of a database according to any one of claims 1 to 4.
9. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which can be executed by a processor to implement the method for adding data watermarks and tracing the source of a database according to any one of claims 1 to 4.