Secret Shared RAM Execution on Untrusted Clouds
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for secure computation of RAM programs in cloud computing are vulnerable to information leakage due to untrusted hardware, and existing fully homomorphic encryption schemes have high computational overhead and rely on computational security rather than information-theoretical security.
Innovation Solution
A distributed scheme for executing RAM programs using OISC instructions, secret sharing, and Shamir's secret sharing to hide program and data operations, allowing secure execution on untrusted clouds without revealing any information about the program, data, or results, using Accumulating Automata for private string matching and degree reduction to manage polynomial degrees.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If existing fully homomorphic encryption schemes are used for secure computation, then confidentiality is improved, but computational overhead increases and security relies on computational hardness rather than information-theoretical security
Solution Approach 1:
The patent replaces computational security mechanisms (fully homomorphic encryption) with information-theoretical security mechanisms (secret sharing schemes). This substitution eliminates the need for complex cryptographic computations while achieving unconditional security based on mathematical impossibility of information leakage from shared secrets.
Solution Approach 2:
The patent changes the security parameter from computational hardness assumptions to information-theoretical security guarantees. By using secret sharing where security is based on the impossibility of reconstructing secrets from insufficient shares, the system achieves unconditional confidentiality without the high computational overhead of FHE.
2Reliability
If secret sharing is used to distribute program execution across multiple clouds, then information-theoretical security is improved, but communication overhead between clouds increases
Solution Approach 1:
The patent extracts the communication requirement from the secret sharing protocol by allowing each cloud to execute instructions independently using only local computations on shared secrets. This eliminates the need for continuous inter-cloud communication while maintaining information-theoretical security through the properties of secret sharing.
Solution Approach 2:
Each cloud performs computations autonomously using its local shares of the secret program and data, without requiring coordination or communication with other clouds. The system achieves security through the mathematical properties of secret sharing rather than through communication protocols.
3Productivity
If RAM programs are executed directly on untrusted clouds, then execution speed is improved, but information leakage occurs through side channels and hardware Trojans
Solution Approach 1:
The patent applies preliminary anti-action by encrypting the program and data using secret sharing before execution on untrusted clouds. This pre-encryption prevents any potential information leakage through side channels or hardware Trojans, as the clouds never receive or process the actual secret information in readable form.
Solution Approach 2:
The patent introduces secret shares as an intermediary between the trusted client and untrusted clouds. The clouds operate on shares rather than direct values, creating a protective layer that prevents information leakage while allowing functional computation to proceed at normal speeds.
4Device complexity
If oblivious RAM schemes are used for secure computation, then program size blowup is reduced compared to circuit conversion, but the assumption of trustworthy processors remains
Solution Approach 1:
The patent inverts the traditional approach by not requiring trustworthy processors. Instead of assuming cloud processors are honest and using oblivious RAM, the patent makes the processors untrusted and uses secret sharing to achieve security, eliminating the need for processor trust while maintaining efficient program representation.
Data Source
AI summary
A method of providing a distributed scheme for executing a RAM program, without revealing any information regarding the program, the data and the results, according to which the instructions of the program are simulated using SUBLEQ instructions and the execution of the program is divided among a plurality of participating computational resources such as one or more clouds, which do not communicate with each other, while secret sharing all the program's SUBLEQ instructions, to hide their nature of operation and the sequence of operations. Private string matching is secretly performed by comparing strings represented in secret shares, for ensuring the execution of the right instruction sequence. Then arithmetic operations are performed over secret shared bits and branch operations are performed according to the secret shared sign bit of the result.

