Patent ID: 8850206
Filing Date: 2014-09-30
Classification: H04L

Abstract:
1. A computer enabled method of communicating between a client and a server over a computer network, comprising: transmitting an application certificate from the server to the client; checking the received application certificate at the client; generating, at the client, a session key and a random or pseudo random number; retrieving, at the client, a master session key; computing a first application key at the client by applying a first derivation function to the master session key, the application certificate, and the random or pseudo random number; computing session data at the client by encrypting a first data, using a public key of the server, the first data including the random or pseudo random number and an encrypted second data, the second data including the session key, wherein the second data is encrypted using the first application key as its encryption key; transmitting the session data to the server; at the server, decrypting the session data using a private key of the server to extract the first data, the first data including the random or pseudo random number and the encrypted second data, and computing the first application key by applying a second derivation function to the random or pseudo random number and a second application key, the second application key computed using the master session key and the application certificate, and wherein the second derivation function, in association with a generalized function, can derive the same result as the first derivation function, the first application key used to extract the session key from the encrypted second data; encrypting a content key for an asset at the server, using the extracted session key; encrypting content data including the content key previously encrypted by the session key at the server, and transmitting the encrypted content data to the client; and at the client, extracting the content key from the content data and decrypting the asset using the content key, wherein the asset is received by the client, separately, in encrypted form, and wherein the asset is encrypted using the content key.