Secure Program Execution With Proxy Re-Encryption Access Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional technologies fail to prevent data leakage between different users holding different data and programs, and lack role-based access control for secure data sharing in cloud environments.
Innovation Solution
A program execution system with a data processing device, data holding device, and program providing device, utilizing a secure computing mechanism to encrypt and re-encrypt data and programs with role-specific keys, ensuring secure calculation and access control through TEE-based proxy re-encryption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data and programs are processed in a cloud using conventional confidential computing technologies, then data can be isolated and kept secret during processing, but there is no mechanism to prevent data leakage between different users or implement role-based access control
Solution Approach 1:
The system segments access rights by dividing user permissions into different roles (program provider role and data holder role). Each role has specific encrypted keys associated with it, allowing the system to control what each user can access based on their role rather than treating all users uniformly. This segmentation enables role-based access control while maintaining data confidentiality.
Solution Approach 2:
The system applies different encryption keys and access controls to different users based on their local roles. The program provider receives encrypted data with one key while the data holder receives encrypted programs with another key, ensuring each user only accesses resources appropriate to their specific role and needs.
2Adaptability or versatility
If files are uploaded to a cloud according to user roles, then access control can be implemented, but files cannot be shared among users with appropriate roles
Solution Approach 1:
The system introduces an intermediary encryption mechanism using proxy re-encryption. The cloud server acts as a mediator that can transform encrypted data from one user's encryption key to another user's encryption key without decrypting the data itself. This allows files to be shared among users with appropriate roles while maintaining both role-based access control and ease of operation.
Solution Approach 2:
The system changes the encryption parameters (specifically the decryption key) of encrypted data dynamically based on the recipient's role. When a file needs to be shared, the cloud server modifies the encryption parameters to allow the intended recipient to decrypt and access the file, enabling flexible sharing within role-based constraints.
3Reliability
If encrypted data and programs are transmitted to a data processing device, then security is improved, but the system complexity increases due to multiple encryption keys and role verification
Solution Approach 1:
The system extracts the complex key management operations from the client devices and relocates them to the cloud server. The cloud server maintains the role verification logic and encryption key management infrastructure, while client devices only need to provide their role identifiers. This extraction reduces device complexity while maintaining strong security through centralized key management.
Data Source
AI summary
A program execution system includes a data processing apparatus that performs secret calculation in a secure area. The data processing apparatus includes circuitry configured to calculate a result that is obtained by executing a program on data in the secure area, the program being obtained by decrypting a re-encrypted program with a first secret key, and the data being obtained by decrypting re-encrypted data with a second secret key.


