Dynamic Job Performance in Secure Multiparty Computation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing secure multiparty computation (SMPC) frameworks are primarily static and inflexible, lacking the ability to handle dynamic variables and large data sets, and often struggle with loading data from dynamic sources, which limits their performance and scalability.

Innovation Solution

The method involves receiving an SMPC query, determining the query type and parameters, splitting the data input into partial inputs, generating and processing jobs in a worker queue to produce data outputs, and optionally joining or further processing these outputs, while dynamically managing worker processes based on job requirements and system parameters to enhance performance and scalability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If SMPC frameworks use custom compilers with static design, then data privacy and security are maintained, but the system lacks flexibility to handle dynamic variables and large data sets

Engineering Contradiction:
Improveflexibility to handle dynamic variablesVSAvoidcustom compiler complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the SMPC framework into modular components: a static compiler that generates code templates, a runtime engine that executes with dynamic data, and a worker queue system that manages job distribution. This segmentation allows the compiler to remain simple and static while the runtime system handles dynamic variables and large datasets through flexible job generation and execution mechanisms.

Inventive Principle:
Principle #1Segmentation

2Productivity

If SMPC frameworks process large data sets, then query performance improves, but compute time increases significantly

Engineering Contradiction:
Improvequery performanceVSAvoidcompute time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent implements preliminary action by pre-generating job templates during compilation and pre-distributing data shards to worker nodes before query execution. The compiler creates executable job templates in advance, and the system pre-processes data into manageable shards, allowing rapid query execution without extensive runtime computation overhead.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system employs dynamics by implementing a worker queue that dynamically adjusts job distribution based on available resources and data characteristics. Jobs are generated dynamically at runtime based on the specific query and data size, allowing the system to optimize compute time adaptively rather than following a fixed processing pattern.

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If SMPC frameworks load data from dynamic sources, then system versatility improves, but reliability and data integrity become problematic

Engineering Contradiction:
Improveability to load from dynamic sourcesVSAvoiddata integrity
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent introduces an intermediary data validation and preprocessing layer between dynamic data sources and the SMPC computation engine. This intermediary verifies data integrity, validates formats, and transforms incoming data into the required secret-shared format before processing, ensuring reliability while maintaining versatility in data source acceptance.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11704150B2Systems and methods for dynamic job performance in secure multiparty computation
Publication Date: 2023.07.18 ACRONIS INT
  • US11704150B2 patent drawing
  • US11704150B2 patent drawing
  • US11704150B2 patent drawing

AI summary

Disclosed herein are systems and methods for dynamic job performance in secure multiparty computation (SMPC). The method may comprise receiving an SMPC query that indicates a processing job to be performed on a data input. The method may split the data input to generate a plurality of partial data inputs, based on parameters and the query type of the SMPC query. The method may generate a plurality of jobs to perform on the plurality of partial data inputs and determine a combined result of the processing job. The method may adjust the amount of worker processes in a worker pool based on at least one of: required computation, time of day, date, financial costs, power consumption, and available network bandwidth.