System and method to make file handles opaque to clients
First Claim
1. A method for making file handles opaque to devices connected to the network, the method comprising:
- maintaining a hash table, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries;
generating a file handle associated with a specific file;
encrypting the file handle by a file server to create an encrypted file handle, thereby preventing access to the file handle;
returning the encrypted file handle to a device that requested access to the specific file;
transmitting to the file server, by the device, the encrypted file handle and a file operation;
generating a hash key from the encrypted file handle to locate a hash key entry in the hash table;
in response to determining that the hash key entry exists, comparing the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and
processing, by the file server, the file operation upon the specific file obtained from the corresponding decrypted file handle entry.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method to make file handles opaque to other network devices is provided. The system and method encrypts a file handle after it is generated and returns the encrypted file handle to a requesting client. The system and method may also generate a hash table storing hash key, a copy of the encrypted file handle and a copy of the unencrypted file handle. Upon a later receipt of an encrypted file handle, the system and method may hash the encrypted file handle to identify an appropriate hash table entry and it'"'"'s associated unencrypted hash key. Alternately, the system may decrypt every received encrypted file handle and not utilize a hash table.
-
Citations
29 Claims
-
1. A method for making file handles opaque to devices connected to the network, the method comprising:
-
maintaining a hash table, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; generating a file handle associated with a specific file; encrypting the file handle by a file server to create an encrypted file handle, thereby preventing access to the file handle; returning the encrypted file handle to a device that requested access to the specific file; transmitting to the file server, by the device, the encrypted file handle and a file operation; generating a hash key from the encrypted file handle to locate a hash key entry in the hash table; in response to determining that the hash key entry exists, comparing the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and processing, by the file server, the file operation upon the specific file obtained from the corresponding decrypted file handle entry. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A fie server for use with one or more clients in a network environment, the file server comprising:
-
means for generating a file handle of a file; means for encrypting the file handle by the file server to create an encrypted file handle, thereby preventing access to the file handle; means for creating a new entry in a hash table associated with the encrypted file handle, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; means for returning the encrypted file handle to a client that requested access to the file; means for receiving from the client the encrypted file handle and a file operation; means for generating a hash key from the encrypted file handle to locate a hash key entry in the hash table; in response to determining that the hash key entry exists, means for comparing the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and means for processing, by the file server, the file operation upon the file obtained from the corresponding decrypted file handle entry. - View Dependent Claims (10)
-
-
11. A computer readable medium, including program instructions executing on a computer, the program instructions including instructions for performing the steps of:
-
maintaining a hash table, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; generating a file handle associated with a specific file; encrypting the file handle by a file serer to create an encrypted file handle, thereby preventing access to the file handle; returning the encrypted file handle to a device that requested access to the specific file; transmitting to the file server, by the device, the encrypted file handle and a file operation; generating a hash key from the encrypted file handle to locate a hash key entry in the hash table; in response to determining that the hash key entry exists, comparing the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and processing, by the file server, the file operation upon the specific file obtained from the corresponding decrypted file handle entry. - View Dependent Claims (12)
-
-
13. A method for making file handles opaque to devices connected to the network, the method comprising:
-
maintaining a hash table, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; receiving a request from a client to open a specific file; generating, by a file server, a file handle associated with the specific file; encrypting the file handle by the file server to create an encrypted file handle, thereby preventing access to the file handle; sending the encrypted file handle to the client; transmitting to the file server, by the client, the encrypted file handle and a file operation; generating a hash key from the encrypted file handle to locate a hash key entry in the hash table; in response to determining that the hash key entry exists, comparing the encrypted file handle to one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and processing, by the file server, the file operation upon the specific file associated with the corresponding decrypted file handle entry. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A method comprising:
-
maintaining a hash table, the hash table including one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; sending an open request to a file server from a client for a file, the file identified by a file handle; encrypting the file handle by the file server to create an encrypted file handle, thereby preventing access to the file handle; returning the encrypted file handle to the client; transmitting to the file server, by the client, the encrypted file handle and file operation; generating a hash key from the encrypted file handle to locate a hash key entry in the hash table; in response to determining that the hash key entry exists, comparing the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and processing, by the file server, the file operation upon the file associated with the corresponding decrypted file handle entry. - View Dependent Claims (20, 21)
-
-
22. A server, comprising:
-
a file handle associated with a specific file; a processor to encrypt the file handle to create an encrypted file handle; the server configured to maintain a hash table that includes one or more hash key entries, one or more encrypted file handle entries, and one or more decrypted file handle entries; the server configured to return the encrypted file handle to a device that requested access to the specific file; the server configured to receive the encrypted file handle and file operation sent by the device; the server configured to generate a hash key from the encrypted file to locate a hash key entry in the hash table; the server configured to determine that the hash key entry exists in the hash table and to compare the encrypted file handle to the one or more encrypted file handle entries associated with the hash key entry to find a matching encrypted file handle entry, the matching encrypted file handle entry having a corresponding decrypted file handle entry in the hash table; and the server configured to process the file operation upon the specific file obtained from the corresponding file handle entry. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29)
-
Specification