Preview Application for Secure External Storage Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing devices face challenges in accessing external storage solutions due to security concerns, which often require sacrificing security for operational flexibility, and conventional methods result in a large memory footprint during file browsing and access.
Innovation Solution
Implementing a method that allows a computing device to browse and access external storage solutions with reduced memory footprint by using a preview application to generate file previews without kernel processes, and upon file opening, engaging a kernel pathway to securely retrieve files while maintaining robust security through sandboxing and privilege separation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If privileged kernel code is allowed to read data structures on external hard drives to enable file access, then operational flexibility is improved, but security is worsened due to potential buffer overflow exploits from malicious code
Solution Approach 1:
The patent segments file access operations into two distinct pathways: a user-space pathway for browsing and preview generation that does not require kernel privileges, and a kernel-space pathway for actual file opening. This segmentation allows the system to maintain security by limiting kernel exposure while preserving operational flexibility through user-space accessibility.
Solution Approach 2:
The patent introduces a preview application as an intermediary component that operates in user space. This intermediary generates file previews without requiring privileged kernel code to read external drive data structures, thereby mediating between the need for file access and the need to prevent security exploits.
2Ease of operation
If conventional file access methods are used to enable browsing of external storage, then ease of operation is improved, but memory footprint is worsened due to large memory consumption during file browsing
Solution Approach 1:
The patent extracts the file preview generation function from the kernel space and places it in user space. This extraction allows browsing and preview operations to proceed with reduced memory footprint since the heavy lifting of reading and displaying file metadata occurs outside the privileged kernel environment, while maintaining ease of operation through the same user-facing interface.
3Reliability
If robust security measures are implemented to prevent buffer overflow exploits, then security is improved, but ease of operation is worsened due to inability to access external storage
Solution Approach 1:
The patent implements dynamic pathway selection based on the operation type. For browsing and preview operations, the system dynamically uses the user-space pathway that maintains security while providing access. For file opening operations, it dynamically transitions to the kernel-space pathway when appropriate. This dynamic approach allows robust security to coexist with ease of operation.
Solution Approach 2:
The preview application serves itself by generating previews in user space without requiring privileged kernel code to read external drive data structures. This self-service capability allows the system to maintain robust security while still providing ease of access to external storage through the preview functionality.
Data Source
AI summary
This application sets forth techniques for browsing and accessing files stored by a storage solution. The technique includes the steps of (1) prior to receiving a command to open a file, operating in a user space and engaging a first pathway by (a) instantiating, by an application, a preview application; (b) constructing a file path associated with the file stored in the volume; (c) providing the file path to the preview application; (d) generating, by the preview application, preview data of the file; and (e) receiving, by the preview application, a request to open the file; and (2) in response to receiving the request to open the file, engaging a second pathway to retrieve the file from the volume by: (a) generating, by the preview application, a system call to open the file; and (b) transmitting the system call to a kernel process executing within a kernel space.


