Cloud based file storage service
AssigneeGoogle Inc.
InventorRyan Cairns
Life of this patent
Estimating the term…
Abstract
A server receives from a user's computer a request to store a file and a file hash value. The server determines whether a file with the same hash value is stored on the server. If so, the server grants access to the server's file copy. If not, the server requests the user to upload the file and stores it. The server grants access to the copy by sending the user a pointer to the copy's storage location and associating the user with the pointer in a database. The server can challenge the user's right to access the copy by requesting a file password or a portion of the file stored on the user's computer. The server can limit access to the server's copy to users who successfully respond to the challenge.
Claims20
A computer implemented method for storing files on a cloud-based server, the method comprising:
- receiving, at a server, a request from a user to store a file;
- receiving, at the server, from a client computer controlled by the user, a hash value for the file;
- determining, through at least one processor of the server, whether a file with a hash value identical to the received hash value is already stored on the server;
- and
- if a file with a hash value identical to the received hash value is not already stored on the server, sending to the client computer a request to send the file to the server.
A computer implemented method for requesting the storage of files on a cloud-based server, comprising:
- determining, at a client computer, a hash value for a file to be stored on a server;
- sending, from the client computer, a request to the server to store the file and the hash value for the file;
- and
- receiving, at the client computer, a response from the server granting access to a copy of the file that is stored on the server.
A computer program product, stored on a tangible machine readable medium, comprising instructions operable to cause one or more programmable processors of a computer system to:
- receive, at a server, a request from a user to store a file;
- receive, at the server, from a client computer controlled by the user, a hash value for the file;
- determine whether a file with a hash value identical to the received hash value is already stored on the server;
- and
- if a file with a hash value identical to the received hash value is not already stored on the server, send to the client computer a request to send the file to the server.
Dependencies are inferred from the claim text.