Server-Side Directory Hiding for Untrusted Client File Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional client-server file systems face security loopholes, particularly when dealing with untrusted clients, as they lack effective mechanisms to prevent unauthorized access and manage file permissions efficiently.

Innovation Solution

A server-side security mechanism is implemented, where the server generates a unique filename for each file and hides directory contents from clients, allowing access only when the exact filename is provided, using a file system manager that assigns complex filenames and enforces permission modes to control access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional file systems allow clients to view directory contents and choose files to access, then ease of operation is improved, but security is worsened because untrusted clients can access unauthorized files

Engineering Contradiction:
Improveease of file accessVSAvoidsecurity
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the file access process into two distinct phases: (1) file creation/registration phase where the server generates and stores the filename, and (2) file access phase where the client presents the filename for verification. This segmentation separates the ability to access files from the ability to discover files, resolving the contradiction between ease of operation and security.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a filename as an intermediary token that mediates between the client and the actual file. The client does not directly interact with the file system directory structure but instead uses the filename as a key to access files through the server's verification mechanism. This intermediary prevents untrusted clients from browsing directory contents while maintaining controlled access.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If the server implements comprehensive permission modes for each file and directory, then security is improved, but device complexity is worsened due to complex permission management

Engineering Contradiction:
ImprovesecurityVSAvoidpermission management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the filename verification mechanism from the traditional permission-based access control system. Instead of relying on complex permission modes for each file and directory, the system uses the presence and correctness of the filename as the primary access control mechanism. This extraction simplifies permission management while maintaining security.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent changes the access control parameter from complex permission modes (read, write, execute permissions for user/groups) to a simpler filename verification parameter. The server only needs to verify whether the presented filename matches a registered file, fundamentally changing the access control parameter from multi-dimensional permissions to a single-dimensional filename match, thereby reducing complexity.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8806203B2Server-side security for untrusted clients using directory hiding
Publication Date: 2014.08.12 RED HAT ISRAEL
  • US8806203B2 patent drawing
  • US8806203B2 patent drawing
  • US8806203B2 patent drawing

AI summary

A security mechanism provided by a server protects files in data storage from untrusted clients. In one embodiment, the server generates a filename in response to a request from a client for creating a filename. The filename is associated with a file to be stored in the data storage managed by the server. The server manages a directory that contains the filename, and hides the directory contents from the client. The client is granted access to the file when the client provides the filename associated with the file.