Program Conversion for Homomorphic Encryption Operation Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
General programmers face difficulties in implementing homomorphic encryption programs due to the complexity of homomorphic encryption operation algorithms, leading to degraded accuracy and performance, as they lack the necessary deep knowledge in cryptography.
Innovation Solution
A program conversion apparatus and method that converts a general program into a homomorphic encryption program using a first library for general operations and a second library for homomorphic encryption operations, with a processor facilitating the conversion by identifying and linking operations through decorators and APIs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If general programmers implement homomorphic encryption programs by understanding homomorphic encryption operation algorithms, then the program can be implemented, but the accuracy and performance degrade due to lack of deep cryptography knowledge
Solution Approach 1:
The patent introduces a conversion apparatus as an intermediary between the general programmer and the homomorphic encryption implementation. This apparatus includes a conversion module that automatically translates general program operations into homomorphic encryption operations, eliminating the need for programmers to directly understand complex cryptographic algorithms while maintaining implementation accuracy.
Solution Approach 2:
The patent creates a mapping relationship that copies the structure and logic of general programs into the homomorphic encryption domain. By preserving the original program's control flow, data types, and algorithmic logic while substituting operations with their homomorphic equivalents, the system maintains the programmer's original intent and logic without requiring them to redesign for cryptographic constraints.
2Ease of manufacture
If homomorphic encryption is implemented using existing libraries like HEAAN, SEAL, or PALISADE, then implementation is possible, but the programmer must first understand the homomorphic encryption operation algorithm applied to the library
Solution Approach 1:
The conversion apparatus serves as an intermediary layer between the programmer and the homomorphic encryption library. It automatically translates general programming constructs into the specific library's operation interface, shielding the programmer from needing to understand the underlying cryptographic algorithms while still utilizing the library's functionality.
Solution Approach 2:
The patent segments the homomorphic encryption operation into discrete, identifiable operations that correspond to general programming operations. By breaking down complex cryptographic operations into manageable units with direct mappings to general operations, the system reduces the cognitive load on programmers while maintaining full functionality.
3Adaptability or versatility
If a program is converted from general operations to homomorphic encryption operations, then homomorphic encryption functionality is achieved, but the conversion process becomes complex
Solution Approach 1:
The conversion apparatus is designed as a universal tool that can handle multiple programming languages and various homomorphic encryption libraries through a single unified conversion framework. It maintains adaptability across different contexts while simplifying the conversion process through standardized operation mappings and automatic translation mechanisms.
Data Source
AI summary
A program conversion apparatus converts a first program to which homomorphic encryption is not applied into a second program to which the homomorphic encryption is applied. The program conversion apparatus may include a memory, which stores a first library for configuring the first program and a second library for configuring the second program. The program conversion apparatus may include a processor, which converts the first program into the second program through conversion between operations provided by the first and second libraries. A program conversion method and a computer program recorded on a computer-readable storage medium are also disclosed.


