Immutable file storage
AssigneeVMware, Inc.
InventorAlex Frank
Life of this patent
Estimating the term…
Abstract
The present disclosure is related to devices and systems for immutable file storage. An example device can include instructions to hash a log file received from a log source to produce a hash value, store the hash value and information describing the log file, communicate the hash value and the information to a third party service, wherein the third party service maintains the communicated hash value and the communicated information such that the communicated hash value and the communicated information are immutable, access the communicated hash value and the communicated information, and compare the stored hash value and the stored information with the communicated hash value and the communicated information to determine whether the log file is unmodified.
Claims16
A non-transitory machine-readable medium storing instructions which, when executed by a processor, cause the processor to:
- hash a log file received from a log source to produce a hash value;
- communicate a tuple including the hash value and information describing the log file to a third party service, wherein the information describing the log file includes a first message of the log file, a time the first message was received, a last message of the log file, and a time the last message was received, and wherein the third party service maintains the communicated tuple such that the communicated tuple is immutable;
- communicate a re-determined tuple to the third party service, wherein the re-determined tuple;
- includes a hash value produced by a subsequent hash of the log file and the information describing the log file;
- receive a result of a comparison of the immutable tuple with the re-determined
- encrypt each of the hash values and the information;
- and store the encrypted hash values and information:
- wherein said processor is further configured to:
- index the encrypted hash values and the information;
- and
- communicate the index to a trusted platform module (TPM), having logic to:
- encrypt the communicated index;
- store the encrypted communicated index;
- receive a revised index;
- encrypt the revised index;
- and
- store the encrypted revised index.
A system, comprising:
- a log source;
- a computing device, configured to:
- receive a plurality of log files from the log source;
- hash each log file to produce a respective hash value associated with each log file;
- a trusted platform module (TPM), having logic to:
- receive the hash values and respective information describing each log file from the computing device, wherein the information describing each log file includes a first message of the log file, a time the first message was received, a last message of the log file, and a time the last message was received;
- encrypt each of the hash values and the information;
- and store the encrypted hash values and information:
- wherein said computing device is configured to:
- index the encrypted hash values and the information;
- and
- communicate the index to the TPM;
- and
- the TPM has logic to:
- encrypt the communicated index;
- store the encrypted communicated index;
- receive a revised index;
- encrypt the revised index;
- and
- store the encrypted revised index.
A system, comprising:
- a plurality of virtual computing instances (VCis);
- and a host executing the plurality of VCis,
- wherein:
- each of the plurality of VCis hashes a respective log file to produce a respective hash value;
- and
- the host provisions each of the plurality of VCis with a path to a secure cryptoprocessor on the host to use the secure cryptoprocessor to encrypt the respective hash values with information describing the respective log files, wherein the information describing the respective log files includes, for each log file, a first message of the log file, a time the first message was received, a last message of the log file, and a time the last message was received;
- the secure cryptoprocessor configured to:
- index encrypted hash values and the information;
- and
- the secure cryptoprocessor has logic to:
- encrypt the communicated index;
- store the encrypted communicated index;
- receive a revised index;
- encrypt the revised index;
- and
- store the encrypted revised index.
Dependencies are inferred from the claim text.