Encrypted Data Access via Intermediary Container and Key Negotiation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for encrypting data on mobile devices with limited storage and computing power face challenges in making encrypted files accessible to third-party applications securely, managing access policies, and updating encryption keys conveniently.
Innovation Solution
The method employs the anonymous Diffie-Hellman key exchange algorithm for secure key negotiation, using public/private key pairs and certificates to authenticate applications, and establishes a symmetric session key for secure communication, allowing encrypted data to be accessed and updated efficiently without compromising security.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If encrypted data is made accessible to third-party applications on mobile devices, then data usability and convenience are improved, but security is compromised
Solution Approach 1:
The patent introduces a container application as an intermediary layer between the encrypted data and third-party applications. The container app maintains security by keeping data encrypted while providing controlled access through its own interface. Third-party applications interact with the container application rather than directly accessing encrypted files, thus the intermediary protects the security boundary while enabling usability.
2Adaptability or versatility
If a container application supports multiple file types, then adaptability is improved, but device storage and processing requirements increase
Solution Approach 1:
The patent extracts the file type handling logic from the container application itself and delegates it to separate third-party applications. The container application only manages encryption and container operations, while specific file types are handled by specialized applications that the user installs. This extraction reduces the storage and processing burden on the container application while maintaining support for multiple file types through the ecosystem of third-party apps.
3Reliability
If encryption keys are updated frequently, then security is improved, but operational convenience deteriorates
Solution Approach 1:
The patent implements automatic key management where the container application handles key generation, storage, and rotation without requiring user intervention. The system automatically manages multiple encryption keys and handles the complexity of key updates in the background. This self-service approach maintains high security through frequent key updates while preserving user convenience by eliminating manual key management tasks.
4Extent of automation
If access policies are updated remotely, then administrative control is improved, but communication reliability with offline devices worsens
Solution Approach 1:
The patent implements a mechanism where access policies and encryption keys are cached locally on the mobile device in advance. When the device is offline, it continues to enforce the cached policies without needing real-time communication with the server. This preliminary action ensures that policy updates are applied reliably even when the device is disconnected, as the device already has the necessary policy information stored locally from previous connections.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Data is stored on a computing device in an encrypted form using a control application (114). A data access application (116) requests access to the data. It is determined whether the data access application (116) has available a shared encryption key that is available to the control application (114). If a shared encryption key is available, the shared encryption key is used to encrypt a request for access to the data. If a shared encryption key is not available, a shared encryption key is negotiated with the control application (1 14), and the negotiated shared encryption key is used to encrypt the request for access to the data. The control application (114) receives the encrypted request, decrypts the encrypted request using the shared encryption key, and makes the data stored on the computing device in encrypted form available to the data access application (116) in response to the decrypted request.