Distributed Secure MPC Service With Offline Crypto Preprocessing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing secure multiparty computation (MPC) technologies are impractical for real-world applications due to their academic nature and lack of integration with contemporary compute stacks, making them inconvenient to deploy and scale.
Innovation Solution
A distributed data processing service is implemented using a combination of secure MPC and secret sharing protocols, decomposed across multiple computing engines, with cryptographic primitives generated offline and stored for efficient online use, and a service mesh for improved inter-process communication, enabling scalable, fault-tolerant, and flexible deployment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secure multiparty computation is implemented using academic prototypes, then security against corrupted parties is achieved, but ease of deployment and integration with contemporary compute stacks deteriorates
Solution Approach 1:
The system segments secure multiparty computation into independent microservices including cryptographic generation service, cryptographic data store service, multiparty computation service, and object store service. Each microservice can be deployed, scaled, and managed independently, transforming the monolithic academic prototype into modular components that integrate seamlessly with contemporary compute stacks while preserving security guarantees.
Solution Approach 2:
The microservice architecture enables the secure multiparty computation system to function as a universal platform that can be deployed across diverse compute stacks and cloud environments. The standardized interfaces and protocols allow the same cryptographic primitives and computation logic to serve multiple applications and workloads, enhancing both deployability and versatility.
2Reliability
If secure multiparty computation is implemented as a monolithic system, then security is maintained, but scalability and flexibility in deployment deteriorates
Solution Approach 1:
By dividing the monolithic secure MPC system into separate microservices (cryptographic generation service, cryptographic data store service, multiparty computation service, object store service), the system achieves horizontal scalability. Each microservice can be replicated across multiple instances and distributed across different compute engines, allowing the system to scale flexibly to meet varying workload demands while maintaining security through consistent protocol implementation.
Solution Approach 2:
The system transitions from a single-dimensional monolithic architecture to a multi-dimensional distributed microservice architecture. This dimensional transformation enables scalability across multiple axes (compute resources, storage capacity, network bandwidth) and allows independent optimization of each service dimension without compromising the overall security model.
3Productivity
If cryptographic primitives are generated during online phase, then computation speed is improved, but resource consumption and time for offline preparation deteriorates
Solution Approach 1:
The system performs preliminary generation of cryptographic primitives (such as multiplication triples) during an offline phase using the cryptographic generation service. These pre-generated primitives are stored in the cryptographic data store service for rapid retrieval during the online computation phase. This preliminary action eliminates the need to generate cryptographic primitives during time-critical online computation, thereby improving computation speed while accepting controlled offline preparation time.
Solution Approach 2:
The cryptographic generation service operates periodically to refresh and replenish pools of cryptographic primitives in advance of anticipated computation workloads. This periodic offline generation ensures that sufficient cryptographic material is available for rapid online computation without requiring real-time generation, balancing offline preparation overhead against online computation performance.
Data Source
Figure 1a~1b
Figure 2
Figure 3
AI summary
Secure multiparty computation (MPC) is a cryptographic computing technique enabling a plurality of parties to jointly compute a function on private inputs. The SPDZ protocol, for example, can provide security against a number of corrupted parties to the multiparty computation, assuming relative to at least one uncompromised party. This specification discusses a computer-implemented method for providing a distributed data processing service for performing a secure multiparty computation of a function on at least first and second items of private input data using at least a first and a second computing engine communicatively coupled via a communication network.