Abstract:
A method and apparatus for brokering the enablement of the communication of encrypted media programs from a plurality of independent broadcasters to a plurality of receivers is disclosed. The system makes use of a pairing key for each provided service, which is differently encrypted by a pairing server and by the broadcaster providing the service. The encrypted versions of the pairing key are decrypted in a first receiver module using information known to the pairing service but not the broadcaster and in a second receiver module using information known to the broadcaster. The pairing key is used to cryptographically bind the first and second receiver modules.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of U.S. patent application Ser. No. 13/541,492, entitled “METHOD AND APPARATUS FOR SUPPORTING MULTIPLE BROADCASTERS INDEPENDENTLY USING A SINGLE CONDITIONAL ACCESS SYSTEM,” by Ronald P. Cocchi, Gregory J. Gagnon, and Dennis R. Flaharty, filed Jul. 3, 2012, now issued as U.S. Pat. No. 9,014,375, which application is a continuation of U.S. patent application Ser. No. 11/795,272, entitled “METHOD AND APPARATUS FOR SUPPORTING MULTIPLE BROADCASTERS INDEPENDENTLY USING A SINGLE CONDITIONAL ACCESS SYSTEM,” by Ronald P. Cocchi, Gregory J. Gagnon, and Dennis R. Flaharty, filed Jul. 13, 2007, now issued as U.S. Pat. No. 8,243,925, which is a national phase application of International Patent Application No.: PCT/US2005/037197, entitled “METHOD AND APPARATUS FOR SUPPORTING MULTIPLE BROADCASTERS INDEPENDENTLY USING A SINGLE CONDITIONAL ACCESS SYSTEM,” by Ronald P. Cocchi, Gregory J. Gagnon, and Dennis R. Flaharty, filed Oct. 18, 2005, which claims benefit of U.S. Provisional Patent Application No. 60/619,663, entitled “METHOD OF SUPPORTING MULTIPLE BROADCASTERS INDEPENDENTLY USING A SINGLE CONDITIONAL ACCESS SYSTEM,” by Ronald P. Cocchi, Gregory J. Gagnon, and Dennis R. Flaharty, filed Oct. 18, 2004, all of which applications are hereby incorporated by reference herein. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    The present invention relates to systems and methods for providing conditional access to media programs, and in particular to a system and method for providing for such conditional access between multiple independent broadcasters and a plurality of customers using a single conditional access system. 
         [0004]    2. Description of the Related Art 
         [0005]    For many years, media programs such as television and radio programs have been broadcast to viewers/listeners free of charge. More recently, this free-of-charge dissemination model has been augmented with a fee-for-service and/or fee-for-view model in which paying subscribers are provided access to a greater variety and number of media programs, including video programs, audio programs and the like, by cable, satellite and terrestrial broadcasts. 
         [0006]    However, while subscriber-based services are readily available in some areas, they are not available on a world-wide basis. Further, in current media program subscription business models, subscribers are typically offered services from a small number of providers (e.g. DIRECTV or ECHOSTAR, or the approved local cable provider) each of which typically provide a large number of media channels from a variety of sources (e.g. ESPN, HBO, COURT TV, HISTORY CHANNEL). To assure that only subscribers receive the media programs, each service provider typically encrypts the program material and provides equipment necessary for the customer to decrypt them so that they can be viewed. 
         [0007]    Since they provide a large number of programs and typically at a relatively high cost, the vast majority of customers subscribe to only one of the foregoing services (e.g. DIRECTV, ECHOSTAR, or the local cable provider), but not multiple providers. It is expected that future business models will evolve to the point where customers will subscribe to more than one media provider, each of which provides a smaller number of media channels. The foregoing is especially true in areas where subscriber-based services are in their infancy, including for example, large parts of Asia, Africa, and South America. 
         [0008]    One of the roadblocks to the evolution of such services is the means by which the service provider assures that only paying customers receive their media programs. Existing conditional access systems are not compatible with each other, and it is thought to be prohibitively expensive for each provider of a limited number of media programs to produce and provide its own conditional access system to potential subscribers. Another problem is that customers would typically prefer to receive all media programs through a single device (and hence, a single conditional access system), rather than multiple such systems. Accordingly, there is a need in the art for a method and apparatus that allows multiple program providers (e.g. broadcasters) to transmit media programs to paying subscribers via a single conditional access system. The present invention satisfies that need. 
       SUMMARY OF THE INVENTION 
       [0009]    To address the requirements described above, the present invention discloses a method, apparatus, article of manufacture for brokering the enabling of communication of encrypted media programs from a plurality of independent broadcasters to a plurality of receivers, each encrypted media program decryptable by a first receiver module securely communicating with a second receiver module according to a pairing key associated with one of the plurality of receivers. In one disclosed embodiment, the method comprises the steps of transmitting a service enabling request from one of the plurality of broadcasters to a broker independent from the one of the plurality of broadcasters, the request comprising an identification of the one of the plurality of receivers; receiving a first encrypted version of the pairing key E S     1   [K p ] from the broker, the first encrypted version of the pairing key E S     1   [K p ] decryptable by first information S 1  securely stored in the first receiver module of the one of the plurality of receivers; generating a second encrypted version of the pairing key K p , the second encrypted version of the pairing key E S     2   [K p ] decryptable by second information S 2  securely stored in the second receiver module; and transmitting the first encrypted version of the pairing key E S     1   [K p ] and the second encrypted version of the pairing key E S     2   [K p ] to the one of the plurality of receivers. In another disclosed embodiment, the apparatus is described by system for brokering the enabling of communication of encrypted media programs from a plurality of independent broadcasters to a plurality of receivers, each encrypted media program decryptable by a first receiver module securely communicating with a second receiver module according to a pairing key K p  associated with one of the plurality of receivers. The system comprises a broker, for providing a first encrypted version of the pairing key E S     1   [K p ] in response to a service enabling request from one of the plurality of broadcasters, the service request having an identification of one of the plurality of receivers, wherein the first encrypted version of the pairing key E S     1   [K p ] is decryptable by first information S 1  stored in the first receiver module. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]    Referring now to the drawings in which like reference numbers represent corresponding parts throughout: 
           [0011]      FIG. 1  is a diagram illustrating a media program distribution system; 
           [0012]      FIG. 2  is a diagram of a typical subscriber station; 
           [0013]      FIG. 3  is a diagram illustrating a multiple broadcaster media program distribution system; 
           [0014]      FIGS. 4A-4D  are diagrams illustrating one embodiment of how the pairing system cooperatively operates with multiple service providers and equipment at the subscriber stations to implement a conditional access system; 
           [0015]      FIG. 5A  is a diagram illustrating one embodiment of the service provider; 
           [0016]      FIG. 5B  is a diagram illustrating an embodiment of a table stored in the pairing system; 
           [0017]      FIG. 5C  is a diagram illustrating an embodiment of a table stored by the service provider; 
           [0018]      FIG. 6  is a diagram illustrating one embodiment of the STB; and 
           [0019]      FIG. 7  is a diagram of a computer that can be used to implement selected modules. 
       
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       [0020]    In the following description, reference is made to the accompanying drawings which form a part hereof, and which is shown, by way of illustration, several embodiments of the present invention. It is understood that other embodiments may be utilized and structural changes may be made without departing from the scope of the present invention. 
         [0021]      FIG. 1  is a diagram illustrating a media program distribution system  100 . The system  100  includes a plurality of service providers (hereinafter alternatively referred to as broadcasters)  102 , including a first service provider  102 A that broadcasts media programs from a satellite broadcast facility  152 A via one or more uplink antennas and one or more satellites  156 , a second service provider  102 B, that broadcasts media programs from terrestrial broadcast facility  152 B and one or more terrestrial antennas  164 , and a third service provider  102 C that broadcasts media programs via a cable link  160 . 
         [0000]    The system  100  also comprises a plurality of subscriber stations  104 A,  104 B (alternatively referred to hereinafter as subscriber station  104 ), each providing service to one or more subscribers  112 A,  112 B (alternatively referred to hereinafter as subscribers  112 ). Each subscriber station  104 A,  104 B may include a satellite reception antenna  106 A,  106 B (alternatively referred to hereinafter as satellite reception antenna  104 ) and/or a terrestrial broadcast antenna  108 A,  108 B (alternatively referred to hereinafter as terrestrial broadcast antenna  108 ) communicatively coupled to a receiver  110 A,  110 B (alternatively referred to hereinafter as receiver  110 ), which is also known as a set top box (STB) or an integrated receiver/decoder (IRD).
 
As described above, in prior art systems, each receiver  110 A,  110 B (or at least, each conditional access system used with each receiver) is capable of receiving subscriber-based media programs from only one of the media program providers  102 . Hence, if a subscriber  112  wanted to receive media programs from more than one media program provider  102  on a subscription basis, the subscriber may need not only to have a multiple receivers  110  at the subscriber station  104 A, but also, will require multiple conditional access systems.
 
         [0022]      FIG. 2  is a diagram of a typical subscriber station  104 . Each station  104  includes at least one receiver or STB  110 , which itself includes a transport module  202  that communicates with a conditional access module (CAM)  206 . In one embodiment, the CAM  206  is a smart card that is removably communicatively coupleable to the transport module  202  and hence, the STB  110 . In another embodiment, the CAM  206  is a device such as a chip or a collection of devices that are physically integrated with the STB  110  and irremovable. To assure that only those who subscribe to the service are provided with media programs, the service providers typically encrypt the media program M with a control word CW, thus producing and encrypted program E CW [M], and transmit the encrypted media program E CW [M] and an encrypted version of the control word E[CW] to the receiver  110 . The receiver  110  receives both the encrypted program E CW [M] and the encrypted control word E[CW]. The transport module  202  analyzes the incoming data stream and passes the encrypted control E[CW] to the CAM  206 , which decrypts the control word CW and returns the decrypted control word CW to a security module  204  or similar device in the transport module  202 . The security module  204  then uses the control word CW to decrypt the encrypted media program E CW [M] to produce the media program M for presentation to the subscriber. This system assures that only those who are in possession of a valid CAM  206  can receive and decode media programs. However, it does not prevent the use of the CAM  206  in any other STB  110 . Hence, if the CAM  206  is compromised or duplicated, unauthorized access to media programs is possible. 
         [0023]      FIG. 3  is a diagram illustrating a multiple broadcaster Conditional Access Subscriber Administration System (CASAS)  200 . The MB system  200  is similar to that which is disclosed in  FIG. 1 , but includes a pairing broker  304 , which can communicate with the broadcast facilities  152  via a communications medium  302  such as the Internet. 
         [0024]      FIGS. 4A-4D  are diagrams illustrating one embodiment of how the pairing broker  304  cooperatively operates with multiple service providers  102  and equipment at the subscriber stations  104  to implement a conditional access system.  FIGS. 4A-4D  will be described in connection with and with reference to  FIGS. 5 and 6 , which illustrate one embodiment of the service provider  102  elements and STB  110  elements, respectively. 
         [0025]      FIG. 4A  begins with a potential customer  112  who has decided to subscribe a media program service offered by a service provider  102 . To do so, the subscriber contacts the service provider  102  and transmits information sufficient to identify the STB and the CAM to the service provider  102 , as shown in block  402 . In one embodiment, this information includes an STB  110  unique identifier (ID) (such as a serial number or other designation) and a CAM  206  unique identifier (CAM ID). In a preferred embodiment, this is accomplished by transmitting the information via the Internet  302  or similar network. 
         [0026]    This can be accomplished by use of a web browser implemented in a computer  512  disposed at the subscriber station  104  and a web transaction module  502  implemented at the service provider  102 . If desired, the subscriber&#39;s web browser can include the appropriate references to the URL where the request and STB ID and CAM ID should be transmitted. In one embodiment, in addition to the STB ID, the potential subscriber also transmits his/her credit card information (e.g. the account number) as well. This allows for services to be automatically billed for monthly subscription fees without further interaction. Credit card payment administration can be performed by the service provider  102  or by a third party such as PAYPAL. These functions can be performed by the subscriber administration module (SAM)  504 . The SAM  504  can also comprise or be integrated with a customer relationship management (CRM) system or systems. If access is approved (e.g. if the supplied credit card information has been verified), the subscriber administration module  504  directs the web transaction module  502  to request a pairing key K p  from the pairing broker  304 . 
         [0027]    This implementation reduces the support requirements for the service provider  102 . In other embodiments, the potential customer  112  can contact the service provider  102  via telephone or other means and provide the service request, STB ID, and CAM ID. Further, if desired, the pairing broker  304  can receive the service request (preferably via an appropriate Internet interface) and forward the request for service and the appropriate identifying information to the service provider  102 . 
         [0028]    The service provider  102  receives the service request the identifying information, as shown in block  404 . The service provider  102  then transmits an enabling service request and the STB ID to the pairing broker  304 , as shown in block  408 . In block  410 , the pairing broker  304  receives the service enabling request and the STB ID. A first encrypted version of a pairing key K p  is then provided. The pairing key K p  was generated either in block by the service provider  102 , as shown in block  406  or, preferably by the pairing broker  304 , as shown in block  406 ′. The first encrypted version of the pairing key K p  is provided so as to be decryptable using first information S 1  securely stored in a first receiver module such as the transport module  202  shown in  FIG. 6  (the first encrypted version of the pairing key K p  therefore described as E S     1   [K p ]). In one embodiment, this is accomplished by use of a secret that is known to the pairing broker  304 , but unknown to the service provider  102 . The STB IDs and related first information S 1  can be stored in a table or a database  514  in the pairing broker  304 . If desired, the related first encrypted versions of the pairing key E S     1   [K p ] can be stored as well. 
         [0029]    In block  414 , the first encrypted version of the pairing key E S     1   [K p ] is transmitted to the service provider  102 . If the pairing key K p  was generated by the pairing broker  304 , the pairing key K p  is also transmitted to the service provider  102 . One of both of the first encrypted version of the pairing key E S     1   [K p ] and the pairing key K p  can be securely transmitted to the service provider  102  via a shared secret, a private key, or a public/private key security paradigm, if desired. 
         [0030]    The foregoing process can be used to request all services from a service provider with a single pairing key K p  or repeated to request other services from the service provider  102 , with each service enabled and controlled via a different pairing key K p . For example, the service provider  102  may provide both general services (e.g. access to a number of channels as a part of a baseline fee service) and pay-per-view services (e.g. access to a particular program or set of programs on a pay-per-view basis). Therefore, if the foregoing process was undertaken to subscribe to the general services and the potential subscriber  112  desires order ahead pay per view (OPPV) services or impulse pay per view (IPPV) services as well, the foregoing process can be repeated for those services, resulting in the provision of a first encrypted version of a different pairing key for each service. The system  200  has the ability to store credit information in the security module  204 , CAM  206 , or elsewhere, and can therefore limit the amount of IPPV events the subscriber can purchase prior to requesting additional credits. Finally, the potential subscriber  112  can repeat this process for each service provider  102  from which they wish to receive service. 
         [0031]    Although the pairing broker  304  need not generate or store the pairing keys K p , it may be desirable to do so.  FIG. 5B  is a diagram showing a table that might be used to store and relate the STB ID to first information S 1 , a service provider  102  identifier (BDCST ID), and pairing keys for general services, IPPV, and multiple OPPV services. 
         [0000]    In block  420 , the service provider  102  receives the first encrypted version of the pairing key K p , and generates a second encrypted version of the pairing key K p  such that it is decryptable by second information S 2  securely stored in a second receiver module such as the conditional access module  206  (the second encrypted version of the pairing key K p  therefore described as E S     2   [K p ]). 
         [0032]    The service provider  102  can store a table or database relating STB IDs and the pairing keys K p  for each of the provided services.  FIG. 5C  is an example of how such information may be stored. Note that the BRDCST ID column is not necessary in this case, because the identity of the service provider  102  is inherently known. 
         [0033]    In block  422 , the service provider  102  transmits an entitlement control message (ECM) or an entitlement management message (EMM) to the subscriber station. The ECM is transmitted to the STB  110  in response to a subscriber request for access to general media programs from the service provider  102 , while the EMM is transmitted in response to a subscriber request for a specific program (e.g. an impulse or order ahead pay-per-view). The ECM/EMM includes the first encrypted version of the applicable pairing key E S     1   [K p ], the second encrypted version of the pairing key E S     2   [K p ], and the ID of the service provider  102  (BRDCST ID) which is providing the services related to the pairing key K p . This transmission can be accomplished via the same system used to transmit the media program M itself, or a different communication system such as the Internet or a public switched telephone network (PSTN) or cellphone network. In block  424 , the transport module  304  receives the first encrypted version of the pairing key E S     1   [K p ] and the second encrypted version of the pairing key E S     2   [K p ], and the service provider ID. The second encrypted version of the pairing key E S     2   [K p ] is provided to the conditional access module  310 , where it is received, decrypted (using the second information S 2 ) to obtain the pairing key K p  which is stored (along with a reference to the service provider ID (BRDCST ID) from which the pairing key K p  was received), as shown in blocks  428  and  430 . Similarly, the first encrypted version of the pairing key E S     1   [K p ] is decrypted and stored in the transport module  304  (also along with a reference to the service provider ID from which the pairing key K p  was received), as shown in block  432 .  FIG. 6  shows an exemplary embodiment of how the data relating services, broadcasters, and pairing keys K p  might be stored in the transport module and the conditional access module. 
         [0034]    Thereafter, the pairing key K p  is used to encrypt communications between the conditional access module  206  and the transport module  202 . Henceforward, the conditional access module  206  cannot be used a different STB  110 , although if desired, more than one STB  110  can be provided to a customer, each having the same first information the conditional access module to be used with different STBs  110  in the same household. 
         [0035]    To begin service, the broadcast module  506  and/or the broadcast headend  516  encrypts media programs M  510  according to a control word (CW), encrypts the control word (Cw) itself, and broadcasts a program stream comprising the encrypted program material E CW [M] and the encrypted control word E[CW] to the STBs  100 , as shown in blocks  450 ,  452  and  454 . The program stream may also comprise program guide information from the program guide module  508 . 
         [0036]    The transport module  202  in the STB  110  receives the program stream, separates out the packets of information by channel (typically according to a packet ID), and provides the encrypted control word E[CW] to the conditional access module  206 . The conditional access module  206  receives the encrypted control word E[CW] decrypts it to recover the control word (CW), encrypts the control word (CW) with the pairing key K p , and provides the encrypted pairing key E K     p   [CW] to the transport module  202 , as shown in blocks  460 - 466 . Using an STB application  602  and media kernel  604 , the transport module  202  decrypts the encrypted control word E K     p   [CW] using the pairing key K p  thus recovering the control word (CW), as shown in block  472 , and uses the decrypted control word (CW) to decrypt the encrypted media program E CW [M] to produce the media program M, as shown in block  474 . 
         [0037]    The foregoing system can be used to modify or change the provision of services from the service provider  102  as well. This can be accomplished by the service provider  102  deleting, adding, or modifying the pairing keys K p  in cooperation with the pairing broker  304  in essentially the same way as described above. Such modification can occur at the subscriber&#39;s behest (e.g. the subscriber desires either more, less, or different services than previously), or that of the service provider  102  (e.g. if the offered services change or the subscriber&#39;s credit card is no longer valid). 
         [0038]    The modules described above can be implemented as one or more software modules comprising instructions being performed by one or more special or general purpose processors, or may be implemented with hardware modules having dedicated circuitry, or with both hardware and software modules. In one embodiment, for example, the pairing broker  304  is implemented by a pairing server, and the program guide module  508 , broadcast module  506 , subscriber administration module  504  and web transaction module  502  are all implemented as servers, the transport module  202  and security module  204  are implemented in a secure, tamperproof electronic circuit, and the conditional access module is implemented on a smart card. 
         [0039]      FIG. 7  illustrates an exemplary computer system  700  that could be used to implement the servers or the subscriber computer  512  of the present invention. The computer  702  comprises a processor  704  and a memory, such as random access memory (RAM)  706 . The computer  702  is operatively coupled to a display  722 , which presents images such as windows to the user on a graphical user interface  718 B. The computer system  702  may be coupled to other devices, such as a keyboard  714 , a mouse device  716 , a printer, etc. Of course, those skilled in the art will recognize that any combination of the above components, or any number of different components, peripherals, and other devices, may be used with the computer  702 . 
         [0040]    Generally, the computer  702  operates under control of an operating system  708  stored in the memory  706 , and interfaces with the user to accept inputs and commands and to present results through a graphical user interface (GUI) module  718 A. Although the GUI module  718 A is depicted as a separate module, the instructions performing the GUI functions can be resident or distributed in the operating system  708 , the computer program  710 , or implemented with special purpose memory and processors. The computer  702  also implements a compiler  712  which allows an application program  710  written in a programming language such as COBOL, C++, FORTRAN, or other language to be translated into processor  704  readable code. After completion, the application  710  accesses and manipulates data stored in the memory  706  of the computer  702  using the relationships and logic that was generated using the compiler  712 . The computer  702  also optionally comprises an external communication device such as a modem, satellite link, Ethernet card, or other device for communicating with other computers. 
         [0041]    In one embodiment, instructions implementing the operating system  108 , the computer program  710 , and the compiler  712  are tangibly embodied in a computer-readable medium, e.g., data storage device  720 , which could include one or more fixed or removable data storage devices, such as a zip drive, floppy disc drive  724 , hard drive, CD-ROM drive, tape drive, etc. Further, the operating system  708  and the computer program  710  are comprised of instructions which, when read and executed by the computer  702 , causes the computer  702  to perform the steps necessary to implement and/or use the present invention. Computer program  710  and/or operating instructions may also be tangibly embodied in memory  706  and/or data communications devices  730 , thereby making a computer program product or article of manufacture according to the invention. As such, the terms “article of manufacture,” “program storage device” and “computer program product” as used herein are intended to encompass a computer program accessible from any computer readable device or media. 
         [0042]    Those skilled in the art will recognize many modifications may be made to this configuration without departing from the scope of the present invention. For example, those skilled in the art will recognize that any combination of the above components, or any number of different components, peripherals, and other devices, may be used with the present invention. 
       CONCLUSION 
       [0043]    This concludes the description of the preferred embodiments of the present invention. The foregoing description of the preferred embodiment of the invention has been presented for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is intended that the scope of the invention be limited not by this detailed description, but rather by the claims appended hereto. The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention. Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.