| CPC H04L 67/06 (2013.01) [H04L 9/30 (2013.01); H04L 9/3213 (2013.01)] | 20 Claims |

|
1. A computer-implemented method comprising:
receiving, at a first instance of a data sharing server and from a first user device of a first user, a request to grant access to a second user to a first file stored at a first data host connected to the first instance of the data sharing server;
issuing, by the first instance of the data sharing server and to the first user device, an authentication token for a second instance of the data sharing server associated with the second user;
receiving, at the second instance of the data sharing server and from the first user device, the authentication token for the second instance of the data sharing server and a notification that the first user has shared the first file with the second user;
sending, by the second instance of the data sharing server and to a second user device of the second user, the notification that the first user has shared the first file with the second user;
receiving, at the second instance of the data sharing server and from the second user device, a request for an authentication token for the first instance of the data sharing server;
issuing, by the second instance of the data sharing server and to the second user device, an authentication token for the first instance of the data sharing server;
receiving, at the first instance of the data sharing server and from the second user device, the authentication token for the first instance of the data sharing server and a request for contents of the first file;
verifying, at the first instance of the data sharing server, that the first file has been shared with the second user;
retrieving, by the first instance of the data sharing server and from the first data host, the contents of the first file; and
providing the contents of the first file to the second user device.
|