Blockchain Program Verification for Trusted Execution Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current online service systems face challenges in ensuring user information security due to difficulties in self-certifying that they do not collect or leak user information, and users struggle to verify if service systems are confidential according to agreements.
Innovation Solution
A program verification method and apparatus that utilize a blockchain network to acquire and verify root and verification evidence for server-side and user-side programs, ensuring they operate within a trusted execution environment (TEE) and adhere to preset data processing and acquisition rules, thereby preventing modifications and ensuring secure data processing and transmission.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If service providers claim their systems do not collect or leak user information, then user trust may improve, but the claim lacks verifiable evidence and cannot be self-certified
Solution Approach 1:
The patent introduces a blockchain-based verification system as an intermediary between service providers and users. The blockchain network stores verification evidence (hash values of program codes) that can be publicly queried, serving as a trusted mediator that certifies program integrity without requiring direct trust between service providers and users. This resolves the contradiction by providing verifiable evidence through an impartial third-party system.
Solution Approach 2:
The patent implements preliminary verification by storing the hash value of the original program code in the blockchain before the program executes any data processing operations. This preliminary action creates a baseline for later verification, allowing users to confirm that the running program has not been modified from the certified version, thus providing advance proof of security commitments.
2Measurement precision
If users verify service system confidentiality manually, then verification capability improves, but the verification process becomes complex and difficult to perform
Solution Approach 1:
The patent uses cryptographic hash values as simplified copies of the original program code for verification purposes. Instead of requiring users to analyze the entire complex program code, the system generates a compact hash value that uniquely represents the program's integrity. Users can verify confidentiality by comparing hash values without needing to understand or analyze the complex program logic, thus maintaining verification accuracy while dramatically reducing complexity.
3Productivity
If service systems process user data centrally, then service efficiency improves, but information security and user control deteriorate
Solution Approach 1:
The patent implements preliminary certification of the service program's data processing logic before execution. By storing the hash value of the certified program in the blockchain and verifying it before and during execution, the system ensures that the centralized data processing follows pre-certified confidential logic. This allows efficient centralized processing while maintaining reliability through continuous verification against the stored hash value.
Solution Approach 2:
The patent establishes a feedback mechanism where the system continuously verifies the running program's integrity by comparing its hash value against the blockchain-stored reference. This feedback loop ensures that any deviation from the certified confidential processing logic is detected, allowing the system to maintain both processing efficiency and data confidentiality through ongoing verification.
Data Source
AI summary
The present disclosure relates to a program verification method and apparatus, a platform, a user terminal, and an online service system, includes: acquiring a root evidence of a server-side program from a blockchain network, and acquiring a verification evidence of the server-side program from a server side, where the root evidence is written into the blockchain network after server-side program review succeeds, and the success of the server-side program review indicates a data processing method of the server-side program satisfies a preset data processing rule; verifying whether the root evidence and the verification evidence are matched, where the root evidence and the verification evidence being matched indicates the server-side program is a program that is operated in a TEE of a computer and is not modified after the root evidence is written into the blockchain network; and determining to connect a user-side program to the server-side program.


