A portion of the disclosure of this patent document contains material, which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
The presently claimed invention relates generally to networks, in particular, a computer network or a broadcast network such as television. Specifically, the presently claimed invention relates to encryption schemes used for encrypting privileged content distributed in a network.
In a broadcast encryption scheme, a content distributor encrypts its privileged content for users or clients who are listening on a broadcast channel or a distribution network. Any user or client can use his private key to decrypt the encrypted content received, but only the chosen subset of users or clients can decrypt the encrypted content into the original content. The content distributor can control and select for this subset. Broadcast encryption has several applications including access control in encrypted file systems, television subscription services, and media content protection.
Traditional broadcast encryption schemes, such as those using Public Key Infrastructure (PKI) or bilinear pairings, create cryptographic headers that in part based on the subscriber set, which is the subset of content receiving clients that can decrypt the encrypted content and hence view original content. One of these traditional broadcast encryption schemes is the Boneh-Gentry-Waters broadcast encryption scheme. The Boneh-Gentry-Waters broadcast encryption scheme is described in the report: Dan Boneh, Craig Gentry, and Brent Waters, Collusion Resistant Broadcast Encryption With Short Ciphertexts and Private Keys, Crypto, 2005; the disclosure of which is incorporated herein by reference in its entirety. Under this broadcast encryption scheme, whenever the subscriber set changes as new subscribers are added or expired subscribers are removed, a new cryptographic header needs to be created and to be distributed. The computation of the new cryptographic header is performed without reusing any previous computation result. Furthermore, the decryption of the encrypted content is performed also without reusing any previous computation result. As such, the computation for both cryptographic header generation and encrypted content decryption whenever the subscriber set is updated is intense, time consuming, and causes degradation to the overall content distribution performance.
Another shortcoming of the traditional broadcast encryption schemes is that the encryption schemes require the total number of content receiving clients in the distribution network to be fixed at the time of initial setup of the system and cannot be increased thereafter.
Therefore, there is a need for a new broadcast encryption scheme that can better utilize previous computation results during the cryptography header generation and encrypted content decryption when the subscriber set changes; and that the new broadcast encryption scheme is robust enough to handle an unlimited total content receiving client population.
It is an objective of the presently claimed invention to provide a method and a system for content distribution with a broadcast encryption scheme with optimized cryptography header generation and decryption.
It is a further objective that the optimization is achieved by reusing the previous computation results in cryptography header generation and decryption when the subscription set changes. By using the differential ciphertext generation method, which is based on the previous ciphertext value, the amount of computation for generating the cryptography header is reduced. For the decryption process, portions of the reconstruction of the encryption secret is pre-computed and preserved using a wide window point addition method. Therefore, the subsequent encryption secret reconstruction can rely on the pre-computed results to speed up the computation time.
It is a further objective to provide a clustering solution in content distribution with a broadcast encryption scheme that can expand as desired to accommodate an unlimited number of content receiving clients.
Embodiments of the invention are described in more detail hereinafter with reference to the drawings, in which:
In the following description, systems and methods of broadcast encryption optimization by reusing previous cryptography header generation and decryption computation results, and scalability by using clustering are set forth as preferred examples. It will be apparent to those skilled in the art that modifications, including additions and/or substitutions may be made without departing from the scope and spirit of the invention. Specific details may be omitted so as not to obscure the invention; however, the disclosure is written to enable one skilled in the art to practice the teachings herein without undue experimentation.
A content distribution network comprises at least a content distributor and one or more users or clients that receive the content. Broadcast encryption is primarily an ordered combination of processes comprising the Setup, Encryption, and Decryption processes.
According to some of the traditional broadcast encryption schemes, including the Boneh-Gentry-Waters broadcast encryption scheme, the primary output of the Setup process is a public key and private keys. The Setup process first selects a random generator gεG and a random αεZp. It computes the public parameters gi=g(α
PK=(g,g1, . . . ,gn,gn+2, . . . ,g2n,ν)εG2n+1
The private keys are defined as:
di=giγεG for iε{1, . . . , n} where i represents a certain content receiving client in the content distribution network.
The private keys di, . . . , dn are to be distributed to the content receiving clients. Each content receiving client is to receive and preserve one private key to be used in the subsequent Decryption process.
The Encryption process takes the public key PK generated and the subscriber set S to generate a encryption secret for encrypting the original content to be distributed, and a ciphertext, which is part of the cryptographic header, for distribution to the content receiving clients along with the encrypted content. The Encryption process first selects a random tεZp. The encryption secret is defined as:
K=e(gn+1,g)t
The ciphertext is defined as:
The Decryption process is executed by each of the content receiving clients in the distribution network. In a television broadcasting network, a content receiving client typically is a receiver set top box. When the content receiving client i receives the cryptographic header, which includes the ciphertext, and the encrypted content, the Decryption process takes the client private key di it received and preserved prior, and the ciphertext Hdr to re-construct the encryption secret K for decrypting the encrypted content. The encryption secret K can be computed by:
K=e(gi,C1)/e(diΠjεS,j≠ign+1−j+i,C0)
With the encryption secret K reconstructed from the private key di and ciphertext Hdr, the encrypted content is decrypted using the encryption secret K. The result is a decrypted content that is equal to the original content. Because the Encryption process takes into account the subscriber set S when encrypting the original content, only a valid subscriber within the subscriber set S can successfully decrypt the encrypted content.
Referring to
Still referring to
K=e(gi,C1)/e(diΠjεS,j≠ign+1−j+i,C0)
This computation involves two bilinear pairings, one division, and m+1 point additions where m is the number of subscribers in the subscriber set S. In accordance to an embodiment of the presently claimed invention, the Decryption process can be sped up by using a wide window point addition method. The wide window point addition method speeds up the computation of ΠjεS, j≠i gn+1−j+i by pre-computing and preserving a number of computational results on the public parameters {g, g1, . . . , gn, gn+2, . . . , g2n}. The wide window point addition method comprises the following steps:
For an exemplary demonstration of the wide window point addition method where a wide window width of two is used:
For another exemplary demonstration of the wide window point addition method where a wide window width of four is used:
To compute ΠjεS, j≠i gn+1−j+i for the reconstruction of the encryption secret K, first set S′={gn+1−j+i|jεS, j≠i}, then determine all the groups Ui={Ri∩S′}. And for all Ui≠Ø, determine the product of all elements of Ui in the pre-computed value Pi. Finally, ΠjεS, j≠ign+1−j+l=Πi=1[2n/k]uj, ujεUi, where Ui≠Ø. Because Pi can be pre-computed and preserved, the time for the subsequent reconstruction of the reconstruction of the encryption secret K is reduced, improving the performance of the Decryption process.
Still referring to
In accordance to various embodiments of the presently claimed invention, this limitation can be eliminated by using a clustering solution 130 where the content receiving clients are divided into different clusters. The division can be based on geographic locations of the content receiving clients. The clustering solution 130 comprises multiple instances of key servers for public and private keys generation, entitlement server for storing and providing the entitlement information of content receiving clients; and a clustering management server. The clustering management server contains information of each content receiving client, and the instance of key server and entitlement server that the content receiving client belongs to. By utilizing multiple instances of key server, the content distribution system has multiple sets of public keys and private keys. Each content receiving client receives the private key from its corresponding instance of key server.
With the clustering solution, the public parameters and subscriber set are generated for each instance respectively. The Encryption process is modified to generate the multiple sets of cryptography headers and encrypted contents corresponding to the instances, and distributed to the content receiving clients according to their instances that they belong to.
New instances of key servers and entitlement servers can be added to the content distribution system subsequently, thus expanding its capacity. In accordance to an embodiment of the presently claimed invention, the clustering management server provides a user management interface for configuring the mapping information between the content receiving clients and the instances of key servers and entitlement servers.
The embodiments disclosed herein may be implemented using general purpose or specialized computing devices, computer processors, or electronic circuitries including but not limited to digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA), and other programmable logic devices configured or programmed according to the teachings of the present disclosure. Computer instructions or software codes running in the general purpose or specialized computing devices, computer processors, or programmable logic devices can readily be prepared by practitioners skilled in the software or electronic art based on the teachings of the present disclosure.
In some embodiments, the present invention includes computer storage media having computer instructions or software codes stored therein which can be used to program computers or microprocessors to perform any of the processes of the present invention. The storage media can include, but are not limited to, floppy disks, optical discs, Blu-ray Disc, DVD, CD-ROMs, and magneto-optical disks, ROMs, RAMs, flash memory devices, or any type of media or devices suitable for storing instructions, codes, and/or data.
The foregoing description of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Many modifications and variations will be apparent to the practitioner skilled in the art.
The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalence.
This application is a continuation-in-part of U.S. patent application Ser. No. 12/397,635, filed Mar. 4, 2009, the disclosure of which is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5878135 | Blatter et al. | Mar 1999 | A |
6336119 | Banavar et al. | Jan 2002 | B1 |
6839436 | Garay et al. | Jan 2005 | B1 |
20050034150 | Muraoka | Feb 2005 | A1 |
20060177066 | Han et al. | Aug 2006 | A1 |
20080010242 | Jin et al. | Jan 2008 | A1 |
20080046730 | Han et al. | Feb 2008 | A1 |
20080085005 | Jung et al. | Apr 2008 | A1 |
20080110982 | Song et al. | May 2008 | A1 |
20100228972 | Wat et al. | Sep 2010 | A1 |
Entry |
---|
Boneh et al., Collusion Resistant Broadcast Encryption With Short Ciphertexts and Private Keys, Advances in Cryptology, 2005. |
Number | Date | Country | |
---|---|---|---|
20120121085 A1 | May 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 12397635 | Mar 2009 | US |
Child | 13294153 | US |