Watermark encryption method, tracing method and device for digital service

The watermark encryption method for model scores minimizes the impact on their validity by using parity adjustment and fingerprint key matching, enhancing encryption confidentiality and enabling effective traceability.

CN119227091APending Publication Date: 2024-12-31TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202310802452.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-30
Publication Date
2024-12-31

AI Technical Summary

Technical Problem

Traditional watermark encryption methods significantly affect the effectiveness of model scores, which are typically integers with less information, leading to a substantial impact on their validity.

Method used

A watermark encryption method that involves extracting a watermark fingerprint key associated with a customer number, performing consistency matching on target characters, and adjusting the parity of the model score based on a preset adjustment range to minimize the impact on the model score while maintaining encryption confidentiality.

Benefits of technology

The method reduces the impact on model scores during watermarking, enhances their validity, and enables effective traceability without requiring original model score information, with the watermark being difficult to perceive and ensuring good encryption confidentiality.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119227091A_ABST
    Figure CN119227091A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a digital service watermark encryption method and device, and a tracing method and device, and the method comprises the steps: extracting a customer number of a service calling party from a digital service calling request, and extracting a target character from a target account according to a watermark identifier in a watermark fingerprint secret key associated with the customer number; performing consistency matching on each target character and a corresponding matching character set in the watermark fingerprint secret key to obtain a matching result, and performing encryption processing based on parity adjustment on the original model score with a preset adjustment amplitude according to the matching result to obtain a watermark model score, the minimum affine transformation can be implemented on the original model score by presetting the adjustment amplitude, and only the parity of the original model score is adjusted, so that the influence on the model score is reduced, the effectiveness of the model score is improved, the digital watermark in the watermark model score obtained by encryption is difficult to perceive, the encryption secrecy is good, and the user experience is improved. The method can be widely applied to the technical fields of cloud computing, artificial intelligence and the like.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of computer technology, and in particular to a watermark encryption method, a traceability method, and a device for digital services. Background Art

[0002] Digital watermarks are specific digital codes or information added to encrypted data. Their purpose is to provide an invisible protection mechanism for the encrypted data without affecting it. Currently, digital watermarking technology is primarily used in digital information such as audio, images, and QR codes. This type of encrypted data contains a wealth of information, and adding a watermark will not significantly interfere with the validity of the encrypted data.

[0003] However, in the application scenario of model score, when the model score needs to be watermarked and encrypted, since the model score is just an integer and contains less information, the traditional watermark encryption method will significantly affect the effectiveness of the model score. Summary of the Invention

[0004] The following is an overview of the subject matter described in detail in this application. This overview is not intended to limit the scope of protection of the claims.

[0005] The embodiments of the present application provide a watermark encryption method, a traceability method, and a device for digital services, which can reduce the impact on the model score when watermark encryption is performed on the model score and improve the effectiveness of the model score.

[0006] On the one hand, an embodiment of the present application provides a watermark encryption method for a digital service, including:

[0007] Receive a digital service call request, extract a target account to be scored from the digital service call request, invoke a scoring model to score the target account, and obtain an original model score for the target account;

[0008] Extracting the customer number of the service caller from the digital service call request, and obtaining a watermark fingerprint key associated with the customer number, wherein the watermark fingerprint key includes a watermark identifier for indicating multiple matching digits in the target account number, and a matching character set corresponding to each matching digit;

[0009] extracting target characters from the multiple matching positions of the target account according to the watermark identifier, and performing consistency matching on each target character with the corresponding matching character set to obtain a matching result;

[0010] According to the matching result, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

[0011] On the other hand, the embodiment of the present application also provides a watermark traceability method for digital services, including:

[0012] receiving a digital service traceability request, and extracting watermark model scores of multiple target accounts from the digital service traceability request;

[0013] The target accounts for which the watermark model is divided into odd numbers are divided into an odd-numbered set, and the target accounts for which the watermark model is divided into even numbers are divided into an even-numbered set;

[0014] Acquire multiple watermark fingerprint keys respectively associated with different service callers, wherein the watermark fingerprint keys include watermark identifiers for indicating multiple matching bits in the target account, and matching character sets corresponding to the respective matching bits;

[0015] In at least one of the odd-numbered set and the even-numbered set, target characters are extracted from the plurality of matching positions of the target account number according to each of the watermark identifiers, each of the target characters is matched with the corresponding set of matching characters to obtain a matching result, and a target matching rate of each of the watermark identifiers is calculated based on the matching result;

[0016] A target identifier is determined from the multiple watermark identifiers according to the target matching rate, and a service caller associated with the target identifier is used as a tracing result of the watermark model score.

[0017] On the other hand, an embodiment of the present application further provides a watermark encryption device for a digital service, comprising:

[0018] A scoring module is configured to receive a digital service call request, extract a target account to be scored from the digital service call request, and use a scoring model to score the target account to obtain an original model score for the target account;

[0019] a first key acquisition module, configured to extract a customer number of a service caller from the digital service call request, and obtain a watermark fingerprint key associated with the customer number, wherein the watermark fingerprint key includes a watermark identifier for indicating a plurality of matching digits in the target account number, and a matching character set corresponding to each matching digit;

[0020] a first matching module, configured to extract target characters from the plurality of matching positions of the target account according to the watermark identifier, and perform consistency matching on each target character with the corresponding set of matching characters to obtain a matching result;

[0021] The encryption module is used to perform parity adjustment-based encryption processing on the original model score according to the matching result with a preset adjustment range to obtain an encrypted watermark model score.

[0022] Furthermore, the first secret key acquisition module is specifically used to:

[0023] Pre-constructing corresponding watermark identifiers for different customer numbers, wherein the watermark identifier is composed of a plurality of different target matching bit identifiers, each of which is used to indicate a matching bit of the target account number, and the watermark identifiers corresponding to any two customer numbers are different;

[0024] Pre-building a corresponding matching character set for each target matching bit identifier in the watermark identifier;

[0025] Pre-construct watermark fingerprint keys for different customer numbers according to the watermark identifier and the corresponding matching character set, and obtain the watermark fingerprint key associated with the current customer number.

[0026] Furthermore, the first secret key acquisition module is specifically used to:

[0027] Determine the matching bit length of the target account and obtain multiple candidate matching bit identifiers;

[0028] For different customer numbers, multiple target matching bit identifiers corresponding to the matching bit lengths are extracted from multiple candidate matching bit identifiers, and the multiple target matching bit identifiers are spliced ​​to obtain watermark identifiers corresponding to each customer number.

[0029] Furthermore, the first secret key acquisition module is specifically used to:

[0030] Determine the number of first character types in the matching character set corresponding to each target matching bit identifier;

[0031] A plurality of matching characters are extracted from the account character set according to the number of the first character types, and a corresponding matching character set is pre-built for each target matching position identifier based on the plurality of matching characters.

[0032] Furthermore, the first secret key acquisition module is specifically used to:

[0033] determining the number of second character types in the account character set;

[0034] When determining the first number of character types in the matching character set corresponding to each target matching bit identifier, a first probability distribution is generated based on the first number of character types and the second number of character types, in which each target character matches any matching character in the corresponding matching character set, and a second probability distribution is generated in which any target character does not match any matching character in the corresponding matching character set, until the difference between the first probability distribution and the second probability distribution is less than or equal to a preset threshold.

[0035] Furthermore, the encryption module is specifically used to:

[0036] Determine the binary classification function value corresponding to the target account according to the matching result;

[0037] According to the binary classification function value, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

[0038] Furthermore, the encryption module is specifically used to:

[0039] When the matching result is that each of the target characters matches any one of the corresponding matching characters in the set of matching characters, determining the binary classification function value corresponding to the target account as the first value;

[0040] Alternatively, when the matching result is that any one of the target characters does not match any of the matching characters in the corresponding matching character set, the binary classification function value corresponding to the target account is determined to be the second value.

[0041] Furthermore, the encryption module is specifically used to:

[0042] When the binary classification function value is the first value, determining that the watermark model is classified as an odd number;

[0043] If the original model score is an even number, the first preset value is increased or the second preset value is decreased to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score; or, when the original model score is an odd number, the original model score is kept unchanged as the encrypted watermark model score.

[0044] Furthermore, the encryption module is specifically used to:

[0045] When the binary classification function value is the second value, determining that the watermark model is classified as an even number;

[0046] If the original model score is an odd number, the first preset value is increased or the second preset value is decreased to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score; or, when the original model score is an even number, the original model score is kept unchanged as the encrypted watermark model score.

[0047] On the other hand, the embodiment of the present application further provides a watermark traceability device for digital services, including:

[0048] A watermark model score acquisition module, configured to receive a digital service traceability request and extract watermark model scores of multiple target accounts from the digital service traceability request;

[0049] A division module, configured to divide the target accounts whose watermark models are divided into odd numbers into an odd-numbered set, and divide the target accounts whose watermark models are divided into even numbers into an even-numbered set;

[0050] a second key acquisition module, configured to acquire a plurality of watermark fingerprint keys respectively associated with different service callers, wherein the watermark fingerprint keys include a watermark identifier for indicating a plurality of matching bits in the target account, and a matching character set corresponding to each of the matching bits;

[0051] a second matching module configured to extract target characters from the plurality of matching positions of the target account number in at least one of the odd-numbered set and the even-numbered set according to each of the watermark identifiers, perform consistency matching on each of the target characters with the corresponding matching character set to obtain a matching result, and calculate a target matching rate for each of the watermark identifiers according to the matching result;

[0052] The tracing module is used to determine the target identifier from the multiple watermark identifiers according to the target matching rate, and use the service caller associated with the target identifier as the tracing result of the watermark model.

[0053] Furthermore, the second matching module is specifically configured to:

[0054] In the odd-numbered set, target characters are extracted from the multiple matching positions of the target account according to each watermark identifier, and each target character is matched with the corresponding matching character set for consistency, to obtain a matching result of the odd-numbered set;

[0055] In the even-numbered set, target characters are extracted from the multiple matching positions of the target account according to each watermark identifier, and each target character is matched with the corresponding matching character set for consistency, to obtain a matching result of the even-numbered set;

[0056] The target matching rate of each watermark identifier is calculated according to the matching results of the odd-numbered set and the matching results of the even-numbered set.

[0057] Furthermore, the second matching module is specifically configured to:

[0058] Counting the first matching rate of each watermark identifier in the odd-numbered set according to the matching results of the odd-numbered set;

[0059] Counting a second matching rate of each watermark identifier in the even-numbered set according to the matching result of the even-numbered set;

[0060] When the first matching rate is greater than the second matching rate, using the first matching rate as the target matching rate of the watermark identifier;

[0061] When the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate of the watermark identifier.

[0062] Furthermore, the second matching module is specifically configured to:

[0063] sorting the plurality of watermark identifiers in descending order according to the target matching rates, and determining the watermark identifier at the top as the target identifier;

[0064] Alternatively, the plurality of watermark identifiers are sorted in ascending order according to the target matching rates, and the watermark identifier at the last position is determined as the target identifier.

[0065] On the other hand, an embodiment of the present application also provides an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor implements the above-mentioned blockchain data processing method when executing the computer program.

[0066] On the other hand, an embodiment of the present application further provides a computer-readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the above-mentioned blockchain data processing method.

[0067] In another aspect, embodiments of the present application further provide a computer program product, comprising a computer program stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, causing the computer device to implement the aforementioned blockchain data processing method.

[0068] The embodiments of the present application include at least the following beneficial effects: by extracting the customer number of the service caller from the digital service call request, obtaining the watermark fingerprint key associated with the customer number, extracting the target characters from multiple matching bits of the target account according to the watermark identifier in the watermark fingerprint key, and performing consistency matching on each target character with the corresponding matching character set in the watermark fingerprint key to obtain a matching result, and then, based on the matching result, performing parity-adjusted encryption processing on the original model score with a preset adjustment amplitude to obtain an encrypted watermark model score. Therefore, the preset adjustment amplitude can be used to perform the minimum affine transformation on the original model score, and only the parity of the original model score is adjusted, thereby reducing the impact on the model score when the model score is watermarked and improving the validity of the model score. At the same time, since parity is an original characteristic of the original model score, the digital watermark in the encrypted watermark model score is difficult to be perceived and has good encryption confidentiality.

[0069] In addition, when tracing the watermark model score, the target accounts with odd watermark models are divided into odd sets, and the target accounts with even watermark models are divided into even sets. Multiple watermark fingerprint keys associated with different service callers are obtained. In at least one of the odd and even sets, target characters are extracted from multiple matching bits of the target account according to the watermark identifiers in each watermark fingerprint key. Each target character is matched with the corresponding matching character set in the watermark fingerprint key to obtain a matching result. The target matching rate of each watermark identifier is calculated based on the matching result, and the target identifier is determined from the multiple watermark identifiers based on the target matching rate. Since the model score watermark tracing is the inverse process of the aforementioned model score watermark encryption, the corresponding target identifier can be accurately traced by matching with all watermark fingerprint keys and determining the target matching rate. The service caller associated with the target identifier is then used as the traceability result of the watermark model score. At the same time, the traceability process does not require the use of relevant information of the original model score. Therefore, the watermark model score has blind detection, which can effectively simplify the traceability process.

[0070] Other features and advantages of the present application will be set forth in the following description, and in part will be apparent from the description, or may be understood by practicing the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0071] The accompanying drawings are used to provide a further understanding of the technical solution of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the technical solution of the present application and do not constitute a limitation on the technical solution of the present application.

[0072] Figure 1 The digital media type of digital watermark in the related art;

[0073] Figure 2 A schematic diagram of an optional model watermark encryption processing architecture provided in an embodiment of the present application;

[0074] Figure 3 A schematic diagram of an optional implementation environment provided for an embodiment of the present application;

[0075] Figure 4 A schematic diagram of the internal architecture of an optional SAAS model service provided in an embodiment of the present application;

[0076] Figure 5 A schematic diagram of an optional flow chart of a watermark encryption method for a digital service provided in an embodiment of the present application;

[0077] Figure 6 An optional schematic diagram of a watermark fingerprint key provided in an embodiment of the present application;

[0078] Figure 7 Schematic diagram of the process of generating the watermark fingerprint key provided in the embodiment of the present application;

[0079] Figure 8 Another optional schematic diagram of the watermark fingerprint key provided in the embodiment of the present application;

[0080] Figure 9 An optional schematic diagram of obtaining a matching result by performing consistency matching on each target character and a corresponding matching character set provided in an embodiment of the present application;

[0081] Figure 10 An optional schematic diagram of determining the binary classification function value corresponding to the target account according to the matching result provided in an embodiment of the present application;

[0082] Figure 11 A schematic diagram of an optional detailed processing flow of the watermark encryption method for the digital service provided in the embodiment of the present application;

[0083] Figure 12 A schematic diagram of the principle of the watermark encryption method for digital services provided in an embodiment of the present application;

[0084] Figure 13 A schematic diagram of an optional flow chart of a watermark traceability method for a digital service provided in an embodiment of the present application;

[0085] Figure 14 A schematic diagram of the internal architecture of another optional SAAS model service provided in an embodiment of the present application;

[0086] Figure 15 An optional schematic diagram of the reverse deduction process of watermark tracing provided in an embodiment of the present application;

[0087] Figure 16 A schematic diagram of an optional detailed processing flow of a watermark traceability method for a digital service provided in an embodiment of the present application;

[0088] Figure 17 A schematic diagram of the principle of the watermark encryption method for digital services provided in an embodiment of the present application;

[0089] Figure 18 A schematic diagram of the internal architecture of another optional SAAS model service provided in an embodiment of the present application;

[0090] Figure 19 Schematic diagram of data distribution of watermark model scores and original model scores provided in the embodiment of the present application;

[0091] Figure 20 A schematic diagram of an optional structure of a watermark encryption device for a digital service provided in an embodiment of the present application;

[0092] Figure 21 A schematic diagram of an optional structure of a watermark traceability device for a digital service provided in an embodiment of the present application;

[0093] Figure 22 A partial structural block diagram of a terminal provided in an embodiment of the present application;

[0094] Figure 23 A partial structural block diagram of the server provided in an embodiment of the present application. DETAILED DESCRIPTION

[0095] In order to make the purpose, technical solutions and advantages of this application more clear, the following further describes this application in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not intended to limit this application.

[0096] It should be noted that, in each specific embodiment of the present application, when it comes to the need to perform relevant processing based on data related to the characteristics of the target object such as target object attribute information or attribute information set, the permission or consent of the target object will be obtained first, and the collection, use and processing of these data will comply with the relevant laws, regulations and standards of the relevant countries and regions. Among them, the target object can be a user. In addition, when the embodiment of the present application needs to obtain target object attribute information, the target object's separate permission or separate consent will be obtained by means of a pop-up window or jumping to a confirmation page. After clearly obtaining the target object's separate permission or separate consent, the necessary target object-related data for enabling the normal operation of the embodiment of the present application will be obtained.

[0097] To facilitate understanding of the technical solutions provided in the embodiments of the present application, some key terms used in the embodiments of the present application are explained here:

[0098] Cloud computing: Cloud computing is a computing model that distributes computing tasks across a resource pool consisting of a large number of computers, enabling various application systems to access computing power, storage space, and information services as needed. The network that provides these resources is called the "cloud." To users, the resources in the cloud appear infinitely scalable and can be accessed at any time, used on demand, and expanded at any time, with a pay-per-use policy. As a provider of cloud computing infrastructure, a cloud computing resource pool platform is established, deploying various types of virtual resources within the resource pool for external customers to choose from. The cloud computing resource pool primarily includes computing devices (virtualized machines, including operating systems), storage devices, and network equipment.

[0099] Digital watermarking: is a technology that embeds digital signals into digital media. Digital watermarking is achieved by embedding invisible identification information at specific locations in digital media data. This identification information can carry various data such as copyright, author, date, etc. Digital watermarking technology can be applied to a variety of digital media. Figure 1 , Figure 1 Digital watermarking refers to a type of digital media used in related technologies. This includes text, images, audio and video, and QR codes. Digital watermarking technology can effectively protect digital media copyrights and maintain the healthy development of the digital media market. Digital watermarks are typically specific digital codes or information added to media files. Their purpose is to provide an invisible protection mechanism for digital content without affecting the content. Key digital watermarking technologies include code-domain digital watermarking, spatial-domain digital watermarking, and frequency-domain digital watermarking. Code-domain digital watermarking embeds hidden information in the code domain of digital media to achieve copyright protection and content integrity. Code-domain digital watermarking typically requires transforming the digital media content (such as discrete cosine transform or wavelet transform) to achieve optimal results. Spatial-domain digital watermarking embeds hidden information in the spatial domain of the digital media to achieve copyright protection and content integrity. Spatial-domain digital watermarking typically requires minor modifications to the digital media content (such as changing the RGB values ​​of certain pixels) to embed the hidden information. The basic idea of ​​frequency domain digital watermarking is to embed hidden information in the frequency domain of digital media signals. In frequency domain digital watermarking, the process of embedding hidden information usually involves performing certain transformations on the digital media signals (such as fast Fourier transform, discrete cosine transform, wavelet transform, etc.) to facilitate the embedding of hidden information.

[0100] SAAS model service: is a risk control solution based on cloud computing and software as a service (SaaS) model. SAAS model services are provided by professional service providers (such as third-party risk control companies, cloud computing companies, etc.). By analyzing and modeling customers' business data, they predict their business risk capabilities and output corresponding decision-making results. SAAS model services can help companies better identify and manage business risks. SAAS model services generally have the following characteristics: strong flexibility, able to quickly adapt to the needs of different industries and different customers; highly intelligent, using machine learning, deep learning and other technologies to continuously learn and optimize models and improve prediction accuracy; high security, with data encryption, secure transmission and other technologies applied to the entire service process to ensure customer data privacy and security; standardized and modular services to lower the customer usage threshold and improve customer experience.

[0101] The Kolmogorov-Smirnov (KS) statistic is a nonparametric test used to compare the identity of two probability distributions or to verify the conformity of a sample with a theoretical distribution. The KS statistic is calculated based on the distance between the cumulative distribution functions (CDFs) of two probability distributions and measures the degree of difference between the two distributions. In risk management scenarios, the KS statistic is used to assess model discrimination; greater discrimination indicates a stronger risk ranking capability.

[0102] Lift: This is used in binary classification model evaluation to assess the accuracy and superiority of the model by comparing the difference between the model's predictions and random guesses. The larger the lift value, the better the model's predictions.

[0103] The Population Stability Index (PSI) is a metric used to assess the stability between two probability distributions. It is used to monitor the stability of scorecard models over time or across populations, enabling timely detection of scorecard degradation or failure. It is a common metric for assessing model stability. The PSI is calculated based on the cumulative distribution functions (CDFs) of the two probability distributions. A dataset is typically divided into two groups, training and test, based on a specific ratio. The empirical distribution functions (EDFs) of these two data sets are then calculated, and the PSI value is calculated by comparing the difference between the two distribution functions. The PSI value indicates the stability between the two distributions. A smaller PSI value indicates greater stability, while a smaller value indicates a potential problem.

[0104] At present, in the application scenario of model score in related technologies, when the model score needs to be watermarked and encrypted, since the model score is only an integer and contains less information, the watermark encryption method of related technologies will significantly affect the validity of the model score.

[0105] Based on this, the embodiments of the present application provide a watermark encryption method, a traceability method and a device for digital services, which can reduce the impact on the model score when watermarking the model score and improve the effectiveness of the model score.

[0106] Among them, digital services are services provided by combining digital technologies such as cloud technology and artificial intelligence. For example, they can be SAAS model services or other related services, which are not limited in the embodiments of this application.

[0107] Reference Figure 2 , Figure 2 A schematic diagram of an optional processing architecture for watermark encryption of model scores provided in an embodiment of the present application, wherein the implementation environment includes one or more service callers 110 and SAAS model services 120, wherein the SAAS model service 120 includes at least one scoring model 121 and a watermark encryption service model 122, wherein the scoring model 121 is used to score the input account parameters and then output the original model score corresponding to the account parameters, and the watermark encryption service model 122 is used to digitally watermark the original model score to obtain a watermark model score.

[0108] based on Figure 2 In the architecture shown, the service caller 110 is connected to the SAAS model service 120 and can call the SAAS model service 120 to obtain the watermark model score. The specific process is as follows: the service caller 110 applies for the model score calculation service from the SAAS model service 120. The service caller 110 inputs the target account to be scored into the SAAS model service 120. The SAAS model service 120 selects the corresponding scoring model 121 to score the target account to obtain the original model score. The original model score is then input into the watermark encryption service model 122 for digital watermark encryption to obtain the watermark model score, and the watermark model score is returned to the service caller 110. The watermark model score corresponds to the service probability score of the target account. The service caller 110 provides the corresponding level of service to the object corresponding to the account based on the watermark model score.

[0109] The method provided in the embodiments of the present application can be applied to different technical fields, including but not limited to cloud computing, artificial intelligence and other technical fields.

[0110] Reference Figure 3 , Figure 3A schematic diagram of an optional implementation environment provided for an embodiment of the present application, comprising a terminal 201 and a server 202, wherein the terminal 201 and the server 202 are connected via a communication network. In one possible implementation, a SAAS model service runs on the server 202, while a corresponding client runs on the service caller's terminal 201. The client connects to the SAAS model service via the communication network, thereby implementing the model watermark encryption process.

[0111] Server 202 can be a standalone physical server, a server cluster or distributed system consisting of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Furthermore, server 202 can be a node server in a blockchain network.

[0112] The terminal 201 may be a smartphone, tablet computer, laptop computer, desktop computer, smart speaker, smart watch, vehicle-mounted terminal, etc., but is not limited thereto. The terminal 201 and the server 202 may be connected directly or indirectly via wired or wireless communication, which is not limited in this embodiment of the present application.

[0113] In one possible implementation, the SAAS model service may also run on terminal 203. Terminal 203 is similar to terminal 201 and only needs to have the computing power to provide SAAS model services. Terminal 203 and terminal 201 may be directly or indirectly connected via wired or wireless communication, which is not limited in this embodiment of the present application.

[0114] Reference Figure 4 , Figure 4 A schematic diagram of the internal architecture of an optional SAAS model service provided in an embodiment of the present application, wherein the SAAS model service 120 includes: an API interface layer 123, a model service module 124, and a digital watermark service module 125, wherein the model service module 124 stores one or more scoring models 121, and the digital watermark service module 125 includes: a fingerprint key service module 126 and a watermark encryption service model 122.

[0115] based on Figure 4In the architecture shown, the service caller 110 sends a digital service call request through the API interface layer 123 of the SAAS model service 120, and carries the target account to be scored in the digital service call request. Then the API interface layer 123 sends the target account in the digital service call request to the model service module 124. The model service module 124 selects the corresponding scoring model 121 according to the target account to score the target account and obtain the original model score. The model service module 124 then inputs the original model score into the digital watermark service module 125. The fingerprint key service module 126 associates the corresponding watermark fingerprint key according to the customer number of the service caller 110, and then sends the watermark fingerprint key and the original model score to the watermark encryption service model 122 for digital watermark encryption to obtain the watermark model score, and then sends the watermark model score to the service caller 110 through the API interface layer 123.

[0116] The application scenarios of digital watermarking technology in related technologies mainly cover digital information such as audio, images, and QR codes. This type of data to be encrypted contains a very rich amount of information, and adding a watermark will not significantly interfere with the validity of the encrypted data. However, for the application scenario of the model score in the embodiment of the present application, the model score is just an integer, and the amount of information it contains is relatively small. The watermark encryption method of related technologies will significantly affect the validity of the model score. The model score watermark encryption process in the embodiment of the present application can reduce the impact on the model score when watermarking the model score, thereby improving the validity of the model score.

[0117] In one possible implementation, after the SAAS model service 120 obtains the watermark model score, it packages the watermark model score and the target account and returns the packaged content to the service caller 110. If only the watermark model score is returned without the target account, the service caller 110 will not be able to accurately associate the target account with the watermark model score. Therefore, this method can improve the accuracy and efficiency of the model score usage process.

[0118] In one possible implementation, the embodiment of the present application can be applied to any scenario where the output value of a SAAS model service needs to be digitally watermarked and encrypted, and the call return result is a value with parity, including but not limited to financial models such as SAAS risk control model services and SAAS credit qualification model services.

[0119] based on Figure 2 、 Figure 3 and Figure 4 The architecture shown, refer to Figure 5 , Figure 5This is an optional flow chart of a watermark encryption method for a digital service provided in an embodiment of the present application. At least a portion of the process of the watermark encryption method for the digital service can be executed by a server, or by a terminal, or by a terminal and a server in cooperation. The blockchain data processing method includes but is not limited to the following steps 501 to 504.

[0120] Step 501: Receive a digital service call request, extract a target account to be scored from the digital service call request, call a scoring model to score the target account, and obtain an original model score for the target account.

[0121] Among them, the digital service call request is a message request sent by the service caller to access the SAAS model service using the API interface layer, that is, the digital service call request is a message sent by the service caller to the SAAS model service, and the digital service call request contains the target account to be scored. The target account is set by the service caller to distinguish its service objects. Therefore, the target account can be an identification string such as the ID number, object number or mobile phone number of the service object that can be used to distinguish the object. When the service caller needs to obtain the original model score of a service object, it uses the digital service call request to carry the target account of the service object to be scored and sends it to the SAAS model service. The SAAS model service selects a scoring model to score the target account and obtains the original model score of the target account.

[0122] In one possible implementation, the service caller encrypts the target account to protect the privacy of the target and uses the encrypted data as input to the SAAS model service for scoring. This encryption method can be hash encryption, with common hash encryption algorithms including MD5, SHA-1, and SHA-2. This embodiment does not specifically limit the encryption method for the target account.

[0123] For example, if the target account is a mobile phone number and the encryption method is MD5 hashing, the mobile phone number is used as input data, and a fixed-length hash value is generated using the MD5 hashing algorithm. This hash value is used as the target account. The hash value is then input into the SAAS model service using a digital service call request. The hash value is then scored using the scoring model to obtain the target account's original model score. For example, if the mobile phone number is "12345678910," the MD5 hashing algorithm yields a hash value of "1c11a973a6c29b509ea3d57fec9b6eaa." The target account's hash value is a 32-character string. In this process, since hashing is a one-way encryption method and the original data cannot be restored from the hash value, using the hash value of the mobile phone number for calculations prevents the original mobile phone number from being exposed, thus protecting the subject's privacy.

[0124] In one possible implementation, the scoring model is a model used to score the target account, and the scoring model here can be designed according to actual business needs. For example, it includes the following categories: 1) Credit scoring model: aims to derive the credit score of the service object based on the target account. 2) Marketing response model: aims to predict the degree of response of the service object to certain marketing activities. 3) Risk assessment model: mainly used to detect the risk level of the service object. Different scoring models can be distinguished by model numbers. For example, the SAAS model service contains three different scoring models, which are respectively recorded as Model 1, Model 2 and Model 3. It can be understood that the above-mentioned scoring models are only for illustration, and the embodiments of the present application do not make specific limitations on this. At the same time, the SAAS model service of the embodiments of the present application can also include different types of scoring models to meet the scoring requirements of different types of service callers.

[0125] In one possible implementation, the service caller also carries the model number of the scoring model in the digital service call request. After receiving the digital service call request, the embodiment of the present application extracts the target account to be scored from the digital service call request, and then calls the corresponding scoring model to score the target account to obtain the original model score of the target account. The original model score here is the model score without adding a digital watermark.

[0126] Step 502: Extract the customer number of the service caller from the digital service call request, and obtain the watermark fingerprint key associated with the customer number.

[0127] Among them, the digital service call request also includes the customer number of the service caller. Since the service prices of different service callers may be different, the SAAS model service sets different customer numbers for different service callers, and uses the customer numbers to distinguish the service callers. Among them, the digital service call request includes the customer number, and the SAAS model service can determine the source of the digital service call request based on the received customer number. When different service callers call the same scoring model, in order to distinguish them, the embodiment of the present application sets the watermark fingerprint key under the scoring model used for different service callers according to the customer number. The watermark fingerprint key is used to perform digital watermark encryption operations on the model score obtained by the scoring model used. In a possible implementation method, when the same service caller calls different scoring models, in order to distinguish them, the embodiment of the present application can also distinguish the watermark fingerprint key according to the customer number and the model number of the scoring model.

[0128] Reference Figure 6 , which is an optional schematic diagram of the watermark fingerprint key provided in an embodiment of the present application.

[0129] Figure 6The SAAS model service provides services to three service callers, and the SAAS model service contains three different scoring models. The customer numbers of the three service callers are: Customer Number 1, Customer Number 2, and Customer Number 3, and the scoring models include: Model 1, Model 2, and Model 3. The scoring models associated with the service caller of Customer Number 1 are: Model 1 and Model 2, the scoring model associated with the service caller of Customer Number 2 is: Model 1, and the scoring model associated with the service caller of Customer Number 3 is: Model 3. Therefore, the two watermark fingerprint keys of the service caller of Customer Number 1 are expressed as: "Customer Number 1#Model 1" and "Customer Number 1#Model 2", the watermark fingerprint key of the service caller of Customer Number 2 is expressed as: "Customer Number 2#Model 1", and the watermark fingerprint key of the service caller of Customer Number 3 is expressed as: "Customer Number 3#Model 3". It can be seen that the embodiment of the present application can associate a unique and distinguishable watermark fingerprint key with the scoring model of each service caller, thereby effectively increasing the security of the digital watermark encryption process, reducing the possibility of being cracked, and facilitating traceability and statistics on the usage of the watermark model points after digital watermark encryption.

[0130] In one possible implementation, the present invention provides a schematic diagram of a process for obtaining a watermark fingerprint key associated with a customer number, including: first, pre-constructing corresponding watermark identifiers for different customer numbers. The watermark identifiers are composed of multiple different target matching bit identifiers, which are used to indicate the matching bits of the target account. The watermark identifiers corresponding to any two customer numbers are different. Next, pre-constructing a corresponding matching character set for each target matching bit identifier in the watermark identifier. Finally, based on the watermark identifiers and the corresponding matching character sets, the pre-constructed watermark fingerprint keys for different customer numbers are obtained to obtain the watermark fingerprint key associated with the current customer number.

[0131] Reference Figure 7 , Figure 7 The schematic diagram of the watermark fingerprint key generation process provided in the embodiment of the present application takes two customer numbers as an example to illustrate the watermark fingerprint key generation process in the embodiment of the present application. Among them, the watermark identifiers corresponding to customer number 1 and customer number 2 are different. Customer number 1 corresponds to watermark identifier 1. Watermark identifier 1 is composed of n1 different target matching bit identifiers. The target matching bit identifier of watermark identifier 1 is represented as: {x1|x2|...|x n1}, each target matching bit identifier corresponds to a pre-built matching character set, where the matching character set of the target matching bit identifier x1 is s1, and so on. Figure 7 The corresponding relationship between the target matching bit identifier and the matching character set in the watermark identifier 1 is expressed as: {x1-s1,x2-s2,...,x n1 -sn1 Correspondingly, customer number 2 corresponds to watermark identifier 2, which is composed of n2 different target matching bit identifiers. The target matching bit identifier of watermark identifier 2 is expressed as: {y1|y2|...|y n2}, each target matching bit identifier corresponds to a pre-built matching character set, where the matching character set of the target matching bit identifier y1 is s1′, and so on. Figure 7 The corresponding relationship between the target matching bit identifier and the matching character set in watermark identifier 2 is expressed as: {y1-s1′,y2-s2′,...,y n2 -s n2 ′}. The watermark fingerprint key includes a watermark identifier for indicating multiple matching positions in the target account, and a matching character set corresponding to each matching position. Figure 7 After obtaining the watermark identifier and the corresponding matching character set, watermark fingerprint keys can be pre-built for different customer numbers, and watermark fingerprint key 1 corresponding to customer number 1 and watermark fingerprint key 2 corresponding to customer number 2 can be obtained.

[0132] By pre-building corresponding watermark identifiers for different customer numbers, we can obtain uniquely distinguishable watermark fingerprint keys corresponding to different customer numbers, ensuring that the original model digital watermark encryption process of the service caller corresponding to different customer numbers can be distinguished and the obtained watermark model can be traced.

[0133] In one possible implementation, the process of pre-constructing corresponding watermark identifiers for different customer numbers in an embodiment of the present application specifically includes: determining the matching bit length of the target account and obtaining multiple candidate matching bit identifiers, and then for different customer numbers, extracting multiple target matching bit identifiers corresponding to the matching bit length from the multiple candidate matching bit identifiers, and then splicing the multiple target matching bit identifiers to obtain the watermark identifier corresponding to each customer number.

[0134] Among them, the candidate matching bit identifier is a preset number of different numerical values. In the embodiment of the present application, the target account may be a hash value encrypted by the MD5 hash algorithm. Since the MD5 hash value is a string of length 32, the candidate matching bit identifier can be set to a 32-bit integer [0,31] to identify the number of digits in the string of length 32 that need to be matched. It is understandable that, first of all, the 32-bit integer used as the candidate matching bit identifier can be other numerical values, such as [1,32], as long as it can represent digits. Secondly, if in some implementation processes, the target account is not encrypted or other encryption methods are used, resulting in the target account string length not being 32, then the preset number of numerical values ​​of the candidate matching bit identifier is determined according to the target account string length. The embodiment of the present application does not limit this.

[0135] Combine Figure 7 For example, the matching bit length of the target account is n1 for customer number 1 and n2 for customer number 2. Here, n1 and n2 can be the same or different. Since the matching bit length corresponds to the number of matches during the digital watermark encryption process for the target account, the matching bit length is related to the time complexity of the digital watermark encryption process. In the embodiments of the present application, the matching bit length can be set according to the computational time complexity during actual development and is not limited to this. For example, common values ​​for the matching bit length can be 3, 4, 5, etc.

[0136] After obtaining the matching digit length, for each customer number, multiple target matching digit identifiers corresponding to the matching digit length are extracted from the multiple candidate matching digit identifiers. These multiple target matching digit identifiers are then concatenated to obtain the watermark identifier corresponding to each customer number. Since the matching digit length of the target account number varies, the watermark identifiers corresponding to different customer numbers are distinguishable.

[0137] In a possible implementation, the candidate matching bit identifier is a 32-bit integer in [0,31], the matching bit length of the target account is i, the corresponding target matching bit identifier is X1,…,Xi, the target matching bit identifier is selected from the candidate matching bit identifier, and the target matching bit identifier is spliced ​​to obtain the watermark identifier watermark ID Expressed as:

[0138] watermark ID =X1|X2|...|X i

[0139] The above watermark identification satisfies the following conditions: (X1≠X2≠...≠X i )∧(X1,X2,...,X i ∈[0,31]), ∧ represents and. It can be seen that the watermark identifier needs to meet the following requirements: the target matching bit identifiers are different in pairs and the watermark identifiers corresponding to any two customer numbers are different. By setting this, the watermark identifiers corresponding to different customer numbers will not be exactly the same, which can meet the requirement that the watermark identifier is uniquely distinguishable. The watermark fingerprint key obtained using the watermark identifier also meets the requirement that it is uniquely distinguishable, ensuring that the original model points of the service caller corresponding to different customer numbers can be distinguished during the digital watermark encryption process, and the obtained watermark model points can be traced.

[0140] Reference Figure 7 For example, when Figure 7When n1=3 and n2=4, the number of target matching bit identifiers for watermark identifier 1 is 3, and the target matching bit identifiers are expressed as: {x1|x2|x3}, satisfying x1≠x2≠x3. Assuming x1=1, x2=3, and x3=5, the target matching bit identifiers are concatenated to obtain watermark identifier 1 for customer number 1, expressed as {1|3|5}. Similarly, the number of target matching bit identifiers for watermark identifier 2 is 4, and the target matching bit identifiers are expressed as: {y1|y2|y3|y4}, satisfying y1≠y2≠y3≠y4. Assuming y1=1, y2=7, y3=8, and y4=13, the target matching bit identifiers are concatenated to obtain watermark identifier 2 for customer number 2, expressed as {1|7|8|13}.

[0141] In one possible implementation, the target account is constructed from characters in an account character set. If the target account is not encrypted, and the target account may be an identification string that can distinguish the object, such as the ID number, object number, or mobile phone number of the service object, then the account character set may be a string of {0,…,9}, or a string of {a,…,z}, or a string of {0,…,9,a,…,z} that is a combination of the two. This embodiment does not limit this. If the target account is a hash value encrypted by the MD5 hash algorithm, since the characters of the hash value of the MD5 hash algorithm are composed of hexadecimal digits (0-9 and af), the account character set that constitutes the target account is 16 characters in {0,…,9,a,…,f}.

[0142] In one possible implementation, the process of pre-building a corresponding matching character set for each target matching position identifier in the watermark identifier in an embodiment of the present application includes: determining the number of first character types in the matching character set corresponding to each target matching position identifier, and then extracting multiple matching characters from the account character set based on the first character type number, and pre-building a corresponding matching character set for each target matching position identifier based on the multiple matching characters.

[0143] In a possible implementation, the watermark identifier watermark ID Each of the i target matching bit identifiers X1,…,Xi corresponds to a matching character set. Each matching character set includes multiple matching characters, and the number of matching characters in the matching character set is the number of first character types. For example, if the number of first character types of the target matching bit identifier X1 is m1 and the matching character set is S1, the number of first character types of the target matching bit identifier X2 is m2 and the matching character set is S2, and the number of first character types of the target matching bit identifier Xi is mi and the matching character set is Si, then the i matching character sets are expressed as:

[0144] S1={char S11 ,charS12 ,...,char S1m1}

[0145] S2={char S21 ,char S22 ,...,char S2m2}

[0146] …

[0147] S i ={char Si1 ,char Si2 ,...,char Simi}

[0148] The above char represents an account character set. For example, when the account character set constituting the target account is a 16-bit character set in {0,…,9,a,…,f}, char satisfies: char∈[0,1,2,3,4,5,6,7,8,a,b,c,d,e,f].

[0149] According to the above process, after obtaining the watermark identifier for each customer number, the matching character set corresponding to each target matching bit identifier in each watermark identifier can also be obtained, and each character in the matching character set is different. It can be understood that in this embodiment of the application, it is only necessary to ensure that the watermark identifiers for different customer numbers are different, and the matching character sets corresponding to the target matching bit identifiers in each watermark identifier do not need to be completely different.

[0150] Using a different watermark fingerprint key for each customer number can increase the security and privacy of the digital watermark encryption process. The watermark fingerprint key is the key to digital watermark encryption. If the same watermark fingerprint key is used for different customers, if the watermark fingerprint key is cracked, it may affect the watermark information of other customers. In addition, different watermark fingerprint keys can increase the robustness of the watermark. This is because different watermark fingerprint keys make the watermark embedding and extraction process difficult to predict, thereby improving the robustness and security of the watermark encryption process.

[0151] According to the above process, the watermark fingerprint key corresponding to each customer number is obtained. The watermark fingerprint key includes a watermark identifier for indicating multiple matching positions in the target account number, and a matching character set corresponding to each matching position. Figure 8 , Figure 8 Another optional schematic diagram of the watermark fingerprint key provided in the embodiment of the present application, the watermark fingerprint key includes a watermark identifier watermark ID and watermark ID The i target matching bit identifiers X1,…,Xi correspond to the matching character sets S1,…,Si respectively.

[0152] Step 503: extract target characters from multiple matching positions of the target account according to the watermark identifier, perform consistency matching on each target character and the corresponding matching character set to obtain a matching result.

[0153] The number of matching bits is the matching bit length of the watermark identifier, and the character position in the target account represented by the matching bit is determined by the target matching bit identifier in the watermark identifier.

[0154] For example, refer to Figure 9 , Figure 9 An optional schematic diagram of an embodiment of the present application for performing consistency matching of each target character with a corresponding set of matching characters to obtain a matching result. Assuming that the target account is the hash value "1c11a973a6c29b509ea3d57fec9b6eaa" obtained by performing MD5 hash encryption on the mobile phone number "12345678910", the watermark identifier associated with the customer number is {2|3|8|14}, and the elements in the watermark identifier are counted starting from 0. The watermark identifier includes 4 target matching bit identifiers: 2, 3, 8, and 14, among which the matching character set of the target matching bit identifier "2" is {1, d, 8}, the matching character set of the target matching bit identifier "3" is {4, 3, 7, f}, the matching character set of the target matching bit identifier "8" is {c, f, d, a}, and the matching character set of the target matching bit identifier "14" is {2, 5, e}. The multiple matching positions obtained according to the watermark are: the 3rd, 4th, 9th and 15th positions. The target characters extracted from the multiple matching positions of the target account according to the watermark are: the target character at the 3rd position is "1", the target character at the 4th position is "1", the target character at the 9th position is "a" and the target character at the 15th position is "5". Each target character is then matched with the corresponding matching character set for consistency to obtain a matching result. The matching result is used to indicate whether the target character appears in the matching character set. Figure 9 In the example, the third target character "1" matches the matching character set {1,d,8}, and the matching result is: Match. The fourth target character "1" matches the matching character set {4,3,7,f}, and the matching result is: Not Match. The ninth target character "a" matches the matching character set {c,f,d,a}, and the matching result is: Match. The fifteenth target character "5" matches the matching character set {2,5,e}, and the matching result is: Match.

[0155] In one possible implementation, the matching result is represented by a number to facilitate calculation. For example, the number "1" is used to represent a matching result, and the number "0" is used to represent a non-matching result. Figure 9The matching result of the target character "1" at the 3rd position is: 1; the matching result of the target character "1" at the 4th position is: 0; the matching result of the target character "a" at the 9th position is: 1, and the matching result of the target character "5" at the 15th position is: 1.

[0156] In the embodiment of the present application, the watermark fingerprint key of each customer number is different, and the watermark identifier is different. Therefore, the target characters extracted from multiple matching positions of the target account according to the watermark identifier are basically different, and the matching results obtained by consistent matching of the target characters with the matching character set are also different. Therefore, the uniqueness of the digital watermark encryption process can be guaranteed.

[0157] Step 504: According to the matching result, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

[0158] Currently, digital watermarking technology is more commonly used for digital information such as images, audio and video, text, and QR codes, while numeric raw model scores are relatively rarely used. This is because compared to other types of data, numeric raw model scores contain less information and have lower information density. Modifying either the tens or units digit of the raw model score can significantly impact the original model score itself, potentially even reducing model prediction performance and impacting business stability.

[0159] In the embodiments of this application, the original model score is a numerical value, such as an integer ranging from 1 to 100. Compared to other types of data, this type of numerical original model score contains less information and has a lower information density. Because a single original model score contains only one or two Arabic numerals, the information it contains comes entirely from these digits. To add a digital watermark to a numerical original model score, it is necessary to perform a transformation on the one or two digits in the tens and / or units digits of the original model score. However, these two digits are crucial to the original model score itself, and no additional information exists to supplement the original model score. This means that the information redundancy of the original model score is very low. Furthermore, modifying either the tens or units digits of the original model score may degrade the effectiveness of the original model score. For example, modifying the tens digit may cause the sample score to deviate from the original score by several tens of points. Modifying the units digit, while only causing a deviation of less than ten points, can also have a significant impact on risk control and other operations. In real-world scenarios, risk control scenarios place very strict demands on the distribution stability and consistency of the original model score. Even if there is a fluctuation of more than 2 points, the service caller will clearly perceive that the distribution difference of the original model score has become larger, the numerical inconsistency rate has become larger, or the model prediction effect has decreased, which will cause customer complaints and affect the stability of the business.

[0160] In the related art, digital watermarks can be added to numerical data by introducing noise data. However, in the embodiment of the present application, the binary tuple (phonemd5, score) of the target account phonemd5 and the watermark model score returned to the service caller will have a serious impact on the data if additional noise data is directly introduced. Therefore, based on the characteristics of the numerical parity distribution, the embodiment of the present application applies a minimum affine transformation to enable the watermark model scores obtained after the original model scores of customers of different service callers pass through the digital watermark encryption process to meet the preset parity distribution. Specifically, based on the matching results, the original model scores are adjusted with a preset adjustment amplitude to change the parity of the original model scores and obtain the encrypted watermark model scores. The parity of the watermark model scores obtained under the same watermark fingerprint key meets the preset parity distribution. Among them, the adjustment amplitude is used to adjust the size of the original model score. Since the parity of the original model score is adjusted at a preset small amplitude based on the original model score, it does not change the distribution trend of the original model score. At the same time, the influence of the watermark model score on the original model score is minimal.

[0161] In one possible implementation, in an embodiment of the present application, according to the matching result, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain the encrypted watermark model score. The process specifically includes: determining the binary classification function value corresponding to the target account according to the matching result, and according to the binary classification function value, performing encryption based on parity adjustment on the original model score with a preset adjustment range to obtain the encrypted watermark model score.

[0162] The binary classification function value here is used to quantify the matching result of the target account. The binary classification function value includes a first value or a second value. The binary classification function value is used to represent the matching result of the target account, and then the original model score is encrypted based on parity adjustment with a preset adjustment range according to the parameterized binary classification function value. This can reduce the encoding complexity and encoding workload of the digital watermark encryption process. At the same time, the matching result of the target account is parameterized, which can facilitate testing and debugging during the digital watermark encryption process.

[0163] In one possible implementation, the process of determining the binary classification function value corresponding to the target account based on the matching result in an embodiment of the present application specifically includes: when the matching result is that each target character matches any matching character in the corresponding matching character set, determining that the binary classification function value corresponding to the target account is a first value; or, when the matching result is that any target character does not match any matching character in the corresponding matching character set, determining that the binary classification function value corresponding to the target account is a second value.

[0164] For example, if all target characters in the target account are matched, it means that each target character in the target account can be matched to a corresponding matching character in the corresponding matching character set. In this case, the binary classification function value is set to the first value. If the matching result of any target character in the target account is not matched, it means that at least one target character in the target account cannot be matched to a corresponding matching character in the corresponding matching character set. In this case, the binary classification function value is set to the second value. Here, the first value can be 1 and the second value can be 0. The value of the first value or the second value can be set according to actual conditions and is not limited in this embodiment of the application.

[0165] In one possible implementation, the target account is represented by phonemd5 and the watermark identifier is represented by watermark ID And watermark ID The i target matching bits are represented as: X1,…,Xi, and the corresponding matching character set of the target matching bits is S1,…,Si.

[0166] Among them, phonemd5[x1] represents the first target character in the target account, phonemd5[x1]∈S1 represents the matching result of the first target character in the target account in the matching character set S1, phonemd5[x2]∈S2 represents the matching result of the second target character in the target account in the matching character set S2, and so on. i ]∈S i Indicates the matching result of the i-th target character in the target account in the matching character set Si.

[0167] Therefore, the binary classification function value f(phonemd5) of the target account is expressed as:

[0168]

[0169] The above formula indicates that the binary classification function value f(phonemd5) is 1 only when the matching result of the first target character in the matching character set S1, the matching result of the second target character in the matching character set S2, ... the matching result of the i-th target character in the matching character set Si are all 1. Otherwise, as long as there is a 0 in the matching result, the value of the binary classification function value f(phonemd5) is 0.

[0170] Reference Figure 10 , Figure 10An optional schematic diagram of determining the binary classification function value corresponding to the target account according to the matching results provided in an embodiment of the present application. The matching bits of the target account phonemd5#1 are the 1st, 5th and 9th bits, the matching bits of the target account phonemd5#2 are the 3rd, 8th, 9th and 11th bits, and the matching bits of the target account phonemd5#3 are the 2nd, 4th, 7th, 30th and 31st bits. Among them, the matching results of each target character in the target account phonemd5#1 are as follows: the matching result of the target character at the 1st position is "1", the matching result of the target character at the 5th position is "1" and the matching result of the target character at the 9th position is "1". The matching results of each target character in the target account phonemd5#2 are as follows: the matching result of the target character at the 3rd position is "1", the matching result of the target character at the 8th position is "0", the matching result of the target character at the 9th position is "1" and the matching result of the target character at the 11th position is "1". The matching results for each target character in target account phonemd5#3 are as follows: the matching result for the second target character is "0", the matching result for the fourth target character is "0", the matching result for the seventh target character is "1", the matching result for the 30th target character is "1", and the matching result for the 31st target character is "1". According to the above binary classification function value determination method, the binary classification function value f(phonemd5#1) of target account phonemd5#1 is 1; the binary classification function value f(phonemd5#2) of target account phonemd5#2 is 0; and the binary classification function value f(phonemd5#3) of target account phonemd5#3 is 0.

[0171] From the above process, it can be seen that since the target account may need to match multiple target characters to obtain corresponding matching results during the digital watermark encryption process, the matching results of the target account are uniformly represented to obtain a binary classification function value. The binary classification function value can be used to associate the matching results of all target characters, thereby simplifying the calculation process of digital watermark encryption.

[0172] In one possible implementation, the embodiment of the present application performs parity-adjusted encryption processing on the original model score with a preset adjustment range, where the adjustment range includes increasing a first preset value, decreasing a second preset value, or keeping it unchanged. Through such fine-tuning, the parity of the original model score is adjusted at the lowest cost. At the same time, the difference between the watermark model score and the original model score does not exceed 2, and the data inconsistency between the two is low, which can meet the business needs of the service caller. Under this adjustment range, the embodiment of the present application performs parity-adjusted encryption processing on the original model score with a preset adjustment range according to the binary classification function value. The process of obtaining the encrypted watermark model score specifically includes: when the binary classification function value is a first value, determining that the watermark model score is an odd number, if the original model score is an even number, increasing the first preset value or decreasing the second preset value to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score, or, when the original model score is an odd number, keeping the original model score unchanged as the encrypted watermark model score.

[0173] For example, if the first value is 1, then when the binary classification function value is 1, the watermark model score corresponding to the target account is first set to an odd number, and then the method of adjusting the range including increasing the first preset value, decreasing the second preset value, or keeping it unchanged is determined based on the parity of the original model score. When the original model score is an even number, in order to adjust the original model score to an odd watermark model score after adjustment, the original model score is increased by the first preset value or decreased by the second preset value to obtain the odd number closest to the original model score as the encrypted watermark model score. When the original model score is an odd number, there is no need to adjust the original model score. The encrypted watermark model score can be obtained by keeping the original model score unchanged. In one possible implementation, the first preset value and the second preset value can be equal, for example, both are 1.

[0174] The watermark model is divided into score_new and the original model is divided into score_ori. The above adjustment process is expressed as:

[0175] score_new = to_odd(score_ori)

[0176]

[0177] or

[0178] Wherein, score_ori%2=0 indicates that the original model score score_ori is an even number, and to_odd() indicates an adjustment function for adjusting the original model score to an odd number to obtain the watermark model score.

[0179] exist Figure 10In the example, the binary classification function value f(phonemd5#1) for target account phonemd5#1 is 1, and the watermark model score is an odd number. If the original model score of target account phonemd5#1 is 78, then by increasing the first preset value or decreasing the second preset value, the watermark model score closest to the original model score of 78 is 77 or 79. If the original model score of target account phonemd5#1 is 55, the original model score of 55 remains unchanged, and the encrypted watermark model score is 55.

[0180] In one possible implementation, the embodiment of the present application performs parity-adjusted encryption processing on the original model score with a preset adjustment range according to the binary classification function value, and the process of obtaining the encrypted watermark model score specifically includes: when the binary classification function value is a second value, determining that the watermark model score is an even number; if the original model score is an odd number, increasing the first preset value or decreasing the second preset value to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score, or, when the original model score is an even number, keeping the original model score unchanged as the encrypted watermark model score.

[0181] For example, if the second value is 0, then when the binary classification function value is 0, first set the watermark model score corresponding to the target account to an even number, and then determine which adjustment method to use, including increasing the first preset value, decreasing the second preset value, or keeping it unchanged, based on the parity of the original model score. When the original model score is an odd number, in order to adjust the original model score to an even watermark model score after adjustment, increase the original model score by the first preset value or decrease the second preset value to obtain the even number closest to the original model score as the encrypted watermark model score. When the original model score is an even number, there is no need to adjust the original model score. Keeping the original model score unchanged, the encrypted watermark model score can be obtained. In one possible implementation, the first preset value and the second preset value can be equal, for example, both are 1.

[0182] The watermark model is divided into score_new and the original model is divided into score_ori. The above adjustment process is expressed as:

[0183] score_new=to_even(score_ori)

[0184]

[0185] or

[0186] Wherein, score_ori%2=0 indicates that the original model score score_ori is an even number. to_even() indicates an adjustment function for adjusting the original model score to an even number to obtain the watermark model score.

[0187] exist Figure 10 In the example, the binary classification function value f(phonemd5#2) of the target account phonemd5#2 is 0, and the watermark model score is an even number. If the original model score of the target account phonemd5#2 is 87, then by increasing the first preset value or decreasing the second preset value, the watermark model score closest to the original model score 87 is 86 or 88. If the original model score of the target account phonemd5#2 is 90, then the original model score 90 remains unchanged, and the encrypted watermark model score is 90. The binary classification function value f(phonemd5#3) of the target account phonemd5#3 is 0, and the watermark model score is also an even number. If the original model score of the target account phonemd5#3 is 95, then by increasing the first preset value or decreasing the second preset value, the watermark model score closest to the original model score 95 is 94 or 96. If the original model score of the target account phonemd5#3 is 82, then the original model score 82 remains unchanged, and the encrypted watermark model score is 82.

[0188] At this point, the embodiment of the present application adjusts the parity of the original model score with a minimum amplitude of [-1, +1] to obtain the watermark model score. The parity distribution characteristics of the watermark model score are related to the watermark fingerprint key, and the score distribution and consistency of the watermark model score are almost unaffected. Therefore, the embodiment of the present application outputs the result in the form of a (target account, watermark model score) tuple, and realizes the function of adding a unique watermark fingerprint to the original model score without the service caller's perception. Once the service caller resells the service call, the watermark model score can be used to trace the service caller who sent the digital service call request. In theory, if the service caller does not modify the watermark model score, the detection result of the watermark model score will be able to be traced back to the only correct service caller.

[0189] In one possible implementation, in order to make the parity distribution of the watermark model points obtained after digital watermark encryption more balanced, the embodiment of the present application sets the number of the first character types in the matching character set of each target matching bit identifier, and the process of determining the number of the first character types of the matching character set corresponding to each target matching bit identifier specifically includes: determining the number of the second character types of the matching character set corresponding to each target matching bit identifier; when determining the number of the first character types of the matching character set corresponding to each target matching bit identifier, generating a first probability distribution that each target character matches any matching character in the corresponding matching character set, and a second probability distribution that any target character does not match any matching character in the corresponding matching character set, until the difference between the first probability distribution and the second probability distribution is less than or equal to a preset threshold.

[0190] In one possible implementation, a first probability distribution can be generated based on the quotient of the number of first character types and the number of second character types, where each target character matches any matching character in the corresponding matching character set. The target account is obtained by MD5 hash encryption to obtain a hash value. The target account is represented by phonemd5, and the watermark identifier is represented by watermark. ID And watermark ID The i target matching bit identifiers are represented as: X1,…,Xi, the target matching bit represents the corresponding matching character set is S1,…,Si, and the second character type number is the number of characters in the account character set.

[0191] Then the tth target character in the target character is represented as: phonemd5[x t ], the number of matching characters in the corresponding matching character set St is the number of the first character type St_size, phonemd5[x t ] matches any matching character in the matching character set St, that is, the matching probability is 1, which is expressed as phonemd5[x t ]∈S t Since the distribution of each character in the target account's hash value is uniform, phonemd5[x t ]∈S t The probability distribution Pt_match is the quotient of the number of first character types and the number of second character types. When the target account is an MD5 hash value, the account character set is {0,…,9,a,…,f} 16 characters, so the number of second character types is 16. The probability distribution Pt_match here is expressed as:

[0192] The binary classification function values ​​of the target account include: f(phonemd5)=0 and f(phonemd5)=1. f(phonemd5)=1 means that each target character in the target account matches any matching character in the corresponding matching character set. The probability distribution of f(phonemd5)=1 is the first probability distribution P f(phonemd5)=1 , the first probability distribution P f(phonemd5)=1 Expressed as:

[0193] f(phonemd5)=0 means that any target character in the target account does not match any matching character in the corresponding matching character set. The probability distribution of f(phonemd5)=0 is the second probability distribution P f(phonemd5)=0 , the second probability distribution P f(phonemd5)=0 Expressed as:

[0194]

[0195] Since the watermark model is divided into odd numbers when the binary classification function value f(phonemd5)=1, and the watermark model is divided into even numbers when the binary classification function value f(phonemd5)=0, in order to avoid the service caller from thinking that the distribution of the watermark model scores is unreasonable, it is necessary to ensure that the parity distribution of the watermark model scores is uniform, which can be achieved by setting the difference between the first probability distribution and the second probability distribution to be less than or equal to the preset threshold. For example, the difference between the first probability distribution and the second probability distribution is 0, which means that the first probability distribution and the second probability distribution are both 50%. In theory, the proportion of odd and even numbers in the watermark model scores is the same. Of course, in the embodiment of the present application, the first probability distribution and the second probability distribution are not limited to being equal. If the first probability distribution is 53% and the second probability distribution is 48%, it is also an acceptable value in actual business. Therefore, the embodiment of the present application can meet business needs by limiting the difference between the first probability distribution and the second probability distribution to be less than or equal to the preset threshold. The minimum value of the preset threshold here is 0, and the maximum value can be set according to actual needs. This embodiment does not limit this.

[0196] The following combination Figure 4 The detailed processing flow of the watermark encryption method for digital services in the embodiment of the present application is described in the architecture of the present invention. Figure 11 , Figure 11 An optional detailed processing flow diagram of the detection service provided in an embodiment of the present application may specifically include the following steps 1101 to 1108.

[0197] Step 1101: The service caller initiates a digital service call request to the SAAS model service.

[0198] Among them, the service caller sends a digital service call request to the SAAS model service for accessing the SAAS model service using the API interface layer. The digital service call request contains the target account to be scored. The target account is set by the service caller to distinguish its service objects. Therefore, the target account can be an identification string that can distinguish the service object, such as the ID number, object number, or mobile phone number. When the service caller needs to obtain the original model score of a service object, it uses a digital service call request to carry the target account of the service object to be scored and sends it to the SAAS model service.

[0199] Step 1102: The SAAS model service extracts the target account to be scored from the digital service call request.

[0200] The SAAS model service 120 receives a digital service call request through the API interface layer 123. The API interface layer 123 then sends the digital service call request to the model service module 124, which extracts the target account from the service call request. In one possible implementation, the service caller encrypts the target account to protect the privacy of the subject and inputs the encrypted data as the target account into the SAAS model service for scoring. The encryption method here can be hash encryption, and this embodiment does not specifically limit the encryption method for the target account. For example, if the target account is a mobile phone number and the encryption method is MD5 hash encryption, the mobile phone number is used as input data, and a fixed-length hash value is generated using the MD5 hash algorithm. This hash value is used as the target account, and the hash value is input into the SAAS model service using the digital service call request. The hash value is then scored using the scoring model to obtain the target account's original model score.

[0201] Step 1103: Extract the model number from the digital service call request, call the scoring model to score the target account, and obtain the original model score of the target account.

[0202] The service call request also carries the model number of the scoring model to be used. The scoring model is a model used to score the target account. The scoring model here can be designed according to actual business needs. After receiving the digital service call request, the embodiment of the present application extracts the model number to be used from the digital service call request. The model service module 124 scores the target account according to the corresponding scoring model 121 to obtain the original model score of the target account. Here, the original model score is the model score without the digital watermark.

[0203] Among them, the object attribute data corresponding to the target account can be obtained according to the target account, and the object feature vector corresponding to the target account can be constructed according to the obtained object attribute data. The object feature vector is input into the scoring model 121. The scoring model 121 first maps the object feature vector to obtain a high-level feature vector, and finally inputs the high-level feature vector into the classifier for classification, and finally obtains the original model score of the target account.

[0204] Step 1104: Extract the customer number of the service caller from the digital service call request, and obtain the watermark fingerprint key associated with the customer number.

[0205] Among them, the digital service call request also includes the customer number of the service caller. Since the service prices of different service callers may be different, the SAAS model service sets different customer numbers for different service callers, and uses the customer numbers to distinguish the service callers. The SAAS model service can determine the source of the digital service call request based on the received customer number. The model service module 124 inputs the original model score into the digital watermark service module 125, and the fingerprint key service module 126 associates the corresponding watermark fingerprint key according to the customer number of the service caller 110. When different service callers call the same scoring model, in order to distinguish them, the embodiment of the present application sets the watermark fingerprint key under the scoring model used for different service callers according to the customer number, and the watermark fingerprint key is used to perform digital watermark encryption operations on the model score obtained by the scoring model used.

[0206] When different service callers call the same scoring model, in order to distinguish them, the embodiment of the present application sets the watermark fingerprint key under the scoring model used for different service callers according to the customer number. The watermark fingerprint key is used to perform digital watermark encryption operations on the model score obtained by the scoring model used. The specific process of obtaining the watermark fingerprint key associated with the customer number includes: pre-building corresponding watermark identifiers for different customer numbers, pre-building corresponding matching character sets for each target matching bit identifier in the watermark identifier, and finally pre-building watermark fingerprint keys for different customer numbers based on the watermark identifier and the corresponding matching character set, and obtaining the watermark fingerprint key associated with the current customer number. Among them, the process of pre-building corresponding watermark identifiers for different customer numbers specifically includes: determining the matching bit length of the target account number, and after obtaining the matching bit length, for different customer numbers, extracting multiple target matching bit identifiers corresponding to the matching bit length from multiple candidate matching bit identifiers, and splicing the multiple target matching bit identifiers to obtain the watermark identifier corresponding to each customer number. Since the matching bit length of the target account number is not fixed, the watermark identifiers corresponding to different customer numbers can be distinguished. The conditions that the watermark identification needs to meet are: the target matching bit identifications are different from each other and the watermark identifications corresponding to any two customer numbers are different. Through such settings, the watermark identifications corresponding to different customer numbers will not be exactly the same, which can meet the requirement that the watermark identification is uniquely distinguishable. The watermark fingerprint key obtained using the watermark identification also meets the requirement that it is uniquely distinguishable, ensuring that the original model points of the service caller corresponding to different customer numbers can be distinguished in the digital watermark encryption process, and the obtained watermark model points can be traced.

[0207] After obtaining the watermark identifier for each customer number, the matching character set corresponding to each target matching position identifier in each watermark identifier can also be obtained, and each character in the matching character set is different. In the embodiment of the present application, a matching character set corresponding to each target matching position identifier in the watermark identifier is pre-built, including: determining the number of first character types in the matching character set corresponding to each target matching position identifier, then extracting multiple matching characters from the account character set based on the first character type number, and pre-building a matching character set corresponding to each target matching position identifier based on the multiple matching characters.

[0208] Then, the watermark fingerprint key of each customer number can be further obtained based on the watermark identifier and the corresponding matching character set. In the embodiment of the present application, each customer number uses a different watermark fingerprint key, which can increase the security and privacy of the digital watermark encryption process. The watermark fingerprint key is the key to digital watermark encryption. If the same watermark fingerprint key is used between different customers, if the watermark fingerprint key is cracked, it may affect the watermark information of other customers. And different watermark fingerprint keys can increase the robustness of the watermark. Because different watermark fingerprint keys can make it difficult to predict the embedding and extraction process of the watermark, thereby improving the robustness and security of the watermark encryption process.

[0209] Step 1105: extract target characters from multiple matching positions of the target account according to the watermark identifier, perform consistency matching on each target character and the corresponding matching character set to obtain a matching result.

[0210] Among them, the number of matching bits is obtained according to the matching bit length of the watermark identifier, and the target character in the target account is determined according to the matching bit, and the target character is matched with the corresponding matching character set for consistency, so as to obtain the matching result corresponding to each target character. Among them, the number of matching bits is the matching bit length of the watermark identifier, and the character position in the target account represented by the matching bit is determined by the target matching bit identifier in the watermark identifier. In one possible implementation method, the matching result is represented by a number for ease of calculation. For example, the number "1" is used to represent the matching result as a match, and the number "0" is used to represent the matching result as a mismatch. In the embodiment of the present application, the watermark fingerprint key of each customer number is different, and the watermark identifier is different. Therefore, the target characters extracted from the multiple matching bits of the target account according to the watermark identifier are basically different, and the matching results obtained by matching the target character with the matching character set for consistency are also different, so the uniqueness of the digital watermark encryption process can be guaranteed.

[0211] Step 1106: Determine the binary classification function value corresponding to the target account based on the matching result.

[0212] When the matching result shows that each target character matches any matching character in the corresponding matching character set, the binary classification function value corresponding to the target account is determined to be a first value; alternatively, when the matching result shows that any target character does not match any matching character in the corresponding matching character set, the binary classification function value corresponding to the target account is determined to be a second value. For example, if all target characters in the target account match, it means that each target character in the target account can be matched to a corresponding matching character in the corresponding matching character set. In this case, the binary classification function value is set to the first value. If the matching result for any target character is not a match, it means that at least one target character in the target account cannot be matched to a corresponding matching character in the corresponding matching character set. In this case, the binary classification function value is set to the second value. The first value can be 1, and the second value can be 0. Since the target account may need to match multiple target characters to obtain corresponding matching results during the digital watermark encryption process, the matching results of the target account are uniformly represented to obtain a binary classification function value. The binary classification function value can be used to correlate the matching results of all target characters, thereby simplifying the calculation process of the digital watermark encryption.

[0213] Step 1107: According to the binary classification function value, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

[0214] Among them, the adjustment range includes increasing the first preset value, decreasing the second preset value or keeping it unchanged. Through such fine-tuning, the parity of the original model score is adjusted at the lowest cost. At the same time, the difference between the watermark model score and the original model score does not exceed 2, and the data inconsistency between the two is low, which can meet the business needs of the service caller. Under this adjustment range, the embodiment of the present application performs parity-adjusted encryption processing on the original model score according to the binary classification function value with a preset adjustment range. The process of obtaining the encrypted watermark model score specifically includes: when the binary classification function value is a first value, determining that the watermark model score is an odd number, if the original model score is an even number, increasing the first preset value or decreasing the second preset value to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score, or, when the original model score is an odd number, keeping the original model score unchanged as the encrypted watermark model score. When the binary classification function value is the second value, it is determined that the watermark model score is an even number; if the original model score is an odd number, the first preset value is increased or the second preset value is decreased to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score, or, when the original model score is an even number, the original model score is kept unchanged and used as the encrypted watermark model score.

[0215] For example, if the first value is 1, then when the binary classification function value is 1, the watermark model score corresponding to the target account is first set to an odd number, and then the parity of the original model score determines which adjustment method to use, including increasing the first preset value, decreasing the second preset value, or keeping it unchanged. When the original model score is an even number, in order to adjust the original model score to an odd watermark model score after adjustment, the original model score is increased by the first preset value or decreased by the second preset value to obtain an odd number closest to the original model score as the encrypted watermark model score. When the original model score is an odd number, there is no need to adjust the original model score. The encrypted watermark model score can be obtained by keeping the original model score unchanged. For example, if the second value is 0, then when the binary classification function value is 0, the watermark model score corresponding to the target account is first set to an even number, and then the parity of the original model score determines which adjustment method to use, including increasing the first preset value, decreasing the second preset value, or keeping it unchanged. When the original model score is an odd number, in order to adjust the original model score to an even watermark model score, the original model score is increased by a first preset value or decreased by a second preset value to obtain an even number closest to the original model score as the encrypted watermark model score. When the original model score is an even number, there is no need to adjust the original model score; the encrypted watermark model score can be obtained by keeping the original model score unchanged.

[0216] The embodiment of the present application uses a binary classification function value to characterize the matching result of the target account, and then adjusts the original model score with a preset adjustment amplitude according to the parameterized binary classification function value, changes the parity of the original model score, and obtains the encrypted watermark model score, which can reduce the coding complexity and coding workload of the digital watermark encryption process. At the same time, the matching result of the target account is parameterized, which can be easily tested and debugged during the watermark encryption process. Based on the characteristics of the numerical parity distribution, by applying the minimum affine transformation, the original model scores of customers of different service callers can meet the preset parity distribution after the digital watermark encryption process. Among them, the adjustment amplitude is used to adjust the size of the original model score. Since the parity of the original model score is adjusted at a preset small amplitude based on the original model score, it does not change the distribution trend of the original model score. At the same time, the watermark model score has the least impact on the original model score.

[0217] Step 1108: Return the encrypted watermark model to the service caller.

[0218] After obtaining the watermark model score, the watermark model score, target account number, customer number, and model number are packaged together and returned to the service caller 110 through the API interface layer 123. Compared with returning only the watermark model score without returning the target account number, this allows the service caller 110 to accurately associate the target account number with the watermark model score.

[0219] In steps 1101 to 1108, the customer number of the service caller is extracted from the digital service call request, and the watermark fingerprint key associated with the customer number is obtained. Target characters are extracted from multiple matching bits of the target account number based on the watermark identifier in the watermark fingerprint key. Each target character is then matched with the corresponding matching character set in the watermark fingerprint key to obtain a matching result. Based on the matching result, the original model score is encrypted using a parity adjustment with a preset adjustment range to obtain an encrypted watermark model score. Therefore, the preset adjustment range can be used to perform a minimal affine transformation on the original model score, and only the parity of the original model score is adjusted. This reduces the impact on the model score during watermark encryption, thereby improving the validity of the model score. Furthermore, since parity is an inherent characteristic of the original model score, the digital watermark in the encrypted watermark model score is difficult to perceive, thus providing good encryption confidentiality.

[0220] The following is a specific example to illustrate the principle of the model watermark encryption method provided in the embodiment of the present application.

[0221] Reference Figure 12 , Figure 12 A schematic diagram of the principle of the watermark encryption method for the digital service provided in the embodiment of the present application. Assume that the watermark identifier corresponding to the customer number is {1|3|5}, the matching character set corresponding to the target matching bit identifier "1" is s1, the matching character set corresponding to the target matching bit identifier "3" is s2, and the matching character set corresponding to the target matching bit identifier "5" is s3, wherein the matching character set s1 = {0,1,2,3,4}, the matching character set s2 = {4,5,6,7,8}, and the matching character set s3 = {1,2,3,a,b,c}. The digital service call request carries 4 target accounts to be scored. The target accounts are hash values ​​after MD5 hash encryption. The target accounts are:

[0222] Target account #a = {001b3dxxxxxxxxxxxxxxxxxxxxxxxxxx}, original model score = 66;

[0223] Target account #b = {e0143cxxxxxxxxxxxxxxxxxxxxxxxxxx}, original model score = 58;

[0224] Target account #c = {fo1b3dxxxxxxxxxxxxxxxxxxxxxxxxxx}, original model score = 69;

[0225] Target account #d = {00283cxxxxxxxxxxxxxxxxxxxxxxxxxx}, original model score = 52;

[0226] Since the watermark identifier is {1|3|5}, the first, third, and fifth characters of the target account are selected as target characters. In this example, the number of character digits of the target account is [0-31]. Therefore, the target characters of target account #a are: "0", "b", and "d"; the target characters of target account #b are: "0", "4", and "c"; the target characters of target account #c are: "0", "b", and "d"; and the target characters of target account #d are: "0", "8", and "c".

[0227] Match the first character of the target account with the matching character set s1, the third character of the target account with the matching character set s2, and the fifth character of the target account with the matching character set s3. The matching results are:

[0228] The matching results for target account #a are "1", "0", and "0";

[0229] The matching results for target account #b are "1", "1", and "1";

[0230] The matching results for target account #c are "1", "0", and "0";

[0231] The matching results for target account #d are "1", "1", and "1";

[0232] The binary classification function value f(phonemd5) = 0 obtained according to the matching result of the target account #a; the binary classification function value f(phonemd5) = 1 obtained according to the matching result of the target account #b; the binary classification function value f(phonemd5) = 0 obtained according to the matching result of the target account #c; the binary classification function value f(phonemd5) = 1 obtained according to the matching result of the target account #d.

[0233] Reference Figure 12For example, the binary classification function value f(phonemd5) of target account #a is f(phonemd5) = 0, and its watermark model score is set to an even number. The original model score of target account #a is 66, so the watermark model score is also 66. The binary classification function value f(phonemd5) of target account #b is f(phonemd5) = 1, and its watermark model score is set to an odd number. The original model score of target account #b is 58. Therefore, through the fine-tuning method of minus one, the watermark model score is 57. The binary classification function value f(phonemd5) of target account ##c is f(phonemd5) = 0, and its watermark model score is set to an even number. The original model score of target account #c is 69. Therefore, through the fine-tuning method of minus one, the watermark model score is 68. The binary classification function value f(phonemd5) of target account #d is f(phonemd5) = 1, and its watermark model score is set to an odd number. The original model score of target account #d is 52. Therefore, through the fine-tuning method of minus one, the watermark model score is 51.

[0234] Therefore, the packaged data returned by the API interface layer 123 are:

[0235] Target account #a = {001b3dxxxxxxxxxxxxxxxxxxxxxxxxxx}, watermark model score 66;

[0236] Target account #b = {e0143cxxxxxxxxxxxxxxxxxxxxxxxxxx}, watermark model score 57;

[0237] Target account #c = {fo1b3dxxxxxxxxxxxxxxxxxxxxxxxxxx}, watermark model score 68;

[0238] Target account #d = {00283cxxxxxxxxxxxxxxxxxxxxxxxxxx}, watermark model score 51.

[0239] At this point, the service caller has received the watermark model scores corresponding to target account #a, target account #b, target account #c, and target account #d.

[0240] In addition, refer to Figure 13 , Figure 13 Another optional flow chart of the watermark tracing method for digital services provided in an embodiment of the present application, at least part of the process of the watermark tracing method for digital services can be executed by the server, or by the terminal, or by the terminal and the server in cooperation, and the watermark tracing method for digital services includes but is not limited to the following steps 1301 to 1305.

[0241] Step 1301: Receive a digital service traceability request, and extract watermark model scores of multiple target accounts from the digital service traceability request.

[0242] The digital service traceability request is used to request the traceability of the watermark model score, determining which service caller generated the watermark model score through the digital service call request. The digital service traceability request can be a service call request initiated by the watermark detection party. It is understood that the watermark detection party is the party that requires the traceability of the watermark model score, and it carries the watermark model scores of multiple target accounts that need to be traced in the digital service traceability request.

[0243] Reference Figure 14 , Figure 14 A schematic diagram of the internal architecture of another optional SAAS model service provided in an embodiment of the present application, wherein the SAAS model service 120 includes: an API interface layer 123 and a digital watermark service module 125, wherein the digital watermark service module 125 includes: a fingerprint key service module 126 and a watermark detection module 127.

[0244] based on Figure 14 In the architecture shown, the watermark detection party sends a digital service traceability request through the API interface layer 123 of the SAAS model service 120, and carries the watermark model scores of multiple target accounts in the digital service traceability request. Then the API interface layer 123 sends the watermark model scores of multiple target accounts in the digital service traceability request to the watermark detection module 127 of the digital watermark service module 125.

[0245] In one possible implementation, the service provider that provides SAAS model services can count the number of digital service call requests sent by each service caller. When the number of digital service call requests of a certain service caller decreases significantly and the total number of digital service call requests sent by all service callers remains basically unchanged, the service caller with the significantly reduced number of digital service call requests is taken as the target caller, and multiple target accounts belonging to the target caller are obtained. The watermark model scores corresponding to these target accounts are the watermark model scores to be traced.

[0246] Step 1302: Divide the target accounts for which the watermark model is divided into odd numbers into an odd set, and divide the target accounts for which the watermark model is divided into even numbers into an even set.

[0247] Among them, the odd-numbered set is used to store the target accounts corresponding to the odd-numbered watermark model scores, and the even-numbered set is used to store the target accounts corresponding to the even-numbered watermark model scores. Figure 14In the illustrated architecture, the watermark detection module 127 performs watermark traceability operations on the watermark models of multiple target accounts in batches. Since the watermark model scores in this embodiment are generated based on parity, in contrast to the digital watermark encryption process, in the watermark traceability operation, the watermark model scores of multiple target accounts are divided according to parity to obtain an odd set and an even set, and then the odd and even sets are operated to obtain the target identifier.

[0248] In one possible implementation, an empty odd-numbered set can be preset, and the watermark model scores of multiple target accounts can be traversed. If the current watermark model score is an odd number, the target account corresponding to the watermark model score is divided into the odd-numbered set; if the current watermark model score is an even number, the target account corresponding to the watermark model score is divided into the even-numbered set.

[0249] Step 1303: Obtain multiple watermark fingerprint keys associated with different service callers.

[0250] Among them, the watermark fingerprint key is pre-constructed for each service caller and has a unique distinguishable feature. The multiple watermark fingerprint keys obtained here that are respectively associated with different service callers are the watermark fingerprint keys corresponding to all existing service callers. The construction process of the watermark fingerprint key specifically includes: pre-constructing corresponding watermark identifiers for different customer numbers, the watermark identifier is composed of multiple different target matching bit identifiers, the target matching bit identifier is used to indicate the matching bit of the target account, the watermark identifiers corresponding to any two customer numbers are different, and the corresponding matching character sets are pre-constructed for each target matching bit identifier in the watermark identifier. Finally, the watermark fingerprint key is pre-constructed for different customer numbers based on the watermark identifier and the corresponding matching character set. Therefore, the watermark fingerprint key obtained in this step includes the watermark identifier used to indicate multiple matching bits in the target account, and the matching character set corresponding to each matching bit. Reference Figure 14 In the architecture shown, the watermark fingerprint key is stored in the fingerprint key service module 126. Therefore, the watermark detection module 127 is associated with the fingerprint key service module 126 to obtain multiple watermark fingerprint keys of different service callers for fingerprint matching.

[0251] In one possible implementation, a watermark fingerprint key library can be constructed, and the watermark fingerprint keys corresponding to all customer numbers are associated with the customer numbers and stored in the watermark fingerprint key library. Subsequently, the watermark fingerprint keys corresponding to all customer numbers can be obtained from the watermark fingerprint key library.

[0252] Step 1304: In at least one of the odd-numbered set and the even-numbered set, target characters are extracted from multiple matching positions of the target account according to each watermark identifier, and each target character is matched with the corresponding matching character set for consistency to obtain a matching result, and the target matching rate of each watermark identifier is counted according to the matching result.

[0253] Among them, one of the sets can be selected from the odd set or the even set, and the target matching rate calculation process is performed for each watermark identifier. Since the watermark identifier is spliced ​​together by multiple different target matching bit identifiers, and the target matching bit identifier is used to indicate the matching bit of the target account, the specific process includes: extracting the target characters from the multiple matching bits in the target account according to the watermark identifier, and then performing consistency matching on each target character with the corresponding matching character set to obtain the matching result of the target character. Since the watermark fingerprint key of each customer number is different and the watermark identifier is different, the target characters extracted from the multiple matching bits of the target account according to the watermark identifier are basically different, and the matching results obtained by performing consistency matching on the target character with the matching character set are also different.

[0254] In one possible implementation, in at least one of the odd set and the even set, an embodiment of the present application extracts target characters from multiple matching positions of the target account according to each watermark identifier, performs consistency matching on each target character with the corresponding matching character set to obtain a matching result, and the process of counting the target matching rate of each watermark identifier based on the matching result specifically includes: in the odd set, extracting target characters from multiple matching positions of the target account according to each watermark identifier, performs consistency matching on each target character with the corresponding matching character set to obtain the matching result of the odd set; in the even set, extracting target characters from multiple matching positions of the target account according to each watermark identifier, performs consistency matching on each target character with the corresponding matching character set to obtain the matching result of the even set; and counting the target matching rate of each watermark identifier based on the matching result of the odd set and the matching result of the even set.

[0255] The above embodiment selects one of the matching results of the odd set and the matching results of the even set, then obtains the target matching rate of the watermark identifier according to the selected matching result, and calculates the target matching rates of all watermark identifiers.

[0256] In one possible implementation, the process of calculating the target matching rate of each watermark identifier based on the matching results of the odd-numbered set and the matching results of the even-numbered set in the embodiment of the present application specifically includes: calculating the first matching rate of each watermark identifier in the odd-numbered set based on the matching results of the odd-numbered set, and calculating the second matching rate of each watermark identifier in the even-numbered set based on the matching results of the even-numbered set. When the first matching rate is greater than the second matching rate, the first matching rate is used as the target matching rate for the watermark identifier; when the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate for the watermark identifier.

[0257] For both the odd-numbered and even-numbered sets, the matching results for each watermark are calculated separately. The first matching ratio obtained from the odd-numbered set is then compared with the second matching ratio obtained from the even-numbered set. The larger result is selected as the target matching ratio. This approach comprehensively considers the matching results of both odd and even-numbered sets, resulting in higher accuracy than a selective approach. Furthermore, combining both odd and even-numbered sets for traceability can mitigate watermark model tampering, effectively improving traceability reliability.

[0258] Refer to the watermark encryption method of the embodiment of the present application for the reverse process of watermark tracing. Figure 15 , Figure 15An optional schematic diagram of the reverse process of watermark traceability provided by an embodiment of the present application. During the watermark encryption process, each target account corresponds to a binary classification function value under the watermark identifier of its service caller. For example, when the binary classification function value is a first value, the watermark model is determined to be divided into odd numbers. When the binary classification function value is a second value, the watermark model is determined to be divided into even numbers. Assume that the first value is 1 and the second value is 0. When performing reverse deduction, the odd set contains M1 target accounts. For a certain watermark identifier, the target characters are extracted from multiple matching bits of the target account in the odd set, and then each target character is matched with the corresponding matching character set for consistency to obtain a matching result. According to the matching result, the reverse binary classification function value of the target account under the corresponding watermark identifier is obtained. If the reverse binary classification function value is the first value 1, the reverse watermark model of the corresponding target account is divided into odd numbers. If the reverse binary classification function value is the second value 0, the reverse watermark model of the corresponding target account is divided into even numbers. Assume that the number of target accounts with an odd reverse watermark model score is M1', and take the ratio of M1' / M1 as the first matching rate of the watermark identifier. Assuming that the watermark identifier is consistent with the watermark identifier of the service caller, then the reverse binary classification function value is theoretically 1, and the reverse watermark model score is theoretically an odd number, so the first matching rate tends to 100%. Similarly, the even set contains M2 target accounts. For a certain watermark identifier, the target characters are extracted from multiple matching positions of the target account in the even set, and then each target character is matched with the corresponding matching character set for consistency to obtain a matching result. Based on the matching result, the reverse binary classification function value of the target account under the corresponding watermark identifier is obtained. If the reverse binary classification function value is the first value 1, then the reverse watermark model score of the corresponding target account is an odd number; if the reverse binary classification function value is the second value 0, then the reverse watermark model score of the corresponding target account is an even number. Assume that the number of target accounts with an even reverse watermark model score is M2', and the ratio of M2' / M2 is used as the second matching rate for the watermark. Assuming that the watermark is consistent with the service caller's watermark, then the reverse binary classification function value is theoretically 1, and the reverse watermark model score is theoretically an even number, so the second matching rate approaches 100%. After calculating the first and second matching rates above, the larger value is selected as the target matching rate for the watermark.

[0259] For example, let's take 10 target accounts as an example. The target accounts are the MD5 hash value of number 1 - the MD5 hash value of number 10, which are:

[0260] Target account 1: c4ca4238a0b923820dcc509a6f75849b; watermark model score is 58;

[0261] Target account 2: c81e728d9d4c2f636f067f89cc14862c; watermark model score is 67;

[0262] Target account 3: eccbc87e4b5ce2fe28308fd9f2a7baf3; watermark model score is 74;

[0263] Target account 4: a87ff679a2f3e71d9181a67b7542122c; watermark model score is 60;

[0264] Target account 5: e4da3b7fbbce2345d7772b0674a318d5; watermark model score: 81;

[0265] Target account 6: 1679091c5a880faf6fb5e6087eb1b2dc; watermark model score: 62;

[0266] Target account 7: 8f14e45fceea167a5a36dedd4bea2543; watermark model score: 80 points;

[0267] Target account 8: c9f0f895fb98ab9159f51fd0297e236d; watermark model score: 88;

[0268] Target account 9: 45c48cce2e2d7fbdea1afc51c7c6ad26; watermark model score: 82;

[0269] Target account 10: 6512bd43d9caa6e02c990b0a82652dca; watermark model score is 92;

[0270] The watermark identifier associated with this customer number is {2|3|14}. The matching character set for the target matching bit identifier "2" is {1,4,b,f,d}, the matching character set for the target matching bit identifier "3" is {4,f,e,a}, and the matching character set for the target matching bit identifier "14" is {4,6,a,f}. During the traceability process, the watermark model points uploaded by this customer are classified into odd and even numbers. The resulting odd-numbered set is: {target account 2, target account 5}, and the even-numbered set is: {target account 1, target account 3, target account 4, target account 6, target account 7, target account 8, target account 9, target account 10}.

[0271] The odd number set contains M1 = 2 odd numbers, corresponding to target account 2 and target account 5. For these two target accounts, the watermark identifier {2|3|14} is used to extract target characters from multiple matching positions. Each target character is then matched with the corresponding matching character set for consistency to obtain a matching result. Based on the matching result, the reverse binary classification function value of the target account under the corresponding watermark identifier is obtained. If the reverse binary classification function value of target account 2 and target account 5 is both 1, then the reverse watermark model scores of target account 2 and target account 5 are odd numbers. The number of target accounts with odd reverse watermark model scores is M1' = 2. At this time, the first matching rate is M1' / M1 = 2 / 2 = 100%. It can be considered that the service caller of this customer number is the tracing result.

[0272] Alternatively, a judgment can be made based on an even-number set, which contains M2 = 8 even numbers, corresponding to target accounts 1, 3, 4, 6, 7, 8, 9, and 10. For these eight target accounts, the watermark identifier {2|3|14} is used to extract target characters from multiple matching positions. Each target character is then matched consistently with the corresponding matching character set to obtain a matching result. Based on the matching result, the reverse binary classification function value of the target account under the corresponding watermark identifier is obtained. If the reverse binary classification function values ​​for all eight target accounts are 0, then the reverse watermark model scores for the corresponding eight target accounts are even numbers. The number of target accounts with even reverse watermark model scores is M2' = 8. At this point, the second matching rate is M2' / M2 = 8 / 8 = 100%. Therefore, it can be assumed that the service caller for this customer number is the tracing result.

[0273] Alternatively, based on the matching results of the odd set and the matching results of the even set, one of the first matching rate and the second matching rate can be selected as the target matching rate to obtain the tracing result. The matching results of the odd set and the even set can also be comprehensively considered. When the first matching rate is greater than the second matching rate, the first matching rate is used as the target matching rate of the watermark identifier; when the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate of the watermark identifier. In this example, the first matching rate is equal to the second matching rate, so the target matching rate is obtained according to the first matching rate or the second matching rate, and then the tracing result is obtained. Comprehensively considering the matching results of the odd set and the even set has a higher calculation accuracy than selecting one of them. Moreover, combining the odd set and the even set for tracing at the same time can deal with the situation where the watermark model is tampered with, and effectively improve the reliability of tracing.

[0274] Step 1305: Determine the target identifier from the multiple watermark identifiers based on the target matching rate, and use the service caller associated with the target identifier as the traceability result of the watermark model score. After obtaining the target matching rate corresponding to each watermark identifier, the watermark identifier with the best match is selected as the target identifier. Since watermark identifiers are associated with service callers one by one, the service caller that received the requested watermark model score can be determined based on the service caller associated with the target identifier.

[0275] In one possible implementation, the process of determining a target identifier from multiple watermark identifiers based on a target matching rate in an embodiment of the present application specifically includes: sorting the multiple watermark identifiers in descending order according to the size of the target matching rate, and determining the watermark identifier at the first position as the target identifier; or sorting the multiple watermark identifiers in ascending order according to the size of the target matching rate, and determining the watermark identifier at the last position as the target identifier.

[0276] Among them, sorting the target matching rate includes two sorting methods: ascending sorting and descending sorting. If it is ascending sorting, the maximum value of the target matching rate is at the last position, and the watermark identifier at the last position is determined as the target identifier. If it is descending sorting, the maximum value of the target matching rate is at the first position, and the watermark identifier at the first position is determined as the target identifier.

[0277] Reference Figure 14 In the illustrated architecture, after obtaining the target identifier, the watermark detection module 127 associates it with the fingerprint key service module 126 for fingerprint matching, determining which service caller the target identifier belongs to. Based on the matching result, a service caller is selected as the traceability result. The watermark detection module 127 then returns the traceability result to the watermark detection party via the API interface layer 123. Since the traceability process does not require information related to the original model score, the watermark model score is blindly detectable, effectively simplifying the traceability process.

[0278] In the above steps 1301 to 1305, when tracing the watermark model points, the target accounts with odd numbers of the watermark model are divided into odd sets, and the target accounts with even numbers of the watermark model are divided into even sets, and multiple watermark fingerprint keys associated with different service callers are obtained. In at least one of the odd sets and the even sets, target characters are extracted from multiple matching bits of the target account according to the watermark identifiers in each watermark fingerprint key, and each target character is matched with the corresponding matching character set in the watermark fingerprint key for consistency to obtain a matching result, and then the target matching rate of each watermark identifier is counted according to the matching result, and the target identifier is determined from the multiple watermark identifiers according to the target matching rate. Since the model watermark tracing is the inverse process of the aforementioned model watermark encryption, the corresponding target identifier can be accurately traced by matching with all watermark fingerprint keys and determining the target matching rate, and then the service caller associated with the target identifier is used as the tracing result of the watermark model points. At the same time, the relevant information of the original model score does not need to be used in the traceability process, so the watermark model score has blind detection, which can effectively simplify the traceability process and enhance the security of the watermark model score.

[0279] The following combination Figure 14 The detailed processing flow of the watermark traceability method for digital services in the embodiment of this application is described in the architecture of Figure 16 , Figure 16 An optional detailed processing flow diagram of the detection service provided in an embodiment of the present application may specifically include the following steps 1601 to 1608.

[0280] Step 1601: The watermark detector sends a digital service traceability request to the SAAS model service.

[0281] The digital service traceability request is used to request the traceability of the watermark model score, and to determine which service caller generated the watermark model score through the digital service call request. The digital service traceability request can be a service call request initiated by the watermark detection party. The watermark detection party is the party that requires the traceability of the watermark model score. The watermark detection party sends the digital service traceability request through the API interface layer 123 of the SAAS model service 120, and at the same time carries the watermark model scores of multiple target accounts in the digital service traceability request. The API interface layer 123 then sends the watermark model scores of the multiple target accounts in the digital service traceability request to the watermark detection module 127 of the digital watermark service module 125.

[0282] Among them, the service provider that provides SAAS model services can count the number of digital service call requests sent by each service caller. When the number of digital service call requests of a certain service caller decreases significantly and the total number of digital service call requests sent by all service callers remains basically unchanged, the service caller with the significantly reduced number of digital service call requests is taken as the target caller, and multiple target accounts belonging to the target caller are obtained. The watermark model scores corresponding to these target accounts are the watermark model scores to be traced.

[0283] Step 1602: The SAAS model service extracts the watermark model scores of multiple target accounts from the digital service traceability request.

[0284] Among them, the target account is set by the service caller to distinguish its service object. Therefore, the target account can be an identification string such as the ID number, object number or mobile phone number of the service object that can be used to distinguish the object. In one possible implementation method, in order to protect the privacy of the object, the target account will be encrypted, and the encrypted data will be used as the target account. The encryption method here can be a hash encryption method. For example, if the target account is a mobile phone number and the encryption method is MD5 hash encryption, the mobile phone number is used as input data, and a fixed-length hash value is generated by the MD5 hash algorithm, and the hash value is used as the target account. At the same time, the number of target accounts should meet a certain scale to meet the detection accuracy requirements, such as the number of target accounts is greater than 1000. However, the embodiment of the present application does not limit the number of target accounts.

[0285] Step 1603: Divide the target accounts whose watermark models are divided into odd numbers into an odd set, divide the target accounts whose watermark models are divided into even numbers into an even set, divide the target accounts whose watermark models are divided into odd numbers into an odd set, and divide the target accounts whose watermark models are divided into even numbers into an even set. In the odd set and the even set, respectively extract the target characters from the multiple matching positions of the target account according to each watermark identifier, perform consistency matching on each target character with the corresponding matching character set to obtain the matching result, and calculate the target matching rate of each watermark identifier according to the matching result.

[0286] The odd-numbered set is used to store target accounts corresponding to odd-numbered watermark model scores, and the even-numbered set is used to store target accounts corresponding to even-numbered watermark model scores. In both the odd-numbered and even-numbered sets, target characters are extracted from multiple matching positions of the target account based on each watermark identifier. Each target character is then matched with the corresponding matching character set to obtain a matching result. The target matching rate of each watermark identifier is calculated based on the matching result. Either the odd-numbered set or the even-numbered set can be selected to calculate the target matching rate for each watermark identifier. Specifically, the target characters are extracted from multiple matching positions of the target account according to each watermark identifier, each target character is matched with the corresponding matching character set for consistency to obtain a matching result, and the target matching rate of each watermark identifier is counted according to the matching result. The process specifically includes: in the odd set, the target characters are extracted from multiple matching positions of the target account according to each watermark identifier, each target character is matched with the corresponding matching character set for consistency to obtain the matching result of the odd set; in the even set, the target characters are extracted from multiple matching positions of the target account according to each watermark identifier, each target character is matched with the corresponding matching character set for consistency to obtain the matching result of the even set; the target matching rate of each watermark identifier is counted according to the matching result of the odd set and the matching result of the even set.

[0287] Furthermore, in order to improve the calculation accuracy, for odd sets and even sets, the first matching rate of each watermark identifier in the odd set is counted based on the matching results of the odd set, and the second matching rate of each watermark identifier in the even set is counted based on the matching results of the even set. When the first matching rate is greater than the second matching rate, the first matching rate is used as the target matching rate of the watermark identifier, and when the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate of the watermark identifier. Then compare the first matching rate obtained from the matching results of the odd set and the second matching rate obtained from the matching results of the even set, and select the larger result as the target matching rate. This method comprehensively considers the matching results of the odd set and the even set, and has a higher calculation accuracy than the method of selecting one or the other. Moreover, combining the odd set and the even set for traceability at the same time can deal with the situation where the watermark model is tampered with, and effectively improve the reliability of traceability.

[0288] The first matching rate and the second matching rate are calculated through the reverse process. During the watermark encryption process, each target account corresponds to a binary classification function value under the watermark identifier of its service caller. For example, when the binary classification function value is the first value, the watermark model is determined to be an odd number. When the binary classification function value is the second value, the watermark model is determined to be an even number. Assume that the first value is 1 and the second value is 0. When performing reverse calculation, the odd set contains M1 target accounts. For a certain watermark identifier, the target characters are extracted from multiple matching positions of the target account in the odd set. Then, each target character is matched with the corresponding matching character set for consistency to obtain a matching result. According to the matching result, the reverse binary classification function value of the target account under the corresponding watermark identifier is obtained. If the reverse binary classification function value is the first value 1, the reverse watermark model of the corresponding target account is divided into an odd number. If the reverse binary classification function value is the second value 0, the reverse watermark model of the corresponding target account is divided into an even number. Assume that the number of target accounts whose reverse watermark model score is an odd number is M1', and the ratio of M1' / M1 is used as the first matching rate of the watermark identifier. Similarly, the second matching rate is obtained.

[0289] Step 1604: obtain multiple watermark fingerprint keys associated with different service callers, determine the target identifier from the multiple watermark identifiers according to the target matching rate, and use the service caller associated with the target identifier as the tracing result of the watermark model.

[0290] Among them, the multiple watermark fingerprint keys obtained, which are respectively associated with different service callers, are the watermark fingerprint keys corresponding to all existing service callers. The construction process of the watermark fingerprint key specifically includes: pre-constructing corresponding watermark identifiers for different customer numbers, the watermark identifier is spliced ​​by multiple different target matching bit identifiers, the target matching bit identifier is used to indicate the matching bit of the target account, the watermark identifiers corresponding to any two customer numbers are different, and pre-constructing corresponding matching character sets for each target matching bit identifier in the watermark identifier. Finally, pre-constructing watermark fingerprint keys for different customer numbers based on the watermark identifier and the corresponding matching character set. Therefore, the watermark fingerprint key obtained in this step includes the watermark identifier used to indicate multiple matching bits in the target account, and the matching character set corresponding to each matching bit.

[0291] The process of determining the target identifier from multiple watermark identifiers based on the target matching rate specifically includes: sorting the multiple watermark identifiers in descending order based on the target matching rate, and determining the watermark identifier at the top as the target identifier; or sorting the multiple watermark identifiers in ascending order based on the target matching rate, and determining the watermark identifier at the bottom as the target identifier. Because watermark identifiers are associated with service callers on a one-to-one basis, the service caller that received the requested watermark model score can be determined based on the service caller associated with the target identifier, thereby obtaining the traceability result.

[0292] Step 1605: Return the tracing result to the watermark detection party.

[0293] After obtaining the target identifier, the watermark detection module 127 associates the fingerprint key service module 126 with the target identifier to perform fingerprint matching, determine which service caller the target identifier belongs to, and select a service caller based on the matching result as the traceability result. The watermark detection module 127 then returns the traceability result to the watermark detection party through the API interface layer 123. When tracing the watermark model points, the target accounts with odd numbers divided by the watermark model are divided into odd sets, and the target accounts with even numbers divided by the watermark model are divided into even sets, and multiple watermark fingerprint keys associated with different service callers are obtained. In at least one of the odd sets and the even sets, target characters are extracted from multiple matching bits of the target account according to the watermark identifiers in each watermark fingerprint key, and each target character is matched with the corresponding matching character set in the watermark fingerprint key for consistency to obtain a matching result, and then the target matching rate of each watermark identifier is counted according to the matching result, and the target identifier is determined from multiple watermark identifiers according to the target matching rate. Since the model watermark tracing is the inverse process of the aforementioned model watermark encryption, the corresponding target identifier can be accurately traced by matching with all watermark fingerprint keys and determining the target matching rate, and then the service caller associated with the target identifier is used as the tracing result of the watermark model points. At the same time, the relevant information of the original model score does not need to be used in the traceability process, so the watermark model score has blind detection, which can effectively simplify the traceability process and enhance the security of the watermark model score.

[0294] The following is a specific example to illustrate the principles of the watermark encryption and traceability method for the digital service provided by the embodiment of the present application.

[0295] Reference Figure 17 , Figure 17A schematic diagram of the principle of the watermark encryption method for the digital service provided in the embodiment of the present application. The digital service traceability request carries M3 target accounts and corresponding watermark models. The target accounts with odd watermark models are divided into odd sets, and the target accounts with even watermark models are divided into even sets, where the number of target accounts in the odd sets is M4, and the number of target accounts in the even sets is M5, satisfying the condition: M4+M5=M3. Assume that there are 26 service callers in AZ, each service caller is associated with a watermark identifier, and the matching bit length in all watermark identifiers is 3, then each watermark identifier corresponds to 3 matching character sets, and in the order of the service callers, the matching character sets are: P0, P1, P2, ... P75, P76 and P77. According to step 1404, target characters are extracted from multiple matching positions of the target account, and each target character is matched with the corresponding matching character set to obtain a matching result. Then, based on the matching results, a first matching rate of the odd-numbered set and a second matching rate of the even-numbered set are obtained, and then the target matching rate of each watermark identifier is obtained by selecting the larger one or selecting one. Figure 17 As described in , the target matching rate of service caller A is 100%, which is the maximum target matching rate. Therefore, the watermark identifier of service caller A is used as the target identifier, and service caller A is used as the service caller requesting the watermark model score, that is, service caller A is the traceability result.

[0296] Reference Figure 18 , which is a schematic diagram of the internal architecture of the SAAS model service that is optional in the embodiment of the present application. The SAAS model service using this architecture can implement the model watermark encryption method and the model watermark traceability method.

[0297] In this embodiment, the SAAS model service 120 includes: an API interface layer 123, a model service module 124 and a digital watermark service module 125, wherein the model service module 124 stores one or more scoring models 121, and the digital watermark service module 125 includes: a fingerprint key service module 126, a watermark encryption service model 122 and a watermark detection module 127.

[0298] The API interface layer 123 provides an external service call interface. This module parses digital service call requests or digital service traceability requests, identifying the identity of the service caller or watermark detector and the call parameters. The model service module 124 calls the scoring model based on the call parameters in the API interface to obtain the original model score. The digital watermark service module 125 mainly provides fingerprint key services, digital watermark encryption services, and watermark detection services.

[0299] Among them, the fingerprint key service module 126 provides fingerprint key services, specifically watermark fingerprint key query services, and stores the watermark fingerprint key of each service caller. In this embodiment of the application, the watermark fingerprint key used in the scoring model is set for different service callers based on the customer number. The watermark fingerprint key is used to perform digital watermark encryption operations on the model score obtained by the scoring model used. The watermark fingerprint key includes a watermark identifier and a corresponding matching character set. These watermark identifiers and matching character sets are unique and mutually exclusive.

[0300] The watermark encryption service model 122 provides a digital watermark encryption service, which digitally watermarks the original model score to obtain a watermark model score embedded with traceability information. The digital watermark encryption process includes extracting target characters from multiple matching bits of the target account number based on the watermark identifier in the watermark fingerprint key, performing consistency matching on each target character with the corresponding matching character set in the watermark fingerprint key to obtain a matching result, and then performing parity adjustment encryption on the original model score based on the matching result with a preset adjustment range to obtain the encrypted watermark model score.

[0301] The watermark detection module 127 provides watermark detection services and watermark tracing services. Watermark tracing is also called watermark decryption. Given the watermark model scores of multiple target accounts, the model score watermark tracing method is used to identify the identity information of the service caller embedded in the batch of watermark model scores. The watermark tracing process includes: when tracing the watermark model points, by dividing the target accounts with odd numbers into odd sets and dividing the target accounts with even numbers into even sets, multiple watermark fingerprint keys associated with different service callers are obtained, and in at least one of the odd sets and the even sets, target characters are extracted from multiple matching bits of the target account according to the watermark identifiers in each watermark fingerprint key, and each target character is matched with the corresponding matching character set in the watermark fingerprint key to obtain a matching result, and then the target matching rate of each watermark identifier is counted according to the matching result, and the target identifier is determined from multiple watermark identifiers according to the target matching rate. Since the model watermark tracing is the inverse process of the aforementioned model watermark encryption, the corresponding target identifier can be accurately traced by matching with all watermark fingerprint keys and determining the target matching rate, and then the service caller associated with the target identifier is used as the tracing result of the watermark model points.

[0302] When performing model score watermark encryption, the service caller 110 sends a digital service call request through the API interface layer 123 of the SAAS model service 120, and carries the target account to be scored in the digital service call request. Then the API interface layer 123 sends the target account in the digital service call request to the model service module 124. The model service module 124 selects the corresponding scoring model 121 according to the target account to score the target account and obtain the original model score. The model service module 124 then inputs the original model score into the digital watermark service module 125. The fingerprint key service module 126 associates the corresponding watermark fingerprint key according to the customer number of the service caller 110, and then sends the watermark fingerprint key and the original model score to the watermark encryption service model 122 for digital watermark encryption to obtain the watermark model score, and then sends the watermark model score to the service caller 110 through the API interface layer 123.

[0303] When performing model watermark tracing, the watermark detection party sends a digital service tracing request through the API interface layer 123 of the SAAS model service 120, and carries the watermark model points of multiple target accounts in the digital service tracing request. Then the API interface layer 123 sends the watermark model points of multiple target accounts in the digital service tracing request to the watermark detection module 127 of the digital watermark service module 125. The watermark detection module 127 performs watermark tracing operations on the watermark models of multiple target accounts in batches to obtain target identifiers, and then associates the fingerprint key service module 126 to perform fingerprint library matching, determines which service caller the target identifier belongs to, and selects a service caller as the tracing result based on the matching result. The watermark detection module 127 then returns the tracing result to the watermark detection party through the API interface layer 123.

[0304] The following describes the implementation effects of the watermark encryption method for digital services and the watermark traceability method for digital services in the embodiments of the present application, mainly from the perspectives of validity requirements, uniqueness requirements, scalability requirements, blind detection requirements, and concealment requirements.

[0305] To verify the effectiveness of the watermark encryption method for digital services in this embodiment, four channel vendors were randomly selected from a real production environment as service callers: qd_272, qd_273, qd_275, and qd_278. Their customer numbers were 272, 273, 275, and 278, respectively. The call traffic generated by the API interface layer was then obtained to simulate the number of target accounts scored by different service callers. The call record statistics for each service caller are shown in Table 1:

[0306] Service caller Customer Number Number of target accounts qd_272 272 248123 qd_273 273 221435 qd_275 275 221316 qd_278 278 26675

[0307] Table 1 Call record of service caller

[0308] The watermark identifiers of different service callers and the corresponding matching character sets are shown in Table 2 below:

[0309]

[0310] Table 2 Watermark identifier of service caller and corresponding matching character set

[0311] The odd-even distribution refers to the first probability distribution and the second probability distribution.

[0312] First, the validity requirement is verified. The validity requirement means that the distribution of the watermark model score and the original model score are consistent, the PSI value is strictly less than a certain threshold, for example, less than 0.05, and the difference between the watermark model score and the original model score remains within a preset score. For example, the preset score is 2 points, that is, the inconsistency rate above 2 points is less than 5%. In addition, the attenuation of the KS value of the watermark model score and the KS value of the original model score is controlled within a certain threshold, for example, within 5%. The goal is to minimize the impact of the watermark model score on the original model score.

[0313] After performing digital watermark encryption on the target accounts of the four service callers, the corresponding watermark model scores are obtained. The PSI value is obtained based on the data distribution of the watermark model scores and the original model scores, and the inconsistency rate between the two is calculated. Figure 19 , Figure 19 This is a diagram showing the data distribution of the watermark model scores and original model scores provided in this embodiment. The data distribution of the watermark model scores and original model scores for the four service callers remained consistent and largely overlapped. The average PSI value was 0.001, far below the threshold of 0.05, and the inconsistency rate for scores above 2 was 0%, far below the validity requirement of 5%. Table 4 below shows the KS values ​​of the original model scores and watermark model scores for the four service callers.

[0314] qd_272 qd_273 qd_275 qd_278 KS value of the original model 20.94 20.94 20.94 20.94 KS value of watermark model 20.94 20.94 20.94 20.94

[0315] It can be seen that the watermark model score and the original model score KS decay to 0. Therefore, it can be seen that the watermark encryption method for digital services in the embodiment of the present application can meet the validity requirements.

[0316] Next, the uniqueness requirement is verified. The uniqueness requirement specifically means that when decoding the watermark model, it can be traced back to the only service caller.

[0317] Table 3 below shows the target matching rates obtained by four simulated service callers when performing watermark tracing.

[0318]

[0319] Table 3 Target matching rate obtained by the service caller when tracing the watermark

[0320] Table 3 above shows the target matching rates of each watermark identifier in the model watermark tracing method at different service callers. In theory, since the watermark identifiers are independent of each other, when the matching bits of each service caller are mutually exclusive, the matching results of the target characters of the target account under different watermark identifiers are different, so the target matching rates of each watermark identifier are different. The target matching rate corresponding to the target identifier is 100%, and the target matching rates of other watermark identifiers are preset odd-even distributions, which are approximately equal to 48.33%. In this way, the target identifier can be uniquely determined according to the size of the target matching rate. The watermark tracing method for digital services proposed in the embodiment of the present application can meet the uniqueness requirements.

[0321] Then the scalability verification is carried out. The scalability requirement specifically refers to: if there is a new channel customer as the service caller, it is only necessary to generate a unique watermark fingerprint key for it according to its demand for the scoring model, so that the new encryption requirements can be easily expanded and adapted without affecting the encryption process of other service callers. Since the embodiment of the present application only needs to set a unique watermark fingerprint key for the service caller to provide the service caller with a model watermark encryption method and a model watermark traceability method. In theory, as long as the watermark identifier and the matching character set are not completely consistent, the uniqueness of the watermark scheme can be guaranteed. For example, the target account is the md5 hash value of the mobile phone number. Since the hash value has 32 bits, assuming that the watermark identifier of each service caller uses 3 target matching bits to identify it, then at least A(32,3)=29760 different watermark fingerprint keys can be provided, which can meet the scalability requirements.

[0322] In addition, the blind detection requirement means that the model score watermark traceability method must be imperceptible to the service caller, that is, the service caller cannot easily perceive the process of the watermark detector tracing the watermark model score. Because the model score watermark traceability method in the embodiment of the application does not require the original, unwatermarked model score, it only needs to obtain a batch of (target account, watermark model score) binary data provided by the service caller to complete the watermark model score traceability process. Therefore, it can meet the blind detection requirement.

[0323] In addition, the requirement for concealment means that the model score watermark encryption method must be imperceptible to the service caller, that is, the service caller cannot easily perceive that it is obtaining the watermark model score after watermark encryption. Because the watermark model score and the original model score in the embodiment of the present application maintain a very high overlap in data distribution, and after the digital watermark encryption in the embodiment of the present application, the first probability distribution and the second probability distribution representing the odd and even distribution proportions of the watermark model score are roughly the same, the service caller cannot easily perceive the difference between the watermark model score and the original model score. Therefore, the model score watermark encryption method in the embodiment of the present application meets the concealment requirement.

[0324] It will be appreciated that, although the various steps in the above-mentioned various flow charts are shown in sequence according to the indication of the arrows, these steps are not necessarily performed in sequence according to the order indicated by the arrows. Unless clearly stated in the present embodiment, the execution of these steps does not have strict order restrictions, and these steps can be performed in other orders. Moreover, at least a portion of the steps in the above-mentioned flow charts can include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these steps or stages is not necessarily performed in sequence, but can be performed in turn or alternately with at least a portion of the steps or stages in other steps or other steps.

[0325] On the other hand, refer to Figure 20 , Figure 20 This is an optional structural diagram of a watermark encryption device for a digital service provided in an embodiment of the present application. The watermark encryption device 2000 for a digital service includes:

[0326] Scoring module 2010, configured to receive a digital service call request, extract a target account to be scored from the digital service call request, invoke a scoring model to score the target account, and obtain an original model score for the target account;

[0327] A first key acquisition module 2020 is configured to extract the customer number of the service caller from the digital service call request and obtain a watermark fingerprint key associated with the customer number, wherein the watermark fingerprint key includes a watermark identifier for indicating multiple matching digits in the target account number and a matching character set corresponding to each matching digit;

[0328] The first matching module 2030 is used to extract target characters from multiple matching positions of the target account according to the watermark identifier, and perform consistency matching on each target character with the corresponding matching character set to obtain a matching result;

[0329] The encryption module 2040 is used to perform parity adjustment-based encryption processing on the original model score according to the matching result with a preset adjustment range to obtain an encrypted watermark model score.

[0330] Furthermore, the first secret key acquisition module 2020 is specifically used to:

[0331] Pre-constructing corresponding watermark identifiers for different customer numbers, wherein the watermark identifier is composed of a plurality of different target matching bit identifiers, each of which is used to indicate a matching bit of the target account number, and the watermark identifiers corresponding to any two customer numbers are different;

[0332] Pre-building a corresponding matching character set for each target matching bit identifier in the watermark identifier;

[0333] Pre-construct watermark fingerprint keys for different customer numbers according to the watermark identifier and the corresponding matching character set, and obtain the watermark fingerprint key associated with the current customer number.

[0334] Furthermore, the first secret key acquisition module 2020 is specifically used to:

[0335] Determine the matching bit length of the target account and obtain multiple candidate matching bit identifiers;

[0336] For different customer numbers, multiple target matching bit identifiers corresponding to the matching bit lengths are extracted from multiple candidate matching bit identifiers, and the multiple target matching bit identifiers are spliced ​​to obtain watermark identifiers corresponding to each customer number.

[0337] Furthermore, the first secret key acquisition module 2020 is specifically used to:

[0338] Determine the number of first character types in the matching character set corresponding to each target matching bit identifier;

[0339] A plurality of matching characters are extracted from the account character set according to the number of the first character types, and a corresponding matching character set is pre-built for each target matching position identifier based on the plurality of matching characters.

[0340] Furthermore, the first secret key acquisition module 2020 is specifically used to:

[0341] determining the number of second character types in the account character set;

[0342] When determining the first number of character types in the matching character set corresponding to each target matching bit identifier, a first probability distribution is generated based on the first number of character types and the second number of character types, in which each target character matches any matching character in the corresponding matching character set, and a second probability distribution is generated in which any target character does not match any matching character in the corresponding matching character set, until the difference between the first probability distribution and the second probability distribution is less than or equal to a preset threshold.

[0343] Furthermore, the encryption module 2040 is specifically configured to:

[0344] Determine the binary classification function value corresponding to the target account according to the matching result;

[0345] According to the binary classification function value, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

[0346] Furthermore, the encryption module 2040 is specifically configured to:

[0347] When the matching result is that each of the target characters matches any one of the corresponding matching characters in the set of matching characters, determining the binary classification function value corresponding to the target account as the first value;

[0348] Alternatively, when the matching result is that any one of the target characters does not match any of the matching characters in the corresponding matching character set, the binary classification function value corresponding to the target account is determined to be the second value.

[0349] Furthermore, the encryption module 2040 is specifically configured to:

[0350] When the binary classification function value is the first value, determining that the watermark model is classified as an odd number;

[0351] If the original model score is an even number, the first preset value is increased or the second preset value is decreased to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score; or, when the original model score is an odd number, the original model score is kept unchanged as the encrypted watermark model score.

[0352] Furthermore, the encryption module 2040 is specifically configured to:

[0353] When the binary classification function value is the second value, determining that the watermark model is classified as an even number;

[0354] If the original model score is an odd number, the first preset value is increased or the second preset value is decreased to increase the original model score by the first preset value or decrease the second preset value to obtain the encrypted watermark model score; or, when the original model score is an even number, the original model score is kept unchanged as the encrypted watermark model score.

[0355] The watermark encryption device 2000 of the digital service is Figure 5The illustrated digital service watermark encryption method is based on the same inventive concept. It extracts the service caller's customer number from a digital service call request, obtains a watermark fingerprint key associated with the customer number, extracts target characters from multiple matching bits of the target account number based on the watermark identifier in the watermark fingerprint key, and performs consistency matching on each target character with the corresponding matching character set in the watermark fingerprint key to obtain a matching result. Based on the matching result, the original model score is encrypted using a parity adjustment with a preset adjustment amplitude to obtain an encrypted watermark model score. Therefore, the preset adjustment amplitude can be used to perform a minimal affine transformation on the original model score, and only the parity of the original model score is adjusted. This reduces the impact on the model score during watermark encryption, improving the validity of the model score. Furthermore, because parity is an inherent characteristic of the original model score, the digital watermark in the encrypted watermark model score is difficult to perceive, thus providing good encryption confidentiality.

[0356] On the other hand, refer to Figure 21 , Figure 21 This is an optional structural diagram of a watermark traceability device for a digital service provided in an embodiment of the present application. The watermark traceability device 2100 for a digital service includes:

[0357] The watermark model score acquisition module 2110 is used to receive a digital service traceability request and extract the watermark model scores of multiple target accounts from the digital service traceability request;

[0358] A division module 2120 is configured to divide target accounts whose watermark models are divided into odd numbers into an odd set, and to divide target accounts whose watermark models are divided into even numbers into an even set;

[0359] A second key acquisition module 2130 is configured to acquire multiple watermark fingerprint keys associated with different service callers, wherein the watermark fingerprint keys include a watermark identifier for indicating multiple matching bits in the target account and a matching character set corresponding to each matching bit;

[0360] A second matching module 2140 is configured to extract target characters from multiple matching positions of the target account number in at least one of the odd-numbered set and the even-numbered set according to each watermark identifier, perform consistency matching on each target character with the corresponding matching character set to obtain a matching result, and calculate a target matching rate for each watermark identifier based on the matching result;

[0361] The tracing module 2150 is used to determine the target identifier from multiple watermark identifiers according to the target matching rate, and use the service caller associated with the target identifier as the tracing result of the watermark model.

[0362] Furthermore, the second matching module 2140 is specifically configured to:

[0363] In the odd-numbered set, target characters are extracted from the multiple matching positions of the target account according to each watermark identifier, and each target character is matched with the corresponding matching character set for consistency, to obtain a matching result of the odd-numbered set;

[0364] In the even-numbered set, target characters are extracted from the multiple matching positions of the target account according to each watermark identifier, and each target character is matched with the corresponding matching character set for consistency, to obtain a matching result of the even-numbered set;

[0365] The target matching rate of each watermark identifier is calculated according to the matching results of the odd-numbered set and the matching results of the even-numbered set.

[0366] Furthermore, the second matching module 2140 is specifically configured to:

[0367] Counting the first matching rate of each watermark identifier in the odd-numbered set according to the matching results of the odd-numbered set;

[0368] Counting a second matching rate of each watermark identifier in the even-numbered set according to the matching result of the even-numbered set;

[0369] When the first matching rate is greater than the second matching rate, the first matching rate is used as the target matching rate of the watermark identifier;

[0370] When the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate of the watermark identifier.

[0371] Furthermore, the second matching module 2140 is specifically configured to:

[0372] sorting the plurality of watermark identifiers in descending order according to the target matching rates, and determining the watermark identifier at the top as the target identifier;

[0373] Alternatively, the plurality of watermark identifiers are sorted in ascending order according to the target matching rates, and the watermark identifier at the last position is determined as the target identifier.

[0374] The watermark traceability device 2100 of the digital service Figure 13The watermark tracing method for digital services shown is based on the same inventive concept. When tracing the watermark model points, the target accounts divided by the watermark model into odd numbers are divided into odd sets, and the target accounts divided by the watermark model into even numbers are divided into even sets, and multiple watermark fingerprint keys associated with different service callers are obtained. In at least one of the odd sets and the even sets, target characters are extracted from multiple matching bits of the target account according to the watermark identifiers in each watermark fingerprint key, and each target character is matched with the corresponding matching character set in the watermark fingerprint key for consistency to obtain a matching result. Then, the target matching rate of each watermark identifier is counted according to the matching result, and the target identifier is determined from multiple watermark identifiers according to the target matching rate. Since the model-based watermark tracing is the inverse process of the aforementioned model-based watermark encryption, the corresponding target identifier can be accurately traced by matching with all watermark fingerprint keys and determining the target matching rate, and then the service caller associated with the target identifier is used as the tracing result of the watermark model points. At the same time, the relevant information of the original model does not need to be used in the traceability process, so the watermark model has blind detection properties, which can effectively simplify the traceability process.

[0375] The electronic device for executing the above-mentioned blockchain data processing method provided in the embodiment of the present application may be a terminal, referring to Figure 22 , Figure 22 This is a partial structural block diagram of a terminal provided in an embodiment of the present application. The terminal includes: a camera assembly 2210, a memory 2220, an input unit 2230, a display unit 2240, a sensor 2250, an audio circuit 2260, a wireless fidelity (WiFi) module 2270, a processor 2280, and a power supply 2290. Those skilled in the art will understand that Figure 22 The terminal structure shown in the figure does not constitute a limitation to the terminal, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0376] The camera assembly 2210 can be used to capture images or videos. Optionally, the camera assembly 2210 includes a front camera and a rear camera. Typically, the front camera is set on the front panel of the terminal, and the rear camera is set on the back of the terminal. In some embodiments, there are at least two rear cameras, which are any one of a main camera, a depth of field camera, a wide-angle camera, and a telephoto camera, so as to realize the fusion of the main camera and the depth of field camera to realize the background blur function, the fusion of the main camera and the wide-angle camera to realize panoramic shooting and VR (Virtual Reality) shooting function or other fusion shooting functions.

[0377] The memory 2220 may be used to store software programs and modules. The processor 2280 executes various functional applications and data processing of the terminal by running the software programs and modules stored in the memory 2220 .

[0378] The input unit 2230 may be configured to receive input digital or character information and generate key signal input related to the terminal's settings and function control. Specifically, the input unit 2230 may include a touch panel 2231 and other input devices 2232 .

[0379] The display unit 2240 may be configured to display input information or provided information and various menus of the terminal. The display unit 2240 may include a display panel 2241.

[0380] The audio circuit 2260 , the speaker 2261 , and the microphone 2262 may provide an audio interface.

[0381] The power source 2290 may be alternating current, direct current, disposable batteries, or rechargeable batteries.

[0382] The number of sensors 2250 can be one or more, and the one or more sensors 2250 include but are not limited to: acceleration sensors, gyroscope sensors, pressure sensors, optical sensors, etc. Among them:

[0383] The accelerometer can detect the magnitude of acceleration along the three coordinate axes of the coordinate system established by the terminal. For example, the accelerometer can be used to detect the components of gravity acceleration along the three coordinate axes. The processor 2280 can control the display unit 2240 to display the user interface in a landscape or portrait view based on the gravity acceleration signal collected by the accelerometer. The accelerometer can also be used to collect game or user motion data.

[0384] The gyroscope sensor can detect the device's orientation and rotation angle. It can also work with the accelerometer to capture the user's 3D movements. Based on the data collected by the gyroscope sensor, the processor 2280 can implement the following functions: motion sensing (such as changing the UI based on the user's tilt), image stabilization during shooting, game control, and inertial navigation.

[0385] The pressure sensor can be set on the side frame of the terminal and / or the lower layer of the display unit 2240. When the pressure sensor is set on the side frame of the terminal, it can detect the user's grip signal of the terminal, and the processor 2280 performs left and right hand recognition or shortcut operations based on the grip signal collected by the pressure sensor. When the pressure sensor is set on the lower layer of the display unit 2240, the processor 2280 controls the operability controls on the UI interface based on the user's pressure operation on the display unit 2240. The operability controls include at least one of a button control, a scroll bar control, an icon control, and a menu control.

[0386] The optical sensor is used to detect ambient light intensity. In one embodiment, the processor 2280 can control the display brightness of the display unit 2240 based on the ambient light intensity detected by the optical sensor. Specifically, when the ambient light intensity is high, the display brightness of the display unit 2240 is increased; when the ambient light intensity is low, the display brightness of the display unit 2240 is decreased. In another embodiment, the processor 2280 can also dynamically adjust the shooting parameters of the camera assembly 2210 based on the ambient light intensity detected by the optical sensor.

[0387] In this embodiment, the processor 2280 included in the terminal can execute the blockchain data processing method of the previous embodiment.

[0388] The electronic device for executing the above-mentioned blockchain data processing method provided in the embodiment of the present application may also be a server, referring to Figure 23 , Figure 23 This is a partial structural block diagram of a server provided in an embodiment of the present application. The server 2300 may have relatively large differences due to different configurations or performances, and may include one or more central processing units (CPUs) 2322 (for example, one or more processors) and memories 2332, and one or more storage media 2330 (for example, one or more mass storage devices) storing application programs 2342 or data 2344. Among them, the memories 2332 and the storage media 2330 may be temporary storage or permanent storage. The program stored in the storage medium 2330 may include one or more modules (not shown in the figure), and each module may include a series of instruction operations on the server 2300. Furthermore, the central processing unit 2322 may be configured to communicate with the storage medium 2330 to execute a series of instruction operations in the storage medium 2330 on the server 2300.

[0389] The server 2300 may also include one or more power supplies 2326, one or more wired or wireless network interfaces 2350, one or more input and output interfaces 2358, and / or one or more operating systems 2341, such as Windows Server™, Mac OS X™, Unix™, Linux™, FreeBSD™, etc.

[0390] The processor in server 2300 can be used to execute the blockchain data processing method.

[0391] An embodiment of the present application further provides a computer-readable storage medium, which is used to store program code, and the program code is used to execute the blockchain data processing method of each of the aforementioned embodiments.

[0392] The present application also provides a computer program product, comprising a computer program stored in a computer-readable storage medium. A processor of a computer device reads the computer program from the computer-readable storage medium and executes the computer program, causing the computer device to implement the aforementioned blockchain data processing method.

[0393] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential order. It should be understood that the numbers used in this way can be interchanged where appropriate to describe the embodiments of the present application, for example, they can be implemented in an order other than those illustrated or described here. 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 necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0394] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0395] It should be understood that in the description of the embodiments of the present application, multiple (or multiple items) means more than two, greater than, less than, exceed, etc. are understood to exclude the number itself, and above, below, within, etc. are understood to include the number itself.

[0396] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of units is only a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interface, device or unit, which can be electrical, mechanical or other forms.

[0397] Units described as separate components may or may not be physically separate, and components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.

[0398] In addition, the functional units in the various embodiments of the present application may be integrated into a single processing unit, or each unit may exist physically separately, or two or more units may be integrated into a single unit. The aforementioned integrated units may be implemented in the form of hardware or software functional units.

[0399] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the various embodiments 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 random access memory (RAM), a magnetic disk or an optical disk.

[0400] It should also be understood that the various implementation methods provided in the embodiments of the present application can be combined arbitrarily to achieve different technical effects.

[0401] The above is a specific description of the preferred implementation of the present application, but the present application is not limited to the above implementation mode. Technical personnel familiar with the art can also make various equivalent modifications or substitutions under the shared conditions that do not violate the spirit of the present application. These equivalent modifications or substitutions are all included in the scope defined by the claims of the present application.

Claims

1. A watermark encryption method for digital services, characterized in that: include: receiving a digital service call request, extracting a target account to be scored from the digital service call request, calling a scoring model to score the target account, and obtaining an original model score of the target account; Extracting the customer number of the service caller from the digital service call request, and obtaining a watermark fingerprint key associated with the customer number, wherein the watermark fingerprint key includes a watermark identifier for indicating a plurality of matching positions in the target account number, and a matching character set corresponding to each of the matching positions; Extracting target characters from the multiple matching positions of the target account according to the watermark identifier, and matching each target character with the corresponding matching character set to obtain a matching result; According to the matching result, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

2. The model watermark encryption method according to claim 1, characterized in that: The step of obtaining the watermark fingerprint key associated with the customer number includes: Pre-constructing corresponding watermark identifiers for different customer numbers, wherein the watermark identifier is composed of a plurality of different target matching bit identifiers, the target matching bit identifier is used to indicate the matching bit of the target account number, and the watermark identifiers corresponding to any two customer numbers are different; Pre-constructing a corresponding matching character set for each target matching position identifier in the watermark identifier; Pre-build watermark fingerprint keys for different customer numbers according to the watermark identifier and the corresponding matching character set, and obtain the watermark fingerprint key associated with the current customer number.

3. The model watermark encryption method according to claim 2, characterized in that: The pre-building of corresponding watermark identifiers for different customer numbers includes: Determine the matching bit length of the target account, and obtain multiple candidate matching bit identifiers; For different customer numbers, multiple target matching bit identifiers corresponding to the matching bit lengths are extracted from the multiple candidate matching bit identifiers, and the multiple target matching bit identifiers are concatenated to obtain watermark identifiers corresponding to each customer number.

4. The model watermark encryption method according to claim 2, characterized in that: The target account is constructed from characters in the account character set, and the pre-construction of a corresponding matching character set for each target matching position identifier in the watermark identifier includes: Determine the number of first character types of the matching character set corresponding to each of the target matching bit identifiers; A plurality of matching characters are extracted from the account character set according to the first number of character types, and a corresponding matching character set is pre-constructed for each target matching position identifier according to the plurality of matching characters.

5. The model watermark encryption method according to claim 4 is characterized in that: The determining the number of first character types of the matching character set corresponding to each of the target matching bit identifiers includes: Determining the number of second character types of the account character set; When determining the first number of character types in the matching character set corresponding to each target matching bit identifier, a first probability distribution is generated based on the first number of character types and the second number of character types, in which each target character matches any matching character in the corresponding matching character set, and a second probability distribution is generated in which any target character does not match any matching character in the corresponding matching character set, until the difference between the first probability distribution and the second probability distribution is less than or equal to a preset threshold.

6. The model watermark encryption method according to claim 1, characterized in that: The step of performing encryption processing based on parity adjustment on the original model score with a preset adjustment range according to the matching result to obtain an encrypted watermark model score includes: Determine a binary classification function value corresponding to the target account according to the matching result; According to the binary classification function value, the original model score is encrypted based on parity adjustment with a preset adjustment range to obtain an encrypted watermark model score.

7. The model watermark encryption method according to claim 6, characterized in that: The binary classification function value includes a first value or a second value, the matching character set includes a plurality of matching characters, and determining the binary classification function value corresponding to the target account according to the matching result includes: When the matching result is that each of the target characters matches any one of the corresponding matching characters in the matching character set, determining that the binary classification function value corresponding to the target account is the first value; Alternatively, when the matching result is that any one of the target characters does not match any of the matching characters in the corresponding matching character set, it is determined that the binary classification function value corresponding to the target account is the second value.

8. The model watermark encryption method according to claim 6, characterized in that: The binary classification function value includes a first value or a second value, the adjustment range includes increasing a first preset value, decreasing a second preset value, or keeping it unchanged, and performing encryption processing based on parity adjustment on the original model score with a preset adjustment range according to the binary classification function value to obtain an encrypted watermark model score, including: When the binary classification function value is the first value, determining that the watermark model is classified into an odd number; If the original model score is an even number, the original model score is increased by a first preset value or decreased by a second preset value to obtain an encrypted watermark model score. Alternatively, when the original model score is an odd number, the original model score is kept unchanged as the encrypted watermark model score.

9. The model watermark encryption method according to claim 8, characterized in that: The step of performing encryption processing based on parity adjustment on the original model score with a preset adjustment range according to the binary classification function value to obtain an encrypted watermark model score further includes: When the binary classification function value is the second value, determining that the watermark model is classified into an even number; If the original model score is an odd number, the original model score is increased by a first preset value or decreased by a second preset value to obtain an encrypted watermark model score. Alternatively, when the original model score is an even number, the original model score is kept unchanged as the encrypted watermark model score.

10. A watermark tracing method for digital services, characterized in that: include: receiving a digital service traceability request, and extracting watermark model scores of multiple target accounts from the digital service traceability request; The target accounts for which the watermark model is divided into odd numbers are divided into an odd-numbered set, and the target accounts for which the watermark model is divided into even numbers are divided into an even-numbered set; Acquire multiple watermark fingerprint keys respectively associated with different service callers, wherein the watermark fingerprint keys include watermark identifiers for indicating multiple matching positions in the target account, and matching character sets corresponding to the matching positions; In at least one of the odd-numbered set and the even-numbered set, target characters are extracted from the multiple matching positions of the target account according to each of the watermark identifiers, each of the target characters is matched with the corresponding matching character set to obtain a matching result, and a target matching rate of each of the watermark identifiers is counted according to the matching result; A target identifier is determined from the multiple watermark identifiers according to the target matching rate, and a service caller associated with the target identifier is used as a tracing result of the watermark model.

11. The model watermarking tracing method according to claim 10 is characterized in that: The step of extracting target characters from the plurality of matching positions of the target account number according to each of the watermark identifiers in at least one of the odd-numbered set and the even-numbered set, performing consistency matching on each of the target characters and the corresponding matching character set to obtain a matching result, and calculating target matching rates of each of the watermark identifiers according to the matching result, comprises: In the odd-numbered set, target characters are extracted from the multiple matching positions of the target account according to each of the watermark identifiers, and each of the target characters is matched with the corresponding matching character set to obtain a matching result of the odd-numbered set; In the even-numbered set, target characters are extracted from the multiple matching positions of the target account according to each of the watermark identifiers, and each of the target characters is matched with the corresponding matching character set to obtain a matching result of the even-numbered set; The target matching rate of each of the watermark identifiers is calculated according to the matching results of the odd-numbered set and the matching results of the even-numbered set.

12. The model watermarking tracing method according to claim 11 is characterized in that: The counting of target matching rates of the watermark identifiers according to the matching results of the odd-numbered set and the matching results of the even-numbered set includes: Counting the first matching rate of each of the watermark identifiers in the odd-numbered set according to the matching results of the odd-numbered set; Counting the second matching rate of each of the watermark identifiers in the even-numbered set according to the matching result of the even-numbered set; When the first matching rate is greater than the second matching rate, taking the first matching rate as the target matching rate of the watermark identifier; When the first matching rate is less than the second matching rate, the second matching rate is used as the target matching rate of the watermark identifier.

13. The model watermarking traceability method according to claim 10 is characterized in that: The step of determining a target identifier from a plurality of watermark identifiers according to the target matching rate includes: sorting the plurality of watermark identifiers in descending order according to the size of the target matching rate, and determining the watermark identifier at the first position as the target identifier; Alternatively, the plurality of watermark identifiers are sorted in ascending order according to the target matching rates, and the watermark identifier at the last position is determined as the target identifier.

14. A watermark encryption device for digital services, characterized in that: include: A scoring module, configured to receive a digital service call request, extract a target account to be scored from the digital service call request, and call a scoring model to score the target account to obtain an original model score of the target account; A first key acquisition module is used to extract the customer number of the service caller from the digital service call request, and obtain a watermark fingerprint key associated with the customer number, wherein the watermark fingerprint key includes a watermark identifier for indicating multiple matching positions in the target account, and a matching character set corresponding to each matching position; A first matching module, configured to extract target characters from the plurality of matching positions of the target account according to the watermark identifier, and perform consistency matching between each target character and a corresponding set of matching characters to obtain a matching result; The encryption module is used to perform encryption processing based on parity adjustment on the original model score with a preset adjustment range according to the matching result to obtain an encrypted watermark model score.

15. A watermark tracing device for digital services, characterized in that: include: A watermark model score acquisition module, used to receive a digital service traceability request and extract watermark model scores of multiple target accounts from the digital service traceability request; A division module, configured to divide the target accounts whose watermark models are divided into odd numbers into an odd-numbered set, and divide the target accounts whose watermark models are divided into even numbers into an even-numbered set; A second key acquisition module is used to acquire multiple watermark fingerprint keys respectively associated with different service callers, wherein the watermark fingerprint keys include a watermark identifier for indicating multiple matching positions in the target account, and a matching character set corresponding to each matching position; A second matching module is used to extract target characters from the multiple matching positions of the target account according to each of the watermark identifiers in at least one of the odd-numbered set and the even-numbered set, perform consistency matching on each of the target characters and the corresponding matching character set to obtain a matching result, and calculate a target matching rate of each of the watermark identifiers according to the matching result; The tracing module is used to determine the target identifier from the multiple watermark identifiers according to the target matching rate, and use the service caller associated with the target identifier as the tracing result of the watermark model.

16. An electronic device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, it implements the model watermark encryption method described in any one of claims 1 to 9, or implements the model watermark tracing method described in any one of claims 10 to 13.

17. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, it implements the model watermark encryption method described in any one of claims 1 to 9, or implements the model watermark tracing method described in any one of claims 10 to 13.

18. A computer program product, comprising a computer program, characterized in that When the computer program is executed by a processor, it implements the model watermark encryption method described in any one of claims 1 to 9, or implements the model watermark tracing method described in any one of claims 10 to 13.

Citation Information

Cited By

  • Project file confidentiality management system and method based on SD-WAN overseas network environment

    CN121211483A