High-speed secure virtual file system
AssigneeFHOOSH, Inc.
InventorsEric TOBIAS, William EIGNER, Linda EIGNER, Charles KAHLE, William BONNEY, Gary SCHNEIR, Anthony IASI, John TYNER
Life of this patent
Estimating the term…
Abstract
A system for storing data with a virtual file system includes: means for receiving a file; means for disassembling the file into fragments; means for encrypting the fragments; means for mapping the fragments to different storage locations in the virtual file system; means for transmitting the encrypted file fragments to the different storage locations in the virtual file system; and means for storing the encrypted file fragments to the different storage locations in the virtual file system.
Claims27
A method for storing data with a virtual file system, the method comprising:
- receiving, by a processor, a file;
- disassembling, by an encryption engine, the file into fragments;
- encrypting, by the encryption engine, the fragments;
- mapping, by the encryption engine, the fragments to different storage locations in the virtual file system;
- transmitting, by the processor, the encrypted file fragments to the different storage locations in the virtual file system;
- and
- storing the encrypted file fragments to the different storage locations in the virtual file system.
A method for accessing data with a virtual file system, the method comprising:
- receiving, by a processor, a request to access a file;
- determining, by the processor, whether the request is from an authorized user;
- in response to determining that the request is from an authorized user:
- retrieving, by the processor, encrypted fragments of the file from different storage locations of the virtual file system based on mapping information previously generated by an encryption engine of the fragments to the different storage locations in the virtual file system;
- receiving, by the processor, the encrypted file fragments from the different storage locations in the virtual file system;
- decrypting, by the encryption engine, the encrypted file fragments;
- and
- reassembling, by the encryption engine, the decrypted file fragments into the requested file.
A non-transitory computer readable medium having stored therein a program for making a computer execute a method for storing data with a virtual file system, the program including computer executable instructions for performing operations comprising:
- receiving, by a processor, a file;
- disassembling, by an encryption engine, the file into fragments;
- encrypting, by the encryption engine, the fragments;
- mapping, by the encryption engine, the fragments to different storage locations in the virtual file system;
- transmitting, by the processor, the encrypted file fragments to the different storage locations in the virtual file system;
- and
- storing the encrypted file fragments to the different storage locations in the virtual file system.
A non-transitory computer readable medium having stored therein a program for making a computer execute a method for accessing data with a virtual file system, the program including computer executable instructions for performing operations comprising:
- receiving, by a processor, a request to access a file;
- determining, by the processor, whether the request is from an authorized user;
- in response to determining that the request is from an authorized user:
- retrieving, by the processor, encrypted fragments of the file from different storage locations of the virtual file system based on mapping information previously generated by an encryption engine of the fragments to the different storage locations in the virtual file system;
- receiving, by the processor, the encrypted file fragments from the different storage locations in the virtual file system;
- decrypting, by the encryption engine, the encrypted file fragments;
- and
- reassembling, by the encryption engine, the decrypted file fragments into the requested file.
A system for storing data with a virtual file system, the system comprising:
- means for receiving a file;
- means for disassembling the file into fragments;
- means for encrypting the fragments;
- means for mapping the fragments to different storage locations in the virtual file system;
- means for transmitting the encrypted file fragments to the different storage locations in the virtual file system;
- and
- means for storing the encrypted file fragments to the different storage locations in the virtual file system.
A system for accessing data with a virtual file system, the system comprising:
- means for receiving a request to access a file;
- means for determining whether the request is from an authorized user;
- in response to determining that the request is from an authorized user:
- means for retrieving encrypted fragments of the file from different storage locations of the virtual file system based on mapping information previously generated by means for generating mapping information of the fragments to the different storage locations in the virtual file system;
- means for receiving the encrypted file fragments from the different storage locations in the virtual file system;
- means for decrypting the encrypted file fragments;
- and
- means for reassembling the decrypted file fragments into the requested file.
Dependencies are inferred from the claim text.