Patent ID: 7725716

Claim:
A method comprising: receiving a request for a file and receiving a user and device key, wherein the request identifies a user and a client device that sent the request and the user and device key; generating a session key that is unique for the user, device, and session; creating a session-key-encrypted file by encrypting the file using the session key; creating an encrypted message by encrypting the session-key-encrypted file and the session key together using the user and device key; and transmitting the encrypted message to the client device, wherein the client device decrypts the encrypted message, stores the session-key-encrypted file, stores the session key, and restricts access to the session key such that the session key is only provided to the user on the client device, wherein, after the session and communication to the client device has ended, the session-key-encrypted file and the session key are only available for use by the user on the client device.