System and Method for Cacheing Web Files
First Claim
1. A computer-implemented method comprising:
- receiving a file request comprising a first message digest and a location;
determining whether a file having a second message digest corresponding to the first message digest is available in a storage area;
when the second message digest corresponds to the first message digest, providing the file from the storage area; and
when the second message digest does not correspond to the first message digest;
retrieving the file from the location;
storing the retrieved file in the storage area;
producing a third message digest from the retrieved file;
comparing the third message digest with the first message digest; and
responsive to the third message digest corresponding to the first message digest, providing the retrieved file.
2 Assignments
0 Petitions
Accused Products
Abstract
A system and method receives a request for a file containing an identifier of the requested file and a message digest, containing an expected hash result of the requested file. The system and method identifies whether it has already stored a file having that identifier and a hash result matching the message digest. If so, the file is provided, optionally after being checked for authenticity via rehashing and comparing again to the message digest. If the file is not stored in the cache, it may be retrieved from a location included in the identifier, hashed and compared to the message digest to authenticate it, and provided to the requesting program if the hash result matches the message digest.
40 Citations
24 Claims
-
1. A computer-implemented method comprising:
-
receiving a file request comprising a first message digest and a location; determining whether a file having a second message digest corresponding to the first message digest is available in a storage area; when the second message digest corresponds to the first message digest, providing the file from the storage area; and when the second message digest does not correspond to the first message digest; retrieving the file from the location; storing the retrieved file in the storage area; producing a third message digest from the retrieved file; comparing the third message digest with the first message digest; and responsive to the third message digest corresponding to the first message digest, providing the retrieved file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
an input device; an output device; a storage area; and a processor configured to perform operations comprising; receiving a file request comprising a first message digest and a location; determining whether a file having a second message digest corresponding to the first message digest is available in a storage area; when the second message digest corresponds to the first message digest, providing the file from the storage area; and when the second message digest does not correspond to the first message digest; retrieving the file from the location; storing the retrieved file in the storage area; producing a third message digest from the retrieved file; comparing the third message digest with the first message digest; and responsive to the third message digest corresponding to the first message digest, providing the retrieved file. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A computer storage medium encoded with a computer program, the program comprising instructions that when executed by data processing apparatus cause the data processing apparatus to perform operations comprising:
-
receiving a file request comprising a first message digest and a location; determining whether a file having a second message digest corresponding to the first message digest is available in a storage area; when the second message digest corresponds to the first message digest, providing the file from the storage area; and when the second message digest does not correspond to the first message digest; retrieving the file from the location; storing the retrieved file in the storage area; producing a third message digest from the retrieved file; comparing the third message digest with the first message digest; and responsive to the third message digest corresponding to the first message digest, providing the retrieved file. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification