Patent ID: 8539592
Filing Date: 2013-09-17
Classification: H04L,H04N

Abstract:
1. A method for distributing content to a plurality of clients in a network, comprising: receiving, from a media server, an original data stream comprising a plurality of data packets; identifying a first intended recipient of a first subset of the plurality of data packets of the original data stream, wherein the first intended recipient is a first client of the plurality of clients, wherein the first subset of the plurality of data packets is selected based on a plurality of program identifications (PIDs), a plurality of unique bit sequences (UBSs), and a plurality of IP addresses; encrypting, by a computer processor and using a first stream key, the first subset of the plurality of data packets to generate a first plurality of encrypted packets; encrypting, by the computer processor and using a first access key, the first stream key to generate a first encrypted stream key; obtaining a first public key associated with the first client; encrypting, by the computer processor and using the first public key, the first access key to generate a first enablement token; sending the first enablement token to the first client, wherein the first client decrypts the first enablement token using a first private key to obtain the first access key; identifying a second intended recipient of the first subset of the plurality of data packets of the original data stream, wherein the second intended recipient is a second client of the plurality of clients; obtaining a second public key associated with the second client; encrypting, by the computer processor and using the second public key, the first access key to generate a second enablement token; sending the second enablement token to the second client, wherein the second client decrypts the second enablement token using a second private key to obtain the first access key; identifying a third intended recipient of a second subset of the plurality of data packets of the original data stream, wherein the third intended recipient is a third client of the plurality of clients; encrypting, by the computer processor and using a second stream key, the second subset of the plurality of data packets to generate a second plurality of encrypted packets; encrypting, by the computer processor and using a second access key, the second stream key to generate a second encrypted stream key; obtaining a third public key associated with the third client; encrypting, by the computer processor and using the third public key, the second access key to generate a third enablement token; sending the third enablement token to the third client, wherein the third client decrypts the third enablement token using a third private key to obtain the second access key; generating, based on the original data stream, a first encrypted data stream comprising the first plurality of encrypted packets and the first encrypted stream key; generating, based on the original data stream, a second encrypted data stream comprising the second plurality of encrypted packets and the second encrypted stream key; sending the first encrypted data stream to the first client and the second client, sending the second encrypted data stream to the third client,