Zero-Knowledge Cloud Microservices for Trustless Transaction Integrity
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cryptographically verifiable computing technologies like PCPs, zkSNARK, and SCIP have high overhead, limiting their use to simple programs, making them unsuitable for general-purpose programming and commercial implementation in cloud services, especially for ensuring privacy and integrity between mutually untrusting parties.
Innovation Solution
Implementing zero-knowledge verifiable computing as elemental microservices on the cloud, allowing for the composition of trusted transactions between untrusted parties by providing mathematical proofs of program execution, thus ensuring privacy and integrity without relying on the trustworthiness of the cloud provider.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If cryptographically verifiable computing technologies (PCPs, zkSNARK, SCIP) are used to ensure integrity and privacy, then security and trustworthiness are improved, but computational overhead increases and program complexity is limited
Solution Approach 1:
The patent segments the computational verification process into distinct components: a trusted execution environment (TEE) handles the actual computation, while a separate verification module checks the results using cryptographic proofs. This segmentation allows the system to maintain strong security guarantees without requiring the entire computing system to bear the full cryptographic overhead, thereby resolving the contradiction between reliability and device complexity.
2Productivity
If simple and concise programs are used to reduce verification overhead, then computational efficiency is improved, but program functionality is limited and general-purpose programming becomes difficult
Solution Approach 1:
The patent introduces a trusted execution environment (TEE) as an intermediary between the program execution and the verification process. The TEE acts as a mediator that can execute complex, general-purpose programs while providing cryptographic guarantees. This intermediary allows the system to maintain both high verification speed (by verifying only essential outputs) and full program functionality (by allowing complex computations within the TEE), thereby resolving the contradiction between productivity and adaptability.
3Ease of operation
If cloud services are used to provide computing power, then accessibility and scalability are improved, but trust in the cloud provider is required which compromises privacy
Solution Approach 1:
The patent extracts the trust requirement from the cloud provider by implementing a verification mechanism that does not depend on the provider's honesty. The system takes out the critical security function (verification of computation integrity) from the untrusted cloud environment and places it in a client-controlled verification module that uses cryptographic proofs to independently verify results. This extraction allows cloud services to remain accessible and scalable while eliminating the need to trust the provider with user data privacy.
4Reliability
If mathematical proofs of execution are required for every transaction, then trustlessness is achieved, but transaction time and computational cost increase
Solution Approach 1:
The patent applies partial verification by having the trusted execution environment provide cryptographic proofs only for critical aspects of computation (such as output correctness and input-output consistency) rather than verifying every single computational step. This partial action approach maintains trustless verification for the most important security-critical elements while significantly reducing the time and computational cost compared to full verification, thereby resolving the contradiction between reliability and loss of time.
Data Source
AI summary
A trusted network based service running on a server, for example as a cloud server, includes receiving a request from a first user device and a second user device. The request includes one or more inputs to perform a stateless transaction based on combinational logic. An output of the combinational logic is a function of only the one or more inputs. Based upon the request, a program is selected from a set of a plurality of programs using zero-knowledge verifiable computing to carry out the transaction. The program is executed using zero-knowledge verifiable computing. The execution of the program out the transaction based on combinational logic with the one or more inputs using a zero-knowledge protocol to ensure privacy of the first user device and the second user device. The output of the combinational logic along with proof from the zero-knowledge protocol that the combinational logic was executed without alteration.


