A general lossless privacy protection recommendation method, device, equipment and medium
By combining the item exchange mechanism of random response and PSI with asymmetric encryption, it realizes the protection of user privacy in the recommendation system while improving prediction accuracy and universality, solving the problem of insufficient prediction performance and universality in traditional methods.
Patent Information
- Application Number
- CN202510302177.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-14
- Publication Date
- 2025-07-29
- Estimated Expiration
- 2045-03-14
AI Technical Summary
Traditional privacy protection recommendation methods have shortcomings in prediction performance and universality, especially the addition of noise or model pruning causes inaccurate prediction results, and are only applicable to sequence recommendation models, but cannot be applied to other recommendation models such as single behavior and multiple behaviors.
The item exchange mechanism based on random response and the common item marking mechanism based on PSI are adopted, combined with asymmetric encryption, to realize privacy protection data exchange and encoding processing between the client and the server, predict through the recommendation model, and finally use inverse process reasoning to obtain recommended items.
While protecting user privacy, it improves the accuracy of prediction results of the recommendation system and the versatility of privacy protection methods, and can be applied to multiple recommendation models without losing prediction performance.
Smart Images

Figure CN119808166B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of recommendation systems. More specifically, this application relates to a general lossless privacy protection recommendation method, apparatus, device and medium. Background Art
[0002] In today's digital age, recommendation systems have become an essential and crucial component of various online platforms, such as e-commerce and social media. It can greatly alleviate the problem of information overload and help users (clients) accurately find items that match their interests and preferences. However, traditional recommendation systems mainly rely on servers to collect and organize users' historical data, such as browsing records, click records, and purchase behavior records, to train a centralized recommendation model to predict the final recommended items. However, these historical data often involve users' privacy, thus leading to privacy and security issues.
[0003] To solve this privacy and security problem, traditional privacy protection recommendation methods adopt a privacy protection framework for cross-domain sequential recommendation and a privacy protection framework for cross-user sequential recommendation to achieve the purpose of privacy protection while recommending items. Specifically, the privacy protection framework for cross-domain sequential recommendation disrupts the data in the source domain by designing a differential privacy algorithm, and then sends the disrupted data to the target domain. The target domain protects the privacy of users in the source domain during the process of training or predicting the disrupted data; while the operation mode of the privacy protection framework for user sequential recommendation is to pre-train a recommendation model on the server using the data collected before the implementation of GDPR (General Data Protection Regulation). Subsequently, when GDPR comes into effect, this framework fine-tunes the pre-trained model locally using personal privacy data. In this way, the purpose of recommending items and protecting users' privacy can be achieved. However, these two frameworks have two common deficiencies. First, compared with traditional recommendation models, due to operations such as adding noise or implementing model pruning, these two frameworks will experience losses, resulting in a decline in prediction performance and inaccurate prediction results. Second, both of these frameworks are only applicable to sequential recommendation models, and are not applicable to other recommendation models, such as single-behavior, multi-behavior, and multi-behavior sequential recommendation models. Therefore, the generality of traditional privacy protection recommendation methods needs to be improved. Summary of the Invention
[0004] The purpose of the embodiments of this application is to provide a general lossless privacy protection recommendation method, apparatus, device and medium, which can improve the accuracy of prediction results and the generality of the privacy protection recommendation method while protecting users' privacy in the recommendation system. The embodiments of this application are mainly implemented through the following technical solutions:
[0005] In the first aspect of the embodiments of the present application, a general lossless privacy protection recommendation method is provided, which is applied to a first client. The general lossless privacy protection recommendation method includes:
[0006] Receiving first packet information sent by a server;
[0007] Performing data exchange processing on all public keys in the first packet information by using an item exchange mechanism based on random response to obtain target perturbed data;
[0008] Performing encoding processing on each element in the target perturbed data by using a common item marking mechanism based on PSI to obtain target encoding marks;
[0009] Sending the target encoding marks to the server so that the server uses a recommendation model to predict the target encoding marks to obtain a prediction result;
[0010] Receiving first information to be forwarded sent by the server and performing parsing processing on the first information to be forwarded to obtain first data to be inferred;
[0011] Performing inference processing on the first data to be inferred by using an inverse process of the item exchange mechanism based on random response to obtain target recommended items.
[0012] According to an embodiment of the present application, the step of performing data exchange processing on all public keys in the first packet information by using an item exchange mechanism based on random response to obtain target perturbed data includes:
[0013] Sending multiple encrypted exchange request messages to the server based on the first packet information, and the server generating an ordered request set based on all the exchange request messages;
[0014] Receiving response messages corresponding to each exchange request message sent by the server;
[0015] Parsing the response message corresponding to a first target exchange request message to obtain target parsed data, where the first target exchange request message is any one of all the exchange request messages;
[0016] Encrypting a first item interaction record to obtain first encrypted data;
[0017] When the target parsed data is received, sending the first encrypted data to the server, receiving second encrypted data corresponding to the first target exchange request message sent by the server, and marking the interaction corresponding to the first target exchange request message as a first preset value;
[0018] Parse the second encrypted data to obtain a second item interaction record corresponding to the first target exchange request information;
[0019] Use the second item interaction record as the target perturbation data.
[0020] According to an embodiment of the present application, the step of encoding each element in the target perturbation data by using a common item marking mechanism based on PSI to obtain a target encoding mark includes:
[0021] Use the PSI protocol to calculate the common intersection between the target perturbation data and the data to be encoded of the target second client, where the target second client is any one of a specified plurality of second clients;
[0022] Use the item marking rule to encode the first target element that belongs to the common intersection and is not encoded in the target perturbation data to obtain an encoding mark corresponding to the first target element, and add the encoding mark corresponding to the first target element to the set of encoding marks to be processed, where the first target element is any element in the target perturbation data;
[0023] After calculating the common intersection between the target perturbation data and the data to be encoded of all specified second clients, extract the unencoded data from the target perturbation data to obtain the remaining data to be encoded;
[0024] Traverse the remaining data to be encoded, use the item marking rule to encode the second target element in the remaining data to be encoded to obtain an encoding mark corresponding to the second target element, and add the encoding mark corresponding to the second target element to the set of encoding marks to be processed, where the second target element is any element in the remaining data to be encoded;
[0025] After traversing the remaining data to be encoded, use the set of encoding marks to be processed as the target encoding mark.
[0026] According to an embodiment of the present application, the step of inferring the first data to be inferred by using the inverse process of an item exchange mechanism based on random response to obtain a target recommended item includes:
[0027] Receive the target request set sent by the server, where the target request set is obtained by the server performing a reverse operation on the ordered request set;
[0028] Traverse the target request set, and when the interaction mark corresponding to the second target exchange request information is a first preset value, perform the following steps:
[0029] Encrypt the first data to be inferred to obtain third encrypted data;
[0030] Send the third encrypted data to the server and receive the fourth encrypted data of the second client corresponding to the second target exchange request information from the server;
[0031] Parse the fourth encrypted data to obtain second data to be inferred;
[0032] Replace the data content of the first data to be inferred with the data content of the second data to be inferred;
[0033] After traversing the target request set, use the first data to be inferred as the target recommended item;
[0034] Wherein, the second target exchange request information is any element in the target request set.
[0035] According to an embodiment of the present application, before the step of receiving the first packet information sent by the server, the general lossless privacy protection recommendation method further includes:
[0036] Generate the public key of the first client and the private key of the first client by using an asymmetric encryption method;
[0037] Send the public key of the first client to the server so that the server sends the public key of the first client to the second client to implement encrypted communication between the first client and the second client;
[0038] Receive the public key of the second client sent by the server.
[0039] According to an embodiment of the present application, after the step of receiving the first information to be forwarded sent by the server and parsing the first information to be forwarded to obtain the first data to be inferred, the general lossless privacy protection recommendation method further includes:
[0040] Receive the first request information sent by the server;
[0041] Respond to the first request information by using a request-based recommendation mechanism to obtain the first true name information of the first recommended item;
[0042] Encrypt the first true name information into second information to be forwarded and send it to the server.
[0043] In the second aspect of the embodiments of the present application, a general lossless privacy protection recommendation method is provided, which is applied to a server. The general lossless privacy protection recommendation method includes:
[0044] Send the first packet of information to the first client;
[0045] Receive the target encoding tag sent by the first client;
[0046] Use a recommendation model to predict the target encoding tag to obtain a prediction result;
[0047] Generate a second request message based on the prediction result;
[0048] Send the second request message to the second client;
[0049] Receive the first information to be forwarded generated by the second client in response to the second request message;
[0050] Forward the first information to be forwarded to the first client so that the first client can obtain the target recommended item according to the first information to be forwarded.
[0051] In the third aspect of the embodiments of the present application, a general lossless privacy protection recommendation device is provided, including:
[0052] A first receiving module, configured to receive the first packet of information sent by the server;
[0053] A first obtaining module, configured to perform data exchange processing on all public keys in the first packet of information by using an item exchange mechanism based on random response to obtain target scrambled data;
[0054] A second obtaining module, configured to perform encoding processing on each element in the target scrambled data by using a common item marking mechanism based on PSI to obtain a target encoding tag;
[0055] A first sending module, configured to send the target encoding tag to the server so that the server uses a recommendation model to predict the target encoding tag to obtain a prediction result;
[0056] A second receiving module, configured to receive the first information to be forwarded sent by the server and perform parsing processing on the first information to be forwarded to obtain first data to be inferred;
[0057] An inference module, configured to perform inference processing on the first data to be inferred by using an inverse process of an item exchange mechanism based on random response to obtain a target recommended item.
[0058] In the fourth aspect of the embodiments of the present application, a terminal device is provided, including: a processor and a memory. The memory is used to store a computer program, and the processor is used to call and run the computer program stored in the memory to execute the steps of the general lossless privacy protection recommendation method provided in the first aspect and / or the second aspect of the embodiments of the present application.
[0059] In the fifth aspect of the embodiments of the present application, a computer-readable storage medium is provided. The computer-readable storage medium is used to store a computer program, and the computer program causes a computer to execute the steps of the general lossless privacy protection recommendation method provided in the first aspect and / or the second aspect of the embodiments of the present application.
[0060] The beneficial effects of the embodiments of the present application include:
[0061] The embodiments of the present application design an item exchange mechanism based on random response to protect the privacy of the client (i.e., the user); the embodiments of the present application also design a common item marking mechanism based on PSI to cope with de-anonymization attacks and further enhance the intensity of privacy protection. The combination of these two mechanisms constitutes a completely non-intrusive privacy protection framework, which can be flexibly applied to existing recommendation models. Therefore, the entire framework is general and has good generality. Specifically, the embodiments of the present application receive the first packet information sent by the server; perform data exchange processing on all public keys in the first packet information by using the item exchange mechanism based on random response to obtain target scrambled data; perform encoding processing on each element in the target scrambled data by using the common item marking mechanism based on PSI to obtain target encoding marks; send the target encoding marks to the server so that the server uses a recommendation model to predict the target encoding marks to obtain a prediction result; receive the first information to be forwarded sent by the server and perform parsing processing on the first information to be forwarded to obtain first data to be inferred; perform inference processing on the first data to be inferred by using the inverse process of the item exchange mechanism based on random response to obtain target recommended items. Compared with the prior art, the embodiments of the present application do not need to add noise or perform operations such as model pruning, nor do they require the specific type of the recommendation model. Therefore, the embodiments of the present application can protect user privacy in the recommendation system, improve the accuracy of the prediction result, and improve the generality of the privacy protection recommendation method.
[0062] In addition, the embodiments of the present application also design a request-based recommendation mechanism, which is also used to protect the privacy of the client. The random response-based item exchange mechanism, the request-based recommendation mechanism, and the PSI-based common item marking mechanism together constitute a generic and lossless privacy-preserving recommendation framework (Generic and Lossless Privacy-preserving Framework for Recommendation, GLPFR). This framework is also a completely non-intrusive privacy protection framework and can be flexibly applied to existing recommendation models. Therefore, the entire framework is generic. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] In order to more clearly illustrate the technical solutions in the embodiments of the present application or in the prior art, the following will briefly introduce the drawings required for the description of the embodiments or the prior art. Obviously, the drawings in the following description are only some embodiments of the present application. For those of ordinary skill in the art, without creative efforts, other drawings can be obtained based on these drawings.
[0064] Figure 1 It is a flowchart of the generic and lossless privacy-preserving recommendation method of the present application in some embodiments;
[0065] Figure 2 It is a reference diagram of the communication relationship among the first client, the second client, and the server in the present application;
[0066] Figure 3 It is a flowchart of the generic and lossless privacy-preserving recommendation method of the present application in some embodiments;
[0067] Figure 4 It is a flowchart of the generic and lossless privacy-preserving recommendation method of the present application in some other embodiments;
[0068] Figure 5 It is a schematic block diagram of the generic and lossless privacy-preserving recommendation device of the present application in some embodiments;
[0069] Figure 6 It is a schematic block diagram of the terminal device of the present application in some embodiments. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0070] In order to make the above objects, features, and advantages of the present application more obvious and understandable, the following will describe the specific embodiments of the present application in detail with reference to the drawings. Many specific details are set forth in the following description in order to fully understand the present application. However, the present application can be implemented in many other ways different from those described herein. Those skilled in the art can make similar improvements without departing from the spirit of the present application. Therefore, the present application is not limited by the specific embodiments disclosed below.
[0071] It should be noted that the terms "first" and "second" are only used for descriptive purposes and should not be construed as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features. Thus, features defined with "first" and "second" may explicitly or implicitly include at least one such feature. In the description of this application, the meaning of "a plurality" is at least two, such as two, three, etc., unless otherwise specifically defined.
[0072] The term "exemplary" or "for example" is used to mean an example, illustration, or explanation. Any embodiment or design described as "exemplary" or "for example" in the embodiments of this application should not be construed as being more preferred or having more advantages than other embodiments or designs. Rather, the use of the term "exemplary" or "for example" is intended to present the relevant concepts in a specific manner.
[0073] The term "comprise", "include" or any other variant thereof is intended to cover non-exclusive inclusion. For example, a process, method, system, product or device that comprises a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these process, method, product or device.
[0074] The term "recommendation system" has a wide range of application fields and has shown significant importance especially in aspects such as e-commerce platforms and short video sharing platforms. The recommendation system usually does not consider privacy protection in user behavior modeling. The recommendation system is used to collect all users' interaction data to the server, then centrally train the recommendation model, and then return the prediction results of the recommendation model to the users.
[0075] The term "privacy" refers to all items that any client has interacted with and cannot be leaked to the server or other clients.
[0076] Unless otherwise defined, all technical and scientific terms used in the description of this application have the same meaning as commonly understood by those skilled in the technical field to which this application belongs. The terms used in the description of this application are only for the purpose of describing specific embodiments and are not intended to limit this application. The term "and / or" used in the description of this application includes any and all combinations of one or more of the related listed items.
[0077] In today's digital age, recommendation systems have become an indispensable and crucial component of various online platforms, such as e-commerce and social media. They can greatly alleviate the problem of information overload and help users (clients) accurately find items that match their interests and preferences. However, traditional recommendation systems mainly rely on servers to collect and organize users' historical data, such as browsing records, click records, and purchase behavior records, to train a centralized recommendation model to predict the final recommended items. However, these historical data often involve users' privacy, thus giving rise to privacy and security issues.
[0078] To address this privacy and security issue, traditional privacy-preserving recommendation methods adopt the privacy-preserving framework for cross-domain sequential recommendation and the privacy-preserving framework for cross-user sequential recommendation to achieve the goal of privacy protection while recommending items. Specifically, the privacy-preserving framework for cross-domain sequential recommendation disrupts the data in the source domain by designing a differential privacy algorithm and then sends the disrupted data to the target domain. The target domain protects the privacy of users in the source domain during the process of training or predicting the disrupted data. The operation mode of the privacy-preserving framework for user sequential recommendation is to pre-train a recommendation model on the server using the data collected before the implementation of GDPR (General Data Protection Regulation). Subsequently, when GDPR comes into effect, the framework fine-tunes the pre-trained model locally using personal privacy data. In this way, the goal of recommending items and protecting user privacy can be achieved. However, these two frameworks have two common drawbacks. First, compared with traditional recommendation models, due to operations such as adding noise or model pruning, these two frameworks will experience loss phenomena, resulting in a decline in prediction performance and inaccurate prediction results. Second, both of these frameworks are only applicable to sequential recommendation models and are not applicable to other recommendation models, such as single-behavior, multi-behavior, and multi-behavior sequential recommendation models. Therefore, the generality of traditional privacy-preserving recommendation methods needs to be improved.
[0079] In addition, traditional privacy-preserving recommendation methods have also introduced federated recommendation methods, such as FedMF (FedMF is a matrix factorization method under a federated learning framework), FedRec (federated recommendation system), FedeRank for implicit feedback modeling (FedeRank is a ranking algorithm under a federated learning framework), FedNCF (Federated Neural Collaborative Filtering, federated neural collaborative filtering method), FedVAE (Federated Variational AutoEncoder, federated variational autoencoder method), FR-FMSS (Federated Recommendation - Fake Marks and Secret Sharing, federated recommendation framework based on fake marks and secret sharing), FedPerGNN (federated recommendation framework based on graph neural network (GNN)), or SemiDFEG (Semi-decentralized Federated EgoGraph Learning for Recommendation, semi-decentralized federated self-graph learning for recommendation). Compared with traditional centralized recommendation models, federated recommendation methods also face two challenges. One is that the generality still needs to be improved. The above lossless federated frameworks are all applicable to single-behavior recommendation and cannot be applied to multi-behavior and sequential recommendation. The other is that the communication cost is relatively high. This problem is determined by the characteristics of federated recommendation itself because it needs to transmit necessary model parameters during model training. Although many studies have reduced the communication cost efficiency of federated recommendation by discretizing transmitted data, compressing transmitted data, etc., compared with the corresponding centralized version model, its communication cost is much greater than that of the centralized version model.
[0080] Therefore, in existing research, there is no privacy-preserving recommendation method in the recommendation system that applies a general, efficient, and lossless privacy-preserving algorithm framework. For this reason, the embodiments of this application propose a general lossless privacy-preserving recommendation method to solve the above problems. The following further describes the specific implementation manners of this application with reference to the accompanying drawings.
[0081] As Figure 1 shown, it is a flowchart of a general lossless privacy-preserving recommendation method provided by the first aspect of the embodiments of this application. The general lossless privacy-preserving recommendation method is applied to the first client. In Figure 1 it, the general lossless privacy-preserving recommendation method includes:
[0082] S101. Receive the first packet information sent by the server.
[0083] The first grouped information includes the public key of the first client and the public keys of at least one second client. The first grouped information is a set.
[0084] Each of the second clients is a terminal device that communicates with the first client through the server. Each of the second clients also communicates with other second clients among the at least one second client through the server. The communication relationships among the first client, the second clients, and the server can be referred to Figure 2 as shown.
[0085] S102. Use an item exchange mechanism based on random response to perform data exchange processing on all the public keys in the first grouped information to obtain target scrambled data.
[0086] It should be understood that the function implemented by the item exchange mechanism based on random response is that the item interaction records of the first client (i.e., the first user) and the item interaction records of the second client (i.e., the second user) are randomly exchanged. Then, the first client uploads the exchanged item interaction records to the server as the personal item interaction records of the first client. Since the item interaction records uploaded by the first client to the server are not its original item interaction records, even if the server has improper communication with some second clients and obtains the specific codes of some items, the server still cannot crack out what specific items the first client or the second clients interacted with.
[0087] Further, the step S102 includes:
[0088] S1021. Send multiple encrypted exchange request messages to the server based on the first grouped information, and the server generates an ordered request set based on all the exchange request messages.
[0089] Further, the step of sending multiple encrypted exchange request messages to the server based on the first grouped information includes:
[0090] S10211. Remove the public key of the first client from the first grouped information to obtain second grouped information.
[0091] Exemplarily, if the first grouped information can be expressed as [u, ut1, ut2, ut3, ut4], then the second grouped information can be expressed as [ut1, ut2, ut3, ut4].
[0092] Each element in the second grouped information corresponds to an exchange request message.
[0093] S10212. Traverse the second grouping information to generate processing request information corresponding to a third target element, where the third target element is any element in the second grouping information.
[0094] S10213. Use the third target element to encrypt the processing request information to obtain exchange request information corresponding to the third target element.
[0095] Exemplarily, when the third target element is the public key ut1 of the first second client, the exchange request information corresponding to the third target element can be expressed as u→ut1; when the third target element is the public key ut2 of the second second client, the exchange request information corresponding to the third target element can be expressed as u→ut2; when the third target element is the public key ut3 of the third second client, the exchange request information corresponding to the third target element can be expressed as u→ut3; when the third target element is the public key ut4 of the fourth second client, the exchange request information corresponding to the third target element can be expressed as u→ut4.
[0096] S1022. Receive response information corresponding to each of the exchange request information sent by the server.
[0097] Each piece of response information is generated by a second client corresponding to each piece of exchange request information. Exemplarily, when one of the exchange request information is u→ut1, the response information is generated by the first second client ut1.
[0098] S1023. Analyze the response information corresponding to the first target exchange request information to obtain target parsing data, where the first target exchange request information is any one of all the exchange request information.
[0099] It should be understood that regardless of whether the response information is sent by the first second client, the second second client, the third second client or the Nth second client to the server and then forwarded by the server to the first client, the response information is parsed by the private key of the first client.
[0100] The first target exchange request information can also be understood as the i-th exchange request information among all the exchange request information.
[0101] S1024. Encrypt the first item interaction record to obtain first encrypted data.
[0102] In an embodiment of the present application, the first item interaction record is encrypted using the public key corresponding to the first target exchange request information. Exemplarily, when the first target exchange request information is an exchange request between the first client and the first second client, the first item interaction record is encrypted using the public key of the first second client; when the first target exchange request information is an exchange request between the first client and the second second client, the first item interaction record is encrypted using the public key of the second second client; and so on. When the first target exchange request information is an exchange request between the first client and the Nth second client, the first item interaction record is encrypted using the public key of the Nth second client.
[0103] It should also be understood that after the first second client receives the first encrypted data, the first encrypted data is parsed using the private key of the first second client; after the second second client receives the first encrypted data, the first encrypted data is parsed using the private key of the second second client; and so on. After the Nth second client receives the first encrypted data, the first encrypted data is parsed using the private key of the Nth second client.
[0104] The first item interaction record is the item interaction record of the first client. The first item interaction record includes the names of the items interacted with, browsed, collected, and purchased. In other embodiments, the first item interaction record may also be other information, which can be specifically set by those skilled in the art according to actual needs.
[0105] The first item interaction record may refer to Figure 3 the "original interaction record" in
[0106] S1025. When the target parsed data is received, send the first encrypted data to the server, receive the second encrypted data corresponding to the first target exchange request information sent by the server, and mark the interaction corresponding to the first target exchange request information as a first preset value.
[0107] The interaction mark corresponding to the first target exchange request information can be expressed as flag(u, ut i ), where u is the first client and ut i is the ith second client ut, and (u, ut i ) can be understood as the ith request sent by the first client to the server.
[0108] The first preset value is 1, and 1 indicates that the first client and the corresponding second client have exchanged item interaction records.
[0109] It should also be understood that when performing the step of "sending the first encrypted data to the server", the first client does not know which second client the server will send the first encrypted data to, and the server determines the sending object according to the public key corresponding to the first encrypted data.
[0110] When the first target exchange request information is an exchange request between the first client and the first second client, the second encrypted data is sent from the first second client to the server, and then forwarded by the server to the first client; when the first target exchange request information is an exchange request between the first client and the second second client, the second encrypted data is sent from the second second client to the server, and then forwarded by the server to the first client; and so on. When the first target exchange request information is an exchange request between the first client and the Nth second client, the second encrypted data is sent from the Nth second client to the server, and then forwarded by the server to the first client.
[0111] S1026. Analyze the second encrypted data to obtain a second item interaction record corresponding to the first target exchange request information.
[0112] It should be understood that regardless of which second client the second encrypted data is sent from, in the first client, the second encrypted data is parsed and processed by the private key of the first client.
[0113] In the case where the second encrypted data is sent from the first second client, the second item interaction record is the item interaction record of the first second client; in the case where the second encrypted data is sent from the second second client, the second item interaction record is the item interaction record of the second second client; and so on. In the case where the second encrypted data is sent from the Nth second client, the second item interaction record is the item interaction record of the Nth second client.
[0114] S1027. Use the second item interaction record as the target scrambled data.
[0115] It should be understood that after the processing of steps S1021 to S1027, the second item interaction record corresponding to the last exchange request information among all the exchange request information is used as the target scrambled data. And at this time, the item interaction records of all clients are scrambled.
[0116] The target disruption data can be referred to Figure 3 as the "exchange of original interaction data" in
[0117] In other embodiments, the step S102 further includes:
[0118] S1028. When the target parsing data is rejected, the first encrypted data is not sent to the server, and the second encrypted data corresponding to the first target exchange request information is not received from the server.
[0119] The step S1028 can be understood as that the first client does not exchange item interaction records with the second client corresponding to the first target exchange request information.
[0120] S1029. Mark the interaction corresponding to the first target exchange request information with a second preset value.
[0121] The second preset value is 0, and 0 indicates that the first client and the corresponding second client have not exchanged item interaction records.
[0122] It should also be understood that when the target parsing data is rejected, although the first client and the second client corresponding to the first target exchange request information have not exchanged item interaction records, the two parties will still conduct normal communication interactions. Since the communication interactions between the two parties are encrypted, the server cannot know the specific content of the interactions between the two parties, nor can it infer whether the two parties have actually exchanged item interaction records.
[0123] S103. Use a common item marking mechanism based on PSI to perform encoding processing on each element in the target disruption data to obtain a target encoding mark. The step S103 can be understood as Figure 3 the "product number matching" step in
[0124] The function implemented by the common item marking mechanism based on PSI (Private Set Intersection) is that all clients share a set of item marking rules without revealing the privacy of the clients (i.e., users). However, the server does not know this set of item marking rules. Specifically, for the same item, the corresponding marking symbols (i.e., codes) are the same in different clients. Therefore, it can be applied to the training of the existing recommendation model when uploaded to the server later. Exemplarily, if the first client u and the first second client ut1 have both interacted with the item "apple", then, locally in the first client and the first second client, "apple" will be numbered "1". Then, "1" is uploaded to the server. Since the server cannot reverse-infer "apple" from "1", the privacy of the clients (i.e., users) is protected. However, this numbering can be used for training or prediction in the existing recommendation model.
[0125] Currently, a technology similar to the described PSI-based common item marking mechanism is that any one client generates a key S using symmetric encryption, and then this client sends it to other clients through asymmetric encryption. However, the server does not know this key S. For the same thing, the content obtained after encryption with the key S is the same, thus achieving the same function. However, the difference between it and the described PSI-based common item marking mechanism is that if we consider the situation where the server communicates improperly with some clients, as long as the server gets this key S through one user, the privacy of all users will be leaked. However, in the case of the described PSI-based common item marking mechanism, when the server communicates improperly with one client, only the names of the items jointly interacted with this client will be leaked by other clients. Due to the sparsity of data in the recommendation field, only a few items' privacy will be leaked. It should be noted that after combining the described PSI-based common item marking mechanism with the item exchange mechanism based on random response, the problem of privacy leakage is completely solved. Because after the exchange of item interaction records between clients, the server cannot use the small part of leaked items to conduct a de-anonymization attack to obtain the ultimate source of any item interaction record. From this perspective, the security performance of the PSI-based common item marking mechanism proposed in the embodiments of this application is higher. In addition, PSI (Private Set Intersection) described in this article is a private item intersection technology, which is a cryptographic protocol designed to enable two or more participating parties (clients) to securely calculate the intersection of sets without exposing the specific content of their own sets. The core goal of PSI is that the participating parties (clients) can know the elements in the intersection part but will not leak the information of other elements. Applied in the embodiments of this application, it enables two clients (i.e., users) to know through PSI operation which items they have jointly interacted with each other, but they cannot know other items interacted by the other party. Exemplarily, the first client u and the first second client ut1 have both interacted with the item "apple", but the first second client ut1 has also interacted with "pear", while the first client u has not interacted with "pear". Thus, when the first client u and the first second client ut1 perform a PSI operation, the first client u cannot know that the first second client ut1 has interacted with the item "pear".
[0126] Before the PSI operation is performed in the embodiment of the present application, the server numbers the first client and N second clients, and then selects one of the clients to perform the PSI operation with other clients. Exemplarily, the first client is numbered 1, the first second client is numbered 2, the second second client is numbered 3, and so on. The Nth second client is numbered N + 1. Then, the first client numbered 1 is selected to perform the PSI operation with all second clients (i.e., the clients numbered 2 to N + 1). After the PSI operations with the first client numbered 1 are all completed, the first second client numbered 2 is selected to perform the PSI operation with the second clients numbered 3 to N + 1, and so on, until all pairs of clients have performed the PSI operation.
[0127] Further, the step S103 includes:
[0128] S1031. Calculate the common intersection between the target scrambled data and the data to be encoded of the target second client using the PSI protocol, where the target second client is any one of the specified multiple second clients.
[0129] The PSI (Private Set Intersection) protocol is a secure multi-party computation protocol used for multiple parties to jointly calculate the intersection of their privacy sets without disclosing their respective privacy sets.
[0130] The specified multiple second clients are specified by the server. Exemplarily, the server can set the specified multiple second clients to all second clients, or any several second clients among all second clients.
[0131] The data to be encoded is the target scrambled data of the target second client.
[0132] Exemplarily, the step S1031 may include:
[0133] S10311. Apply a hash function to each element in the target scrambled data for calculation processing to generate a corresponding set of first hash values.
[0134] S10312. Perform secret sharing on each element in the set of first hash values to generate a first shared value.
[0135] S10313. Receive the second shared value forwarded by the server, where the second shared value is sent by the target second client to the server.
[0136] The generation of the second sharing value is to apply a hash function to each element in the data to be encoded by the target second client for calculation and processing, generating a corresponding set of second hash values; then perform secret sharing on each element in the set of second hash values to generate the second sharing value.
[0137] S10314. Calculate the intersection of the first sharing value and the second sharing value to obtain a processed intersection.
[0138] S10315. According to the PSI protocol convention, reconstruct each original intersection element from the processed intersection to obtain the common intersection.
[0139] It should be understood that the implementation of the S1031 step is not limited to the above S10311 to S10315 steps. Those skilled in the art can also implement the S1031 step in other ways, and this article will not make further restrictions on this.
[0140] S1032. Use the item marking rule to encode the first target element that belongs to the common intersection and is not encoded in the target scrambled data, obtain the encoding mark corresponding to the first target element, and add the encoding mark corresponding to the first target element to the set of encoding marks to be processed. The first target element is any element in the target scrambled data.
[0141] Exemplarily, the item marking rule is that the encoding mark of "apple" is 1, the encoding mark of "orange" is 2, the encoding mark of "tangerine" is 3, and the encoding mark of "snow pear" is 4, etc. In other embodiments, the item marking rule can be set by those skilled in the art according to actual needs, and this article will not make further restrictions on this.
[0142] S1033. After calculating the common intersection between the target scrambled data and the data to be encoded of all specified multiple second clients, extract the unencoded data from the target scrambled data to obtain the remaining data to be encoded.
[0143] Each item in the remaining data to be encoded is an item that has not interacted with any other second client.
[0144] S1034. Traverse the remaining data to be encoded, use the item marking rule to encode the second target element in the remaining data to be encoded, obtain the encoding mark corresponding to the second target element, and add the encoding mark corresponding to the second target element to the set of encoding marks to be processed. The second target element is any element in the remaining data to be encoded.
[0145] S1035. After traversing the remaining data to be encoded, use the set of encoding tags to be processed as the target encoding tags.
[0146] The target encoding tags can be understood as Figure 3 "the original interaction data after encoding" in
[0147] Taking the PSI operation of the first client u and the first second client ut1 as an example, the specific PSI operation process is as follows:
[0148] Suppose the target scrambled data of the first client u is [apple, orange, tangerine], and the data to be encoded of the first second client ut1 is [apple, pear, orange]. Then the common intersection between the target scrambled data and the data to be encoded is [apple, orange]. Next, perform encoding processing on "apple" and "orange" respectively. The specific encoding process is to determine whether there is already an encoding tag for "apple". If there is already an encoding tag for "apple" and the encoding tag is 1, the first client will feedback the information that "the encoding tag of apple is 1" to the first second client. If there is no encoding tag for "apple" in the first client and there is also no encoding tag for "apple" in the first second client, then the first client and the first second client will jointly agree on the encoding tag. After encoding "apple", add the encoding tag of "apple" to the set of encoding tags to be processed. The encoding process for "orange" is the same as that for "apple", so it will not be elaborated here.
[0149] It should be noted that since any client will perform the PSI operation with all other clients that have not yet performed PSI with it before allowing the next client to perform the PSI operation with other clients, there will be no situation where the first client and any second client have different item numbers (i.e., encoding tags) for the same item.
[0150] S104. Send the target encoding tags to the server so that the server uses the recommendation model to predict the target encoding tags and obtain a prediction result. The step S104 can be understood as Figure 3 the "training" or "prediction" step in "server" in
[0151] S105. Receive the first information to be forwarded sent by the server and perform parsing processing on the first information to be forwarded to obtain the first data to be inferred. The first data to be inferred can be understood as Figure 3 "recommended item 1" in
[0152] It should be understood that after the step S104, the server uses a recommendation model to predict the target encoding tag and obtains a prediction result. The prediction result is the encoding tag (a kind of label) of the recommended item. Then, the server generates second request information based on the prediction result and sends the second request information to one of the second clients. The selection of this second client must meet a preset requirement, which is that the prediction result belongs to the target encoding tag of this second client. Then, this second client uses a request-based recommendation mechanism to respond to the second request information and obtains the second real name information of the second recommended item. Then, this second client encrypts the second real name information using the public key of the first client to obtain the first information to be forwarded. This second client sends the first information to be forwarded to the server, and then the server forwards it to the first client.
[0153] The step of "performing parsing processing on the first information to be forwarded" is to perform parsing processing using the private key of the first client.
[0154] The content of the first data to be inferred is the same as the content of the second real name information.
[0155] It should be understood that after the request-based recommendation mechanism, the first client obtains the real name of the recommended item (i.e., the first data to be inferred). However, since the item interaction records between the first client and all second clients are randomly exchanged and disrupted, the real name obtained by the first client at this time is not the real name of the item it needs to recommend, but the real name of the item recommended by other second clients after being disrupted. Therefore, it is necessary to restore the recommended item using the reverse process of the disruption.
[0156] S106. Perform inference processing on the first data to be inferred using the reverse process of the item exchange mechanism based on random response to obtain the target recommended item.
[0157] The step S106 can be understood as Figure 3 the "reverse exchange" step in Figure 3 The target recommended item can be understood as
[0158] Furthermore, the step S106 includes:
[0159] S1061. Receive the target request set sent by the server. The target request set is obtained by the server performing a reverse order operation on the ordered request set.
[0160] Exemplarily, the ordered request set can be expressed as g-list = [(u → ut1), (u → ut2), (u → ut3), ···, (u → ut N ), where (u → ut1) represents the first request in g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut1; (u → ut2) represents the second request in g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut2; (u → ut3) represents the third request in g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut3; (u → ut N ) represents the Nth request in g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut N . Then the target request set can be expressed as g-list-reversed = [(u → ut N ), ···, (u → ut3), (u → ut2), (u → ut1)], and (u → ut N ), (u → ut3), (u → ut2), and (u → ut1) are the same as those described above.
[0161] S1062. Traverse the target request set. When the interaction mark corresponding to the second target exchange request information is the first preset value, execute the following steps S1063 to S1067. The second target exchange request information is any element in the target request set.
[0162] S1063. Encrypt the first data to be inferred to obtain third encrypted data. The second target exchange request information is any element in the target request set.
[0163] In the embodiment of the present application, the public key of the interaction object is used to encrypt the first inference data. Exemplarily, when the second target exchange request information is (u → ut N ), the public key of the Nth second client is used to encrypt the first inference data; when the second target exchange request information is (u → ut3), the public key of the third second client is used to encrypt the first inference data, and so on.
[0164] S1064. Send the third encrypted data to the server and receive the fourth encrypted data of the second client corresponding to the second target exchange request information from the server.
[0165] When the second target exchange request information is (u→ut N ), after the server receives the third encrypted data, it forwards it to the Nth second client; when the second target exchange request information is (u→ut3), after the server receives the third encrypted data, it forwards it to the third second client; and so on.
[0166] When the second target exchange request information is (u→ut N ), the fourth encrypted data is sent from the Nth second client to the server, and then forwarded by the server to the first client; when the second target exchange request information is (u→ut3), the fourth encrypted data is sent from the third second client to the server, and then forwarded by the server to the first client; and so on.
[0167] The fourth encrypted data is obtained by encrypting with the public key of the first client.
[0168] The step S1064 can be understood as the first client and one of the second clients exchanging the recommended items they obtained.
[0169] S1065. Parse the fourth encrypted data to obtain the second data to be inferred.
[0170] In the embodiment of the present application, the private key of the first client is used for parsing.
[0171] When the second target exchange request information is (u→ut N ), the second inference data is the second real name information of the Nth second client; when the second target exchange request information is (u→ut3), the second inference data is the second real name information of the third second client; and so on.
[0172] S1066. Replace the data content of the first data to be inferred with the data content of the second data to be inferred.
[0173] S1067. After traversing the target request set, use the first data to be inferred as the target recommended item.
[0174] The target recommended item is the truly recommended item in this application.
[0175] In some embodiments, in step S1062, when the interaction corresponding to the second target exchange request information is marked with a second preset value, the first client does not send the third encrypted data to the server, nor receive the fourth encrypted data sent by the server. That is, the first client does not exchange the recommended items obtained with any second client. However, the first client still maintains communication with all second clients. The purpose of this setting is to prevent the server from determining whether the clients have exchanged the recommended items obtained.
[0176] After the execution of step S106, the first client can obtain the truly recommended items.
[0177] Through the above embodiments, the embodiments of the present application design an item exchange mechanism based on random response to protect the privacy of the client (i.e., the user); the embodiments of the present application also design a common item marking mechanism based on PSI to cope with de-anonymization attacks and further enhance the strength of privacy protection. The combination of these two mechanisms constitutes a completely non-intrusive privacy protection framework, which can be flexibly applied to existing recommendation models. Therefore, the entire framework is general and has good generality. Compared with the prior art, the embodiments of the present application do not require operations such as adding noise or implementing model pruning, nor do they require the specific type of the recommendation model. Thus, the embodiments of the present application can protect the privacy of the user (i.e., the client) in the recommendation system while improving the accuracy of the prediction results and the generality of the privacy protection recommendation method.
[0178] It should be understood that the general lossless privacy protection recommendation method proposed in the embodiments of the present application can be directly applied to existing recommendation models without causing any changes to the existing recommendation models themselves.
[0179] In addition, the embodiments of the present application also design a request-based recommendation mechanism, which is also used to protect the privacy of the client. The item exchange mechanism based on random response, the request-based recommendation mechanism, and the common item marking mechanism based on PSI together constitute a general and lossless privacy protection recommendation framework (Generic and Lossless Privacy-preserving Framework for Recommendation, GLPFR). This framework is also a completely non-intrusive privacy protection framework and can be flexibly applied to existing recommendation models. Therefore, the entire framework is general. The general and lossless privacy protection recommendation framework is also secure in the case of improper communication between the server and some clients.
[0180] In some embodiments, before step S101, the general lossless privacy protection recommendation method further includes:
[0181] S1071. Generate the public key and private key of the first client using an asymmetric encryption method.
[0182] The setting of the public key and private key can not only achieve encrypted communication but also achieve anti-tampering authentication of the content.
[0183] Regarding encrypted communication, it can be understood that: if the first client wants to send a content "a" to the first second client but does not want other second clients to know, then the first client can encrypt this "a" using the public key of the first second client, and then send it to the server. Then the server forwards it to the first second client. Next, the first second client decrypts it using its own private key to obtain the content.
[0184] Regarding anti-tampering authentication of the content, it can be understood that: assume the first client wants to send a content "want an apple", then it can use the private key of the first client to digitally sign this content and then broadcast it; any second client can use the public key of the first client to perform digital signature authentication on this content because the public key of the first client can be shared by all second clients and the server. Once the digital signature authentication passes, it can be considered that this information is true and has not been tampered with by the sender.
[0185] S1072. Send the public key of the first client to the server so that the server sends the public key of the first client to the second client to achieve encrypted communication between the first client and the second client.
[0186] S1073. Receive the public key of the second client sent by the server.
[0187] In some embodiments, after the S105 step, the general lossless privacy protection recommendation method further includes:
[0188] S1081. Receive the first request information sent by the server.
[0189] The first request information is generated by the server according to the prediction result and is used to generate the real name information of a recommended item for one of the second clients.
[0190] Exemplarily, for a prediction result with the number T(i), the server generates the first request information based on the prediction result and sends the first request information to the first client. However, it should be understood that the premise for the server to send the first request information to the first client is that the first client exists in the real name information of the item corresponding to the prediction result (i.e., the number T(i)).
[0191] S1082. Respond to the first request information by adopting a request-based recommendation mechanism to obtain the first real name information of the first recommended item.
[0192] Since after the server finishes training, what it should predict is the number of the item recommended to each second client, rather than the real name of the recommended item, the request-based recommendation mechanism is designed. The function implemented by the request-based recommendation mechanism is that, while protecting the privacy of the first client (i.e., the user), the server can return the real name of the recommended item to the corresponding second client.
[0193] The request-based recommendation mechanism enables the server to recommend the real name of the item to each client, which is equivalent to completing an inverse encoding process from the item label (i.e., the encoding mark of the item) to the item name.
[0194] Further, the step S1082 includes:
[0195] S10821. Calculate the first usage frequency of the public key of the first client.
[0196] Exemplarily, for the first client, any behavior that needs to use the public key of the first client for encryption is counted as one use. More specifically, when it is necessary to use the public key of the first client to encrypt "apple", then the first usage frequency is counted as one; when it is necessary to use the public key of the first client to encrypt "apple" and "pear", then the first usage frequency is counted as two.
[0197] The first usage frequency can be understood as the number of times the public key of the first client is used.
[0198] S10822. Perform digital signature processing on the first usage frequency by using the private key of the first client to obtain the fifth encrypted data.
[0199] S10823. Send the fifth encrypted data to the server.
[0200] S10824. Receive multiple sixth encrypted data sent by the server.
[0201] Each of the sixth encrypted data is the second usage frequency of one of the public keys of the second clients that has been encrypted.
[0202] The second usage frequency can be understood as the number of times the public key of one of the second clients is used.
[0203] S10825. Traverse the multiple sixth encrypted data, and use the public key corresponding to the target sixth encrypted data to perform a verification process on the target sixth encrypted data to obtain a verification result. The target sixth encrypted data is any one of the multiple sixth encrypted data.
[0204] The execution of step S10825 can prevent the server from tampering with the usage frequency corresponding to each client.
[0205] S10826. Perform a parsing process on the target sixth encrypted data to obtain the second usage frequency.
[0206] S10827. When the verification result is verification passed and the second usage frequency does not exceed the preset recommended number of items, the first client responds to the first request information and uses the item name corresponding to the first request information as the first true name information.
[0207] The preset recommended number of items can be set by those skilled in the art according to actual needs.
[0208] In some embodiments, step S1082 further includes:
[0209] S10828. When the verification result is verification failed and / or the second usage frequency exceeds the preset recommended number of items, reject the first request information.
[0210] When the verification result is not passed, it indicates that the second usage frequency has been modified, and thus the target sixth encrypted data is not trustworthy.
[0211] Secondly, if a client is recommended k items, then the number of times the server requests using its public key should also be k. If the number of times the server requests using its public key is greater than k, there is reason to suspect that the server colludes with the client and attempts to crack the rule of item name encoding. Thus, the client can reject the server's request and terminate the recommendation service. k is also the preset recommended number of items.
[0212] In step S10828, it can be considered that the server is illegally accessing the privacy of the client.
[0213] S1083. Encrypt the first true name information into a second information to be forwarded and send it to the server.
[0214] Specifically, the first real name information is encrypted using the public key of the second client corresponding to the target sixth encrypted data.
[0215] After the server receives the second information to be forwarded, it sends the second information to be forwarded to a corresponding second client. Exemplarily, when the second information to be forwarded corresponds to the first second client, the server sends the second information to be forwarded to the first second client. Then, the first second client will use its private key to parse the second information to be forwarded to obtain third real name information, which is the same as the first real name information.
[0216] It should be noted that the embodiments of the present application are equivalent to the corresponding traditional centralized recommendation models, and thus there is no loss in performance.
[0217] The general and lossless privacy protection recommendation framework of the embodiments of the present application is applicable to single-behavior, multi-behavior, sequence, and multi-behavior sequence modeling in existing recommendation systems. The general and lossless privacy protection recommendation framework is a model- and data-independent and non-intrusive method that can be directly applied to existing recommendation models without any change to the recommendation models themselves.
[0218] The general lossless privacy protection recommendation method proposed in the embodiments of the present application is not limited to the e-commerce recommendation system scenario, but can also be applied to the POI (Point of Interest) recommendation field, the financial field, or the Internet of Things device recommendation. In the POI recommendation field, different location names can be used as processing objects; in the financial field, different service names can be used as processing objects; in the Internet of Things device recommendation, different device names can be used as processing objects.
[0219] The general lossless privacy protection recommendation method proposed in the embodiments of the present application first executes the item exchange mechanism based on random response, and then executes the common item marking mechanism based on PSI. In other embodiments, the order of use of these two mechanisms can also be interchanged.
[0220] Reference Figure 4 As shown in the following, in the second aspect of the embodiments of the present application, a general lossless privacy protection recommendation method is provided, which is applied to a server. The general lossless privacy protection recommendation method includes:
[0221] S201. Send the first packet information to the first client.
[0222] S202. Receive the target coding mark sent by the first client.
[0223] S203. Use the recommendation model to predict the target encoded tag to obtain a prediction result.
[0224] S204. Generate second request information based on the prediction result.
[0225] S205. Send the second request information to the second client.
[0226] S206. Receive the first information to be forwarded generated by the second client in response to the second request information.
[0227] S207. Forward the first information to be forwarded to the first client so that the first client can obtain the target recommended item according to the first information to be forwarded.
[0228] In some embodiments, before the step S201, the general lossless privacy protection recommendation method further includes:
[0229] S211. Obtain the public key of the first client and the public keys of at least one of the second clients.
[0230] S212. Randomly partition all the public keys to obtain at least one grouping information, and the at least one grouping information includes the first grouping information.
[0231] The grouping information may be K groups. As shown in Figure 3 it is divided into the first group and the Kth group.
[0232] In some embodiments, after the step S202, the general lossless privacy protection recommendation method further includes:
[0233] S221. Receive multiple exchange request messages sent by the first client.
[0234] It should be understood that the multiple exchange request messages are transmitted to the corresponding second clients through the server. Since the server does not have the private keys of the second clients, it is impossible to know the specific content of each exchange request message, thereby protecting the privacy of all clients (i.e., the first client and all second clients). In the embodiments of the present application, the client can be understood as a user.
[0235] S222. Generate an ordered request set based on all the exchange request messages.
[0236] Exemplarily, the ordered request set can be expressed as g-list = [(u→ut1), (u→ut2), (u→ut3), ···, (u→ut N), where (u→ut1) represents the first request in the g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut1; (u→ut2) represents the second request in the g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut2; (u→ut3) represents the third request in the g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut3; (u→ut N ) represents the Nth request in the g-list, which comes from the first client u and is a request made by the first client u to exchange with the second client ut N for exchange.
[0237] The server processes all requests in the ordered set of requests in sequence.
[0238] In some embodiments, after the step S222, the general lossless privacy protection recommendation method further includes:
[0239] S223. Perform a reverse order operation on the ordered set of requests to obtain a target set of requests. In some embodiments, after the step of forwarding the first information to be forwarded to the first client, the general lossless privacy protection recommendation method further includes:
[0240] Send the target set of requests to the first client.
[0241] In some embodiments, after the step S205, the general lossless privacy protection recommendation method further includes:
[0242] Receive the fifth encrypted data sent by the first client;
[0243] Broadcast and send the fifth encrypted data to all second clients, and forward the sixth encrypted data corresponding to each second client to the first client.
[0244] Refer to Figure 5 shown, which is a schematic block diagram of a general lossless privacy protection recommendation device provided in the third aspect of the embodiments of the present application. In Figure 5 it, the general lossless privacy protection recommendation device 10 includes:
[0245] A first receiving module 11, configured to receive the first packet information sent by the server;
[0246] A first obtaining module 12, configured to perform data exchange processing on all public keys in the first packet information by using an item exchange mechanism based on random response to obtain target scrambled data;
[0247] A second acquisition module 13, configured to perform encoding processing on each element in the target scrambled data by using a common item marking mechanism based on PSI to obtain a target encoding mark;
[0248] A first sending module 14, configured to send the target encoding mark to the server, so that the server uses a recommendation model to predict the target encoding mark to obtain a prediction result;
[0249] A second receiving module 15, configured to receive first information to be forwarded sent by the server and perform parsing processing on the first information to be forwarded to obtain first data to be inferred;
[0250] An inference module 16, configured to perform inference processing on the first data to be inferred by using an inverse process of an item exchange mechanism based on random response to obtain a target recommended item.
[0251] In a fourth aspect of the embodiments of the present application, a terminal device is provided. The principle block diagram of the terminal device may be as Figure 6 shown. The terminal device includes a processor, a memory, a network interface, a display screen, and a temperature sensor connected through a system bus. Wherein, the processor is used to provide computing and control capabilities. The memory includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the terminal device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, a general lossless privacy protection recommendation method is implemented. The display screen may be a liquid crystal display screen or an electronic ink display screen, and the temperature sensor is pre-set inside the terminal device for detecting the operating temperature of the internal device.
[0252] Those skilled in the art can understand that Figure 6 the principle block diagram shown in
[0253] merely shows the block diagram of some structures related to the solution of the present invention, and does not constitute a limitation on the terminal device to which the solution of the present invention is applied. The specific terminal device may include more or fewer components than those shown in the figure, or combine some components, or have different component arrangements.
[0254] In a fifth aspect of the embodiments of the present application, a computer-readable storage medium is provided. The computer-readable storage medium is used to store a computer program, and the computer program causes a computer to execute the steps of the general lossless privacy protection recommendation method provided in the first aspect and / or the second aspect of the embodiments of the present application.
[0255] Those of ordinary skill in the art can understand that all or part of the processes of implementing the methods in the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, storage, database, or other medium used in the embodiments provided by the present invention can include non-volatile and / or volatile memories. Non-volatile memories can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memories can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0256] In a sixth aspect of the embodiments of the present application, a general lossless privacy protection recommendation device is provided, including:
[0257] A second sending module, configured to send first packet information to a first client.
[0258] A third receiving module, configured to receive a target encoding mark sent by the first client.
[0259] A prediction module, configured to use a recommendation model to predict the target encoding mark to obtain a prediction result.
[0260] A generation module, configured to generate second request information based on the prediction result.
[0261] A third sending module, configured to send the second request information to a second client.
[0262] A fourth receiving module, configured to receive first information to be forwarded generated by the second client in response to the second request information.
[0263] A forwarding module, configured to forward the first information to be forwarded to the first client, so that the first client obtains a target recommended item according to the first information to be forwarded.
[0264] The technical features of the above embodiments can be combined without changing the basic principle of the present application. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered as the scope recorded in this specification.
[0265] The above embodiments only represent several implementation manners of the present application, and the description thereof is relatively specific and detailed, but it should not be construed as a limitation on the scope of the patent application. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several modifications and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the patent protection scope of the present application shall be subject to the appended claims.
Claims
1. A general lossless privacy protection recommendation method, applied to a first client, characterized in that, include: receiving first group information sent by the server, where the first group information includes a public key of a first client and a public key of at least one second client; Performing data exchange processing on all public keys in the first group information using an item exchange mechanism based on random responses to obtain target disrupted data; Using a common item tagging mechanism based on PSI to encode each element in the target disrupted data to obtain a target coded tag; Sending the target coding mark to the server so that the server predicts the target coding mark using the recommendation model to obtain a prediction result; Receiving first information to be forwarded sent by the server, and parsing and processing the first information to be forwarded to obtain first data to be inferred; Performing reasoning on the first data to be inferred using the inverse process of the random response-based item exchange mechanism to obtain target recommended items; An item exchange mechanism based on random responses is used to perform data exchange processing on all public keys in the first group information, and the step of obtaining target disrupted data includes: sending multiple encrypted exchange request messages to the server based on the first group information, and the server generates an ordered request set based on all the exchange request messages; receiving response messages corresponding to each of the exchange request messages sent by the server; parsing the response messages corresponding to the first target exchange request messages to obtain target parsed data, wherein the first target exchange request message is any one of all the exchange request messages; encrypting the first item interaction record to obtain first encrypted data; when the target parsed data is received, sending the first encrypted data to the server, and receiving second encrypted data corresponding to the first target exchange request message sent by the server, and marking the interaction corresponding to the first target exchange request message as a first preset value; parsing the second encrypted data to obtain a second item interaction record corresponding to the first target exchange request message; and using the second item interaction record as the target disrupted data.
2. The general lossless privacy protection recommendation method according to claim 1, wherein Each element in the target scrambled data is encoded using a common item identification mechanism based on PSI. The steps of obtaining the target encoding label include: Calculating a common intersection between the target disturbed data and the to-be-encoded data of the target second client using the PSI protocol, where the target second client is any one of the specified multiple second clients; encoding a first target element in the target disrupted data that belongs to the common intersection and is not encoded using an item marking rule to obtain a coding mark corresponding to the first target element, and adding the coding mark corresponding to the first target element to a set of coding marks to be processed, wherein the first target element is any element in the target disrupted data; After calculating the common intersection between the target disturbed data and the data to be encoded of all the specified second clients, extracting unencoded data from the target disturbed data to obtain remaining data to be encoded; Traverse the remaining data to be encoded, and use the item marking rule to encode the second target element in the remaining data to be encoded, obtain an encoding mark corresponding to the second target element, and add the encoding mark corresponding to the second target element to the set of encoding marks to be processed, where the second target element is any element in the remaining data to be encoded; After traversing the remaining data to be encoded, use the set of encoding marks to be processed as the target encoding mark.
3. The general lossless privacy protection recommendation method according to claim 1, characterized in that The steps of performing inference processing on the first data to be inferred by using the inverse process of the item exchange mechanism based on random response to obtain the target recommended item include: Receive the target request set sent by the server, where the target request set is obtained by the server performing a reverse operation on the ordered request set; Traverse the target request set, and when the interaction mark corresponding to the second target exchange request information is the first preset value, perform the following steps: Perform encryption processing on the first data to be inferred to obtain third encrypted data; Send the third encrypted data to the server, and receive the fourth encrypted data of the second client corresponding to the second target exchange request information from the server; Parse the fourth encrypted data to obtain second data to be inferred; Replace the data content of the first data to be inferred with the data content of the second data to be inferred; After traversing the target request set, use the first data to be inferred as the target recommended item; Wherein, the second target exchange request information is any element in the target request set.
4. The universal lossless privacy-preserving recommendation method according to claim 1, characterized in that: Before the step of receiving the first packet information sent by the server, the general lossless privacy protection recommendation method further includes: Generate the public key and private key of the first client by using the asymmetric encryption method; Send the public key of the first client to the server, so that the server sends the public key of the first client to the second client to realize the encrypted communication between the first client and the second client; Receive the public key of the second client sent by the server.
5. The general lossless privacy protection recommendation method according to claim 1, wherein After the step of receiving the first information to be forwarded sent by the server and performing parsing processing on the first information to be forwarded to obtain the first data to be inferred, the general lossless privacy protection recommendation method further includes: Receive the first request information sent by the server; Respond to the first request information by using the request-based recommendation mechanism to obtain the first real name information of the first recommended item; Encrypt the first real name information into the second information to be forwarded and send it to the server.
6. A general lossless privacy protection recommendation method, applied to a server, characterized in that, Include: Send the first packet information to the first client, where the first packet information includes the public key of the first client and the public keys of at least one second client; receiving a target code tag sent by the first client, the target code tag being obtained by encoding each element in the target scrambled data using a common item tagging mechanism based on PSI; using the second item interaction record corresponding to the last exchange request information in all exchange request information as the target scrambled data, where all exchange request information is exchange request information between the first client and all second clients; Using the recommendation model to predict the target coding mark to obtain a prediction result; generating second request information based on the prediction result; Sending the second request information to the second client; receiving first to-be-forwarded information generated by the second client in response to the second request information; The first information to be forwarded is forwarded to the first client, so that the first client obtains a target recommended item according to the first information to be forwarded.
7. A general lossless privacy protection recommendation device, characterized in that, include: A first receiving module is configured to receive first group information sent by a server, where the first group information includes a public key of a first client and a public key of at least one second client; a first obtaining module, configured to perform data exchange processing on all public keys in the first group information using an item exchange mechanism based on random response to obtain target disrupted data; a second obtaining module, configured to encode each element in the target scrambled data using a common item tagging mechanism based on PSI to obtain a target coded tag; A first sending module is used to send the target coding mark to the server, so that the server uses the recommendation model to predict the target coding mark and obtain a prediction result; a second receiving module, configured to receive the first information to be forwarded sent by the server, and parse and process the first information to be forwarded to obtain first data to be inferred; an inference module, configured to perform inference processing on the first data to be inferred using an inverse process of the random response-based item exchange mechanism to obtain a target recommended item; The first obtaining module is further configured to send a plurality of encrypted exchange request messages to the server based on the first group information, and the server generates an ordered request set based on all the exchange request messages; Receiving response information corresponding to each of the exchange request information sent by the server; parsing the response information corresponding to the first target exchange request information to obtain target parsed data, wherein the first target exchange request information is any one of all the exchange request information; The first item interaction record is encrypted to obtain first encrypted data; when the target parsing data is received, the first encrypted data is sent to the server, and second encrypted data corresponding to the first target exchange request information sent by the server is received, and the interaction corresponding to the first target exchange request information is marked as a first preset value; the second encrypted data is parsed to obtain a second item interaction record corresponding to the first target exchange request information; and the second item interaction record is used as the target disruption data.
8. A terminal device, characterized in that, include: A processor and a memory for storing a computer program, the processor being configured to call and run the computer program stored in the memory and execute the steps of the general lossless privacy protection recommendation method according to any one of claims 1 to 6 above.
9. A computer-readable storage medium, characterized in that, For storing a computer program, the computer program causing a computer to execute the steps of the general lossless privacy protection recommendation method according to any one of claims 1 to 6 above.
Citation Information
Patent Citations
Cross-domain sequence recommendation method for privacy protection and related equipment
CN116522001A
Matrix decomposition recommendation method based on shuffler federated differential privacy
CN117743690A