Robust Input Verification for Secure Multi-Party Computation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing secret sharing-based MPC protocols are non-robust and unable to distinguish between corrupted clients and servers, leading to potential protocol abortion and incorrect disqualification or censorship of honest parties, especially in scenarios where inputs are received from a large group of clients.
Innovation Solution
Implementing a robust input verification protocol that assumes at most t<n/4 servers and (1−ρ)N clients are corrupted, using Shamir's secret sharing to verify shares and differentiate between corrupted and honest parties through counter-based identification and re-submission mechanisms, ensuring protocol completion and accurate participation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If secret sharing-based MPC protocols are used to maintain input privacy, then input privacy is preserved, but the protocol becomes non-robust and can be aborted by corrupted parties
Solution Approach 1:
The patent applies preliminary action by performing input verification before the main computation phase. The protocol includes a setup phase where verification keys are generated and inputs are verified for validity before computation begins. This preliminary verification prevents corrupted parties from introducing invalid inputs that could cause protocol abortion, thereby improving robustness without significantly increasing the complexity of the main computation phase.
Solution Approach 2:
The patent segments the MPC protocol into distinct phases: setup phase for key generation, input verification phase for validating inputs, and computation phase for the actual secret computation. This segmentation allows each phase to be optimized independently and makes the robustness mechanisms more manageable and less complex than integrating them throughout the entire protocol.
2Reliability
If protocols verify all input sharings to ensure security, then security is improved, but corrupted clients and servers cannot be distinguished, leading to incorrect disqualification of honest parties
Solution Approach 1:
The patent introduces verification keys as an intermediary mechanism between input sharings and the verification process. These verification keys are bound to specific parties (clients or servers) and allow the protocol to verify inputs while identifying which party submitted them. This intermediary structure enables the protocol to distinguish between corrupted and honest parties by tracking which verification key fails, thereby maintaining both security and identification accuracy.
Solution Approach 2:
The patent applies local quality by making verification keys party-specific rather than universal. Each client and server receives verification keys tailored to their role and identity. This allows the verification process to locally identify which specific party submitted an invalid input, enabling precise identification of corrupted parties without incorrectly disqualifying honest ones.
3Adaptability or versatility
If protocols allow large groups of clients to submit inputs, then versatility is improved, but the inability to distinguish corrupted clients from servers leads to protocol abortion
Solution Approach 1:
The patent uses verification keys as intermediaries that are distributed to both clients and servers in a controlled manner. These keys enable the protocol to handle inputs from large groups of clients while maintaining the ability to identify and isolate corrupted parties. The intermediary structure allows scalable client participation without compromising protocol completion, as only the inputs from corrupted parties (identified through their verification keys) are rejected.
Solution Approach 2:
The patent changes the parameter of verification from generic input validation to party-specific verification using verification keys. This parameter change allows the protocol to scale to large groups of clients while maintaining reliability, as the verification process can now identify and handle corrupted inputs individually without affecting the entire protocol execution.
Data Source
AI summary
In one set of embodiments, each server executing a secure multi-party computation (MPC) protocol can receive shares of inputs to the MPC protocol from a plurality of clients, where each input is private to each client and where each share is generated from its corresponding input using a threshold secret sharing scheme. Each server can then verify whether the shares of the plurality of inputs are valid/invalid and, for each invalid share, determine whether a client that submitted the invalid share or a server that holds the invalid share is corrupted. If the client that submitted the invalid share is corrupted, each server can ignore the input of that corrupted client during a computation phase of the MPC protocol. Alternatively, if the server that holds the invalid share is corrupted, each server can prevent that corrupted server from participating in the computation phase.


