CN112463332A - Data processing method, ciphertext computing system and device for data processing - Google Patents

Data processing method, ciphertext computing system and device for data processing Download PDF

Info

Publication number
CN112463332A
CN112463332A CN202011393014.6A CN202011393014A CN112463332A CN 112463332 A CN112463332 A CN 112463332A CN 202011393014 A CN202011393014 A CN 202011393014A CN 112463332 A CN112463332 A CN 112463332A
Authority
CN
China
Prior art keywords
computing
type
ciphertext
task
node
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN202011393014.6A
Other languages
Chinese (zh)
Inventor
西方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huakong Tsingjiao Information Technology Beijing Co Ltd
Original Assignee
Huakong Tsingjiao Information Technology Beijing Co Ltd
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 Huakong Tsingjiao Information Technology Beijing Co Ltd filed Critical Huakong Tsingjiao Information Technology Beijing Co Ltd
Priority to CN202011393014.6A priority Critical patent/CN112463332A/en
Publication of CN112463332A publication Critical patent/CN112463332A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)

Abstract

The embodiment of the invention provides a data processing method, a ciphertext computing system and a device for data processing, wherein the ciphertext computing system comprises: the system comprises a task control node, at least two computing nodes and at least two auxiliary nodes. The method comprises the following steps: the task control node receives a ciphertext calculation task containing a preset instruction; the task control node distributes the ciphertext computing task to the computing node; the computing node executes the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, an auxiliary node is called to execute the preset instruction, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type; and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type. The embodiment of the invention can improve the performance of the ciphertext computing system.

Description

Data processing method, ciphertext computing system and device for data processing
Technical Field
The present invention relates to the field of computer technologies, and in particular, to a data processing method, a ciphertext computing system, and a device for data processing.
Background
Secret Share (Secret Share) is a method for distributing, saving and recovering secrets, and is an important means for implementing secure multiparty computation. At present, a ciphertext computing system based on secret sharing may use a secret sharing algorithm based on addition fragments, and the addition fragments are added to obtain a secret.
The traditional privacy protection system based on secret sharing is based on the addition fragmentation structure of data, is relatively complex in the process of processing multiplication operation, and needs multiple network communication. It is also more complicated if all systems based on multiply sliced construction handle additions. In practical application, almost no addition or multiplication operation exists, and mixed calculation of both is common, but the efficiency of privacy calculation cannot be guaranteed by the existing system only supporting a single fragmentation mode.
Disclosure of Invention
The embodiment of the invention provides a data processing method, a ciphertext computing system and a device for data processing, which can improve the computing efficiency of the ciphertext computing system.
In order to solve the above problem, an embodiment of the present invention discloses a data processing method, which is applied to a ciphertext computing system based on secret sharing, where the ciphertext computing system includes: a task control node, at least two compute nodes, and at least two auxiliary nodes, the method comprising:
a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node distributes the ciphertext computing task to the computing nodes;
the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
Optionally, the ciphertext computing task includes a first computing operation based on first privacy data and a second computing operation based on second privacy data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified privacy data is second privacy data related to the second computing type.
Optionally, the executing, by the computing node, the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, invoking an auxiliary node to execute the preset instruction, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type, where the executing includes:
the computing node executes the first computing operation based on first privacy data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, calls an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second privacy data from the first fragment type to a second fragment type;
the computing node executes computing operation after the preset instruction based on the specified private data of the second fragment type, and the computing operation includes:
the computing node performs a second computing operation subsequent to the preset instruction based on second private data of the second slice type.
Optionally, the first computation type is an addition type, the second computation type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first calculation type is a multiplication type, the second calculation type is an addition type, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
Optionally, the specified privacy data includes privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated in the execution process of the ciphertext computing task.
On the other hand, the embodiment of the invention discloses a ciphertext computing system, which comprises: a task control node, at least two compute nodes, and at least two auxiliary nodes, wherein,
the task control node is used for receiving a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node is also used for distributing the ciphertext computing task to the computing nodes;
the computing node is used for executing the ciphertext computing task and calling the auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
the computing node is further configured to execute a computing operation after the preset instruction based on the specified private data of the second fragment type.
Optionally, the ciphertext computing task includes a first computing operation based on first privacy data and a second computing operation based on second privacy data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified privacy data is second privacy data related to the second computing type.
Optionally, the computing node is further configured to execute the first computing operation based on first private data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, invoke an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second private data from the first fragment type to a second fragment type;
the computing node is further configured to perform a second computing operation after the preset instruction based on second private data of the second slice type.
Optionally, the first computation type is an addition type, the second computation type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first calculation type is a multiplication type, the second calculation type is an addition type, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
Optionally, the specified privacy data includes privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated in the execution process of the ciphertext computing task.
In another aspect, an embodiment of the present invention discloses a device for data processing, which is applied to a ciphertext computing system based on secret sharing, where the ciphertext computing system includes: a task control node, at least two compute nodes, and at least two auxiliary nodes, the apparatus comprising a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors the one or more programs including instructions for:
a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node distributes the ciphertext computing task to the computing nodes;
the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
Optionally, the ciphertext computing task includes a first computing operation based on first privacy data and a second computing operation based on second privacy data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified privacy data is second privacy data related to the second computing type.
Optionally, the executing, by the computing node, the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, invoking an auxiliary node to execute the preset instruction, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type, where the executing includes:
the computing node executes the first computing operation based on first privacy data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, calls an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second privacy data from the first fragment type to a second fragment type;
the computing node executes computing operation after the preset instruction based on the specified private data of the second fragment type, and the computing operation includes:
the computing node performs a second computing operation subsequent to the preset instruction based on second private data of the second slice type.
Optionally, the first computation type is an addition type, the second computation type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first calculation type is a multiplication type, the second calculation type is an addition type, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
Optionally, the specified privacy data includes privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated in the execution process of the ciphertext computing task.
In yet another aspect, an embodiment of the invention discloses a machine-readable medium having stored thereon instructions, which, when executed by one or more processors, cause an apparatus to perform a data processing method as described in one or more of the preceding.
The embodiment of the invention has the following advantages:
according to the embodiment of the invention, the preset instruction for converting the fragment type is added in the ciphertext computing task, and when the computing node executes the preset instruction in the ciphertext computing task, the auxiliary node is called to execute the preset instruction, so that the auxiliary node converts the specified privacy data in the ciphertext computing task from the first fragment type to the second fragment type, and therefore, the computing node can execute the computing operation after the preset instruction based on the specified privacy data of the second fragment type. Because the second fragment type is more consistent with the fragment type structure of the current ciphertext computing system, the efficiency of subsequent privacy computing can be improved, and the performance of the ciphertext computing system is further improved.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings needed to be used in the description of the embodiments of the present invention will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without inventive labor.
FIG. 1 is a flow chart of the steps of one data processing method embodiment of the present invention;
FIG. 2 is a block diagram of the structure of an embodiment of a ciphertext computing system of the present invention;
FIG. 3 is a block diagram of an apparatus 800 for data processing of the present invention;
fig. 4 is a schematic diagram of a server in some embodiments of the invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be clearly and completely described below with reference to the drawings in the embodiments of the present invention, and it is obvious that the described embodiments are some, not all, embodiments of the present invention. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
The terms first, second and the like in the description and in the claims of the present invention are used for distinguishing between similar elements and not necessarily for describing a particular sequential or chronological order. It will be appreciated that the data so used may be interchanged under appropriate circumstances such that embodiments of the invention may be practiced other than those illustrated or described herein, and that the objects identified as "first," "second," etc. are generally a class of objects and do not limit the number of objects, e.g., a first object may be one or more. Furthermore, the term "and/or" in the specification and claims is used to describe an association relationship of associated objects, meaning that three relationships may exist, e.g., a and/or B, may mean: a exists alone, A and B exist simultaneously, and B exists alone. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. The term "plurality" in the embodiments of the present invention means two or more, and other terms are similar thereto.
Referring to fig. 1, a flowchart illustrating steps of an embodiment of a data processing method according to the present invention is applied to a secret sharing-based ciphertext computing system, where the ciphertext computing system includes: the method specifically comprises the following steps:
step 101, a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
102, the task control node distributes the ciphertext computing task to the computing nodes;
103, the computing node executes the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, an auxiliary node is called to execute the preset instruction, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
and 104, the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
A ciphertext computing system is a computing system that protects data privacy security. Under the premise of not leaking self data, a plurality of participants can use the multi-party safe computing technology to carry out collaborative computing to obtain computing results, and the data participating in computing, the intermediate results and the final results can be cryptographs. The participants may include a task control node, at least two compute nodes, and at least two auxiliary nodes. And the task control node is used for scheduling the computing node to execute the ciphertext computing task. And the computing nodes perform cooperative computing based on the secret fragments respectively held by the computing nodes so as to complete the ciphertext computing task. And the auxiliary node is used for executing the preset instruction and converting the specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type.
It should be noted that, in the embodiment of the present invention, the number of the computing nodes participating in executing one ciphertext computing task is not limited, preferably, the number of the computing nodes participating in executing one ciphertext computing task is greater than or equal to 2, and preferably, 4 computing nodes are used in the embodiment of the present invention. Similarly, the number of auxiliary nodes participating in executing the preset instruction once is not limited in the embodiment of the present invention, preferably, the number of auxiliary nodes participating in executing the preset instruction once is greater than or equal to 2, and preferably, 4 auxiliary nodes are used in the embodiment of the present invention.
In addition, the embodiment of the present invention does not limit the node type of the auxiliary node. The secondary node may be any type of device, for example, the secondary node may be a computing node.
Further, the participants may further include a data node for providing services such as data storage, data provision, calculation result storage, and the like. The ciphertext computing system may further include a result obtaining party, configured to obtain the computing result from the computing node, where the result obtaining party may be a specified certain data node or certain data nodes.
It will be appreciated that the private data may be any data that is not convenient to disclose, and may include, but is not limited to, data representing personal information of the user, or trade secrets or the like. In the embodiment of the present invention, the private data may be a ciphertext.
In the embodiment of the present invention, the ciphertext computing task may be a computer program code implemented by using a preset programming language, and the ciphertext computing system may implement a corresponding computing function by executing the computer program code. The ciphertext computation task includes, but is not limited to: and data related operations such as calculation, cleaning, analysis, model training, storage, database query and the like of the data are realized based on the ciphertext. It is to be understood that the specific type of the ciphertext computing task is not limited by the embodiments of the present invention.
A ciphertext computation task may include any type of mathematical computation, such as four arithmetic computations (e.g., addition, subtraction, multiplication, division), logical computations (e.g., and, or, xor), etc.
The ciphertext computing system may employ an addition fragmentation type of secret sharing algorithm, which refers to fragmenting a secret S into a1, a2, … and an, and S is a1+ a2+ … + an, for n computing nodes participating in a ciphertext computing task. Among them, a1, a2, … and an are called additive patches. The first compute node holds the add shard a1, the second compute node holds the add shards a2, …, and the nth compute node holds the add shard an.
Alternatively, the ciphertext computing system may employ a multiplicative shard type of secret sharing algorithm. For n compute nodes participating in the ciphertext computation task, the secret sharing algorithm of the multiplicative fragmentation type refers to fragment the secret S into b1, b2, …, bn, and S ═ b1 × b2 × … × bn. Wherein b1, b2, … and bn are called multiplication fragments. The first compute node holds the multiply slice b1, the second compute node holds the multiply slices b2, …, and the nth compute node holds the multiply slice bn.
The first fragment type and the second fragment type described in the embodiments of the present invention may be implemented by using the prior art, and the present invention is not limited to this specifically.
If the secret sharing algorithm of the addition fragmentation type is adopted, the calculation of addition operation is simple and convenient, but the calculation of multiplication operation is complex, and the calculation efficiency is low. On the contrary, if the secret sharing algorithm of the multiplication fragmentation type is adopted, the calculation of multiplication operation is simpler, but the calculation of addition operation is more complex and the calculation efficiency is lower.
In practical applications, ciphertext computing systems typically employ only a single-partition type of architecture, i.e., ciphertext computing systems are either based on an additive-partition type of architecture or a multiplicative-partition type of architecture. In this way, when the ciphertext computing system is based on the addition slice type, if the ciphertext computing task includes multiplication, the use of the addition slice for multiplication will affect the computing efficiency. Similarly, when the ciphertext computing system is configured based on the multiplication fragment type, if the ciphertext computing task includes addition, performing the addition using the multiplication fragment will affect the computing efficiency.
According to the embodiment of the invention, the preset instruction for converting the fragment type is added in the ciphertext computing task, the auxiliary node is allocated to execute the preset instruction, the fragment type of the designated privacy data in the ciphertext computing task is converted, and the ciphertext fragment conforming to the fragment type structure of the current ciphertext computing system is obtained, so that the computing efficiency of the ciphertext computing system is improved.
In an optional embodiment of the present invention, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
By the embodiment of the invention, the addition fragmentation type can be converted into the multiplication fragmentation type, or the multiplication fragmentation type can be converted into the addition fragmentation type. For convenience of description, in the embodiment of the present invention, a structure that the ciphertext computing system is based on an addition fragment type is mainly used as an example for explanation, that is, the first fragment type is an addition fragment type, and the second fragment type is a multiplication fragment type. The auxiliary node is used for converting the specified private data in the ciphertext computing task from the addition fragment type into the multiplication fragment type.
Under the condition that the ciphertext computing system is based on the structure of the addition fragment type, if the ciphertext computing task comprises multiplication, the privacy data participating in the multiplication can be used as the designated privacy data, the addition fragment type is converted into the multiplication fragment type, and then the multiplication is executed, so that the efficiency of the multiplication is improved.
In example 1, it is assumed that the ciphertext calculation task includes multiplication calculation x y, and x and y are private data. In the case where the ciphertext computing system is an add-shard type based construct, x is sharded into an add-shard x1 and an add-shard x2, and x is x1+ x 2. y is sliced into an add slice y1 and an add slice y2, and y1+ y 2. Suppose that 4 compute nodes participate in ciphertext computation tasks, which are N1, N2, N3, and N4, respectively, compute node N1 holds x1, compute node N2 holds x2, compute node N3 holds y1, and compute node N4 holds y 2. For ciphertext computation systems constructed based on the add shard type, it would result in less efficient computation if x y were computed based on the add shards x1, x2, y1, and y 2.
To improve the computational efficiency, the embodiment of the present invention adds a preset instruction to the ciphertext computation task in example 1, where the preset instruction may convert the specified private data in the ciphertext computation task from the first fragment type (addition fragment type) to the second fragment type (multiplication fragment type). It is assumed that a preset instruction for converting the addition fragment type into the multiplication fragment type is denoted as ATM ().
It should be noted that, the implementation manner of the preset instruction is not limited in the embodiment of the present invention. For example, the preset instruction may be implemented by a custom function. In one example, the predetermined instruction to convert the addition slice type to the multiplication slice type is denoted as ATM ().
For example, the following preset instructions "x ═ atm (x)" and "y ═ atm (y)" may be added before the x × y calculation step in the ciphertext calculation task. When the computing node executes a preset instruction 'x ═ ATM (x)', the computing node calls the auxiliary node to execute the preset instruction, so that the auxiliary node converts x from the addition fragment type to the multiplication fragment type. For example, after executing the preset instruction "x ═ atm (x)," the auxiliary node splits x into a multiplicative slice x3 and a multiplicative slice x4, and x ═ x3 × x 4. The auxiliary node returns the multiplication fragment x3 and the multiplication fragment x4 obtained after conversion to the computing node. Similarly, when the preset instruction "y ═ atm (y)" is executed, the computing node calls the auxiliary node to execute the preset instruction, so that the auxiliary node converts y from the addition fragment type to the multiplication fragment type. For example, the auxiliary node, after executing the preset instruction "y ═ atm (y)", slices y into the multiplication slice y3 and the multiplication slice y4, and y ═ y3 × y 4. The auxiliary node returns the multiplication fragment y3 and the multiplication fragment y4 obtained after conversion to the computing node. Assume that after the designated private data x and y are subjected to the partition type conversion, the compute node N1 holds the multiplication partition x3, the compute node N2 holds the multiplication partition x4, the compute node N3 holds the multiplication partition y3, and the compute node N4 holds the multiplication partition y 4.
Next, the compute node performs a compute operation (x y) after the preset instruction based on the specified private data (x and y) of the second shard type (multiplicative shard). That is, the calculation nodes N1, N2, N3, and N4 perform cooperative calculation based on the respective multiplication fragments x3, x4, y3, and y4, and obtain a calculation result of x × y. Since x _ y can be simply calculated by (x3 x y3) (x3 x y4), the calculation efficiency can be greatly improved.
In an optional embodiment of the present invention, the ciphertext computing task includes a first computing operation based on first private data and a second computing operation based on second private data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified private data is second private data related to the second computing type.
The ciphertext computing task may include a hybrid computing operation of at least two computing types. Optionally, in a scenario that the ciphertext computing system is based on an addition fragmentation type, the first computing type is an addition type, the second computing type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, in a scenario that the ciphertext computing system is constructed based on a multiplication fragment type, the first computing type is a multiplication type, the second computing type is an addition type, the first fragment type is a multiplication fragment type, and the second fragment type is an addition fragment type. The first private data refers to private data participating in a first computing operation, and the second private data refers to private data participating in a second computing operation.
The embodiment of the invention mainly takes the example that a ciphertext computing system is based on the structure of an addition fragmentation type, the first computing type is an addition type, and the second computing type is a multiplication type as an example for explanation.
For ciphertext calculation tasks comprising multiple calculation types, the ciphertext calculation tasks may also comprise calculation types of subtraction and division in addition to the calculation types of addition and multiplication. For subtraction calculations, calculations may be performed by proprietary functions in the ciphertext computing system, and for division calculations, they may be converted to multiplication calculations. Therefore, for a ciphertext computing task of a mixed computing type including a first computing operation and a second computing operation, in a scenario where a ciphertext computing system is based on an addition fragmentation type, the embodiment of the present invention keeps an addition fragmentation type of first private data in the first computing operation unchanged, and converts second private data in the second computing operation from the addition fragmentation type to a multiplication fragmentation type.
In example 2, the code corresponding to one ciphertext computation task including multiple computation types is as follows:
Figure BDA0002812142220000111
the code in lines 1 to 3 is a first calculation operation based on first private data, where the first private data includes x, start, and step, and the first calculation operation includes a first calculation type (addition type). The code in lines 4 to 8 is a second calculation operation based on second private data, the second private data includes result and deltaX, and the second calculation operation includes a second calculation type (multiplication type).
In a scenario where the ciphertext computing system is based on an add-slice type of construct, the task control node receives the ciphertext computing task shown in example 2 and distributes the ciphertext computing task to the compute nodes, which execute the code based on the add-slice. That is, the first privacy data x, start, step, and the second privacy data result and deltaX are all fragmented according to the addition fragmentation type. And the computing nodes perform collaborative computing based on the respective addition fragments, and execute the first computing operation and the second computing operation in the ciphertext computing task. It can be seen that if the first computing operation and the second computing operation both use the addition fragmentation, the computing steps "derivate ═ result × (1-result)" and "result + ═ deltaX derivate" in the second computing operation include the multiplication computation, which results in lower computing efficiency, and further affects the computing performance of the whole system.
In an alternative embodiment of the invention, the specified privacy data may include, but is not limited to: and privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated in the execution process of the ciphertext computing task.
In order to improve the efficiency of the second computing operation, the embodiment of the present invention adds, to the code, a preset instruction ATM () for converting the specified private data in the ciphertext computing task from the first fragment type (addition fragment type) to the second fragment type (multiplication fragment type), and takes the second private data related to the second computing type as the specified private data. Wherein the correlation with the second calculation type means participation in the calculation of the second calculation type (multiplication type). For example, in example 2, the second privacy data result and deltaX participate in the multiplication calculation, and thus, the result and deltaX may be subjected to slice type conversion as the specified privacy data. In example 2, the second privacy data result and deltaX are intermediate result data generated during the execution of the ciphertext computing task.
In example 2, the code corresponding to the ciphertext calculation task after adding the preset instruction is as follows:
Figure BDA0002812142220000121
as shown in the above codes, the added preset command includes "result ═ atm (result)", and "deltaX ═ atm (deltaX)". The control node receives a ciphertext calculation task including preset instructions "result ═ atm (result)", and "deltaX ═ atm (deltaX)", and assigns the calculation node to execute the ciphertext calculation task. And the computing node executes the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, the auxiliary node is called to execute the preset instruction, so that the auxiliary node converts the specified private data result and deltaX in the ciphertext computing task from a first fragment type to a second fragment type.
In an optional embodiment of the present invention, the executing, by the computing node, the ciphertext computing task, and when a preset instruction in the ciphertext computing task is executed, invoking an auxiliary node to execute the preset instruction, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type, which may specifically include:
the computing node executes the first computing operation based on first privacy data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, calls an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second privacy data from the first fragment type to a second fragment type;
the computing node, based on the specified private data of the second segment type, performs a computing operation after the preset instruction, which may specifically include:
the computing node performs a second computing operation subsequent to the preset instruction based on second private data of the second slice type.
In a scenario where the ciphertext computing system is based on an add-shard type of construct, the task control node receives a ciphertext computing task containing preset instructions as shown in example 2, and distributes the ciphertext computing task to the computing nodes. The computing node first executes a first computing operation, and still adopts the adding fragment for first private data participating in the first computing operation. That is, the computing node performs the following first computing operation based on the add shard:
def sigmoid_ori(x,start=0,step=10);
result=1.0/(1+np.exp(-start))
deltaX=(x-start)/step
when the computing node executes a preset instruction "result ═ atm (result)", the auxiliary node is called to execute the preset instruction to convert the second private data result from the first fragment type (addition fragment type) to the second fragment type (multiplication fragment type), and the multiplication fragment of the result is returned. Likewise, upon execution of the preset instruction "deltaX ═ atm (deltaX)", the call assist node executes the preset instruction to convert the second private data deltaX from the first fragment type (addition fragment type) to the second fragment type (multiplication fragment type), and returns the multiplication fragment of deltaX.
After the auxiliary node is called to execute the preset instruction, the computing node may execute a second computing operation after the preset instruction based on second private data of the second fragmentation type (multiplication fragmentation type). Specifically, the computing node may obtain a multiplication fragment of the second private data result returned by the secondary node after the secondary node is called to execute the preset instruction "result ═ atm (result)", and may obtain a multiplication fragment of the second private data deltaX returned by the secondary node after the secondary node is called to execute the preset instruction "deltaX ═ atm (deltaX)", and may further perform the following second computing operation based on the multiplication fragment of result and the multiplication fragment of deltaX:
Figure BDA0002812142220000141
since the calculation steps "derivate ═ result ═ 1-result" and "result + ═ deltaX derivate" including the multiplication calculation in the second calculation operation are converted into the calculation based on the multiplication fragment, the efficiency of the second calculation operation can be improved, and further, the calculation performance of the whole system is improved.
It should be noted that, in the embodiment of the present invention, a scenario in which a ciphertext computing system is constructed based on an addition fragment type is mainly used, the first fragment type is an addition fragment type, the second fragment type is a multiplication fragment type, and a preset instruction is used to convert the addition fragment type into the multiplication fragment type. For a scene that the ciphertext computing system is constructed based on the multiplication fragment type, the processing processes are similar and only need to be mutually referred. Under the condition that the ciphertext computing system is constructed based on the multiplication fragment type, the first fragment type is the multiplication fragment type, the second fragment type is the addition fragment type, and the preset instruction is used for converting the multiplication fragment type into the addition fragment type. In one example, the predetermined instruction for converting a multiply sharded type to an add sharded type is denoted as MTA ().
Under the scene that the ciphertext computing system is constructed based on the multiplication fragment type, if the ciphertext computing task comprises the addition type computing, a preset instruction MTA () can be added to the ciphertext computing task, the private data participating in the addition computing is converted into the addition fragment type from the multiplication fragment type, and then the addition computing can be executed based on the addition fragment of the private data, so that the addition computing efficiency is improved, and the performance of the ciphertext computing system is improved.
It can be understood that the embodiment of the present invention does not limit the specific implementation manner of converting the addition fragmentation type into the multiplication fragmentation type and converting the multiplication fragmentation type into the addition fragmentation type. Any conversion method known to those skilled in the art may be used.
To sum up, the embodiment of the present invention adds a preset instruction for converting a fragment type in a ciphertext computing task, and calls an auxiliary node to execute the preset instruction when a computing node executes the preset instruction in the ciphertext computing task, so that the auxiliary node converts specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type, and thus, the computing node may execute a computing operation after the preset instruction based on the specified privacy data of the second fragment type. Because the second fragment type is more consistent with the fragment type structure of the current ciphertext computing system, the efficiency of subsequent privacy computing can be improved, and the performance of the ciphertext computing system is further improved.
It should be noted that, for simplicity of description, the method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present invention is not limited by the illustrated order of acts, as some steps may occur in other orders or concurrently in accordance with the embodiments of the present invention. Further, those skilled in the art will appreciate that the embodiments described in the specification are presently preferred and that no particular act is required to implement the invention.
Referring to fig. 2, a block diagram of a ciphertext computing system of an embodiment of the present invention is shown, where the system may specifically include: a task control node 201, at least two compute nodes 202, and at least two auxiliary nodes 203, wherein,
the task control node is used for receiving a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node is also used for distributing the ciphertext computing task to the computing nodes;
the computing node is used for executing the ciphertext computing task and calling the auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
the computing node is further configured to execute a computing operation after the preset instruction based on the specified private data of the second fragment type.
Optionally, the ciphertext computing task includes a first computing operation based on first privacy data and a second computing operation based on second privacy data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified privacy data is second privacy data related to the second computing type.
Optionally, the computing node is further configured to execute the first computing operation based on first private data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, invoke an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second private data from the first fragment type to a second fragment type;
the computing node is further configured to perform a second computing operation after the preset instruction based on second private data of the second slice type.
Optionally, the first computation type is an addition type, the second computation type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first calculation type is a multiplication type, the second calculation type is an addition type, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
Optionally, the specified privacy data includes privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated in the execution process of the ciphertext computing task.
According to the embodiment of the invention, the preset instruction for converting the fragment type is added in the ciphertext computing task, and when the computing node executes the preset instruction in the ciphertext computing task, the auxiliary node is called to execute the preset instruction, so that the auxiliary node converts the specified privacy data in the ciphertext computing task from the first fragment type to the second fragment type, and therefore, the computing node can execute the computing operation after the preset instruction based on the specified privacy data of the second fragment type. Because the second fragment type is more consistent with the fragment type structure of the current ciphertext computing system, the efficiency of subsequent privacy computing can be improved, and the performance of the ciphertext computing system is further improved.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
With regard to the apparatus in the above-described embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment related to the method, and will not be elaborated here.
The embodiment of the invention provides a device for data processing, which is applied to a ciphertext computing system based on secret sharing, and the ciphertext computing system comprises: a task control node, at least two compute nodes, and at least two auxiliary nodes, the apparatus comprising a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors the one or more programs including instructions for: a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type; the task control node distributes the ciphertext computing task to the computing nodes; the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type; and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
Fig. 3 is a block diagram illustrating an apparatus 800 for data processing in accordance with an example embodiment. For example, the apparatus 800 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, an exercise device, a personal digital assistant, and the like.
Referring to fig. 3, the apparatus 800 may include one or more of the following components: processing component 802, memory 804, power component 806, multimedia component 808, audio component 810, input/output (I/O) interface 812, sensor component 814, and communication component 816.
The processing component 802 generally controls overall operation of the device 800, such as operations associated with display, telephone calls, data communications, camera operations, and recording operations. The processing elements 802 may include one or more processors 820 to execute instructions to perform all or a portion of the steps of the methods described above. Further, the processing component 802 can include one or more modules that facilitate interaction between the processing component 802 and other components. For example, the processing component 802 can include a multimedia module to facilitate interaction between the multimedia component 808 and the processing component 802.
The memory 804 is configured to store various types of data to support operation at the device 800. Examples of such data include instructions for any application or method operating on device 800, contact data, phonebook data, messages, pictures, videos, and so forth. The memory 804 may be implemented by any type or combination of volatile or non-volatile memory devices such as Static Random Access Memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic or optical disks.
Power components 806 provide power to the various components of device 800. The power components 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the apparatus 800.
The multimedia component 808 includes a screen that provides an output interface between the device 800 and a user. In some embodiments, the screen may include a Liquid Crystal Display (LCD) and a Touch Panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive an input signal from a user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundary of a touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front facing camera and/or a rear facing camera. The front-facing camera and/or the rear-facing camera may receive external multimedia data when the device 800 is in an operating mode, such as a shooting mode or a video mode. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
The audio component 810 is configured to output and/or input audio signals. For example, the audio component 810 includes a Microphone (MIC) configured to receive external audio signals when the apparatus 800 is in an operational mode, such as a call mode, a recording mode, and a voice information processing mode. The received audio signals may further be stored in the memory 804 or transmitted via the communication component 816. In some embodiments, audio component 810 also includes a speaker for outputting audio signals.
The I/O interface 812 provides an interface between the processing component 802 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to: a home button, a volume button, a start button, and a lock button.
The sensor assembly 814 includes one or more sensors for providing various aspects of state assessment for the device 800. For example, the sensor assembly 814 may detect the open/closed state of the device 800, the relative positioning of the components, such as a display and keypad of the apparatus 800, the sensor assembly 814 may also detect a change in position of the apparatus 800 or a component of the apparatus 800, the presence or absence of user contact with the apparatus 800, orientation or acceleration/deceleration of the apparatus 800, and a change in temperature of the apparatus 800. Sensor assembly 814 may include a proximity sensor configured to detect the presence of a nearby object without any physical contact. The sensor assembly 814 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
The communication component 816 is configured to facilitate communications between the apparatus 800 and other devices in a wired or wireless manner. The device 800 may access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 further includes a Near Field Communication (NFC) module to facilitate short-range communications. For example, the NFC module may be implemented based on radio frequency information processing (RFID) technology, infrared data association (IrDA) technology, Ultra Wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
In an exemplary embodiment, the apparatus 800 may be implemented by one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), controllers, micro-controllers, microprocessors or other electronic components for performing the above-described methods.
In an exemplary embodiment, a non-transitory computer-readable storage medium comprising instructions, such as the memory 804 comprising instructions, executable by the processor 820 of the device 800 to perform the above-described method is also provided. For example, the non-transitory computer readable storage medium may be a ROM, a Random Access Memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like.
Fig. 4 is a schematic diagram of a server in some embodiments of the invention. The server 1900 may vary widely by configuration or performance and may include one or more Central Processing Units (CPUs) 1922 (e.g., one or more processors) and memory 1932, one or more storage media 1930 (e.g., one or more mass storage devices) storing applications 1942 or data 1944. Memory 1932 and storage medium 1930 can be, among other things, transient or persistent storage. The program stored in the storage medium 1930 may include one or more modules (not shown), each of which may include a series of instructions operating on a server. Still further, a central processor 1922 may be provided in communication with the storage medium 1930 to execute a series of instruction operations in the storage medium 1930 on the server 1900.
The server 1900 may also include one or more power supplies 1926, one or more wired or wireless network interfaces 1950, one or more input-output interfaces 1958, one or more keyboards 1956, and/or one or more operating systems 1941, such as Windows Server, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM, etc.
A non-transitory computer-readable storage medium in which instructions, when executed by a processor of an apparatus (server or terminal), enable the apparatus to perform the data processing method shown in fig. 1.
A non-transitory computer readable storage medium in which instructions, when executed by a processor of an apparatus (server or terminal), enable the apparatus to perform a data processing method, the method comprising: a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type; the task control node distributes the ciphertext computing task to the computing nodes; the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type; and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This invention is intended to cover any variations, uses, or adaptations of the invention following, in general, the principles of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the invention being indicated by the following claims.
It will be understood that the invention is not limited to the precise arrangements described above and shown in the drawings and that various modifications and changes may be made without departing from the scope thereof. The scope of the invention is limited only by the appended claims.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents, improvements and the like that fall within the spirit and principle of the present invention are intended to be included therein.
The data processing method, the ciphertext computing system and the data processing device provided by the invention are described in detail, and specific examples are applied in the text to explain the principle and the implementation mode of the invention, and the description of the above embodiments is only used for helping to understand the method and the core idea of the invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (10)

1. A data processing method is applied to a ciphertext computing system based on secret sharing, and the ciphertext computing system comprises: a task control node, at least two compute nodes, and at least two auxiliary nodes, the method comprising:
a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node distributes the ciphertext computing task to the computing nodes;
the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
2. The method according to claim 1, wherein the ciphertext computing task includes a first computing operation based on first private data and a second computing operation based on second private data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified private data is second private data related to the second computing type.
3. The method of claim 2, wherein the computing node executes the ciphertext computing task and, upon executing a preset instruction into the ciphertext computing task, invokes an auxiliary node to execute the preset instruction to cause the auxiliary node to convert the specified private data in the ciphertext computing task from a first slice type to a second slice type, comprising:
the computing node executes the first computing operation based on first privacy data of a first fragment type, and when a preset instruction in the ciphertext computing task is executed, calls an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second privacy data from the first fragment type to a second fragment type;
the computing node executes computing operation after the preset instruction based on the specified private data of the second fragment type, and the computing operation includes:
the computing node performs a second computing operation subsequent to the preset instruction based on second private data of the second slice type.
4. The method of claim 2, wherein the first computation type is an addition type, the second computation type is a multiplication type, the first fragmentation type is an addition fragmentation type, and the second fragmentation type is a multiplication fragmentation type; or, the first calculation type is a multiplication type, the second calculation type is an addition type, the first fragmentation type is a multiplication fragmentation type, and the second fragmentation type is an addition fragmentation type.
5. The method according to any one of claims 1 to 4, wherein the specified privacy data comprises privacy data provided by data parties participating in the ciphertext computing task and/or intermediate result data generated during execution of the ciphertext computing task.
6. A ciphertext computing system, the ciphertext computing system comprising: a task control node, at least two compute nodes, and at least two auxiliary nodes, wherein,
the task control node is used for receiving a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node is also used for distributing the ciphertext computing task to the computing nodes;
the computing node is used for executing the ciphertext computing task and calling the auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
the computing node is further configured to execute a computing operation after the preset instruction based on the specified private data of the second fragment type.
7. The system according to claim 6, wherein the ciphertext computing task includes a first computing operation based on first private data and a second computing operation based on second private data, the first computing operation includes a first computing type, the second computing operation includes a second computing type, and the specified private data is second private data related to the second computing type.
8. The system according to claim 7, wherein the computing node is further configured to perform the first computing operation based on first private data of a first partition type, and when executing a preset instruction into the ciphertext computing task, invoke an auxiliary node to execute the preset instruction, so that the auxiliary node converts the second private data from a first partition type to a second partition type;
the computing node is further configured to perform a second computing operation after the preset instruction based on second private data of the second slice type.
9. An apparatus for data processing, applied to a ciphertext computing system based on secret sharing, the ciphertext computing system comprising: a task control node, at least two compute nodes, and at least two auxiliary nodes, the apparatus comprising a memory, and one or more programs, wherein the one or more programs are stored in the memory and configured to be executed by the one or more processors the one or more programs including instructions for:
a task control node receives a ciphertext computing task comprising a preset instruction, wherein the preset instruction is used for converting specified privacy data in the ciphertext computing task from a first fragment type to a second fragment type;
the task control node distributes the ciphertext computing task to the computing nodes;
the computing node executes the ciphertext computing task and calls an auxiliary node to execute a preset instruction when the preset instruction in the ciphertext computing task is executed, so that the auxiliary node converts the specified private data in the ciphertext computing task from a first fragment type to a second fragment type;
and the computing node executes the computing operation after the preset instruction based on the specified private data of the second fragment type.
10. A machine-readable medium having stored thereon instructions, which when executed by one or more processors, cause an apparatus to perform the data processing method of any of claims 1 to 5.
CN202011393014.6A 2020-12-01 2020-12-01 Data processing method, ciphertext computing system and device for data processing Pending CN112463332A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011393014.6A CN112463332A (en) 2020-12-01 2020-12-01 Data processing method, ciphertext computing system and device for data processing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011393014.6A CN112463332A (en) 2020-12-01 2020-12-01 Data processing method, ciphertext computing system and device for data processing

Publications (1)

Publication Number Publication Date
CN112463332A true CN112463332A (en) 2021-03-09

Family

ID=74805585

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011393014.6A Pending CN112463332A (en) 2020-12-01 2020-12-01 Data processing method, ciphertext computing system and device for data processing

Country Status (1)

Country Link
CN (1) CN112463332A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338021A (en) * 2022-03-15 2022-04-12 阿里云计算有限公司 Ciphertext mixed operation method and device

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2689554A1 (en) * 2011-06-28 2014-01-29 NEC Europe Ltd. Method and system for obtaining a result of a joint public function for a plurality of parties
US20150278547A1 (en) * 2014-03-31 2015-10-01 Sony Corporation Information processing apparatus, information processing method, and recording medium
US9450938B1 (en) * 2013-03-13 2016-09-20 Hrl Laboratories, Llc Information secure proactive multiparty computation (PMPC) protocol with linear bandwidth complexity
WO2018082008A1 (en) * 2016-11-04 2018-05-11 Nokia Technologies Oy Secure distributed data processing
WO2019046651A2 (en) * 2017-08-30 2019-03-07 Inpher, Inc. High-precision privacy-preserving real-valued function evaluation
WO2020034755A1 (en) * 2018-08-14 2020-02-20 阿里巴巴集团控股有限公司 Multiparty secure computing method, device, and electronic device
CN110995420A (en) * 2019-11-27 2020-04-10 支付宝(杭州)信息技术有限公司 Data processing method and system
CN111177790A (en) * 2020-04-10 2020-05-19 支付宝(杭州)信息技术有限公司 Collaborative computing method, system and device for protecting data privacy of two parties
WO2020165931A1 (en) * 2019-02-12 2020-08-20 日本電気株式会社 Information processing device, secret computation method, and program
CN111783129A (en) * 2020-07-24 2020-10-16 支付宝(杭州)信息技术有限公司 Data processing method and system for protecting privacy
CN111783130A (en) * 2020-09-04 2020-10-16 支付宝(杭州)信息技术有限公司 Data processing method and device for privacy protection and server

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2689554A1 (en) * 2011-06-28 2014-01-29 NEC Europe Ltd. Method and system for obtaining a result of a joint public function for a plurality of parties
US9450938B1 (en) * 2013-03-13 2016-09-20 Hrl Laboratories, Llc Information secure proactive multiparty computation (PMPC) protocol with linear bandwidth complexity
US20150278547A1 (en) * 2014-03-31 2015-10-01 Sony Corporation Information processing apparatus, information processing method, and recording medium
WO2018082008A1 (en) * 2016-11-04 2018-05-11 Nokia Technologies Oy Secure distributed data processing
WO2019046651A2 (en) * 2017-08-30 2019-03-07 Inpher, Inc. High-precision privacy-preserving real-valued function evaluation
WO2020034755A1 (en) * 2018-08-14 2020-02-20 阿里巴巴集团控股有限公司 Multiparty secure computing method, device, and electronic device
WO2020165931A1 (en) * 2019-02-12 2020-08-20 日本電気株式会社 Information processing device, secret computation method, and program
CN110995420A (en) * 2019-11-27 2020-04-10 支付宝(杭州)信息技术有限公司 Data processing method and system
CN111177790A (en) * 2020-04-10 2020-05-19 支付宝(杭州)信息技术有限公司 Collaborative computing method, system and device for protecting data privacy of two parties
CN111783129A (en) * 2020-07-24 2020-10-16 支付宝(杭州)信息技术有限公司 Data processing method and system for protecting privacy
CN111783130A (en) * 2020-09-04 2020-10-16 支付宝(杭州)信息技术有限公司 Data processing method and device for privacy protection and server

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨攀;桂小林;姚婧;林建财;田丰;张学军;: "支持同态算术运算的数据加密方案算法研究", 通信学报, no. 01 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338021A (en) * 2022-03-15 2022-04-12 阿里云计算有限公司 Ciphertext mixed operation method and device
CN114338021B (en) * 2022-03-15 2022-07-19 阿里云计算有限公司 Ciphertext mixed operation method and device

Similar Documents

Publication Publication Date Title
CN113014625B (en) Task processing method and device for task processing
CN112187862B (en) Task processing method and device for task processing
CN112688779B (en) Data processing method and device and data processing device
CN112241250B (en) Data processing method and device and data processing device
CN114969830B (en) Privacy intersection method, system and readable storage medium
CN115237613B (en) Multi-party secure computing task scheduling method and device and readable storage medium
CN113449325A (en) Data processing method and device and data processing device
CN115396100A (en) Careless random disordering method and system based on secret sharing
CN114884645A (en) Privacy calculation method and device and readable storage medium
CN115085912A (en) Ciphertext computing method and device for ciphertext computing
CN113254956A (en) Data processing method and device and data processing device
CN112463332A (en) Data processing method, ciphertext computing system and device for data processing
CN115617897B (en) Data type conversion method and multi-party secure computing system
CN114885038B (en) Encryption protocol conversion method, result acquisition node and privacy calculation node
CN114448631B (en) Multi-party security computing method, system and device for multi-party security computing
CN114915455A (en) Ciphertext data transmission method and device for ciphertext data transmission
CN114996752A (en) Multiparty privacy intersection method and device and multiparty privacy intersection device
CN112861145B (en) Data processing method and device for data processing
CN112468290B (en) Data processing method and device and data processing device
CN112685747B (en) Data processing method and device and data processing device
CN112668036B (en) Data processing method and device and data processing device
CN113779500A (en) Data processing method and device and data processing device
CN114978489A (en) Protocol conversion method, system and device for protocol conversion
CN112580064A (en) Data processing method and device and data processing device
CN114448630B (en) Multi-party secure computing method, system and device for multi-party secure computing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination