WO2022257731A1 - Method, device and system for performing algorithm negotiation on privacy computation - Google Patents

Method, device and system for performing algorithm negotiation on privacy computation Download PDF

Info

Publication number
WO2022257731A1
WO2022257731A1 PCT/CN2022/094032 CN2022094032W WO2022257731A1 WO 2022257731 A1 WO2022257731 A1 WO 2022257731A1 CN 2022094032 W CN2022094032 W CN 2022094032W WO 2022257731 A1 WO2022257731 A1 WO 2022257731A1
Authority
WO
WIPO (PCT)
Prior art keywords
algorithm
privacy
computing
target
algorithms
Prior art date
Application number
PCT/CN2022/094032
Other languages
French (fr)
Chinese (zh)
Inventor
李漓春
阮方圆
殷山
Original Assignee
支付宝(杭州)信息技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 支付宝(杭州)信息技术有限公司 filed Critical 支付宝(杭州)信息技术有限公司
Publication of WO2022257731A1 publication Critical patent/WO2022257731A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0639Performance analysis of employees; Performance analysis of enterprise or organisation operations
    • G06Q10/06393Score-carding, benchmarking or key performance indicator [KPI] analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance

Definitions

  • One or more embodiments of this specification describe a method, device, and system for algorithm negotiation for privacy computing, which supports negotiation between the initiator and other participants, so that the two parties can meet their demands in terms of performance, security, and privacy protection strength. and preferences are fully considered, resulting in a privacy computing algorithm with high feasibility and high availability.
  • a method for algorithm negotiation for private computing including: the initiator sends a negotiation request to the participant, the negotiation request includes description information of the target computing task to be performed on the private computing, and the initiator provides A list of privacy computing algorithms supported by the target computing task; the participant selects a target algorithm from the list of privacy computing algorithms; the participant sends a feedback message to the initiator, and the feedback message includes the target Algorithm ID of the algorithm.
  • the description information of the target computing task includes a task type of the target computing task and data information of participants involved in the target computing task.
  • the task type includes at least one of the following: joint statistical analysis for specified data items; joint training of specified models; joint prediction of specified models; the data information of the participants includes, Party dataset ID.
  • the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  • the participant selects a target algorithm from the list of privacy calculation algorithms, including: the participant selects several privacy calculation algorithms supported by itself from the list of privacy calculation algorithms; Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms and the second priority information of the participant for the several privacy computing algorithms.
  • the participant selects a target algorithm from the list of privacy calculation algorithms, including: the participant selects several privacy calculation algorithms supported by itself from the list of privacy calculation algorithms; according to the The participating party selects the target algorithm from the several privacy computing algorithms for the second priority information of the several privacy computing algorithms.
  • the method further includes: determining the privacy computing algorithm list according to the target computing task.
  • determining the list of privacy computing algorithms according to the target computing task includes: acquiring a first list of algorithms used to execute the target computing task; determining the algorithm list in the first algorithm list The privacy computing algorithm supported by the party to form the list of privacy computing algorithms.
  • the method further includes, for each privacy computing algorithm in the privacy computing algorithm list, determining first priority information, and making the negotiation request include the first priority information.
  • the method further includes: using the target algorithm to jointly execute the target computing task with the participant.
  • the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  • selecting a target algorithm includes: selecting several privacy computing algorithms supported by itself from the list of privacy computing algorithms; Select the target algorithm in the privacy calculation algorithm.
  • the first priority information includes a first ranking
  • the second priority information includes a second ranking
  • the selection of the target algorithm from the plurality of privacy calculation algorithms includes : Determine the comprehensive ranking according to the first ranking and the second ranking of the plurality of privacy computing algorithms; determine the privacy computing algorithm with the highest comprehensive ranking as the target algorithm.
  • selecting a target algorithm includes: selecting several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the second priority information of the participants for the several privacy computing algorithms, from The target algorithm is selected from the plurality of privacy calculation algorithms.
  • a device for algorithm negotiation for privacy calculation the device is integrated in the initiator, and includes: a request sending unit configured to send a negotiation request to the participant, the negotiation request includes the privacy calculation to be performed Description information of the target computing task, and a list of privacy computing algorithms supported by the initiator for the target computing task; a message receiving unit configured to receive a feedback message from the participant, the feedback message including the algorithm identification of the target algorithm , the target algorithm is selected by the participant from the list of privacy calculation algorithms.
  • a device for algorithm negotiation for privacy calculation the device is integrated with the participants, including: a request receiving unit configured to receive the negotiation request sent by the initiator, the negotiation request includes, the privacy calculation is to be performed The description information of the target computing task, and the list of privacy computing algorithms supported by the initiator for the target computing task; the algorithm selection unit is configured to select the target algorithm from the list of privacy computing algorithms; the message sending unit is configured to Sending a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
  • the initiator of privacy computing sends a negotiation request to the participant, and the negotiation request includes the task information of the target computing task and the list of privacy computing algorithms supported by the initiator for the target computing task, so as to participate in
  • the party can select the target algorithm from the privacy computing algorithm list based on its own demands, and feed it back to the initiator, and then the two parties can jointly complete the target computing task based on the mutually negotiated high-feasibility and high-availability target algorithm.
  • FIG. 1 shows a schematic diagram of an interaction scenario of a two-party negotiation privacy calculation algorithm according to an embodiment
  • Fig. 2 shows a schematic diagram of two-party interaction for algorithm negotiation for privacy calculation according to an embodiment
  • Fig. 3 shows a schematic structural diagram of a system for algorithm negotiation for privacy calculation according to an embodiment
  • Fig. 4 shows a schematic structural diagram of a device for algorithm negotiation for privacy calculation according to an embodiment
  • the initiator specifies the privacy computing algorithm (or privacy computing scheme). This specification provides another solution to determine the privacy calculation algorithm.
  • the solution proposed by the inventor allows the initiator to negotiate with other participants, and obtain a privacy computing algorithm that fully considers the needs of all parties through negotiation.
  • the initiator sends a negotiation request to other participants (or participants for short in the text), which indicates the target computing task and includes a list of privacy computing algorithms supported by the initiator for the target computing task, and then the participant Select the target algorithm from the list of privacy computing algorithms based on your own demands, and feed back to the initiator.
  • the negotiation of the privacy computing algorithm can be completed, so that subsequent parties can jointly perform target computing tasks based on the negotiated privacy computing algorithm.
  • the interaction process includes the following steps: Step S210, the initiator sends a negotiation request to the participant, the negotiation request includes description information of the target computing task to be performed on privacy computing, and the initiator's policy on the target computing task List of supported privacy calculation algorithms.
  • the task type of the target computing task may include joint training of specified models.
  • the specified model may be a machine learning model such as a logistic regression model, a decision tree model, or a neural network model.
  • the specified model may be a classification model or a regression model.
  • the sample objects targeted by the specified model may be: users, merchants, commodities, events (such as login events or access events), devices (such as user terminals or Internet of Things devices), and so on.
  • the specified model may be a user classification model or a user scoring model, such as a consumer group segmentation model, a user risk assessment model, a user anomaly identification model, and the like.
  • the specified model may be a commodity classification model or a commodity scoring model, specifically such as a commodity popularity scoring model.
  • task types included in the description information. It should be understood that in addition to the above-mentioned joint statistical analysis for specified data items, joint training and joint prediction of specified models, task types can also include other types, which are not exhaustive.
  • the description information of the target computing task further includes data information of participants involved in the target computing task.
  • the participant data information may include a participant dataset identifier, which indicates that the initiator hopes that the participant can use the dataset identified by the participant dataset identifier to participate in the common implement.
  • the interaction process may also include: the initiator obtains a plurality of participant data set identifiers from the participant in advance, and the corresponding plurality of participant data set For example, the obtained content can be found in Table 1; then, according to the target computing task, the initiator selects one or several dataset identifiers from the multiple participant dataset identifiers, and includes them in the above In the negotiation request, for example, the initiator selects the data set identifier 1004 from Table 1 according to the joint training task for the merchant credit evaluation model, and includes it in the above-mentioned negotiation request.
  • the participant data information in the above description information also includes a participant data field, which indicates that the initiator hopes that the participant can use the field value corresponding to this field to participate in the above-mentioned target computing task. implement.
  • the data field may be the category of the merchant or the time when the event occurs.
  • the originator can determine that a variety of privacy computing algorithms that have been disclosed that can be used to perform the above-mentioned target computing tasks form a first algorithm list; then, the originator can The requirements of each algorithm for the execution environment (such as network environment, hardware environment, software or protocol installation, etc.), as well as the real environment of the party, determine the privacy computing algorithm supported by the party in the first algorithm list, and form the above List of privacy computing algorithms described above.
  • the requirements of each algorithm for the execution environment such as network environment, hardware environment, software or protocol installation, etc.
  • the initiator further selects several algorithms from the privacy computing algorithms supported by the party to form the aforementioned list of privacy computing algorithms.
  • the selected benchmark can be based on various reasons. For example, the data of the target computing task is too large, and some algorithms consume too much resources; the data of the target computing task is too sensitive, and algorithms with high security levels need to be used, and so on. Due to the above or other reasons, among the privacy computing algorithms supported by this party, only k of them are allowed to be used for the target computing tasks, so only these k algorithms are selected to form the above privacy computing algorithm list.
  • the privacy computing algorithm includes algorithm steps for executing the target computing task.
  • the algorithm steps are refined to the point where both parties support the privacy computing algorithm, and can jointly complete the target computing task directly based on local data and local execution environment. .
  • the task type of the above-mentioned target computing task is to count the number of identical users in the two parties.
  • Algorithm C indicates that the two parties use the PSI calculation module 1 of version v1.0 provided by the provider ProA to perform privacy and security intersection using the user's mobile phone number stored separately.
  • Algorithm D indicates that the two parties use the user's mobile phone number stored separately , using the PSI calculation module 2 of version v2.0 provided by the provider ProB for privacy and security calculation. Even though PSI calculation modules 1 and 2 adopt the same privacy seeking protocol, Algorithm C and Algorithm D are still regarded as different privacy calculation algorithms and are listed separately.
  • the list of privacy computing algorithms supported by the initiator for the above target computing tasks can be determined and included in the negotiation request.
  • the negotiation request may also include the first priority information of each privacy calculation algorithm in the privacy calculation algorithm list.
  • the first priority information may include priority levels, and the priority levels of different privacy calculation algorithms may be the same or different.
  • the first priority information may include an algorithm score, and a higher score indicates a higher priority.
  • the privacy computing algorithms in the privacy computing algorithm list are arranged one by one in descending order of priority.
  • the corresponding first priority information may be determined according to the operating indicators of each privacy calculation algorithm in the privacy calculation algorithm list.
  • the running indicators may include: occupied computing resources, computing speed (or computing speed), communication costs, and privacy protection strength.
  • the computing resources may include CPU resources, memory resources, hard disk resources and network resources.
  • the communication cost is a monetary representation of resources occupied by two parties communicating.
  • the privacy protection strength can be measured by using an existing measurement algorithm (for example, an information entropy model, etc.).
  • the first priority information can be set by staff based on experience. In this way, the first priority information of each privacy computing algorithm in the privacy computing algorithm list can be determined and included in the negotiation request.
  • the content of the negotiation request sent by the initiator is introduced above.
  • the participant may select a target algorithm from the above-mentioned privacy calculation algorithm list included in the negotiation request in step S220.
  • this step may include: the participant selects several privacy computing algorithms supported by the participant from the aforementioned list of privacy computing algorithms. It should be understood that a participant can determine several privacy computing algorithms supported by the party based on the execution environment requirements of each privacy computing algorithm in the privacy computing algorithm list and the actual local execution environment.
  • the above negotiation request further includes the first priority information corresponding to each privacy calculation algorithm in the privacy calculation algorithm list.
  • the participant can select the target algorithm from the several privacy computing algorithms supported by itself according to the first priority information of the several privacy computing algorithms supported by the participant.
  • the privacy computing algorithm with the highest priority may be selected from the several privacy computing algorithms as the target algorithm.
  • the privacy calculation algorithm with the highest priority can be selected, and for another example, the privacy calculation algorithm with the highest comprehensive score can be selected.
  • the first priority information includes the first ranking, and the first ranking indicates the corresponding ranking.
  • the highest-ranked privacy computing algorithm among several privacy computing algorithms can be used as the above-mentioned target algorithm.
  • there are multiple parallel privacy calculation algorithms with the highest priority one can be selected from them, or it can be handed over to manual decision-making.
  • the participant can determine its second priority information for the above-mentioned several privacy computing algorithms according to the above-mentioned target computing tasks, and then select the above-mentioned target algorithm in combination with the first priority information.
  • the second priority information can reflect the preferences and tendencies of the participants on various privacy calculation algorithms, and the determination process can be similar to that of the first priority information, which will not be repeated here.
  • the first priority information includes the first ranking
  • the second priority information includes the second ranking.
  • the comprehensive ranking of each algorithm in the plurality of privacy calculation algorithms can be determined, and the comprehensive ranking can be the corresponding The sum of the first sorting and the second sorting; then determine the privacy calculation algorithm with the highest comprehensive ranking (top ranking) as the above target algorithm.
  • the first priority information and the second priority information include algorithm scores. At this time, the comprehensive score of each algorithm among the several privacy calculation algorithms can be determined. Specifically, each algorithm can correspond to two parties.
  • the scores of each algorithm are summed, averaged, or weighted and summed based on the weights set by the participants to obtain a comprehensive score; and then the privacy calculation algorithm with the highest comprehensive score among the several privacy calculation algorithms is determined as the above target algorithm .
  • the participants can select the target algorithm from the list of privacy calculation algorithms.
  • the participant sends a feedback message to the initiator, and the feedback message includes the algorithm identifier of the above-mentioned target algorithm.
  • the list of privacy computing algorithms includes the algorithm identification of each privacy computing algorithm, and correspondingly, the participant can obtain the algorithm identification of the target algorithm from it, and include it in the feedback message.
  • the participant can use the position of the target algorithm in the list of privacy computing algorithms (such as which row or number) as its algorithm identifier, and include it in the feedback message.
  • the above-mentioned negotiation request includes the identifier of the participant's data set, and correspondingly, the feedback message may also include a corresponding feedback field, indicating whether the participant will use the participation in the process of jointly executing the target computing task The dataset identified by the party dataset id.
  • the initiator can receive feedback messages from the participants.
  • the two parties can obtain a target algorithm with high feasibility and strong security that meets the needs of both parties at the same time.
  • the above-mentioned interaction process may further include step S240: the initiator and the participant use the above-mentioned target algorithm to jointly execute the above-mentioned target computing task.
  • the joint execution of the target computing task can be realized according to the target algorithm negotiated by the two parties.
  • the initiator of the privacy computing sends a negotiation request to the participant, and the negotiation request includes the task information of the target computing task and the initiator’s policy for the target computing task.
  • the list of supported privacy computing algorithms so that the participants can select the target algorithm from the list of privacy computing algorithms based on their own demands, and feed back to the initiator, and then the two parties can jointly negotiate based on the high feasibility and high availability of the target algorithm.
  • the embodiment of this specification also discloses an algorithm negotiation device and system.
  • Fig. 3 shows a schematic structural diagram of a system for algorithm negotiation for privacy calculation according to an embodiment.
  • the system 300 includes: an initiator 310, configured to send a negotiation request to a participant, the negotiation request includes description information of a target computing task to be performed on privacy calculation, and the initiator 310 for the target A list of privacy computing algorithms supported by computing tasks; the participant 320 is configured to select a target algorithm from the list of privacy computing algorithms; the participant 320 is also configured to send a feedback message to the initiator, and the The feedback message includes the algorithm identifier of the target algorithm.
  • the description information of the target computing task includes a task type of the target computing task and data information of participants involved in the target computing task.
  • the task type includes at least one of the following: joint statistical analysis of specified data items; joint training of specified models; joint prediction of specified models.
  • the participant data information includes a participant dataset identifier.
  • the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  • the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, select from The target algorithm is selected from the plurality of privacy calculation algorithms.
  • the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, and The participant selects the target algorithm from the several privacy computing algorithms for the second priority information of the several privacy computing algorithms.
  • the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; information, and select the target algorithm from the several privacy calculation algorithms.
  • the initiator 310 and the participant 320 are further configured to: use the target algorithm to execute the target computing task.
  • Fig. 4 shows a schematic structural diagram of a device for algorithm negotiation for privacy calculation according to an embodiment, the device is integrated in the initiator.
  • the apparatus 400 includes: a request sending unit 410 configured to send a negotiation request to a participant, the negotiation request includes description information of a target computing task to be performed on privacy computing, and A list of privacy computing algorithms supported by the target computing task; the message receiving unit 420 is configured to receive a feedback message from the participant, the feedback message includes the algorithm identification of the target algorithm, and the target algorithm is obtained by the participant from the selected from the list of privacy calculation algorithms mentioned above.
  • the apparatus 400 further includes an algorithm list determining unit 430 configured to determine the privacy computing algorithm list according to the target computing task.
  • the algorithm list determination unit 430 is specifically configured to: obtain a first algorithm list used to execute the target computing task; determine the privacy computing algorithm supported by the party in the first algorithm list, and form The list of privacy calculation algorithms.
  • the apparatus 400 further includes a priority determination unit 440 configured to determine first priority information for each privacy calculation algorithm in the privacy calculation algorithm list, and make the negotiation request include the first priority level information.
  • the priority determination unit 440 is specifically configured to: determine the first priority information according to the operation indicators of each privacy calculation algorithm, and the operation indicators include at least one of the following: Resources, computing speed, communication cost, and privacy protection strength.
  • the apparatus 400 further includes: a task execution unit 450 configured to use the target algorithm to jointly execute the target computing task with the participant.
  • Fig. 5 shows a schematic structural diagram of an apparatus for algorithm negotiation for privacy calculation according to another embodiment, the apparatus is integrated in a participant.
  • the apparatus 500 includes: a request receiving unit 510 configured to receive a negotiation request sent by the initiator, the negotiation request including description information of the target computing task to be performed on privacy calculation, and the initiator's List of privacy computing algorithms supported by the target computing task.
  • the algorithm selection unit 520 is configured to select a target algorithm from the list of privacy calculation algorithms.
  • the message sending unit 530 is configured to send a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
  • the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  • the algorithm selection unit 520 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, and the The participant selects the target algorithm from the plurality of privacy computing algorithms for the second priority information of the plurality of privacy computing algorithms.
  • the first priority information includes a first ranking
  • the second priority information includes a second ranking
  • the algorithm selection unit 520 is specifically configured to: according to the first ranking of the several privacy calculation algorithms The first sorting and the second sorting determine the comprehensive ranking; the privacy calculation algorithm with the highest comprehensive ranking is determined as the target algorithm.
  • the apparatus 500 further includes: a task execution unit 540 configured to use the target algorithm to jointly execute the target computing task with the initiator.
  • the initiator of privacy computing sends a negotiation request to the participant, and the negotiation request includes task information of the target computing task and the initiator policy for the target computing task.
  • the list of supported privacy computing algorithms so that the participants can select the target algorithm from the list of privacy computing algorithms based on their own demands, and feed back to the initiator, and then the two parties can negotiate based on the target algorithm with high feasibility and high availability. Work together to complete the target calculation task.
  • a computer-readable storage medium on which a computer program is stored.
  • the computer program is executed in a computer, the computer is instructed to execute the method described in conjunction with FIG. 2 .
  • a computing device including a memory and a processor, wherein executable code is stored in the memory, and when the processor executes the executable code, the implementation described in conjunction with FIG. 2 is implemented. method.
  • the functions described in the present invention may be implemented by hardware, software, firmware or any combination thereof.
  • the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Software Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Engineering & Computer Science (AREA)
  • Educational Administration (AREA)
  • Health & Medical Sciences (AREA)
  • Operations Research (AREA)
  • General Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Game Theory and Decision Science (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Medical Informatics (AREA)
  • Databases & Information Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

A method, device and system for performing algorithm negotiation on privacy computation. The method comprises: an initiating party sends a negotiation request to a participating party, the negotiation request comprising description information of a target computing task to be subjected to privacy computation, and a privacy computation algorithm list supported by the initiating party against the target computing task (S210); the participating party selects a target algorithm from the privacy computation algorithm list (S220); and the participating party sends a feedback message to the initiating party, the feedback message comprising an algorithm identifier of the target algorithm (S230).

Description

针对隐私计算进行算法协商的方法、装置及系统Method, device and system for algorithm negotiation for private computing 技术领域technical field
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及针对隐私计算进行算法协商的方法、装置及系统。One or more embodiments of this specification relate to the field of computer technology, and in particular to a method, device, and system for algorithm negotiation for private computing.
背景技术Background technique
为了充分挖掘数据价值,多方联合进行数据计算已成为一大研究热点。例如,为了更好地对商户进行分类分析,电子支付平台基于其拥有的商户交易流水数据,电子商户平台基于其拥有的商户销售数据,银行机构基于其拥有的商户借贷数据,共同进行商户的分类分析。In order to fully tap the value of data, multi-party joint data calculation has become a major research hotspot. For example, in order to better classify and analyze merchants, the electronic payment platform will classify merchants based on the merchant transaction data it owns, the e-merchant platform based on the merchant sales data it owns, and the banking institution based on the merchant loan data it owns. analyze.
在多方数据联合计算中,为了保护各方数据隐私,需要采用隐私保护计算(Privacy-Preserving Computation)技术。隐私保护计算有多种计算路线,如安全多方计算(Secure Multi-Party Computation,MPC)、可信执行环境(Trusted execution environment,TEE)、联邦学习(Federated Learning,FL)等。对于一个特定的隐私计算任务,几乎每种技术路线都有多种算法。In multi-party data joint computing, in order to protect the data privacy of all parties, it is necessary to adopt Privacy-Preserving Computation technology. Privacy-preserving computing has a variety of computing routes, such as Secure Multi-Party Computation (MPC), Trusted Execution Environment (Trusted Execution Environment, TEE), Federated Learning (Federated Learning, FL), etc. For a specific privacy computing task, almost every technical route has multiple algorithms.
发明内容Contents of the invention
本说明书一个或多个实施例描述了针对隐私计算进行算法协商的方法、装置及系统,支持发起方和其他参与方之间进行协商,使得两方在性能、安全、隐私保护强度等方面的诉求和偏好被充分考虑,从而得到具有高可行性和高可用性的隐私计算算法。One or more embodiments of this specification describe a method, device, and system for algorithm negotiation for privacy computing, which supports negotiation between the initiator and other participants, so that the two parties can meet their demands in terms of performance, security, and privacy protection strength. and preferences are fully considered, resulting in a privacy computing algorithm with high feasibility and high availability.
根据第一方面,提供一种针对隐私计算进行算法协商的方法,包括:发起方向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;所述参与方从所述隐私计算算法列表中,选择目标算法;所述参与方向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。According to the first aspect, there is provided a method for algorithm negotiation for private computing, including: the initiator sends a negotiation request to the participant, the negotiation request includes description information of the target computing task to be performed on the private computing, and the initiator provides A list of privacy computing algorithms supported by the target computing task; the participant selects a target algorithm from the list of privacy computing algorithms; the participant sends a feedback message to the initiator, and the feedback message includes the target Algorithm ID of the algorithm.
在一个实施例中,所述目标计算任务的描述信息包括,目标计算任务的任务类型,目标计算任务所涉及的参与方数据信息。In one embodiment, the description information of the target computing task includes a task type of the target computing task and data information of participants involved in the target computing task.
在一个具体的实施例中,所述任务类型包括以下中的至少一项:针对指定数据项的联合统计分析;指定模型的联合训练;指定模型的联合预测;所述参与方数据信息包括, 参与方数据集标识。In a specific embodiment, the task type includes at least one of the following: joint statistical analysis for specified data items; joint training of specified models; joint prediction of specified models; the data information of the participants includes, Party dataset ID.
在一个实施例中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。In an embodiment, the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
在一个具体的实施例中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,从所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, the participant selects a target algorithm from the list of privacy calculation algorithms, including: the participant selects several privacy calculation algorithms supported by itself from the list of privacy calculation algorithms; The first priority information of the several privacy computing algorithms, the target algorithm is selected from the several privacy computing algorithms.
在另一个具体的实施例中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In another specific embodiment, the participant selects a target algorithm from the list of privacy calculation algorithms, including: the participant selects several privacy calculation algorithms supported by itself from the list of privacy calculation algorithms; Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms and the second priority information of the participant for the several privacy computing algorithms.
在一个实施例中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In an embodiment, the participant selects a target algorithm from the list of privacy calculation algorithms, including: the participant selects several privacy calculation algorithms supported by itself from the list of privacy calculation algorithms; according to the The participating party selects the target algorithm from the several privacy computing algorithms for the second priority information of the several privacy computing algorithms.
在一个实施例中,还包括:所述发起方和所述参与方,利用所述目标算法,执行所述目标计算任务。In one embodiment, it further includes: the initiator and the participant using the target algorithm to execute the target computing task.
根据第二方面,提供一种针对隐私计算进行算法协商的方法,通过发起方执行,包括:向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;从所述参与方接收反馈消息,所述反馈消息中包含目标算法的算法标识,所述目标算法由所述参与方从所述隐私计算算法列表中选择得到。According to the second aspect, there is provided a method for algorithm negotiation for private computing, which is executed by an initiator, including: sending a negotiation request to a participant, where the negotiation request includes description information of a target computing task for which private computing is to be performed, and A list of privacy computing algorithms supported by the initiator for the target computing task; receiving a feedback message from the participant, the feedback message including the algorithm identification of the target algorithm, the target algorithm is obtained by the participant from the privacy Select from the calculation algorithm list.
在一个实施例中,还包括:根据所述目标计算任务,确定所述隐私计算算法列表。In one embodiment, the method further includes: determining the privacy computing algorithm list according to the target computing task.
在一个具体的实施例中,根据所述目标计算任务,确定所述隐私计算算法列表,包括:获取用于执行所述目标计算任务的第一算法列表;在所述第一算法列表中确定本方支持的隐私计算算法,形成所述隐私计算算法列表。In a specific embodiment, determining the list of privacy computing algorithms according to the target computing task includes: acquiring a first list of algorithms used to execute the target computing task; determining the algorithm list in the first algorithm list The privacy computing algorithm supported by the party to form the list of privacy computing algorithms.
在一个实施例中,还包括,针对所述隐私计算算法列表中各隐私计算算法,确定第一优先级信息,并使得所述协商请求包括所述第一优先级信息。In an embodiment, the method further includes, for each privacy computing algorithm in the privacy computing algorithm list, determining first priority information, and making the negotiation request include the first priority information.
在一个具体的实施例中,其中确定第一优先级信息,包括:根据各隐私计算算法的运行指标,确定所述第一优先级信息,所述运行指标包括以下中的至少一项:占用的计算资源,计算速度,通信成本,隐私保护强度。In a specific embodiment, determining the first priority information includes: determining the first priority information according to the operating indicators of each privacy calculation algorithm, and the operating indicators include at least one of the following: occupied Computing resources, computing speed, communication cost, and privacy protection strength.
在一个实施例中,还包括:利用所述目标算法,与所述参与方共同执行所述目标计算任务。In one embodiment, the method further includes: using the target algorithm to jointly execute the target computing task with the participant.
根据第三方面,提供一种针对隐私计算进行算法协商的方法,通过参与方执行,包括:接收发起方发送的协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;从所述隐私计算算法列表中,选择目标算法;向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。According to a third aspect, there is provided a method for algorithm negotiation for private computing, which is executed by a participant, including: receiving a negotiation request sent by an initiator, where the negotiation request includes description information of a target computing task to be performed for private computing, and a list of privacy computing algorithms supported by the initiator for the target computing task; selecting a target algorithm from the list of privacy computing algorithms; sending a feedback message to the initiator, the feedback message including the target algorithm Algorithm ID.
在一个实施例中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。In an embodiment, the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
在一个具体的实施例中,选择目标算法,包括:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,从所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, selecting a target algorithm includes: selecting several privacy computing algorithms supported by itself from the list of privacy computing algorithms; Select the target algorithm in the privacy calculation algorithm.
在另一个具体的实施例中,选择目标算法,包括:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In another specific embodiment, selecting a target algorithm includes: selecting several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, and the The participating party selects the target algorithm from the several privacy computing algorithms for the second priority information of the several privacy computing algorithms.
在一个更具体的实施例中,所述第一优先级信息包括第一排序,所述第二优先级信息包括第二排序;所述从所述若干隐私计算算法中选择所述目标算法,包括:根据所述若干隐私计算算法的第一排序和第二排序,确定出综合排序;将综合排序最高的隐私计算算法确定为所述目标算法。In a more specific embodiment, the first priority information includes a first ranking, and the second priority information includes a second ranking; the selection of the target algorithm from the plurality of privacy calculation algorithms includes : Determine the comprehensive ranking according to the first ranking and the second ranking of the plurality of privacy computing algorithms; determine the privacy computing algorithm with the highest comprehensive ranking as the target algorithm.
在一个实施例中,选择目标算法,包括:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In one embodiment, selecting a target algorithm includes: selecting several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the second priority information of the participants for the several privacy computing algorithms, from The target algorithm is selected from the plurality of privacy calculation algorithms.
根据第四方面,提供一种针对隐私计算进行算法协商的系统,包括:发起方,用于向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;所述参与方,用 于从所述隐私计算算法列表中,选择目标算法;所述参与方,还用于向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。According to the fourth aspect, there is provided a system for algorithm negotiation for private computing, including: an initiator, configured to send a negotiation request to a participant, where the negotiation request includes description information of a target computing task to be performed for private computing, and A list of privacy computing algorithms supported by the initiator for the target computing task; the participant is configured to select a target algorithm from the list of privacy computing algorithms; the participant is also configured to send A feedback message, where the feedback message includes the algorithm identifier of the target algorithm.
根据第五方面,提供一种针对隐私计算进行算法协商的装置,该装置集成于发起方,包括:请求发送单元,配置为向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;消息接收单元,配置为从所述参与方接收反馈消息,所述反馈消息中包含目标算法的算法标识,所述目标算法由所述参与方从所述隐私计算算法列表中选择得到。According to the fifth aspect, there is provided a device for algorithm negotiation for privacy calculation, the device is integrated in the initiator, and includes: a request sending unit configured to send a negotiation request to the participant, the negotiation request includes the privacy calculation to be performed Description information of the target computing task, and a list of privacy computing algorithms supported by the initiator for the target computing task; a message receiving unit configured to receive a feedback message from the participant, the feedback message including the algorithm identification of the target algorithm , the target algorithm is selected by the participant from the list of privacy calculation algorithms.
根据第六方面,提供一种针对隐私计算进行算法协商的装置,该装置集成于参与方,包括:请求接收单元,配置为接收发起方发送的协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;算法选择单元,配置为从所述隐私计算算法列表中,选择目标算法;消息发送单元,配置为向所述发起方发送反馈消息,该反馈消息中包含所述目标算法的算法标识。According to the sixth aspect, there is provided a device for algorithm negotiation for privacy calculation, the device is integrated with the participants, including: a request receiving unit configured to receive the negotiation request sent by the initiator, the negotiation request includes, the privacy calculation is to be performed The description information of the target computing task, and the list of privacy computing algorithms supported by the initiator for the target computing task; the algorithm selection unit is configured to select the target algorithm from the list of privacy computing algorithms; the message sending unit is configured to Sending a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
根据第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面或第二方面或第三方面中提供的方法。According to a seventh aspect, there is provided a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed in a computer, it causes the computer to execute the method provided in the first aspect or the second aspect or the third aspect .
根据第八方面,提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面或第二方面或第三方面中提供的方法。According to an eighth aspect, there is provided a computing device, including a memory and a processor, wherein executable code is stored in the memory, and when the processor executes the executable code, the first aspect or the second aspect or the third aspect is realized. methods provided in the aspect.
根据本说明书实施例提供的方法和装置,隐私计算的发起方向参与方发送协商请求,该协商请求包括目标计算任务的任务信息以及发起方针对该目标计算任务所支持的隐私计算算法列表,从而参与方可以结合自身诉求从该隐私计算算法列表中选择目标算法,并反馈给发起方,进而两方可以基于共同协商的高可行性和高可用性的目标算法,共同完成目标计算任务。According to the method and device provided in the embodiments of this specification, the initiator of privacy computing sends a negotiation request to the participant, and the negotiation request includes the task information of the target computing task and the list of privacy computing algorithms supported by the initiator for the target computing task, so as to participate in The party can select the target algorithm from the privacy computing algorithm list based on its own demands, and feed it back to the initiator, and then the two parties can jointly complete the target computing task based on the mutually negotiated high-feasibility and high-availability target algorithm.
附图说明Description of drawings
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following will briefly introduce the accompanying drawings that need to be used in the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For Those of ordinary skill in the art can also obtain other drawings based on these drawings without making creative efforts.
图1示出根据一个实施例的两方协商隐私计算算法的交互场景示意图;FIG. 1 shows a schematic diagram of an interaction scenario of a two-party negotiation privacy calculation algorithm according to an embodiment;
图2示出根据一个实施例的针对隐私计算进行算法协商的两方交互示意图;Fig. 2 shows a schematic diagram of two-party interaction for algorithm negotiation for privacy calculation according to an embodiment;
图3示出根据一个实施例的针对隐私计算进行算法协商的系统结构示意图;Fig. 3 shows a schematic structural diagram of a system for algorithm negotiation for privacy calculation according to an embodiment;
图4示出根据一个实施例的针对隐私计算进行算法协商的装置结构示意图;Fig. 4 shows a schematic structural diagram of a device for algorithm negotiation for privacy calculation according to an embodiment;
图5示出根据另一个实施例的针对隐私计算进行算法协商的装置结构示意图。Fig. 5 shows a schematic structural diagram of an apparatus for algorithm negotiation for privacy calculation according to another embodiment.
具体实施方式Detailed ways
下面结合附图,对本说明书提供的方案进行描述。The solutions provided in this specification will be described below in conjunction with the accompanying drawings.
通常对于某个隐私计算任务,是由其发起方来指定隐私计算算法(或称隐私计算方案)。本说明书提供另一种方案来确定隐私计算算法。Usually, for a certain privacy computing task, the initiator specifies the privacy computing algorithm (or privacy computing scheme). This specification provides another solution to determine the privacy calculation algorithm.
发明人提出的这种方案,让发起方和其他参与方进行协商,通过协商得到充分考虑各方需求的隐私计算算法。在该方案中,发起方向其他参与方(文中或简称参与方)发送协商请求,该协商请求指示目标计算任务,并且包括发起方针对该目标计算任务所支持的隐私计算算法列表,进而,参与方结合自身诉求从该隐私计算算法列表中选择目标算法,并反馈给发起方。如此可以完成隐私计算算法的协商,使得后续各方可以基于协商好的隐私计算算法共同执行目标计算任务。The solution proposed by the inventor allows the initiator to negotiate with other participants, and obtain a privacy computing algorithm that fully considers the needs of all parties through negotiation. In this scheme, the initiator sends a negotiation request to other participants (or participants for short in the text), which indicates the target computing task and includes a list of privacy computing algorithms supported by the initiator for the target computing task, and then the participant Select the target algorithm from the list of privacy computing algorithms based on your own demands, and feed back to the initiator. In this way, the negotiation of the privacy computing algorithm can be completed, so that subsequent parties can jointly perform target computing tasks based on the negotiated privacy computing algorithm.
为便于直观理解,图1示出根据一个实施例的两方协商隐私计算算法的交互场景示意图。如图1所示,支付平台和银行分别为隐私计算任务的发起方和参与方;首先,支付平台向银行发送协商请求,其中包括目标计算任务的任务信息,例如,用户分类模型的联合训练,协商请求中还包括支付平台针对目标计算任务支持的隐私计算算法列表,图1中示意该列表中包括隐私计算算法A 1,隐私计算算法A 2,...隐私计算算法A n;然后,银行基于协商请求中该目标计算任务的任务信息,从隐私计算算法列表中选取其自身支持的隐私计算算法A i,并反馈给支付平台;进而,支付平台和银行可以利用隐私计算算法A i,共同执行该目标计算任务。 To facilitate intuitive understanding, FIG. 1 shows a schematic diagram of an interaction scenario of a two-party negotiation privacy calculation algorithm according to an embodiment. As shown in Figure 1, the payment platform and the bank are the initiator and participant of the privacy computing task respectively; first, the payment platform sends a negotiation request to the bank, which includes the task information of the target computing task, for example, the joint training of the user classification model, The negotiation request also includes a list of privacy computing algorithms supported by the payment platform for the target computing task. Figure 1 shows that the list includes privacy computing algorithm A 1 , privacy computing algorithm A 2 , ... privacy computing algorithm A n ; then, the bank Based on the task information of the target computing task in the negotiation request, the privacy computing algorithm A i supported by itself is selected from the list of privacy computing algorithms, and fed back to the payment platform; furthermore, the payment platform and the bank can use the privacy computing algorithm A i to jointly Execute the target computing task.
下面,结合具体的实施例,描述上述发明构思的实施步骤。图2示出根据一个实施例的针对隐私计算进行算法协商的两方交互示意图,该两方包括隐私计算的发起方,以及与之共同参与隐私计算的参与方,需理解,发起方和参与方均为数据方,均可以实现为具有计算、处理能力的设备、平台、服务器或设备集群,从而各自对自身持有的数据进行独立存储和处理。示例性地,发起方和参与方可以是不同的企业、机构、平台,又 或者,可以是同一企业中的不同部门。Below, in combination with specific embodiments, the implementation steps of the above inventive concepts are described. Fig. 2 shows a schematic diagram of two-party interaction for algorithm negotiation for privacy computing according to an embodiment. Both are data parties, and can be implemented as devices, platforms, servers or device clusters with computing and processing capabilities, so that each can independently store and process the data it holds. Exemplarily, the initiator and the participant may be different enterprises, institutions, platforms, or may be different departments in the same enterprise.
如图2所示,所述交互过程包括以下步骤:步骤S210,发起方向参与方发送协商请求,该协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对该目标计算任务所支持的隐私计算算法列表。As shown in Figure 2, the interaction process includes the following steps: Step S210, the initiator sends a negotiation request to the participant, the negotiation request includes description information of the target computing task to be performed on privacy computing, and the initiator's policy on the target computing task List of supported privacy calculation algorithms.
在一个实施例中,上述描述信息包括目标计算任务的任务类型。在一个具体的实施例中,该任务类型可以包括针对指定数据项的联合统计分析。在一个更具体的实施例中,其中指定数据项可以是用户年龄、用户性别、商户平均营业额、商户类别、企业规模等。在一个更具体的实施例中,其中联合统计分析可以是分析指定数据项在其定义域内的数值分布,或者,两方之间对指定数据项所对应数值的大小比较,又或者,两方之间对指定数据项的求和、求交或求平均等分析计算操作。在一个示例中,上述针对指定数据项的联合统计分析可以是:统计两方中女性用户的总数量。在另一个示例中,也可以是:统计两方中相同用户的数量。在还一个示例中,还可以是:统计两方中所有用户的年龄分布。在又一个示例中,可以是:比较两方的商户平均营业额。In one embodiment, the above description information includes the task type of the target computing task. In a specific embodiment, the task type may include joint statistical analysis for specified data items. In a more specific embodiment, the specified data items may be user age, user gender, merchant average turnover, merchant category, enterprise scale, and the like. In a more specific embodiment, the joint statistical analysis may be to analyze the numerical distribution of the specified data item within its definition domain, or, between the two parties, compare the value corresponding to the specified data item, or, between the two parties Analysis and calculation operations such as summation, intersection, or averaging of specified data items. In an example, the joint statistical analysis for the specified data item may be: counting the total number of female users in the two parties. In another example, it may also be: count the number of identical users in both parties. In yet another example, it may also be: count the age distribution of all users in the two parties. In yet another example, it may be: comparing the average merchant turnover of the two parties.
在另一个具体的实施例中,目标计算任务的任务类型可以包括指定模型的联合训练。在一个更具体的实施例中,指定模型可以是逻辑回归模型、决策树模型、神经网络模型等机器学习模型。在一个更具体的实施例中,指定模型可以是分类模型或回归模型。在一个更具体的实施例中,指定模型针对的样本对象可以是:用户、商户、商品、事件(如登录事件或访问事件)、设备(如用户终端或物联网设备)等。在一个示例中,指定模型可以是用户分类模型或用户打分模型,具体如消费人群划分模型、用户风险评估模型、用户异常识别模型等。在另一个示例中,指定模型可以是商品分类模型或商品评分模型,具体如商品热度评分模型等。In another specific embodiment, the task type of the target computing task may include joint training of specified models. In a more specific embodiment, the specified model may be a machine learning model such as a logistic regression model, a decision tree model, or a neural network model. In a more specific embodiment, the specified model may be a classification model or a regression model. In a more specific embodiment, the sample objects targeted by the specified model may be: users, merchants, commodities, events (such as login events or access events), devices (such as user terminals or Internet of Things devices), and so on. In an example, the specified model may be a user classification model or a user scoring model, such as a consumer group segmentation model, a user risk assessment model, a user anomaly identification model, and the like. In another example, the specified model may be a commodity classification model or a commodity scoring model, specifically such as a commodity popularity scoring model.
在又一个具体的实施例中,目标计算任务的任务类型可以包括指定模型的联合预测。在一个更具体的实施例中,指定模型可以是分类模型或回归模型,相应,联合预测可以是基于分类模型预测分类类别,或者,基于回归模型预测回归值。在一个例子中,上述指定模型的联合预测可以是:基于用户风险评估模型预测用户风险评分,或者,基于用户异常识别模型识别异常用户。In yet another specific embodiment, the task type of the target computing task may include joint prediction of a specified model. In a more specific embodiment, the specified model may be a classification model or a regression model, and correspondingly, the joint prediction may be to predict a classification category based on a classification model, or to predict a regression value based on a regression model. In an example, the joint prediction of the above specified models may be: predicting user risk scores based on the user risk assessment model, or identifying abnormal users based on the user anomaly identification model.
以上介绍描述信息中包括的目标计算任务类型,需理解,任务类型除了可以包括上述针对指定数据项的联合统计分析、指定模型的联合训练和联合预测以外,还可以包括其他类型,不作穷举。The above description describes the target computing task types included in the description information. It should be understood that in addition to the above-mentioned joint statistical analysis for specified data items, joint training and joint prediction of specified models, task types can also include other types, which are not exhaustive.
在一个实施例中,上述目标计算任务的描述信息还包括目标计算任务所涉及的参与方数据信息。在一个具体的实施例中,该参与方数据信息可以包括参与方数据集标识,其指示:发起方希望参与方能够利用此参与方数据集标识所标识的数据集,参与上述目标计算任务的共同执行。基于此,在一个更具体的实施例中,在本步骤之前,所述交互过程还可以包括:发起方预先从参与方中获取多个参与方数据集标识,以及对应的多个参与方数据集的简要介绍信息,例如,获取的内容可参见表1;然后,发起方根据目标计算任务,从该多个参与方数据集标识中选取出某个或某几个数据集标识,并包含在上述协商请求中,例如,发起方根据针对商户信用评估模型的联合训练任务,从表1选取数据集标识1004,并将之包含在上述协商请求中。In an embodiment, the description information of the target computing task further includes data information of participants involved in the target computing task. In a specific embodiment, the participant data information may include a participant dataset identifier, which indicates that the initiator hopes that the participant can use the dataset identified by the participant dataset identifier to participate in the common implement. Based on this, in a more specific embodiment, before this step, the interaction process may also include: the initiator obtains a plurality of participant data set identifiers from the participant in advance, and the corresponding plurality of participant data set For example, the obtained content can be found in Table 1; then, according to the target computing task, the initiator selects one or several dataset identifiers from the multiple participant dataset identifiers, and includes them in the above In the negotiation request, for example, the initiator selects the data set identifier 1004 from Table 1 according to the joint training task for the merchant credit evaluation model, and includes it in the above-mentioned negotiation request.
表1Table 1
参与方数据集标识Participant Dataset ID 简要介绍信息brief introduction information
10011001 全量用户数据集Full user data set
10021002 优质用户数据集High-quality user data set
10031003 商户数据集Merchant dataset
10041004 商户借贷数据集Merchant Loan Dataset
在另一个具体的实施例中,上述描述信息中的参与方数据信息中还包括参与方数据字段,其指示:发起方希望参与方能够利用此字段对应的字段值,参与上述目标计算任务的共同执行。在一个例子中,该数据字段可以是商户类别或事件发生时刻等。In another specific embodiment, the participant data information in the above description information also includes a participant data field, which indicates that the initiator hopes that the participant can use the field value corresponding to this field to participate in the above-mentioned target computing task. implement. In an example, the data field may be the category of the merchant or the time when the event occurs.
以上,对协商请求中可以包括的目标计算任务的描述信息,如任务类型、参与方数据信息等,进行介绍。另一方面,协商请求中还包括发起方针对该目标计算任务所支持的隐私计算算法列表。Above, the description information of the target computing task that can be included in the negotiation request, such as task type, participant data information, etc., is introduced. On the other hand, the negotiation request also includes a list of privacy computing algorithms supported by the initiator for the target computing task.
对于上述隐私计算算法列表的确定,在一个实施例中,发起方可以获取用于执行上述目标计算任务的第一算法列表;再在该第一算法列表中确定本方支持的隐私计算算法,形成上述隐私计算算法列表。需说明,对于任意的一项隐私计算任务,一般地,在每种隐私保护计算路线(如MPC、TEE、FL等)下,都可以确定出执行该任务的一种或多种隐私计算算法,但是,不同隐私计算算法对执行环境的要求多少存在一些差异,例如,对内存空间、是否安装某个安全协议、是否安装某个计算软件等,通常具有不同的要求,而任务执行方的实际环境是一段时间内是相对固定的、有限制的。由此,在一个具体的实施例中,发起方可以确定,已公开的能够用于执行上述目标计算任务的多种隐私计算算法,形成第一算法列表;然后,发起方根据第一算法列表中各算法对执行环境(如网 络环境、硬件环境、软件或协议等的安装情况)的要求,以及本方的真实环境,在该第一算法列表中确定本方支持的隐私计算算法,形成上所述隐私计算算法列表。Regarding the determination of the above-mentioned privacy computing algorithm list, in one embodiment, the initiator can obtain the first algorithm list used to perform the above-mentioned target computing tasks; and then determine the privacy computing algorithm supported by the party in the first algorithm list to form A list of the above privacy calculation algorithms. It should be noted that for any privacy computing task, in general, under each privacy-preserving computing route (such as MPC, TEE, FL, etc.), one or more privacy computing algorithms for performing the task can be determined, However, different privacy computing algorithms have somewhat different requirements for the execution environment. For example, there are usually different requirements for memory space, whether to install a certain security protocol, whether to install a certain computing software, etc., and the actual environment of the task executor It is relatively fixed and limited for a period of time. Therefore, in a specific embodiment, the originator can determine that a variety of privacy computing algorithms that have been disclosed that can be used to perform the above-mentioned target computing tasks form a first algorithm list; then, the originator can The requirements of each algorithm for the execution environment (such as network environment, hardware environment, software or protocol installation, etc.), as well as the real environment of the party, determine the privacy computing algorithm supported by the party in the first algorithm list, and form the above List of privacy computing algorithms described above.
进一步的,根据一种实施方式,发起方进一步从本方支持的隐私计算算法中,选择若干种算法,形成上述隐私计算算法列表。选择的基准可以基于多种原因,例如,目标计算任务的数据太大,有的算法消耗资源太多;目标计算任务数据太敏感,需要采用高安全级别的算法,等等。由于以上或其他原因,在本方支持的隐私计算算法中,针对目标计算任务只允许使用其中的k种,因此只选择这k种算法形成上述隐私计算算法列表。Furthermore, according to an implementation manner, the initiator further selects several algorithms from the privacy computing algorithms supported by the party to form the aforementioned list of privacy computing algorithms. The selected benchmark can be based on various reasons. For example, the data of the target computing task is too large, and some algorithms consume too much resources; the data of the target computing task is too sensitive, and algorithms with high security levels need to be used, and so on. Due to the above or other reasons, among the privacy computing algorithms supported by this party, only k of them are allowed to be used for the target computing tasks, so only these k algorithms are selected to form the above privacy computing algorithm list.
根据一种实施方式,发起方预先根据其持有数据和业务范围,确定多个备选计算任务,并根据本方的真实执行环境,确定各个备选计算任务对应的隐私计算算法列表。相应地,在准备进行多方安全计算时,发起方可以根据其预先建立的备选计算任务与隐私计算算法列表之间的映射关系,确定上述目标计算任务对应的隐私计算算法列表。According to one embodiment, the initiator determines multiple candidate computing tasks in advance according to the data it holds and the scope of business, and determines the list of privacy computing algorithms corresponding to each candidate computing task according to its real execution environment. Correspondingly, when preparing to perform multi-party secure computing, the initiator can determine the list of privacy computing algorithms corresponding to the above target computing tasks according to the mapping relationship between its pre-established candidate computing tasks and the list of privacy computing algorithms.
需说明,隐私计算算法包括执行该目标计算任务的算法步骤,该算法步骤被细化到在双方均支持该隐私计算算法的情况下,可以直接根据本地数据和本地执行环境,共同完成目标计算任务。在一个示例中,假定上述目标计算任务的任务类型是统计两方中相同用户的数量,此时,隐私计算算法列表中可以包括算法A:两方利用各自存储的用户手机号,共同执行某种具体算法下的隐私安全求交(Private Set Intersection,PSI)协议,并且,发起方作为PSI协议中的客户端,参与方作为PSI协议中的服务端;列表中还可以包括算法B:两方利用各自存储的用户证件号,共同执行某篇论文中示出的伪代码所对应的方案,并且,发起方作为伪代码中记载的p方,参与方作为伪代码中记载的q方。It should be noted that the privacy computing algorithm includes algorithm steps for executing the target computing task. The algorithm steps are refined to the point where both parties support the privacy computing algorithm, and can jointly complete the target computing task directly based on local data and local execution environment. . In an example, assume that the task type of the above-mentioned target computing task is to count the number of identical users in the two parties. At this time, the list of privacy computing algorithms may include Algorithm A: the two parties use their stored mobile phone numbers to jointly execute a certain The Private Set Intersection (PSI) protocol under the specific algorithm, and the initiator acts as the client in the PSI protocol, and the participant acts as the server in the PSI protocol; the list can also include Algorithm B: two parties use The respective stored user ID numbers jointly execute the scheme corresponding to the pseudo-code shown in a paper, and the initiator acts as the p party recorded in the pseudo-code, and the participating party acts as the q-party recorded in the pseudo-code.
进一步的,在一些实施方式中,隐私计算算法被细化为,对应至实现隐私协议的计算模块的版本、提供商等信息。对于一些已有的隐私协议,已有技术中已经可以将其模块化,提供给有安全隐私计算需求的数据方。即使是同样的隐私计算协议或同样的计算算法,来自于不同提供商,或者不同版本的计算模块,在消息格式、数据格式、算法细节上仍有可能存在不同,导致双方无法直接互通。在这样的情况下,每种隐私计算算法的算法信息中,除了包含所使用的算法说明,还可以包括计算模块的提供商和/或版本信息。例如,算法C指示,两方利用各自存储的用户手机号,使用提供商ProA提供的版本v1.0的PSI计算模块1进行隐私安全求交,算法D指示,两方利用各自存储的用户手机号,使用提供商ProB提供的版本v2.0的PSI计算模块2进行隐私安全求交。即使PSI计算模块1和2采用相同的隐私求交协议,算法C和算法D仍被视为不同的隐私计算算法,被分别列出。Furthermore, in some implementations, the privacy calculation algorithm is refined to correspond to information such as the version and provider of the calculation module that implements the privacy protocol. For some existing privacy protocols, they can be modularized in existing technologies and provided to data parties with secure and private computing needs. Even if the same privacy computing protocol or the same computing algorithm comes from different providers, or computing modules of different versions, there may still be differences in message format, data format, and algorithm details, resulting in the two parties being unable to communicate directly. In this case, the algorithm information of each privacy calculation algorithm may include the provider and/or version information of the calculation module in addition to the description of the algorithm used. For example, Algorithm C indicates that the two parties use the PSI calculation module 1 of version v1.0 provided by the provider ProA to perform privacy and security intersection using the user's mobile phone number stored separately. Algorithm D indicates that the two parties use the user's mobile phone number stored separately , using the PSI calculation module 2 of version v2.0 provided by the provider ProB for privacy and security calculation. Even though PSI calculation modules 1 and 2 adopt the same privacy seeking protocol, Algorithm C and Algorithm D are still regarded as different privacy calculation algorithms and are listed separately.
由上,可以确定出发起方针对上述目标计算任务所支持的隐私计算算法列表,并将之包含在协商请求中。进一步,在一个实施例中,该协商请求中还可以包括隐私计算算法列表中各隐私计算算法的第一优先级信息。在一个具体的实施例中,第一优先级信息可以包括优先等级,不同隐私计算算法具有的优先等级可能相同也可能不同。在另一个具体的实施例中,第一优先级信息可以包括算法评分,分数越高表示优先级越高。根据一个示例,隐私计算算法列表中的隐私计算算法按照优先级从高到低的顺序而逐个排列。Based on the above, the list of privacy computing algorithms supported by the initiator for the above target computing tasks can be determined and included in the negotiation request. Further, in an embodiment, the negotiation request may also include the first priority information of each privacy calculation algorithm in the privacy calculation algorithm list. In a specific embodiment, the first priority information may include priority levels, and the priority levels of different privacy calculation algorithms may be the same or different. In another specific embodiment, the first priority information may include an algorithm score, and a higher score indicates a higher priority. According to an example, the privacy computing algorithms in the privacy computing algorithm list are arranged one by one in descending order of priority.
对于上述第一优先级信息的确定,在一个具体的实施例中,可以根据隐私计算算法列表中各隐私计算算法的运行指标,确定对应的第一优先级信息。在一个更具体的实施例中,其中运行指标可以包括:占用的计算资源,计算速度(或称运算速度),通信成本,隐私保护强度。在一个例子中,其中计算资源可以包括CPU资源、内存资源、硬盘资源和网络资源。在一个例子中,其中通信成本是两方通信所占用资源的货币表现。在一个例子中,其中隐私保护强度可以采用已有的度量算法(例如,信息熵模型等)进行度量。Regarding the determination of the above-mentioned first priority information, in a specific embodiment, the corresponding first priority information may be determined according to the operating indicators of each privacy calculation algorithm in the privacy calculation algorithm list. In a more specific embodiment, the running indicators may include: occupied computing resources, computing speed (or computing speed), communication costs, and privacy protection strength. In an example, the computing resources may include CPU resources, memory resources, hard disk resources and network resources. In one example, the communication cost is a monetary representation of resources occupied by two parties communicating. In an example, the privacy protection strength can be measured by using an existing measurement algorithm (for example, an information entropy model, etc.).
在一个例子中,可以确定某个隐私计算算法对应各项运行指标的指标评分,再对多项运行指标对应的多个指标评分进行相加、求和,或基于人工预设的权重进行加权求和,得到该某个隐私计算算法的算法评分。进一步,在一个具体的例子中,可以将该算法评分作为第一优先级信息。在另一个具体的实施例中,可以根据人工预先建立的评分区间与优先等级之间的映射关系,确定该某个隐私计算算法的算法评分对应的优先等级,作为第一优先级信息。在还一个具体的实施例中,可以将各隐私计算算法对应各项运行指标的指标值,输入预先训练的评分模型或优先级预测模型中,对应得到算法评分或优先等级,作为第一优先级信息。In one example, it is possible to determine the indicator scores of various operating indicators corresponding to a certain privacy computing algorithm, and then add and sum the scores of multiple indicators corresponding to multiple operating indicators, or perform weighted calculation based on artificially preset weights. and , get the algorithm score of the certain privacy calculation algorithm. Further, in a specific example, the algorithm score may be used as the first priority information. In another specific embodiment, the priority level corresponding to the algorithm score of a certain privacy calculation algorithm may be determined as the first priority level information according to the mapping relationship between the score range and the priority level established manually. In yet another specific embodiment, the index values of each privacy calculation algorithm corresponding to each operating index can be input into a pre-trained scoring model or priority prediction model, and the corresponding algorithm score or priority level can be obtained as the first priority information.
在另一个具体的实施例中,第一优先级信息可以由工作人员根据经验进行设定。如此,可以确定隐私计算算法列表中各隐私计算算法的第一优先级信息,并将之包含在协商请求中。In another specific embodiment, the first priority information can be set by staff based on experience. In this way, the first priority information of each privacy computing algorithm in the privacy computing algorithm list can be determined and included in the negotiation request.
以上对发起方发送的协商请求的请求内容进行介绍。相应,参与方在接收到该协商请求后,可以在步骤S220中,从协商请求包括的上述隐私计算算法列表中,选择目标算法。The content of the negotiation request sent by the initiator is introduced above. Correspondingly, after receiving the negotiation request, the participant may select a target algorithm from the above-mentioned privacy calculation algorithm list included in the negotiation request in step S220.
在一个实施例中,本步骤可以包括:参与方从上述隐私计算算法列表中,选择自身支持的若干隐私计算算法。需理解,参与方可以根据隐私计算算法列表中各隐私计算算法对执行环境的要求,以及本地的真实执行环境,确定出本方支持的若干隐私计算算法。In an embodiment, this step may include: the participant selects several privacy computing algorithms supported by the participant from the aforementioned list of privacy computing algorithms. It should be understood that a participant can determine several privacy computing algorithms supported by the party based on the execution environment requirements of each privacy computing algorithm in the privacy computing algorithm list and the actual local execution environment.
进一步,在一个具体的实施例中,上述协商请求中还包括隐私计算算法列表中各隐私计算算法对应的第一优先级信息。相应,参与方可以根据自身支持的若干隐私计算算法的第一优先级信息,从该若干隐私计算算法中选择所述目标算法。Further, in a specific embodiment, the above negotiation request further includes the first priority information corresponding to each privacy calculation algorithm in the privacy calculation algorithm list. Correspondingly, the participant can select the target algorithm from the several privacy computing algorithms supported by itself according to the first priority information of the several privacy computing algorithms supported by the participant.
在一个更具体的实施例中,可以基于第一优先级信息,从该若干隐私计算算法中选出优先级最高的隐私计算算法,作为上述目标算法。例如,可以选出优先等级最高的隐私计算算法,又例如,可以选出综合评分最高的隐私计算算法,再例如,第一优先级信息包括第一排序,该第一排序指示对应排名,此时,可以将若干隐私计算算法中排名最靠前的隐私计算算法,作为上述目标算法。进一步,若优先级最高的隐私计算算法有并列的多种,则可以从中任选一种,或交由人工决策。In a more specific embodiment, based on the first priority information, the privacy computing algorithm with the highest priority may be selected from the several privacy computing algorithms as the target algorithm. For example, the privacy calculation algorithm with the highest priority can be selected, and for another example, the privacy calculation algorithm with the highest comprehensive score can be selected. For another example, the first priority information includes the first ranking, and the first ranking indicates the corresponding ranking. At this time , the highest-ranked privacy computing algorithm among several privacy computing algorithms can be used as the above-mentioned target algorithm. Furthermore, if there are multiple parallel privacy calculation algorithms with the highest priority, one can be selected from them, or it can be handed over to manual decision-making.
在另一个更具体的实施例中,参与方可以根据上述目标计算任务,确定自身针对上述若干隐私计算算法的第二优先级信息,进而结合第一优先级信息,选取上述目标算法。需说明,第二优先级信息可以体现参与方对各种隐私计算算法的偏好和倾向,其确定过程可以与第一优先级信息类似,不作赘述。In another more specific embodiment, the participant can determine its second priority information for the above-mentioned several privacy computing algorithms according to the above-mentioned target computing tasks, and then select the above-mentioned target algorithm in combination with the first priority information. It should be noted that the second priority information can reflect the preferences and tendencies of the participants on various privacy calculation algorithms, and the determination process can be similar to that of the first priority information, which will not be repeated here.
在一个示例中,第一优先级信息中包括第一排序,第二优先级信息中包括第二排序,此时,可以确定该若干隐私计算算法中各算法的综合排序,该综合排序可以为对应的第一排序和第二排序的加和;再将综合排序最高(名次最靠前)的隐私计算算法确定为上述目标算法。在另一个示例中,第一优先级信息和第二优先级信息中包括算法评分,此时,可以确定该若干隐私计算算法中各算法的综合评分,具体,可以对各算法对应两方的两个算法评分进行加和、求均值,或基于参与方设定的权重进行加权求和,从而得到综合评分;再将该若干隐私计算算法中综合评分最靠前的隐私计算算法确定为上述目标算法。In an example, the first priority information includes the first ranking, and the second priority information includes the second ranking. At this time, the comprehensive ranking of each algorithm in the plurality of privacy calculation algorithms can be determined, and the comprehensive ranking can be the corresponding The sum of the first sorting and the second sorting; then determine the privacy calculation algorithm with the highest comprehensive ranking (top ranking) as the above target algorithm. In another example, the first priority information and the second priority information include algorithm scores. At this time, the comprehensive score of each algorithm among the several privacy calculation algorithms can be determined. Specifically, each algorithm can correspond to two parties. The scores of each algorithm are summed, averaged, or weighted and summed based on the weights set by the participants to obtain a comprehensive score; and then the privacy calculation algorithm with the highest comprehensive score among the several privacy calculation algorithms is determined as the above target algorithm .
在另一个具体的实施例中,参与方可以不考虑第一优先级信息,而是仅基于第二优先级信息,从上述若干隐私计算算法中选出优先级最高的隐私计算算法,作为上述目标算法。在还一个具体的实施中,参与方也可以不考虑任何优先级信息,而是直接从上述若干隐私计算算法中随机选取一种,作为上述目标算法。In another specific embodiment, the participant may not consider the first priority information, but only based on the second priority information, select the privacy calculation algorithm with the highest priority from the above-mentioned several privacy calculation algorithms as the above-mentioned target algorithm. In yet another specific implementation, the participant may not consider any priority information, but directly randomly selects one of the above-mentioned several privacy calculation algorithms as the above-mentioned target algorithm.
如此,参与方可以从隐私计算算法列表中选出目标算法。之后,在步骤S230,参与方向发起方发送反馈消息,该反馈消息中包含上述目标算法的算法标识。在一个实施例中,隐私计算算法列表中包括各个隐私计算算法的算法标识,相应,参与方可以从中获取目标算法的算法标识,将之包含在反馈消息中。在另一个实施例中,参与方可以将目标算法在隐私计算算法列表中的排列位置(如第几行或第几位),作为其算法标识,并 将之包含在反馈消息中。在一个实施例中,上述协商请求中包括参与方数据集标识,相应,该反馈消息中还可以包括相应的反馈字段,指示该参与方在共同执行目标计算任务的过程中,是否会采用该参与方数据集标识所标识的数据集。In this way, the participants can select the target algorithm from the list of privacy calculation algorithms. Afterwards, in step S230, the participant sends a feedback message to the initiator, and the feedback message includes the algorithm identifier of the above-mentioned target algorithm. In one embodiment, the list of privacy computing algorithms includes the algorithm identification of each privacy computing algorithm, and correspondingly, the participant can obtain the algorithm identification of the target algorithm from it, and include it in the feedback message. In another embodiment, the participant can use the position of the target algorithm in the list of privacy computing algorithms (such as which row or number) as its algorithm identifier, and include it in the feedback message. In one embodiment, the above-mentioned negotiation request includes the identifier of the participant's data set, and correspondingly, the feedback message may also include a corresponding feedback field, indicating whether the participant will use the participation in the process of jointly executing the target computing task The dataset identified by the party dataset id.
由上,发起方可以接收到参与方的反馈消息。如此,实现了两方通过协商,得到同时满足两方需求的、可行性高、安全性强的目标算法。From the above, the initiator can receive feedback messages from the participants. In this way, through negotiation, the two parties can obtain a target algorithm with high feasibility and strong security that meets the needs of both parties at the same time.
根据另一方面的实施例,在步骤S230之后,上述交互过程还可以包括步骤S240:发起方和参与方利用上述目标算法,共同执行上述目标计算任务。如此,可以实现根据两方协商的目标算法,完成对目标计算任务的共同执行。According to another embodiment, after step S230, the above-mentioned interaction process may further include step S240: the initiator and the participant use the above-mentioned target algorithm to jointly execute the above-mentioned target computing task. In this way, the joint execution of the target computing task can be realized according to the target algorithm negotiated by the two parties.
综上,在本说明书实施例披露的针对隐私计算进行算法协商的方法中,隐私计算的发起方向参与方发送协商请求,该协商请求包括目标计算任务的任务信息以及发起方针对该目标计算任务所支持的隐私计算算法列表,从而参与方可以结合自身诉求从该隐私计算算法列表中选择目标算法,并反馈给发起方,进而两方可以基于共同协商的高可行性和高可用性的目标算法,共同完成目标计算任务。To sum up, in the algorithm negotiation method for privacy computing disclosed in the embodiment of this specification, the initiator of the privacy computing sends a negotiation request to the participant, and the negotiation request includes the task information of the target computing task and the initiator’s policy for the target computing task. The list of supported privacy computing algorithms, so that the participants can select the target algorithm from the list of privacy computing algorithms based on their own demands, and feed back to the initiator, and then the two parties can jointly negotiate based on the high feasibility and high availability of the target algorithm. Complete the target computing task.
与上述算法协商方法相对应的,本说明书实施例还披露算法协商装置和系统。Corresponding to the algorithm negotiation method described above, the embodiment of this specification also discloses an algorithm negotiation device and system.
图3示出根据一个实施例的针对隐私计算进行算法协商的系统结构示意图。如图3所示,所述系统300包括:发起方310,用于向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;所述参与方320,用于从所述隐私计算算法列表中,选择目标算法;所述参与方320,还用于向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。Fig. 3 shows a schematic structural diagram of a system for algorithm negotiation for privacy calculation according to an embodiment. As shown in FIG. 3 , the system 300 includes: an initiator 310, configured to send a negotiation request to a participant, the negotiation request includes description information of a target computing task to be performed on privacy calculation, and the initiator 310 for the target A list of privacy computing algorithms supported by computing tasks; the participant 320 is configured to select a target algorithm from the list of privacy computing algorithms; the participant 320 is also configured to send a feedback message to the initiator, and the The feedback message includes the algorithm identifier of the target algorithm.
在一个实施例中,所述目标计算任务的描述信息包括,目标计算任务的任务类型,目标计算任务所涉及的参与方数据信息。In one embodiment, the description information of the target computing task includes a task type of the target computing task and data information of participants involved in the target computing task.
在一个具体的实施例中,所述任务类型包括以下中的至少一项:针对指定数据项的联合统计分析;指定模型的联合训练;指定模型的联合预测。所述参与方数据信息包括,参与方数据集标识。In a specific embodiment, the task type includes at least one of the following: joint statistical analysis of specified data items; joint training of specified models; joint prediction of specified models. The participant data information includes a participant dataset identifier.
在一个实施例中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。In an embodiment, the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
在一个具体的实施例中,所述参与方320具体用于:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,从 所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, select from The target algorithm is selected from the plurality of privacy calculation algorithms.
在一个具体的实施例中,所述参与方320具体用于:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, and The participant selects the target algorithm from the several privacy computing algorithms for the second priority information of the several privacy computing algorithms.
在一个实施例中,所述参与方320具体用于:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In one embodiment, the participant 320 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; information, and select the target algorithm from the several privacy calculation algorithms.
在一个实施例中,所述发起方310和所述参与方320还用于:利用所述目标算法,执行所述目标计算任务。In one embodiment, the initiator 310 and the participant 320 are further configured to: use the target algorithm to execute the target computing task.
图4示出根据一个实施例的针对隐私计算进行算法协商的装置结构示意图,所述装置集成于发起方。如图4所示,所述装置400包括:请求发送单元410,配置为向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;消息接收单元420,配置为从所述参与方接收反馈消息,所述反馈消息中包含目标算法的算法标识,所述目标算法由所述参与方从所述隐私计算算法列表中选择得到。Fig. 4 shows a schematic structural diagram of a device for algorithm negotiation for privacy calculation according to an embodiment, the device is integrated in the initiator. As shown in FIG. 4 , the apparatus 400 includes: a request sending unit 410 configured to send a negotiation request to a participant, the negotiation request includes description information of a target computing task to be performed on privacy computing, and A list of privacy computing algorithms supported by the target computing task; the message receiving unit 420 is configured to receive a feedback message from the participant, the feedback message includes the algorithm identification of the target algorithm, and the target algorithm is obtained by the participant from the selected from the list of privacy calculation algorithms mentioned above.
在一个实施例中,所述装置400还包括算法列表确定单元430:配置为根据所述目标计算任务,确定所述隐私计算算法列表。In one embodiment, the apparatus 400 further includes an algorithm list determining unit 430 configured to determine the privacy computing algorithm list according to the target computing task.
在一个实施例中,所述算法列表确定单元430具体配置为:获取用于执行所述目标计算任务的第一算法列表;在所述第一算法列表中确定本方支持的隐私计算算法,形成所述隐私计算算法列表。In one embodiment, the algorithm list determination unit 430 is specifically configured to: obtain a first algorithm list used to execute the target computing task; determine the privacy computing algorithm supported by the party in the first algorithm list, and form The list of privacy calculation algorithms.
在一个实施例中,所述装置400还包括优先级确定单元440,配置为针对所述隐私计算算法列表中各隐私计算算法,确定第一优先级信息,并使得协商请求包括所述第一优先级信息。In one embodiment, the apparatus 400 further includes a priority determination unit 440 configured to determine first priority information for each privacy calculation algorithm in the privacy calculation algorithm list, and make the negotiation request include the first priority level information.
在一个具体的实施例中,优先级确定单元440具体配置为:根据各隐私计算算法的运行指标,确定所述第一优先级信息,所述运行指标包括以下中的至少一项:占用的计算资源,计算速度,通信成本,隐私保护强度。In a specific embodiment, the priority determination unit 440 is specifically configured to: determine the first priority information according to the operation indicators of each privacy calculation algorithm, and the operation indicators include at least one of the following: Resources, computing speed, communication cost, and privacy protection strength.
在一个实施例中,所述装置400还包括:任务执行单元450,配置为利用所述目标算法,与所述参与方共同执行所述目标计算任务。In one embodiment, the apparatus 400 further includes: a task execution unit 450 configured to use the target algorithm to jointly execute the target computing task with the participant.
图5示出根据另一个实施例的针对隐私计算进行算法协商的装置结构示意图,所述装置集成于参与方。如图5所示,所述装置500包括:请求接收单元510,配置为接收发起方发送的协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表。算法选择单元520,配置为从所述隐私计算算法列表中,选择目标算法。消息发送单元530,配置为向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。Fig. 5 shows a schematic structural diagram of an apparatus for algorithm negotiation for privacy calculation according to another embodiment, the apparatus is integrated in a participant. As shown in FIG. 5 , the apparatus 500 includes: a request receiving unit 510 configured to receive a negotiation request sent by the initiator, the negotiation request including description information of the target computing task to be performed on privacy calculation, and the initiator's List of privacy computing algorithms supported by the target computing task. The algorithm selection unit 520 is configured to select a target algorithm from the list of privacy calculation algorithms. The message sending unit 530 is configured to send a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
在一个实施例中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。In an embodiment, the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
在一个具体的实施例中,算法选择单元520具体配置为:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,从所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, the algorithm selection unit 520 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; Select the target algorithm from the several privacy calculation algorithms mentioned above.
在一个具体的实施例中,算法选择单元520具体配置为:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In a specific embodiment, the algorithm selection unit 520 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; according to the first priority information of the several privacy computing algorithms, and the The participant selects the target algorithm from the plurality of privacy computing algorithms for the second priority information of the plurality of privacy computing algorithms.
在一个更具体的实施例中,所述第一优先级信息包括第一排序,所述第二优先级信息包括第二排序;算法选择单元520具体配置为:根据所述若干隐私计算算法的第一排序和第二排序,确定出综合排序;将综合排序最高的隐私计算算法确定为所述目标算法。In a more specific embodiment, the first priority information includes a first ranking, and the second priority information includes a second ranking; the algorithm selection unit 520 is specifically configured to: according to the first ranking of the several privacy calculation algorithms The first sorting and the second sorting determine the comprehensive ranking; the privacy calculation algorithm with the highest comprehensive ranking is determined as the target algorithm.
在一个实施例中,所述算法选择单元520具体配置为:从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。In one embodiment, the algorithm selection unit 520 is specifically configured to: select several privacy computing algorithms supported by itself from the list of privacy computing algorithms; level information, and select the target algorithm from the several privacy calculation algorithms.
在一个实施例中,所述装置500还包括:任务执行单元540,配置为利用所述目标算法,与所述发起方共同执行所述目标计算任务。In one embodiment, the apparatus 500 further includes: a task execution unit 540 configured to use the target algorithm to jointly execute the target computing task with the initiator.
综上,采用本说明书实施例披露的针对隐私计算进行算法协商的装置和系统,隐私计算的发起方向参与方发送协商请求,该协商请求包括目标计算任务的任务信息以及发起方针对该目标计算任务所支持的隐私计算算法列表,从而参与方可以结合自身诉求从该隐私计算算法列表中选择目标算法,并反馈给发起方,进而两方可以基于共同协商的高可行性和高可用性的目标算法,共同完成目标计算任务。In summary, using the device and system for algorithm negotiation for privacy computing disclosed in the embodiments of this specification, the initiator of privacy computing sends a negotiation request to the participant, and the negotiation request includes task information of the target computing task and the initiator policy for the target computing task. The list of supported privacy computing algorithms, so that the participants can select the target algorithm from the list of privacy computing algorithms based on their own demands, and feed back to the initiator, and then the two parties can negotiate based on the target algorithm with high feasibility and high availability. Work together to complete the target calculation task.
根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序, 当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。According to another embodiment, there is also provided a computer-readable storage medium on which a computer program is stored. When the computer program is executed in a computer, the computer is instructed to execute the method described in conjunction with FIG. 2 .
根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所述的方法。According to yet another embodiment, there is also provided a computing device, including a memory and a processor, wherein executable code is stored in the memory, and when the processor executes the executable code, the implementation described in conjunction with FIG. 2 is implemented. method.
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。Those skilled in the art should be aware that, in the above one or more examples, the functions described in the present invention may be implemented by hardware, software, firmware or any combination thereof. When implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium.
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。The specific embodiments described above have further described the purpose, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above descriptions are only specific embodiments of the present invention and are not intended to limit the scope of the present invention. Protection scope, any modification, equivalent replacement, improvement, etc. made on the basis of the technical solution of the present invention shall be included in the protection scope of the present invention.

Claims (25)

  1. 一种针对隐私计算进行算法协商的方法,包括:A method for algorithm negotiation for private computing, comprising:
    发起方向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;The initiator sends a negotiation request to the participant, and the negotiation request includes description information of the target computing task to be performed on the privacy calculation, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    所述参与方从所述隐私计算算法列表中,选择目标算法;The participant selects a target algorithm from the list of privacy calculation algorithms;
    所述参与方向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。The participant sends a feedback message to the initiator, and the feedback message includes an algorithm identifier of the target algorithm.
  2. 根据权利要求1所述的方法,其中,所述目标计算任务的描述信息包括,目标计算任务的任务类型,目标计算任务所涉及的参与方数据信息。The method according to claim 1, wherein the description information of the target computing task includes a task type of the target computing task and data information of participants involved in the target computing task.
  3. 根据权利要求2所述的方法,其中,所述任务类型包括以下中的至少一项:针对指定数据项的联合统计分析;指定模型的联合训练;指定模型的联合预测;The method according to claim 2, wherein the task type includes at least one of the following: joint statistical analysis of specified data items; joint training of specified models; joint prediction of specified models;
    所述参与方数据信息包括,参与方数据集标识。The participant data information includes a participant dataset identifier.
  4. 根据权利要求1所述的方法,其中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。The method according to claim 1, wherein the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  5. 根据权利要求4所述的方法,其中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:The method according to claim 4, wherein the participant selects a target algorithm from the list of privacy calculation algorithms, comprising:
    所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;The participant selects several privacy computing algorithms supported by itself from the list of privacy computing algorithms;
    根据所述若干隐私计算算法的第一优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms.
  6. 根据权利要求4所述的方法,其中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:The method according to claim 4, wherein the participant selects a target algorithm from the list of privacy calculation algorithms, comprising:
    所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;The participant selects several privacy computing algorithms supported by itself from the list of privacy computing algorithms;
    根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms and the second priority information of the participant for the several privacy computing algorithms.
  7. 根据权利要求1所述的方法,其中,所述参与方从所述隐私计算算法列表中,选择目标算法,包括:The method according to claim 1, wherein the participant selects a target algorithm from the list of privacy calculation algorithms, comprising:
    所述参与方从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;The participant selects several privacy computing algorithms supported by itself from the list of privacy computing algorithms;
    根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the participant's second priority information for the several privacy computing algorithms.
  8. 根据权利要求1所述的方法,还包括:The method according to claim 1, further comprising:
    所述发起方和所述参与方,利用所述目标算法,执行所述目标计算任务。The initiator and the participant execute the target computing task by using the target algorithm.
  9. 一种针对隐私计算进行算法协商的方法,通过发起方执行,包括:A method for algorithm negotiation for private computing, executed by the initiator, including:
    向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;Sending a negotiation request to the participant, the negotiation request including description information of the target computing task to be performed with privacy calculation, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    从所述参与方接收反馈消息,所述反馈消息中包含目标算法的算法标识,所述目标算法由所述参与方从所述隐私计算算法列表中选择得到。A feedback message is received from the participant, the feedback message includes an algorithm identifier of a target algorithm, and the target algorithm is selected by the participant from the list of privacy calculation algorithms.
  10. 根据权利要求9所述的方法,还包括:根据所述目标计算任务,确定所述隐私计算算法列表。The method according to claim 9, further comprising: determining the list of privacy computing algorithms according to the target computing task.
  11. 根据权利要求10所述的方法,其中,根据所述目标计算任务,确定所述隐私计算算法列表,包括:获取用于执行所述目标计算任务的第一算法列表;在所述第一算法列表中确定本方支持的隐私计算算法,形成所述隐私计算算法列表。The method according to claim 10, wherein, according to the target computing task, determining the list of privacy computing algorithms comprises: acquiring a first list of algorithms for executing the target computing task; Determine the privacy computing algorithm supported by the party, and form the privacy computing algorithm list.
  12. 根据权利要求9所述的方法,还包括,针对所述隐私计算算法列表中各隐私计算算法,确定第一优先级信息,并使得所述协商请求包括所述第一优先级信息。The method according to claim 9, further comprising: determining first priority information for each privacy computing algorithm in the privacy computing algorithm list, and making the negotiation request include the first priority information.
  13. 根据权利要求12所述的方法,其中,确定第一优先级信息,包括:The method according to claim 12, wherein determining the first priority information comprises:
    根据各隐私计算算法的运行指标,确定所述第一优先级信息,所述运行指标包括以下中的至少一项:占用的计算资源,计算速度,通信成本,隐私保护强度。The first priority information is determined according to the operation index of each privacy calculation algorithm, and the operation index includes at least one of the following: occupied computing resources, computing speed, communication cost, and privacy protection strength.
  14. 根据权利要求9所述的方法,还包括:利用所述目标算法,与所述参与方共同执行所述目标计算任务。The method according to claim 9, further comprising: utilizing the target algorithm to jointly perform the target computing task with the participant.
  15. 一种针对隐私计算进行算法协商的方法,通过参与方执行,包括:A method for algorithm negotiation for private computing, performed by participating parties, including:
    接收发起方发送的协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;Receive a negotiation request sent by the initiator, where the negotiation request includes description information of the target computing task to be performed on the privacy calculation, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    从所述隐私计算算法列表中,选择目标算法;Select a target algorithm from the list of privacy calculation algorithms;
    向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。Sending a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
  16. 根据权利要求15所述的方法,其中,所述协商请求还包括,发起方针对所述隐私计算算法列表中各隐私计算算法的第一优先级信息。The method according to claim 15, wherein the negotiation request further includes the initiator's first priority information for each privacy computing algorithm in the privacy computing algorithm list.
  17. 根据权利要求16所述的方法,其中,选择目标算法,包括:The method of claim 16, wherein selecting a target algorithm comprises:
    从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;From the list of privacy computing algorithms, select several privacy computing algorithms supported by itself;
    根据所述若干隐私计算算法的第一优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms.
  18. 根据权利要求16所述的方法,其中,选择目标算法,包括:The method of claim 16, wherein selecting a target algorithm comprises:
    从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;From the list of privacy computing algorithms, select several privacy computing algorithms supported by itself;
    根据所述若干隐私计算算法的第一优先级信息,以及所述参与方针对所述若干隐私 计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the first priority information of the several privacy computing algorithms and the second priority information of the participant for the several privacy computing algorithms.
  19. 根据权利要求18所述的方法,其中,所述第一优先级信息包括第一排序,所述第二优先级信息包括第二排序;The method of claim 18, wherein the first priority information includes a first ranking and the second priority information includes a second ranking;
    所述从所述若干隐私计算算法中选择所述目标算法,包括:The selecting the target algorithm from the several privacy calculation algorithms includes:
    根据所述若干隐私计算算法的第一排序和第二排序,确定出综合排序;Determine the comprehensive ranking according to the first ranking and the second ranking of the several privacy calculation algorithms;
    将综合排序最高的隐私计算算法确定为所述目标算法。The privacy calculation algorithm with the highest comprehensive ranking is determined as the target algorithm.
  20. 根据权利要求15所述的方法,其中,选择目标算法,包括:The method of claim 15, wherein selecting a target algorithm comprises:
    从所述隐私计算算法列表中,选择自身支持的若干隐私计算算法;From the list of privacy computing algorithms, select several privacy computing algorithms supported by itself;
    根据所述参与方针对所述若干隐私计算算法的第二优先级信息,从所述若干隐私计算算法中选择所述目标算法。Selecting the target algorithm from the several privacy computing algorithms according to the participant's second priority information for the several privacy computing algorithms.
  21. 一种针对隐私计算进行算法协商的系统,包括:A system for algorithm negotiation for private computing, including:
    发起方,用于向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;The initiator is configured to send a negotiation request to the participant, the negotiation request includes description information of a target computing task to be performed with privacy computing, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    所述参与方,用于从所述隐私计算算法列表中,选择目标算法;The participant is configured to select a target algorithm from the list of privacy calculation algorithms;
    所述参与方,还用于向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。The participant is further configured to send a feedback message to the initiator, where the feedback message includes an algorithm identifier of the target algorithm.
  22. 一种针对隐私计算进行算法协商的装置,该装置集成于发起方,包括:A device for algorithm negotiation for private computing, which is integrated in the initiator, including:
    请求发送单元,配置为向参与方发送协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;A request sending unit configured to send a negotiation request to a participant, the negotiation request including description information of a target computing task to be performed with privacy computing, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    消息接收单元,配置为从所述参与方接收反馈消息,所述反馈消息中包含目标算法的算法标识,所述目标算法由所述参与方从所述隐私计算算法列表中选择得到。The message receiving unit is configured to receive a feedback message from the participant, the feedback message includes an algorithm identifier of a target algorithm, and the target algorithm is selected by the participant from the list of privacy calculation algorithms.
  23. 一种针对隐私计算进行算法协商的装置,该装置集成于参与方,包括:A device for algorithm negotiation for private computing, which is integrated with participants, including:
    请求接收单元,配置为接收发起方发送的协商请求,所述协商请求包括,有待进行隐私计算的目标计算任务的描述信息,以及发起方针对所述目标计算任务所支持的隐私计算算法列表;The request receiving unit is configured to receive a negotiation request sent by the initiator, the negotiation request including description information of a target computing task to be performed with privacy calculation, and a list of privacy computing algorithms supported by the initiator for the target computing task;
    算法选择单元,配置为从所述隐私计算算法列表中,选择目标算法;an algorithm selection unit configured to select a target algorithm from the list of privacy calculation algorithms;
    消息发送单元,配置为向所述发起方发送反馈消息,所述反馈消息中包含所述目标算法的算法标识。A message sending unit configured to send a feedback message to the initiator, where the feedback message includes the algorithm identifier of the target algorithm.
  24. 一种计算机可读存储介质,其上存储有计算机程序,其中,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-20中任一项的所述的方法。A computer-readable storage medium, on which a computer program is stored, wherein, when the computer program is executed in a computer, the computer is caused to execute the method described in any one of claims 1-20.
  25. 一种计算设备,包括存储器和处理器,其中,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现权利要求1-20中任一项所述的方法。A computing device, comprising a memory and a processor, wherein executable code is stored in the memory, and the method according to any one of claims 1-20 is implemented when the processor executes the executable code.
PCT/CN2022/094032 2021-06-11 2022-05-20 Method, device and system for performing algorithm negotiation on privacy computation WO2022257731A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110657046.0 2021-06-11
CN202110657046.0A CN115470513A (en) 2021-06-11 2021-06-11 Method, device and system for carrying out algorithm negotiation aiming at privacy calculation

Publications (1)

Publication Number Publication Date
WO2022257731A1 true WO2022257731A1 (en) 2022-12-15

Family

ID=84364468

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/094032 WO2022257731A1 (en) 2021-06-11 2022-05-20 Method, device and system for performing algorithm negotiation on privacy computation

Country Status (2)

Country Link
CN (1) CN115470513A (en)
WO (1) WO2022257731A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055564A (en) * 2022-12-28 2023-05-02 支付宝(杭州)信息技术有限公司 Cross-platform task scheduling method, computing task executing method and device
CN116127531A (en) * 2023-01-14 2023-05-16 北京惠企易点通科技有限公司 Safety calculation method and system with participation of multiple data parties and no domain output of data of each party

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059789A1 (en) * 2006-08-31 2008-03-06 Nortel Networks Limited Method for securing an interaction between nodes and related nodes
CN101854625A (en) * 2009-04-03 2010-10-06 华为技术有限公司 Selective processing method and device of security algorithm, network entity and communication system
CN102833742A (en) * 2011-06-17 2012-12-19 华为技术有限公司 Consultation method and equipment for group algorithms of MTC (Machine Type Communication) equipment
CN104573554A (en) * 2014-12-30 2015-04-29 北京奇虎科技有限公司 Method for loading safety key storage hardware and browser client device
CN111831974A (en) * 2020-06-30 2020-10-27 深圳数字电视国家工程实验室股份有限公司 Interface protection method and device, electronic equipment and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059789A1 (en) * 2006-08-31 2008-03-06 Nortel Networks Limited Method for securing an interaction between nodes and related nodes
CN101854625A (en) * 2009-04-03 2010-10-06 华为技术有限公司 Selective processing method and device of security algorithm, network entity and communication system
CN102833742A (en) * 2011-06-17 2012-12-19 华为技术有限公司 Consultation method and equipment for group algorithms of MTC (Machine Type Communication) equipment
CN104573554A (en) * 2014-12-30 2015-04-29 北京奇虎科技有限公司 Method for loading safety key storage hardware and browser client device
CN111831974A (en) * 2020-06-30 2020-10-27 深圳数字电视国家工程实验室股份有限公司 Interface protection method and device, electronic equipment and storage medium

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116055564A (en) * 2022-12-28 2023-05-02 支付宝(杭州)信息技术有限公司 Cross-platform task scheduling method, computing task executing method and device
CN116127531A (en) * 2023-01-14 2023-05-16 北京惠企易点通科技有限公司 Safety calculation method and system with participation of multiple data parties and no domain output of data of each party
CN116127531B (en) * 2023-01-14 2023-08-29 北京惠企易点通科技有限公司 Safety calculation method and system with participation of multiple data parties and no domain output of data of each party

Also Published As

Publication number Publication date
CN115470513A (en) 2022-12-13

Similar Documents

Publication Publication Date Title
US20230275817A1 (en) Parallel computational framework and application server for determining path connectivity
US11676087B2 (en) Systems and methods for vulnerability assessment and remedy identification
CN109690608B (en) Extrapolating trends in trust scores
US10298597B2 (en) Collaborative content evaluation
US10691494B2 (en) Method and device for virtual resource allocation, modeling, and data prediction
JP6788667B2 (en) Advertising lift measurement
US11568334B2 (en) Adaptive workflow definition of crowd sourced tasks and quality control mechanisms for multiple business applications
WO2022257731A1 (en) Method, device and system for performing algorithm negotiation on privacy computation
US20160371795A1 (en) Determining connectivity within a community
WO2022257720A1 (en) Method, apparatus, and system for multi-party algorithm negotiation for privacy computing
US10726501B1 (en) Method to use transaction, account, and company similarity clusters derived from the historic transaction data to match new transactions to accounts
US9009091B2 (en) Data classification tool using dynamic attribute weights and intervals of variation about static weights determined by conditional entropy of attribute descriptors
WO2021057142A1 (en) Credit-based interaction credit assessment method and apparatus
JP2017208025A (en) Device, method, and program for delivering information
CN112200382A (en) Training method and device of risk prediction model
CN111563817A (en) Recording medium, communication apparatus, and communication method
CN110083634A (en) Order processing method, apparatus, equipment and storage medium based on data analysis
US20170213283A1 (en) Device and a computer software for provisioning a user with requested services
CN110720099A (en) System and method for providing recommendation based on seed supervised learning
CN109829593B (en) Credit determining method and device for target object, storage medium and electronic device
WO2022267787A1 (en) Method, apparatus, and system for determining computation resource in privacy computation
WO2015191741A1 (en) Systems and methods for conducting relationship dependent online transactions
CN114757757A (en) Wind control method
CN115115322A (en) Target group identification method, risk assessment method, apparatus, device and medium
US11792125B1 (en) Reducing network traffic by filtering network requests based on network request-related information systems and methods

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22819329

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22819329

Country of ref document: EP

Kind code of ref document: A1