Multiparty Computation Bytecode Verification via Simulated Environment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multiparty computation, generating a bytecode suitable for a user's environment is challenging due to varying communication characteristics, requiring specialized knowledge to select optimal compile options, and it's difficult to determine the true optimality without executing the bytecode in the real environment.
Innovation Solution
A verification apparatus that acquires a source code, compiles it with varying options to generate multiple bytecodes, evaluates each in a simulated user environment, and outputs a recommended bytecode based on performance indices, facilitating the selection of a suitable bytecode for the user's environment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a bytecode is generated by providing a source code to a multiparty computation compiler with different options, then bytecodes with different capabilities are obtained, but it requires specialized knowledge to choose optimal options and is difficult to determine true optimality without executing in real environment
Solution Approach 1:
The patent applies preliminary action by generating multiple bytecodes with different compile options in advance, before the user needs to select one. The verification apparatus pre-compiles the source code with various options and evaluates them in a simulated environment, so the user receives a ready-to-use recommended bytecode without needing to perform the complex selection process themselves.
Solution Approach 2:
The patent uses an intermediary approach by introducing a verification apparatus with a simulated verification environment that acts as a mediator between the compiler and the user. This intermediary evaluates multiple bytecodes using evaluation indices in a controlled simulated environment, translating the complex technical selection process into a simple recommendation that the user can directly use.
2Adaptability or versatility
If communication characteristics of user environment vary (bandwidth, latency), then optimal bytecode differs for each environment, but users lack the knowledge to select environment-specific bytecodes
Solution Approach 1:
The patent applies self-service by enabling the verification apparatus to automatically evaluate and select the optimal bytecode without requiring user expertise. The system uses evaluation indices to automatically assess how well each bytecode performs in simulated environments with different communication characteristics, and autonomously recommends the best match, making the process self-serving rather than user-driven.
Solution Approach 2:
The patent uses parameter changes by varying compile options during bytecode generation and using evaluation indices to measure performance across different simulated communication environments. By changing parameters such as communication bandwidth and latency in the verification environment, the system identifies which bytecode parameters (compile options) produce optimal performance for each environment type.
3Measurement precision
If multiple bytecodes are generated with different compile options, then bytecode performance varies across different environments, but verifying optimality requires execution in real user environment which is not always accessible
Solution Approach 1:
The patent applies copying by creating a simulated verification environment that replicates real user environment characteristics. Instead of requiring execution in the actual user environment, the system generates copies of the verification environment with matched communication characteristics (bandwidth, latency), allowing accurate bytecode evaluation without leaving the controlled testing infrastructure.
Solution Approach 2:
The patent uses universality by designing a verification apparatus that can evaluate multiple bytecodes across multiple simulated environments with different communication characteristics. The single verification apparatus serves multiple functions: it acts as a compiler, a testbed for various environments, an evaluation system, and a recommendation engine, eliminating the need for separate verification infrastructures for each environment type.
Data Source
AI summary
A verification apparatus acquires a source code for multiparty computation, while changing a combination of options settable to a multiparty computation compiler, compiles the source code for each combination of options to generate a plurality of multiparty computation executable codes, selects at least one multiparty computation executable code from the plurality of multiparty computation executable codes as a verification code and provides the at least one verification code to a verification environment of multiparty computation, generates an evaluation index with respect to an execution result of at least one verification code in the verification environment, and selects at least one recommended code from the plurality of multiparty computation executable codes, based on the evaluation index corresponding to at least one verification code and outputs the selected recommended code.


