EP1486071A2 - Elementary stream partial encryption - Google Patents
Elementary stream partial encryptionInfo
- Publication number
- EP1486071A2 EP1486071A2 EP02792388A EP02792388A EP1486071A2 EP 1486071 A2 EP1486071 A2 EP 1486071A2 EP 02792388 A EP02792388 A EP 02792388A EP 02792388 A EP02792388 A EP 02792388A EP 1486071 A2 EP1486071 A2 EP 1486071A2
- Authority
- EP
- European Patent Office
- Prior art keywords
- encrypted
- packets
- television signal
- pid
- encryption
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 230000036961 partial effect Effects 0.000 title description 39
- 238000000034 method Methods 0.000 claims description 153
- 238000001824 photoionisation detection Methods 0.000 claims description 70
- 230000009977 dual effect Effects 0.000 claims description 59
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000001914 filtration Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 8
- 230000004048 modification Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000013507 mapping Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 206010036618 Premenstrual syndrome Diseases 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 3
- 238000003780 insertion Methods 0.000 description 3
- 230000037431 insertion Effects 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000002045 lasting effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002085 persistent effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000011888 foil Substances 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000013138 pruning Methods 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000003442 weekly effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4405—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
- H04N21/44055—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption by partially decrypting, e.g. decrypting a video stream that has been partially encrypted
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption
- H04N21/23476—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving video stream encryption by partially encrypting, e.g. encrypting the ending portion of a movie
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2362—Generation or processing of Service Information [SI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/266—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
- H04N21/26606—Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel for generating or managing entitlement messages, e.g. Entitlement Control Message [ECM] or Entitlement Management Message [EMM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/434—Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
- H04N21/4345—Extraction or processing of SI, e.g. extracting service information from an MPEG stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/462—Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
- H04N21/4623—Processing of entitlement messages, e.g. ECM [Entitlement Control Message] or EMM [Entitlement Management Message]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/835—Generation of protective data, e.g. certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/10—Adaptations for transmission by electrical cable
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
Definitions
- This invention relates generally to the field of encryption systems. More particularly, this invention relates to systems, methods and apparatus for providing partial encryption and decryption of digital of television signals.
- Television is used to deliver entertainment and education to viewers.
- the source material (audio, video, etc.) is multiplexed into a combined signal which is then used to modulate a carrier.
- This carrier is commonly known as a channel.
- a typical channel can carry one analog program, one or two high definition (HD) digital program(s), or several (e.g. nine) standard definition digital programs.)
- these channels correspond to government assigned frequencies and are distributed over the air.
- the program is delivered to a receiver that has a tuner that pulls the signal from the air and delivers it to a demodulator, which in turn provides video to a display and audio to speakers.
- the modulated channels are carried over a cable; There may also be an in-band or out- of-band feed of a program guide indicating what programs are available and the associated tuning information.
- the number of cable channels is finite and limited by equipment/cable bandwidth. Cable distribution systems require a significant capital investment and are expensive to upgrade.
- CA systems are used to control availability of programming in content delivery systems such as cable systems.
- CA systems come as matched sets - one part is integrated into the cable system headend and encrypts premium content, the other part provides decryption and is built into the set-top boxes (STB) installed in user's homes.
- STB set-top boxes
- Several CA systems are used in the cable industry including those provided by NDS (Newport Beach, CA), Motorola (Schaumberg, IL) and Scientific Atlanta (Atlanta, GA). This matched set aspect of CA systems has the effect that the "legacy" vendor is locked in as the supplier of additional STBs.
- Full dual carriage means that transmission is duplicated for each encrypted program - once for each type of CA encryption to be used.
- the headend is enhanced to provide each form of CA simultaneously.
- Legacy STBs should not be impacted and should continue to perform their function despite any change.
- full dual carriage often comes at an unpalatable price because of the bandwidth impact, thus reducing the number of unique programs available.
- the number of premium channels suffers so that the number of options available to the viewer are limited and the value that can be provided by the cable operator is restricted.
- FIGURE 1 A conventional cable system arrangement is depicted in FIGURE 1.
- the cable operator processes audio/video (A/V) content 14 with CA technology from manufacturer A (system A) using CA encryption equipment 18 compliant with system A at the cable system -headend 22.
- the encrypted A/V content along with system information (SI) 26 and program specific information (PSI) 27 is multiplexed together and transmitted over the cable system 32 to a user's STB 36.
- STB 36 incorporates decrypting CA equipment from system A (manufacturer A) 40 that decrypts the A/V content.
- the decrypted AV content can then be supplied to a television set 44 for viewing by the user.
- digital program streams are broken into packets for transmission.
- Packets for each component of a program (video, audio, auxiliary data, etc.) are tagged with a packet identifier or PID.
- PID packet identifier
- These packet streams for each component of all programs carried within a channel are aggregated into one composite stream. Additional packets are also included to provide decryption keys and other overhead information. Otherwise unused bandwidth is filled with null packets.
- Bandwidth budgets are usually adjusted to utilize about 95% of the available channel bandwidth.
- Overhead information usually includes guide data describing what programs are available and how to locate the associated channels and components.
- This guide data is also known as system information or SI.
- SI may be delivered to the STB in-band (part of the data encoded within a channel) or out-of-band (using a special channel dedicated to the purpose). Electronically delivered SI may be partially duplicated in more traditional forms - grids published in newspapers and magazines.
- FIGURE 1 is a block diagram of a conventional conditional access cable system.
- FIGURE 2 is a block diagram of a system consistent with one embodiment of the present invention in which dual encrypted audio is transmitted along with clear video.
- FIGURE 3 is a block diagram of a system consistent with an embodiment of the present invention in which portions of programming are dual encrypted according to a time slice mechanism.
- FIGURE 4 is a flowchart of a dual encryption process consistent with certain embodiments of the present invention.
- FIGURE 5 is a flow chart of a decryption process consistent with certain embodiments of the present invention.
- FIGURE 6 is a block diagram of a system consistent with an embodiment of the present invention in which portions of programming are dual encrypted on a packet basis.
- FIGURE 7 is a flow chart of a dual encryption process consistent with certain embodiments of the present invention.
- FIGURE 8 is a flow chart of a decryption process consistent with certain embodiments of the present invention.
- FIGURE 9 is a block diagram of a system consistent with an embodiment of the present invention in which system information is encrypted and programming is sent in the clear.
- FIGURE 10 is a block diagram of a generic system consistent with various embodiments of the present invention.
- FIGURE 11 is a block diagram of a first embodiment of implementation of an encryption system consistent with embodiments of the present invention in a cable system headend.
- FIGURE 12 is a block diagram of a second embodiment of implementation of an encryption system consistent with embodiments of the present invention in a cable system headend.
- FIGURE 13 is a flow chart of an overall encryption process used to implement certain embodiments of the present invention in a cable system headend.
- FIGURE 14 is a block diagram of a first embodiment of a set-top box implementation of a decoding system consistent with embodiments of the present invention.
- FIGURE 15 is a block diagram of a second embodiment of implementation of a decoding system consistent with embodiments of the present invention in a cable system STB.
- FIGURE 16 is a block diagram of a third embodiment of implementation of a decoding system consistent with embodiments of the present invention in a cable system STB.
- FIGURE 17 illustrates the PID remapping process carried out in one embodiment of a set-top box PID re-mapper.
- FIGURE 18 is a block diagram of an exemplary decoder chip that can be utilized in a television set-top box consistent with the present invention.
- Modern digital cable networks generally use CA systems that fully encrypt digital audio and video to make programming inaccessible except to those who have properly subscribed. Such encryption is designed to thwart hackers and non- subscribers from receiving programming that has not been paid for. However, as cable operators wish to provide their subscribers with set-top boxes from any of several manufacturers, they are frustrated by the need to transmit multiple copies of a single program encrypted with multiple encryption technologies compliant with the CA systems of each STB manufacturer.
- Certain of the implementations of partial dual encryption described herein utilize an additional (secondary) PID for each duplicated component. These secondary PIDs are used to tag packets that carry duplicated content with an additional encryption method.
- the PSI is enhanced to convey information about the existence these new PIDs in such a way that inserted PIDs are ignored by legacy STBs but can be easily extracted by new STBs.
- Some implementations of partial dual encryption involve duplicating only certain packets tagged with a given PID. Methods for selecting which packets to encrypt are detailed hereinafter.
- the original (i.e. legacy) PID continues to tag the packets encrypted with legacy encryption as well as other packets sent in the clear.
- the new PID is used to tag packets encrypted by the second encryption method. Packets with the secondary PID shadow the encrypted packets tagged with the primary PID.
- the packets making up the encrypted pairs can occur in either order but, in the preferred implementation, maintain sequence with the clear portion of the PID stream.
- the decoder located in the set-top box can readily determine which packets are to be decrypted using the decryption method associated with that set-top box, as will be clear upon consideration of the following description.
- the processes used to manipulate PIDs will be described later in greater detail.
- the encryption techniques described herein can be broadly categorized (according to one categorization) into three basic variations - encrypting just a major portion (i.e. audio), encrypting just the SI, and encrypting just selected packets.
- each of the encryption techniques used in the embodiments disclosed herein seek to encrypt portions of the an A/V signal or associated information while leaving other portions of the A/V signal in the clear to conserve bandwidth. Bandwidth can be conserved because the same clear portion can be sent to all varieties of set-top boxes.
- Various methods are used to select the portions of information to be encrypted.
- each of the partial dual encryption schemes described herein can be used as a single partial encryption scheme without departing from embodiments of the present invention.
- the various embodiments of the invention use several processes, alone or in combination, to send substantial portions of content in the clear while encrypting only a small amount of information required to correctly reproduce the content. Therefore the amount of information transmitted that is uniquely encrypted in a particular scrambling scheme is a small percentage of the content, as opposed to the entire replication of each desired program stream.
- encryption system A will be considered the legacy system throughout.
- each participating CA system is operated independently. Each is orthogonal to the other. Key sharing in the headend is not required since each system encrypts its own patents. Different key epochs may be used by each CA system. For example, packets encrypted with Motorola's proprietary encryption can use fast changing encryption keys using the embedded security ASIC, while packets encrypted with NDS' smart card based system use slightly slower changing keys. This embodiment works equally well for Scientific Atlanta and Motorola legacy encryption.
- system 100 one embodiment of a system that reduces the need for additional bandwidth to provide multiple carriage is illustrated as system 100.
- the system takes advantage of the fact that viewing television programming without audio is usually undesirable. While there are exceptions (e.g., adult programming, some sporting events, etc.), the typical viewer is unlikely to accept routine viewing of television programming without being able to hear the audio.
- the video signal 104 is provided in the clear (unencrypted) while the clear audio 106 is provided to multiple CA systems for broadcast over the cable network.
- clear audio 106 is provided to an encryption system 118 that encrypts audio data using encryption system A (encryption system A will be considered the legacy system throughout this document).
- clear audio 106 is provided to encryption system 124 that encrypts the audio data using encryption system B.
- Clear video is then multiplexed along with encrypted audio from 118 (Audio A) and encrypted audio from 124 (Audio B), system information 128 and program specific information 129.
- the video, system information, program specific information, Audio A and Audio B are all delivered to set-top boxes 36 and 136.
- legacy STB 36 the video is displayed and the encrypted audio is decrypted at CA system A 40 for play on television set 44.
- new STB 136 the video is displayed and the encrypted audio is decrypted at CA system B 140 for play on television set 144.
- Audio has a relatively low bandwidth requirement compared with a complete A/V program (or even just the video portion).
- the current maximum bit rate for stereophonic audio at 384 Kb/second is approximately 10% of a 3.8Mb/second television program.
- Both legacy and new set-top boxes can function in a normal manner receiving video in the clear and decrypting the audio in the same manner used for fully decrypting encrypted A/V content. If the user has not subscribed to the programming encrypted according to the above scheme, at best the user can only view the video without an ability to hear the audio. For enhanced security over the video, it possible to employ other embodiments of the invention (as will be described later) here as well. (For example, the SI may be scrambled to make it more difficult for a non-authorized set-top box to tune to the video portion of the program. ) Unauthorized set-top boxes that have not been modified by a hacker, will blank the video as a result of receipt of the encrypted audio.
- Authorized set-top boxes receive Entitlement Control Messages (ECM) that are used to get access criteria and descrambling keys.
- ECM Entitlement Control Messages
- the set-top box attempts to apply the keys to video as well as the audio. Since the video is not scrambled, it simply passes through the set-top boxes' descrambler unaffected. The set-top boxes do not care that the video is in-the-clear.
- the un-modified and un-subscribed set-top boxes behave as being un-authorized for the scrambled audio as well as the clear video.
- the video, as well as the audio which was actually scrambled will be blanked.
- An on-screen display may appear on the TV stating that the viewer needs to subscribe to programming. This desirably totally inhibits the casual viewer from both hearing and viewing the content.
- the encrypted audio is transmitted as digitized packets over the A/V channel.
- Two (or more) audio streams are transmitted encrypted according to the two (or more) encryption systems in use by the system's set-top boxes.
- SI (system information) data are transmitted from the cable system's headend 122 that identifies the particular channel where the audio can be found using a transmitted Service Identifier to locate the audio. This is accomplished by assigning the audio for system A is a first packet identifier (PID) and assigning the audio for system B a second packet identifier (PID).
- PSI program specific information
- the SI can be separately delivered to both legacy and non-legacy set-top boxes. It is possible to send SI information so that the legacy and non-legacy set- top boxes operate essentially without interference.
- the VCT virtual channel table
- the VCT would state that the desired program, e.g. HBO referenced as program number 1001 , is on Service ID "1001" and that the VCT access control bit is set.
- the network information table delivered to the non- legacy STB would indicate that the Service ID "1001 " is at frequency 1234.
- the following exemplary program association Table PSI data are sent to both legacy and non-legacy set-top boxes (in MPEG data structure format):
- the program association table (PAT) is changed to reference an additional program map table (PMT) for each program.
- PMT program map table
- Each program in this embodiment has two program numbers in the PAT.
- program number 1 and program number 1001 are the same program except that they will reference different audio PIDs and CA descriptors.
- Changes in the system to create multiple PMTs and to multiplex new PAT and PMT information with the data stream can be made to appropriately modify the cable system headend equipment. Again, those skilled in the art will understand how to adapt these messages to other partial encryption schemes described herein.
- An advantage of this approach is that no special hardware or software is required for headend or for legacy and non-legacy set-top boxes to deliver audio that is both legacy and non-legacy encrypted using this scheme.
- This technique deters the user from use of premium programming which has not been paid for by rendering it inaudible, but a hacker may attempt to tune the video.
- the mechanisms employed in other encryption techniques consistent with the present invention can be employed simultaneously, if desired. Since closed captioning is generally transmitted as a part of the video data, the user can still obtain readable audio information in conjunction with clear video. Thus, although adequate for some applications, the present technique alone may not provide adequate protection in all scenarios.
- video packets containing closed captioning information as a part of the payload can additionally be scrambled.
- only the video may be dual encrypted with separate PIDs assigned to each set of encrypted video. While this may provide a more secure encryption for general programming (since video may be more important than audio), the amount of bandwidth savings compared with full dual carriage is only approximately ten percent, since only the audio is shared amongst all the set-top boxes. However, this approach might be used for certain content, e.g. adult and sports, and help reduce the bandwidth overhead for that content while the audio encryption approach may be used for other content types.
- DSS Digital Satellite Service
- SCID service channel identifier
- time slicing is referred to herein as time slicing and is illustrated in FIGURE 3 as system 200.
- a portion of each program is encrypted on a time dependent basis in a manner that disrupts viewing of the program unless the user has paid for the programming.
- This embodiment of the invention can be implemented as partially encrypted video and clear audio, clear video and partially encrypted audio or partially encrypted video and audio.
- the duration of the time slice that is encrypted, taken as a percentage of the total time, can be selected to meet any suitable desired balance of bandwidth usage, security against hackers.
- less than 100 percent of the content is encrypted to produce a desired partial encryption. .
- the following example details partially encrypted video and audio.
- a time slice dual encryption scheme consistent with an embodiment of the invention is illustrated.
- program 1 having primary video PID 101 and primary audio PID 201
- packets having PID 101 and PID201 are encrypted using encryption system A, while the others representing the other programs are sent in the clear.
- secondary PIDs are also assigned to both the video and the audio.
- the secondary PIDs are PID 111 for video and PID 211 for audio respectively for program 1.
- the packets with the secondary PIDs are encrypted using encryption system B during the first time period.
- the next eight time periods are sent in the clear.
- packets having any of the above four PIDs are again encrypted followed by the next eight time periods being sent in the clear.
- the encrypted periods for each of programs one through nine are encrypted using encryption system A.
- Legacy STB equipment will accept such partially encrypted A/V data streams passing unencrypted packets and decrypting encrypted packets transparently.
- a specified program is assigned both primary PIDs (e.g., for program 1 , video PID 101 and audio PID 201 ) and a secondary PID (e.g., for program 1 , video PID 111 and audio PID 211 ) to carry the elementary data streams for a given premium channel.
- system 200 generally depicts the functionality of the cable system headend 222 wherein N channels of clear video 204 at the headend 222 are provided to an intelligent switch 216 (operating under control of a programmed processor) which routes packets that are to be transmitted in the clear to be assigned a primary PID at 220. Packets that are to be encrypted are routed to both conditional access system A encrypter 218 and to conditional access system B encrypter 224. Once encrypted, these encrypted packets from 218 and 224 are assigned primary or secondary PIDs respectively at 220. System information from 228 is multiplexed or combined with the clear packets, the system A encrypted packets and the system B encrypted packets and broadcast over the cable system 32.
- the period of the time slice is 100 milli-seconds, then as shown in TABLE 1, there are on average one and a fraction encrypted periods totaling 111 milli-seconds each second for all nine-programs. If the period is 50 milli-seconds, then there are on average two and a fraction encrypted periods totaling 111 milli-seconds.
- a non-subscribing box attempting to tune video would obtain a very poor image if it could maintain any sort of image lock and the audio would be garbled.
- the PSI for a partially scrambled stream is handled slightly differently from the dual audio encryption example above.
- the same SI and PAT PSI information can be sent to both legacy and non-legacy set-top boxes.
- the difference lies with the PMT PSI information.
- the legacy set-top box parses the PMT PSI and obtains the primary video and audio PIDs as before.
- the non-legacy set-top box obtains the primary PIDs like the legacy set-top box but must look at the CA descriptors in the PMT PSI to see if the stream is partially scrambled.
- the secondary PID is scrambled specifically for a particular CA provider, consequently it makes sense to use the CA descriptor specific to a particular CA provider to signal that PID.
- the invention can allow more than two CA providers to co-exist by allowing more than one secondary PID.
- the secondary PID shall be unique to a particular CA provider.
- the set-top box know the CA ID for the CA it has, and can check all CA descriptors for the relevant one for it.
- the preferred embodiment uses separate CA descriptors.
- the secondary PID is placed in the CA PID field. This allows headend processing equipment to "see” the PID without having to parse the private data field of the CA descriptor.
- a dummy private data value can be sent.
- CA Descriptor for CA Provider #2 (Secondary PID)
- New or non-legacy STB 236 receives the SI 228. It receives PSI 229 and uses the PMT to identify the primary and secondary PID, called out in the second CA descriptor, associated with the program being viewed.
- the packets encrypted under CA system A are discarded and the packets encrypted under CA system B with the secondary PID are decrypted by CA system B 240 and inserted into the clear data stream for decoding and display on television set 244.
- FIGURE 4 illustrates one process for encoding at the cable system headend that can be used to implement an embodiment of the present invention wherein CA system A is the legacy system and CA system B is the new system to be introduced.
- the clear packet C
- the packet is passed on to be inserted into the output stream at 254.
- the packet is passed for encryption to both packet encryption process A 258 and packet encryption process B 262.
- the encrypted packets from encryption process A at 258 (EA) are passed on to 254 for insertion into the output stream.
- the encrypted packets from encryption process B at 262 (EB) are assigned a secondary PID at 264 for insertion into the output stream at 254. This is repeated for all packets in the program.
- FIGURE 5 illustrates a process used in the STB 236 having the newly introduced CA system B for decrypting and decoding the received data stream containing C, EA and EB packets having primary and secondary PIDs as described.
- a packet is received at 272
- it is inspected to see if it has a the primary PID of interest. If not, the packet is examined to see if it has the secondary PID of interest at 274. If the packet has neither the primary or secondary PID, it is ignored or dropped at 278. Any intervening packets between the EA and EB packets that are not the primary or secondary PID are discarded.
- a decoder can receive multiple EA or EB in a row before receiving the replacement matched EA or EB packet. Also, just as easy to detect for secondary packets that come before and not after the primary packet. It is also possible to design a circuit where either case can happen - the secondary packet can before or after the primary packet. If the packet has the primary PID of interest, the packet is examined at 284 to determine if it is encrypted. If not, the packet (C) is passed directly to the decoder at 288 for decoding. If the packet is encrypted at 284, it is deemed to be an EA packet and is dropped or ignored at 278. In some implementations, the primary packet's encryption does not get checked at 284. Rather, its simple position relative to the secondary packet can be checked at 284 to identify it for replacement.
- the packet has the secondary PID at 274, the PID is remapped to the primary PID at 292 (or equivalent ⁇ , the primary PID is remapped to the secondary PID value).
- the packet is then decrypted at 296 and sent to the packet decoder at 288 for decoding.
- the order of 292 and 296 or the order of 272 and 274 can be reversed.
- 284 can be replaced with a check of primary packet position with respect to the secondary packet. Other variations will occur to those skilled in the art.
- Legacy STB 36 operating under the encryption system A totally ignores the secondary PID packets. Packets with the primary PID are decrypted, if necessary, and passed to the decoder without decryption if they are clear packets. Thus, a so called “legacy" STB operating under encryption system A will properly decrypt and decode the partially encrypted data stream associated with the primary PID and ignore the secondary PID without modification. STBs operating under the encryption system B are programmed to ignore all encrypted packets associated with the primary PID and to use the encrypted packets transmitted with the secondary PID associated with a particular channel.
- each dual partially encrypted program has two sets of PIDs associated therewith. If, as described, the encryption is carried out on a period-by-period basis, for the system shown with an appropriate time slice interval, the picture will be essentially unviewable on a STB with neither decryption.
- the SI and PSI can be modified for inclusion of a second set of CA descriptor information.
- Legacy set-top boxes may not be able to tolerate unknown CA descriptors. Consequently, alternatively, in the set-top box, it may be possible to "hard code" offsets from the legacy CA PIDs for both the content PIDs and/or the SI/PSI and ECM PIDs.
- parallel PSI may be sent.
- an auxiliary PAT can be delivered on PID 1000 instead of PID 0 for the non-legacy set-top boxes. It can reference auxiliary PMTs not found in the legacy PAT.
- the auxiliary PMTs can contain the non-legacy CA descriptors. Since auxiliary PMTs would not be known to the legacy set-top boxes, there would not be any interoperation issue.
- the video and audio decoder are adapted to listen to two PIDs each (a primary and a secondary PID) instead of just one. There may be one or more secondary shadow PIDs, depending on the number of non-legacy CA systems in use, however a specific set-top box only listens to one of the secondary PIDs as appropriate for the CA method being used by that specific STB. In addition, ideally the encrypted packets from the PID carrying the mostly clear video or audio are ignored.
- time slice encryption technique could be applied to just the video or the audio.
- the video may be time slice encrypted while the audio is dual encrypted as in the earlier embodiment.
- the time slice technique may be applied to multiple programs concurrently. The number of programs that encrypted during a period of time is mainly an issue of bandwidth allocation, and although the example discusses scrambling a single program at a time, the invention is not limited by that. Other combinations of encryption techniques described in this document will also occur to those skilled in the art.
- M th & N packet encryption Another embodiment consistent with the present invention is referred to herein as M th & N packet encryption.
- M represents the number of packets between the start of an encryption event.
- Each packet to be dual partially encrypted is duplicated and processed using CA system A 218 and CA system B 224 as in the previous embodiment.
- the difference in operation between this embodiment and the time slicing technique previously is in the operation of switch 216 to effect the selection of packets to encrypt under control of a programmed processor.
- the illustrated example encrypts only the video, but audio could also be encrypted according to this or another arrangement. If applied to just the video, audio may be dual scrambled or time slice encrypted as in earlier embodiments. Alternatively, if applied to just the audio, the video may be time sliced as in the earlier embodiment.
- Another partial encryption method consistent with embodiments of the present invention uses a data structure as a basis for encryption.
- one convenient data structure to use for encryption is an MPEG video frame. This is illustrated (again with video only) in TABLE 3 below in which every tenth video frame is encrypted. In this embodiment, each program's ten frame encryption cycle is distinct from each other channel, but this should not be considered limiting.
- F1 represents frame number 1
- F2 represents frame number 2 and so on.
- each encrypted program has two sets of PIDs associated therewith. If, as described, the encryption is carried out on a period-by-period basis, for the system shown, the picture will be essentially unviewable. For a nine program system at 30 frames per second as depicted, approximately three frames per second will be encrypted. For viewers who are not entitled to view the program, their STB will be unable to capture much more than an occasional frozen frame as the STB constantly attempts to synchronize and recover. Viewers who have subscribed to the programming will be able to readily view the programming.
- the bandwidth cost for such an encryption arrangement depends upon the frequency with which the encryption is applied. In the above example, an extra factor of 1/9 of data are transmitted for each program. In this example, approximately one program's worth of bandwidth is used.
- random frames may be selected. Choosing random frames, in the video case, would help guarantee that all frame types would be affected - intra-coded frames (I frames), predictive- coded (P frames), Bi-directional-coded (B frames) and DC frames.
- a variation of the invention it may be possible to encrypt fewer packets to achieve an acceptable level of security. That is, perhaps in a system of nine programs, only one frame per second may need to be encrypted to achieve acceptable levels of security. In such a system, the overhead becomes one encrypted period per second per program or approximately 1/30 of data transmitted in overhead. This level of overhead is a dramatic improvement over the 50% loss of bandwidth associated with full dual carriage of encryption under two encryption systems.
- Substantial efficiency in bandwidth utilization can be achieved by use of a selective packet-by-packet dual encryption technique.
- packets are selected for encryption based upon their importance to the proper decoding of the audio and/or video of the program content.
- This embodiment can reduce the bandwidth requirement compared with full dual carriage of encrypted content by only scrambling a small fraction of the packets.
- Clear packets are shared between the two (or more) dual carriage PIDs. In one preferred embodiment, as will be disclosed, less that about one percent of the total content bandwidth is used.
- clear program content packets can be received by both legacy and new set-top boxes.
- encrypted packets are dual carried and processed by the respective set-top boxes with the appropriate CA.
- Each CA system is orthogonal.
- Key sharing is not required and different key epochs may be used by each CA system.
- a system with Motorola's proprietary encryption can generate fast changing encryption keys using the embedded security ASIC, while an NDS smart card based system can generate slightly slower changing keys. This embodiment works equally well for Scientific Atlanta and Motorola legacy encryption.
- FIGURE 6 a block diagram of a system consistent with an embodiment of the present invention in which portions of programming are dual encrypted on a packet-by-packet basis is illustrated as system 300.
- packets of each program are dual encrypted using, for example, legacy CA system A and CA system B.
- the packets that are encrypted are selected based upon their importance to the proper decoding of the video and/or audio stream.
- the cable system headend 322 selects A/V content 304 packets at a packet selector 316 for encryption.
- Packets selected for encryption are chosen so that their non-receipt (by a non-paying decoder) would severely affect the real-time decoding of a program, and any possible post processing of recorded content. That is, only critical packets are encrypted. For the video and audio, this can be accomplished by encrypting "start of frame" transport stream packets containing PES (packetized elementary stream) headers and other headers as part of the payload, since without this information, the STB decoder cannot decompress the MPEG compressed data.
- PES packetized elementary stream
- MPEG2 streams identify "start of frame” packets with the "Packet Unit Start Indicator" in the transport header.
- packets carrying a payload that contains a group of pictures header or a video sequence header can be used to effect the present scrambling technique.
- MPEG Motion Pictures Expert Group
- the transport stream packets containing a PES header can be selected for encryption at selector 316 and dual encrypted by both the CA system A encrypter 318 and the CA system B encrypter 324.
- Packets to be dual partially encrypted are duplicated and the PIDs of duplicate packets encrypted by encrypter 324 are remapped at 330 to a secondary PID as in the previous embodiment.
- the remaining packets are passed in the clear.
- the clear packets, system A encrypted packets, system B encrypted packets and system information 328 are multiplexed together for broadcast over the cable system 32.
- the legacy STB 36 receives clear data and data encrypted under CA encryption system A and transparently passes unencrypted data combined with data decrypted by CA decryption A 40 to its decoder.
- the program is assigned to both a primary and a secondary PID.
- the clear packets with the primary PID are received and passed to the decoder.
- the encrypted packets with the primary PID are discarded.
- Encrypted packets with the secondary PID are decrypted and then recombined with the data stream (e.g., by remapping the packets to the primary PID) for decoding.
- each sample is known as a frame and the sample rate is typically 30 frames per second. If the samples are encoded to fit into 3.8 Mbps, each frame would occupy 127K bits of bandwidth. This data is sliced for MPEG transport into packets of 188 bytes with the first packet(s) of each frame containing the header used for instructions to process the body of the frame data. Dual encrypting just the first header packet (1504 additional bits) requires only 1.2% (1504/127K) of additional bandwidth. For high definition (19 Mbps) streams the percentage is even less.
- transport stream packets containing a PES header are the preferred target for encryption according to the present embodiment. These packets contain sequence headers, sequence extension headers, picture headers, quantization and other decode tables that also fall within the same packet. If these packets cannot be decoded (i.e., by a hacker attempting to view unauthorized programming without paying the subscription charges), not even small portions of the program can be viewed. In general, any attempt to tune to the program will likely be met with a blank screen and no audio whatsoever since known decoder integrated circuits use the PES header to sync up to an elementary stream such as video and audio in real-time. By encrypting the PES header, the decoding engine in an un-authorized set-top box cannot even get started.
- Post processing attacks are thwarted by critical dynamically changing information in the packet containing the PES header.
- Other critical or important packets or content elements may also be identified for encryption that could severely inhibit unauthorized viewing without departing from the present invention.
- MPEG intra-coded or I frame picture packets could be encrypted to inhibit viewing of the video portion of the program.
- the present invention may be used in any combination with other embodiments, e.g. scrambling the packet containing the PES header as well as random, M th and N, or data structure encryption of the other packets.
- Critical packet encryption may be applied to video encryption, while a different method may be applied to audio. Audio could be dual encrypted, for instance. Other variations within the scope of the present invention will occur to those skilled in the art.
- FIGURE 7 is a flow chart depicting an exemplary encoding process such as that which would be used at headend 322 of FIGURE 6.
- the packet is examined to determine if it meets a selection criteria for encryption. In the preferred embodiment, this selection criteria is the presence of a PES header as a portion of the packet payload. If not, the packet is passed as a clear unencrypted packet (C) for insertion into the output data stream at 354. If the packet meets the criteria, it is encrypted under CA encryption system A at 358 to produce an encrypted packet EA. The packet is also duplicated and encrypted under CA encryption system B at 362 to produce an encrypted packet. This encrypted packet is mapped to a secondary PID at 366 to produce an encrypted packet EB.
- C clear unencrypted packet
- Encrypted packets EA and EB are inserted into the output data stream along with clear packets C at 354.
- the EA and EB packets are inserted at the location in the data stream where the single original packet was obtained for encryption so that the sequencing of the data remains essentially the same.
- FIGURE 8 (which is similar to that of FIGURE 5) can be utilized to decrypt and decode the program.
- a packet is received having either the primary or the secondary PID at 370, a determination is made as to whether the packet is clear (C) or encrypted under system A (EA) at 370 or encrypted under system B (EB) at 374. If the packet is clear, it is passed directly to the decoder 378.
- the relative position of the primary packet, before or after, to the secondary packet may be used to signal a primary packet for replacement in the stream. A check of the scrambling state of the primary packet is not specifically required.
- the packet is dropped at 380. If the packet is an EA packet, it is dropped at 380. If the packet is an EB packet, it is decrypted at 384. At this point, the secondary PID packets and/or the primary PID packets are remapped to the same PID at 388. The decrypted and clear packets are decoded at 378.
- the dual partial encryption arrangement described above can greatly reduce the bandwidth requirements over that required for full dual carriage. Encrypting the PES header information can be effective in securing video and audio content, while allowing two or more CA systems to independently "co-exist" on the same cable system. Legacy system A set-top boxes are un-affected, and system B set-top boxes require only an minor hardware, firmware, or software enhancement to listen for two PIDs each for video and audio. Each type of STB, legacy and non-legacy, retains its intrinsic CA methodology. Headend modification is limited to selecting content for encryption, introducing the second encrypter, and providing a means to mix the combination into a composite output stream.
- the headend equipment is configured to opportunistically scramble as much of the content as the bandwidth will allow, and not just the critical PES headers. These additional scrambled packets would be either in the PES payload or other packets throughout the video/audio frame to provide even further security of the content.
- system 400 one embodiment of a system that minimizes the need for any additional bandwidth is illustrated as system 400.
- the system takes advantage of the fact that system information (SI) 428 is required for a set-top box to tune programming.
- SI system information
- a cable system SI is sent in the out-of-band, a frequency set aside from the normal viewing channels. It is possible to also sent it in-band. If sent in-band, the SI 428 is replicated and sent with each stream.
- SI system information
- each version of the SI can be independently scrambled as illustrated using conditional access system A 418 and conditional access system B 424.
- the clear video 404 and clear audio 406 are delivered in the clear, but in order to understand how to find them, the SI information 428 is needed.
- the SI delivers information about channel names and program guide information such as program names and start times, etc. ... as well as the frequency tuning information for each channel. Digital channels are multiplexed together and delivered at particular frequencies.
- the SI information is encrypted, and only made available to authorized set-top boxes. If the SI information is not received to allow knowledge of the location of all the A/V frequencies in the plant, then tuning cannot take place.
- the frequencies for the channels can be offset from the standard frequencies. Also, the frequencies can be dynamically changed on a daily, weekly or other periodic or random basis.
- a typical cable headend may have roughly 30 frequencies in use. Each frequency is typically chosen to avoid interference between, among other things, each other, terrestrial broadcast signals, and frequencies used by clocks of the receiving equipment. Each channel has at least 1 independent alternate frequency that if used would not could not cause interference, or cause the frequency of adjoining channels to be changed. The actual possible frequency maps are therefore 2 30 or 1.07 x 10 9 . However, a hacker might simply quickly try both frequencies on each tune attempt for each of the 30 channels or so.
- the hacker's set- top box can then parse the PSI 429 to learn about the individual PIDs that make up a program.
- the hacker will have difficulty learning that "program 1" is "CNN”, and that "program 5" is "TNN”, and so on. That information is sent with the SI, which as stated above is scrambled and otherwise unavailable to the un-authorized set-top box.
- a persistent hacker might yet figure those out by selecting each one and examining the content delivered. So in order to frustrate the identification of channels, the assignment of a program within a single stream can move around, e.g.
- program 2 and program 5 swapped in the example above so that "program 1" is “TNN” and "program 5" is “CNN”. Also, it is possible to move programs to entirely different streams with entirely new program groupings.
- a typical digital cable headend can deliver 250 programs of content including music. Each can be uniquely tuned. The possible combinations for re-ordering are 250! (factorial). Without a map of the content provided by either the delivered SI or by a hacker, the user is faced with randomly selecting each program in a stream to see if it is the one interest.
- the video signal 404 and the audio signal 406 are provided in the clear (unencrypted) while the SI 428 is provided to multiple CA systems for delivery over the cable network.
- clear SI 428 is provided to an encryption system 428 that encrypts SI data using encryption system A.
- clear SI 428 is provided to encryption system 424 that encrypts the SI data using encryption system B.
- Clear video and audio are then multiplexed along with encrypted SI from 418 (SI A) and encrypted audio from 424 (SI B) out of band system information 428.
- the video, the audio, system information A and system information B are all delivered to set-top boxes 36 and 436.
- the encrypted SI is decrypted at CA system A 40 to provide tuning information to the set-top box.
- the set-top box tunes a particular program to allow it to be displayed on television set 44.
- the encrypted SI is decrypted at CA system B 440 to provide tuning information for the set-top box, allow a particular program to be tuned and displayed on television set 444.
- SI decryption can be performed in software or can be aided by hardware. For example, legacy Motorola set-top boxes have an ability to descramble the SI delivered in the Motorola out-of-band using a hardware decrypter built into the decoder IC chip.
- a determined hacker can potentially use a spectrum analyzer on the coax cable to learn where the A/V channels are located. Also, it may be possible for the hacker to program a set-top box to auto-scan the frequency band to learn where the A/V channels are - a relatively slow process. If the A/V channel frequencies changed dynamically, then that could foil the hackers, since they would need to be constantly analyzing or scanning the band. Also, the program numbers and assigned PIDs can vary. However, dynamically changing frequencies, program numbers, and PIDs might create operational difficulties to a service provider, e.g. cable operator.
- This system 500 has a cable system headend 522 with clear video 504, clear audio 506, SI 528, and PSI 529 any of which can be selectively switched through an intelligent processor controlled switch 518, which also serves to assign PIDs (in embodiments requiring PID assignment or reassignment), to conditional access system A 504 or conditional access system B 524 or passed in the clear to the cable system 32.
- PIDs in embodiments requiring PID assignment or reassignment
- the program or SI encrypted according to the legacy CA system A can be properly decoded by STB 36.
- the CA system B encrypted information is understood by STBs 536 and decrypted and decoded accordingly, as described previously.
- the PID mapping concepts described above can be generally applied to the dual partial encryption techniques described herein, where needed.
- the general concept is that a data stream of packets is manipulated to duplicate packets selected for encryption. Those packets are duplicated and encrypted under two distinct encryption methods. The duplicated packets are assigned separate PIDs (one of which matches the legacy CA PID used for clear content) and reinserted in the location of the original selected packet in the data stream for transmission over the cable system.
- PIDs one of which matches the legacy CA PID used for clear content
- a secondary PID identifies the packets that are encrypted under the new encryption system.
- MPEG packets utilize a continuity counter to maintain the appropriate sequence of the packets.
- this continuity counter should be properly maintained during creation of the packetized data stream at the headend. This is accomplished by assuring that packets with each PID are assigned continuity counters sequentially in a normal manner. Thus, packets with the secondary PID will carry a separate continuity counter from those of the primary PID. This is illustrated below in simplified form where PID 025 is the primary PID and PID 125 is the secondary PID, E represents an encrypted packet, C represents a clear packet, and the end number represents a continuity counter.
- packets with PID 025 are seen to have their own sequence of continuity counters (04, 05, 06, 07, 08, 09, ).
- the packets with secondary PID 125 also have their own sequence of continuity counters (11 , 12, ).
- the PIDs can be manipulated in any number of ways to correctly associate the encrypted packets with secondary PID with the correct program.
- the packet headers of an input stream segment illustrated below:
- the primary PIDs (025) in the input stream are replaced with the secondary PID (125) for the clear packets (C).
- the primary PID and secondary PID are retained, but the continuity counters are swapped.
- the stream of packets can now be properly decrypted and decoded without errors caused by loss of continuity using the secondary PID.
- Other methods for manipulation of the PIDs e.g. mapping the PID (125) on the scrambled legacy packet to a NOP PID (all ones) or other PID value not decoded, and the continuity counters can also be used in embodiments consistent with the present invention.
- the primary and secondary PIDs are conveyed to the STBs in the program map table (PMT) transmitted as a part of the program system information (PSI) data stream.
- PMT program map table
- PSI program system information
- the existence of a secondary PID can be established to be ignored by the STB operating under CA encryption system A (the "legacy" system), but new STBs operating under CA encryption system B are programmed to recognize that secondary PIDs are used to convey the encrypted part of the program associated with the primary PID.
- the set-top boxes are alerted to the fact that this encryption scheme is being used by the presence of a CA descriptor in the elementary PID "for loop" of the PMT. There typically would be a CA descriptor for the video elementary PID "for loop", and another one in the audio elementary PID "for loop”.
- the CA descriptor uses a Private Data Byte to identify the CA_PID as either the ECM PID or the secondary PID used for partial scrambling, thus setting up the STB operating under system B to look for both primary and secondary PIDs associated with a single program. Since the PID field in the transport header is thirteen bits in length, there are 2 13 or 8,192 PIDs available for use, any spare PIDs can be utilized for the secondary PIDs as required.
- a new PID may be assigned to tag ECM data used in the second encryption technique.
- Each PID number assigned can be noted as a user defined stream type to prevent disrupting operation of a legacy STB.
- MPEG defines a reserved block of such numbers for user defined data stream types.
- FIGURES 2, 3, 6, 9 and 10 are somewhat conceptual in nature and are used to explain the overall ideas and concepts associated with the various embodiments of the present invention.
- a significant real world issue to contend with is providing a cost effective implementation of the various partial encryption methods within existing legacy headend equipment at established cable providers. Taking two of the primary legacy cable systems as examples, the following describes how the above techniques can be implemented at a cable headend.
- a HITS Headend In The Sky
- This feed provides aggregated digitized content that is supplied to cable providers and is received by a receiver / descrambler / scrambler system 604 such as the Motorola Integrated Receiver Transcoder (IRT) models IRT 1000 and IRT2000, and Motorola Modular Processing System (MPS).
- IRT Motorola Integrated Receiver Transcoder
- MPS Motorola Modular Processing System
- a clear stream of digitized television data can be obtained from the satellite descrambler functional block 606 of the receiver /descrambler/ scrambler 604.
- packet selector / duplicator 610 This new block 610 may be implemented as a programmed processor or may be otherwise implemented in hardware, software or a combination thereof.
- Packet selector / duplicator 610 selects packets that are to be dual encrypted under any of the above partial dual encryption methods. Those packets are then duplicated with new PIDs so that they can be later identified for encryption. For example, if packets at the input of 610 associated with a particular program have PID A, then packet selector / duplicator 610 identifies packets to be encrypted and duplicates those packets and remaps them to PIDs B and C respectively, so that they can be identified later for encryption under two different systems.
- the duplicate packets are inserted into the data stream adjacent one another in the location of the originally duplicated packet now with PID C so that they remain in the same order originally presented (except that there are two packets where one previously resided in the data stream).
- the new CA system to be added is NDS encryption.
- PID A will represent clear packets
- PID B will represent NDS encrypted packets
- PID C will represent Motorola encrypted packets.
- the packets having PID B may be encrypted under the NDS encryption at this point in 610 or may be encrypted later.
- the packets with PIDs B and C are then returned to the system 604 where packets with PID C are encrypted under Motorola encryption at cable scrambler 612 as instructed by the control system 614 associated with the Motorola equipment.
- the output stream from cable scrambler 612 then proceeds to another new device - PID remapper and scrambler 620, which receives the output stream from 612 and now remaps the remaining packets with PID A to PID C and encrypts the PID B packets under the NDS encryption algorithm under control of control system 624.
- the output stream at 626 has clear unencrypted packets with PID C and selected packets which have been duplicated and encrypted under the Motorola encryption system with PID C along with encrypted packets under the NDS encryption system with PID B.
- This stream is then modulated (e.g., Quadrature Amplitude Modulated and RF modulated) for distribution over the cable system.
- the preferred embodiment maps the unencrypted packets on PID A to match the scrambled packets on PID C because the audio and video PIDs called out in legacy program specific information (PSI) is correct that way.
- PSI legacy program specific information
- the control computer, the scrambler, and legacy set-top boxes only know about PID C.
- the scrambled packets on PID C could be mapped back to PID A, but this would likely mean editing the PSI, that was automatically generated, to map the PID numbers from PID C back to PID A in the PID remapper and scrambler 620.
- the PID remapper and scrambler 620 may also be used to demultiplex PSI information, modify it to reflect the addition of the NDS encryption (through the use of CA descriptors in the PMT) and multiplex the modified PSI information back into the data stream.
- the ECMs to support NDS encryption may also be inserted into the data stream at PID remapper and scrambler 620 (or could be inserted by packet selector / duplicator 610).
- NDS encryption or another encryption system
- packets are duplicated and PIDs are remapped in the data stream from the satellite descrambler.
- the remapped PIDs are then used to identify packets that are to be scrambled under each CA system.
- the clear PID is then remapped so that both clear and encrypted packets in the legacy system share the same PID (or PIDs).
- PID remapping as in 620 and packet selection and duplication as in 610 can be implemented using a programmed processor or using custom or semi-custom integrated circuitry such as an application specific integrated circuit or a programmable logic device or field programmable gate array. Other implementations are also possible without departing from the present invention.
- FIGURE 12 depicts a similar equipment configuration such as that used in implementing the partial dual encryption of the present invention in a Scientific Atlanta based cable headend.
- the HITS feed or similar is received at IRD 704 which incorporates a satellite descrambler 706.
- This may be a Motorola IRT or MPS with only the satellite descrambler function enabled.
- the output of the satellite descrambler 706 again provides a clear data stream that can be manipulated by a new packet selector / duplicator 710 which selects packets to be encrypted, duplicates them and maps the PIDs of the duplicate packets to new PIDs.
- packets to remain in the clear are assigned PID A
- packets to be encrypted under the new system are assigned PID B
- packets to be encrypted under the Scientific Atlanta encryption system are assigned PID C
- the packets with PID B may be encrypted at this point under the NDS encryption system.
- the stream of packets is then sent to a multiplexer 712 (e.g., a Scientific Atlanta multiplexer) where the packets having PID C are encrypted under the Scientific Atlanta encryption system at 714 under control of control system 718 associated with multiplexer 712.
- the stream of data is then supplied internal to multiplexer 712 to a QAM modulator 720.
- the QAM modulated signal at the output of multiplexer 712 is provided to a new processor system 724 where the QAM modulated signal is demodulated at a QAM demodulator 730 and the clear PID A packets are remapped to PID C at PID remapper 734 under control of a control system 738.
- Encryption under the NDS encryption algorithm can also be carried out here rather than in 710.
- the data stream with remapped PIDs and dual partial encryption is then QAM and RF modulated at 742 for distribution over the cable system.
- the PID remapper and scrambler 734 may also be used to demultiplex PSI information, modify it to reflect the addition of the NDS encryption (adding the CA descriptors to the PMT) and multiplex the modified PSI information back into the data stream.
- the ECMs to support NDS encryption may also be inserted into the data stream at PID remapper and scrambler 734 (or could be inserted by packet selector / duplicator 710).
- PID remapping and or scrambling as in 734 along with QAM demodulation and QAM modulation as in 730 and 742 respectively, and packet selection and duplication as in 710 can be implemented using a programmed processor or using custom or semi-custom integrated circuitry such as an application specific integrated circuit or a programmable logic device or field programmable gate array. Other implementations are also possible without departing from the present invention.
- the above embodiments of the present invention allow legacy scrambling equipment to scramble only the packets desired in an elementary stream instead of the entire elementary stream.
- the scrambling of certain packets of an elementary stream is accomplished by using a PID number for packets that are not going to be scrambled, e.g., PID A.
- Packets that will be scrambled will be placed on PID C.
- the scrambling equipment will scramble the packets on PID C (the ones that have been selected for scrambling). After the scrambling has taken place, the unscrambled packets have the PID number mapped to the same as the scrambled packet - PID A becomes PID C.
- the legacy set-top boxes will receive an elementary stream with both scrambled and un-scrambled packets.
- the packets in these embodiments are handled as a stream.
- the entire stream is sent to the legacy scrambling equipment for scrambling. This keeps all of the packets in exact time synchronous order. If packets were extracted from a stream and sent to the legacy scrambling equipment, time jitter might be introduced.
- the present embodiment avoids that problem by keeping all the packets in a stream.
- the embodiment does not require cooperation from the legacy scrambling equipment provider because that equipment is not involved in the remapping of packets- from PID A to PID C. This remapping is preferable because the PID called out by the PSI generated by the legacy scrambling system does not need to change.
- the legacy system knows about PID C, but not PID A.
- the entire elementary stream to be scrambled by the legacy scrambling equipment is found on a single PID that the scrambling system has been instructed to scramble.
- NDS NDS
- the technique described above involves the process generally described as 800 in FIGURE 13.
- a feed is received at 806 which is descrambled as it is received at 810 to produce a clear data stream of packets.
- packets are selected according to the desired partial dual encryption technique (e.g., audio only, packets containing PES header, etc.).
- the selected packets are duplicated and the duplicate pairs are remapped to two new PIDs (e.g., PID B and PID C).
- the duplicated packets are then encrypted based upon PID (that is, PID C is encrypted according to legacy encryption and PID B is encrypted according to the new encryption system) at 822.
- the clear packets e.g., PID A
- PID C is encrypted according to legacy encryption
- PID B is encrypted according to the new encryption system
- the order in which some of the elements of the process of FIGURE 13 are carried out can vary according to the particular legacy system being modified to accommodate the particular dual encryption arrangement being used. For example, encryption under a new encryption system can be carried out either at the time of duplication or later at the time of remapping the legacy packets, as illustrated in FIGURE 11 and 12. Additionally, various demodulation and re- modulation operations can be carried out as needed to accommodate the particular legacy system at hand (not shown in FIGURE 13).
- FIGURE 14 One such implementation is illustrated in FIGURE 14.
- packets from a tuner and demodulator 904 are provided to a decoder circuit 908's demultiplexer 910.
- the packets are buffered into a memory 912 (e.g., using a unified memory architecture) and processed by the STB's main CPU 916 using software stored in ROM memory 920.
- Selected PIDs can be stripped from the incoming transport via the STB's PID filter, decrypted and buffered in SDRAM, similar to the initial processing required in preparation for transfer to an HDD in a PVR application.
- the host CPU 916 can then "manually" filter the buffered data in SDRAM for elimination of the packets containing unneeded PIDs. There are some obvious side effects to this process.
- the host overhead is estimated to be about 1 % of the bandwidth of the CPU. In the worst case, this is equivalent to 40K bytes/Second for a 15 Mbit/S video stream. This reduction is possible since at most only 4 bytes of each packet is evaluated and the location is on 188 byte intervals so the intervening data does not have to be considered.
- Each packet header in SDRAM can therefore be directly accessed through simple memory pointer manipulation.
- Packets are cached in blocks and evaluated en masse to reduce task switching of the host. This would eliminate an interrupt to other tasks upon the reception of each new packet. This may produce a increased latency for starting decode of a stream upon channel change to allow time for cache fill. This may be negligible depending upon the allocated SDRAM cache buffer size.
- the host filtered packets in the SDRAM buffer are then transferred to the A ⁇ Queue through existing hardware DMA processes and mimics a PVR implementation.
- the filtered packets are then provided to the decoder 922 for decoding.
- FIGURE 15 A second technique for implementation in a set-top box is illustrated in FIGURE 15. Since RISC processor A ⁇ / decoder module in 930 processes the partial transport PIDs and strips/concatenates for decode, the firmware within decoder IC 930 can be altered to exclude individual packets in a partial transport stream based upon criteria in each packet header. Alternatively, the demultiplexer 910 can be designed to exclude the packets. Legacy scrambled packet(s) pass through the CA module still encrypted.
- the pruning of the legacy packet in effect accomplishes the merging of a single, clear stream into the header strip and video queue.
- NDS new encryption algorithm
- the PID remapping is carried out either within a circuit such as an ASIC, Field Programmable Gate Array (FPGA), or a programmable logic device (PLD) 938 or other custom designed circuit placed between the tuner and demodulator 904 and the decoder IC 908.
- the decoder IC 908 can be modified to implement the PID remapping within demultiplexer 940. In either case, the legacy encrypted packets are dropped and the non-legacy packets re-mapped either in circuit 938 or demultiplexer 940.
- This third technique can be implemented in one embodiment using the PLD depicted in FIGURE 17.
- This implementation assumes that there will be not be more than one encrypted packet of a particular PID appearing in a row, thus, the implementation could be modified to accommodate bursts of encrypted packets such as with the M and N th encryption arrangement described above (as will be explained later).
- the input stream passes through a PID identifier 950 which serves to demultiplex the input stream based upon PID. Primary PID packets are checked for continuity at 958. If a continuity error is detected, the error is noted and the counter is reset at 960.
- the original input packet stream contains packets tagged with many PIDs.
- the PID identifier 950 separates packets with the two PIDs of interest (primary and secondary PIDs) from all other packets. This capability can be scaled to process multiple PID pairs. These other packets are bypassed directly to the revised output stream. This processing results in a three or four byte clocking delay.
- Packets with the secondary PID are routed by the PID identifier 950 to a continuity count checker 954 which verifies sequence integrity for this PID. Any errors are noted at 956, but specific handling of errors is not relevant to understanding the present invention.
- the packet's continuity value is preserved for use in checking the sequence of packets to follow.
- a corresponding continuity check 958 is done for packets with the primary PID using the independent primary counter, and again any errors are noted at 960.
- the secondary packet is checked for a secondary flag at 962.
- This Boolean indicator is used to remember if a secondary packet has been processed since the last clear packet. More than one secondary packet between clear packets is an error in this embodiment and is noted at 964. Presence of a secondary packet is remembered by setting the secondary flag at 966.
- the continuity counter of the secondary packet is changed at 968 to fit into the sequence of the clear packets. Data for this substitution comes from the value used to verify continuity of the primary stream at 958.
- the revised packet is sent out from 968 and merged into the revised stream forming the output stream.
- packets with primary PIDs After packets with primary PIDs have had their continuity checked at 958, they are differentiated at 970 by the scrambling flags in the header. If the packet is scrambled, the primary flag is queried at 974. This primary flag Boolean indicator is used to remember if a primary encrypted packet has been processed since the last clear packet. More than one encrypted primary packet between clear packets is an error in this embodiment and is noted at 976 before the packet is discarded at 978. Presence of a encrypted primary packet is remembered by setting the primary flag at 980. If there is no downstream consumer for the primary encrypted packet, it can be discarded at 978. In some cases it may be necessary for the packet to continue on (in which case its continuity counter can use the discarded secondary continuity value).
- the primary PID scramble test at 970 detects a clear packet, the state of the secondary and primary flags is tested at 984. Valid conditions are neither set and both set, since encrypted packets should come in matched pairs. A sequence of one without the other should be noted as an error at 988. However, the order of appearance is inconsequential in this embodiment. It should be noted that there may be other ways to flag a primary packet for deletion other than the scrambling bits in the transport header, e.g. the transport_priority bit. Also, it is possible not to use any bits what-so-ever, e.g. using the primary packet's simple positional information, before or after the secondary packet, as an indicator for replacement.
- Clear packets with the primary PID then have their PID value changed at 992 to the secondary PID before being output in the revised output stream.
- the secondary PID packets can be remapped to the primary PID value.
- the content can be decoded when the decoder is provided with the correct PID for decoding the content (whether the primary or secondary PID). Presence of a clear packet also clears the primary and secondary Boolean flags.
- the secondary packet can be inserted adjoining the primary packet to be replaced even when a series of primary packets are tagged for replacement.
- it may facilitate headend partial scrambling if multiple encrypted packets can be inserted into the stream without the intervening secondary packets.
- the use of primary and secondary flags can be replaced with a counter matching test function.
- a secondary encrypted packet counter can be incremented.
- a primary encrypted packet counter can be incremented.
- Element 984 can be replaced with a comparison of the primary and secondary encrypted packet counters to assure that the same number of encrypted packets are received in both the primary and secondary paths. Instead of clearing flags at 992, the counters are cleared. Using this variation, multiple encrypted packets may be consecutively received and the number received are compared to monitor the integrity of the data stream. Other variations will occur to those skilled in the art.
- FIGURE 17 illustrates a block diagram for such a decoder chip where the functions already provided in the commercial chip are essentially unchanged. Normally, commercial decoder chips expect there to be a one-to-one correspondence between the PIDs and program components (e.g. , audio or video).
- program components e.g. , audio or video
- the decoder illustrated in FIGURE 18 permits multiple PIDs to be programmed into the decoder via a connection to the STB central processor so that both primary and secondary PIDs can be handled for main audio, main video and a secondary video used for picture-in-picture (PiP) functions.
- the raw data stream is received by a Packet sorter 1002 that provides a function similar to that described in connection with FIGURE 17 above to demultiplex the stream of packets based upon PID.
- the decoder of FIGURE 18 carries out the PID sorting function of 1002 using hard wired logic circuitry rather than programmed software. Program guide and stream navigation information is output for use by an STB's main processor, for example.
- the packets associated with the main audio program are buffered in a FIFO 1006, decrypted in a decrypter 1010 and then buffered at 1014 for retrieval by an MPEG audio decoder 1018 as needed. Decoded MPEG audio is then provided as an output from the decoder.
- packets associated with the main video program are buffered in a FIFO 1024, decrypted in a decrypter 1028 and then buffered at 1032 for retrieval by an MPEG video decoder 1036 as needed.
- Decoded MPEG video for the main channel is then provided to a compositer 1040 and then provided as an output from the decoder.
- packets associated with picture-in-picture video are buffered in a FIFO 1044, decrypted in a decrypter 1048 and then buffered at 1052 for retrieval by an MPEG video decoder 1056 as needed.
- Decoded MPEG video for the picture-in-picture channel is then provided to the compositer 1040 where it is combined with the main channel video and then provided as a decoded video output from the decoder.
- Other packets not associated with the main or picture-in-picture channel are discarded.
- other functions may be incorporated in the decoder chip or deleted without departing from embodiments of the present invention.
- the critical packet encryption can be used in any combination with SI encryption, M th an N, random encryption, time slice and other techniques to further enhance security.
- SI encryption SI encryption
- M th an N random encryption
- time slice time slice
- other techniques to further enhance security.
- the amount of encryption might depend on whether the content was a regular program or premium (such as a pay- per-view or VOD), whether it was an adult program or a regular movie, and the security level that the various cable operators feel comfortable operating.
- VOD pay- per-view
- Those skilled in the art will appreciate that many other combinations are possible to further enhance the security of the encryption without departing from the present invention.
- the present invention has been described in terms of a digital A/V system using MPEG 2 coding.
- the various packet names and protocol specifically discussed is related the MPEG 2 coding and decoding.
- the concepts disclosed and claimed herein are not to be construed in such a limited scope.
- the same or analogous techniques can be used in any digital cable system without limitation to MPEG 2 protocols.
- the present techniques can be used in any other suitable content delivery scenario including, but not limited to, terrestrial broadcast based content delivery systems, Internet based content delivery, satellite based content delivery systems such as, for example, the Digital Satellite Service (DSS) such as that used in the DirecTVTM system, as well as package media (e.g. CDs and DVDs).
- DSS Digital Satellite Service
- CDs and DVDs package media
- the present invention has been described in terms of decoding partially encrypted television programs using a television set-top box.
- the present decoding mechanism can equally be implemented within a television receiver without need for an STB, or music player such as an MP3 player. Such embodiments are considered equivalent.
- the present invention has been described in terms of the use of the encryption techniques described to provide a mechanism for dual partial encryption of a television program, these partial encryption techniques could be used as a single encryption technique or for multiple encryption under more than two encryption systems without limitation. More than two encryption systems would be accommodated with additional duplicated packets that are encrypted. Alternatively, the encryption key for one of the duplicated packets may be shared amongst the multiple encryption systems.
- the present inventions can be utilized for single or dual encryption of other content including, but not limited to content for download over the Internet or other network, music content, packaged media content as well as other types of information content. Such content may be played on any number of playback devices including but not limited to personal digital assistants (PDAs), personal computers, personal music players, audio systems, audio / video systems, etc. without departing from the present invention.
- PDAs personal digital assistants
- the present invention can be implemented using a programmed processor executing programming instructions that are broadly described above in flow chart form that can be stored on any suitable electronic storage medium or transmitted over any suitable electronic communication medium.
- a programmed processor executing programming instructions that are broadly described above in flow chart form that can be stored on any suitable electronic storage medium or transmitted over any suitable electronic communication medium.
- the processes described above can be implemented in any number of variations and in many suitable programming languages without departing from the present invention.
- the order of certain operations carried out can often be varied, additional operations can be added or operations can be deleted without departing from the invention. Error trapping can be added and/or enhanced and variations can be made in user interface and information presentation without departing from the present invention. Such variations are contemplated and considered equivalent.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
Description
Claims
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US37914 | 2002-01-02 | ||
US10/037,914 US7124303B2 (en) | 2001-06-06 | 2002-01-02 | Elementary stream partial encryption |
CA 2405865 CA2405865C (en) | 2001-10-26 | 2002-10-01 | Elementary stream partial encryption |
CA2405865 | 2002-10-01 | ||
PCT/US2002/040051 WO2003061173A2 (en) | 2002-01-02 | 2002-12-13 | Elementary stream partial encryption |
Publications (2)
Publication Number | Publication Date |
---|---|
EP1486071A2 true EP1486071A2 (en) | 2004-12-15 |
EP1486071A4 EP1486071A4 (en) | 2009-09-30 |
Family
ID=25682868
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
EP02792388A Ceased EP1486071A4 (en) | 2002-01-02 | 2002-12-13 | Elementary stream partial encryption |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP1486071A4 (en) |
JP (1) | JP4446743B2 (en) |
KR (1) | KR101004196B1 (en) |
CN (1) | CN1633809B (en) |
AU (1) | AU2002357846A1 (en) |
MX (1) | MXPA04006400A (en) |
WO (1) | WO2003061173A2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2341708A1 (en) | 2010-01-05 | 2011-07-06 | Irdeto Access B.V. | Broadcasting variants of digital signals in a conditional access system |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8472792B2 (en) | 2003-12-08 | 2013-06-25 | Divx, Llc | Multimedia distribution system |
US7519274B2 (en) | 2003-12-08 | 2009-04-14 | Divx, Inc. | File format for multiple track digital data |
US7515710B2 (en) | 2006-03-14 | 2009-04-07 | Divx, Inc. | Federated digital rights management scheme including trusted systems |
JP4175381B2 (en) * | 2006-05-10 | 2008-11-05 | ソニー株式会社 | Information processing system and method, information processing apparatus and method, and program |
ES2935410T3 (en) | 2007-01-05 | 2023-03-06 | Divx Llc | Video distribution system including progressive play |
EP2119230B1 (en) | 2007-01-11 | 2013-07-03 | NDS Limited | Processing video content |
US8385545B2 (en) | 2007-07-27 | 2013-02-26 | Howard G. Pinder | Secure content key distribution using multiple distinct methods |
KR20100106327A (en) | 2007-11-16 | 2010-10-01 | 디브이엑스, 인크. | Hierarchical and reduced index structures for multimedia files |
CN101562813B (en) | 2009-05-12 | 2012-01-11 | 中兴通讯股份有限公司 | Method for implementing real-time data service, real-time data service system and mobile terminal |
WO2011068668A1 (en) | 2009-12-04 | 2011-06-09 | Divx, Llc | Elementary bitstream cryptographic material transport systems and methods |
GB2501031B (en) * | 2010-12-26 | 2017-11-15 | Lg Electronics Inc | Method for transmitting broadcast service, method for receiving the broadcasting service, and apparatus for receiving the broadcasting service |
US8649514B2 (en) * | 2010-12-28 | 2014-02-11 | Sony Corporation | On-demand switched content encryption |
US8914534B2 (en) | 2011-01-05 | 2014-12-16 | Sonic Ip, Inc. | Systems and methods for adaptive bitrate streaming of media stored in matroska container files using hypertext transfer protocol |
US9467708B2 (en) | 2011-08-30 | 2016-10-11 | Sonic Ip, Inc. | Selection of resolutions for seamless resolution switching of multimedia content |
US8787570B2 (en) | 2011-08-31 | 2014-07-22 | Sonic Ip, Inc. | Systems and methods for automatically genenrating top level index files |
US8909922B2 (en) | 2011-09-01 | 2014-12-09 | Sonic Ip, Inc. | Systems and methods for playing back alternative streams of protected content protected using common cryptographic information |
CN103873887A (en) * | 2012-12-13 | 2014-06-18 | 航天信息股份有限公司 | Request program playing method, device and system |
US9313510B2 (en) | 2012-12-31 | 2016-04-12 | Sonic Ip, Inc. | Use of objective quality measures of streamed content to reduce streaming bandwidth |
US9191457B2 (en) | 2012-12-31 | 2015-11-17 | Sonic Ip, Inc. | Systems, methods, and media for controlling delivery of content |
CN107111477B (en) | 2015-01-06 | 2021-05-14 | 帝威视有限公司 | System and method for encoding content and sharing content between devices |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5420866A (en) * | 1994-03-29 | 1995-05-30 | Scientific-Atlanta, Inc. | Methods for providing conditional access information to decoders in a packet-based multiplexed communications system |
WO1995028058A1 (en) * | 1994-04-06 | 1995-10-19 | France Telecom | Method for broadcasting gradual conditional access programmes with data flow separation, and receiver therefor |
EP0696141A2 (en) * | 1994-08-01 | 1996-02-07 | NOKIA TECHNOLOGY GmbH | System for controlling different conditional access systems sending video, audio and data services and a receiver to be used in the system |
WO1998008341A1 (en) * | 1996-08-20 | 1998-02-26 | France Telecom | Method and equipment for allocating to a television programme already conditionally accessed a complementary conditional access |
US5796829A (en) * | 1994-09-09 | 1998-08-18 | The Titan Corporation | Conditional access system |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0200310B1 (en) * | 1985-05-01 | 1993-08-11 | General Instrument Corporation | Direct broadcast satellite signal transmission system |
US5247575A (en) * | 1988-08-16 | 1993-09-21 | Sprague Peter J | Information distribution system |
US5018197A (en) * | 1990-07-30 | 1991-05-21 | Zenith Electronics Corporation | Secure video decoder system |
US5666293A (en) * | 1994-05-27 | 1997-09-09 | Bell Atlantic Network Services, Inc. | Downloading operating system software through a broadcast channel |
US5629981A (en) * | 1994-07-29 | 1997-05-13 | Texas Instruments Incorporated | Information management and security system |
US5742680A (en) * | 1995-11-13 | 1998-04-21 | E Star, Inc. | Set top box for receiving and decryption and descrambling a plurality of satellite television signals |
US5894516A (en) * | 1996-07-10 | 1999-04-13 | Ncr Corporation | Broadcast software distribution |
US5915018A (en) * | 1996-11-05 | 1999-06-22 | Intel Corporation | Key management system for DVD copyright management |
US6229895B1 (en) * | 1999-03-12 | 2001-05-08 | Diva Systems Corp. | Secure distribution of video on-demand |
CN1163073C (en) * | 1999-10-06 | 2004-08-18 | 汤姆森特许公司 | Method and system for handling two CA systems in same receiver |
-
2002
- 2002-12-13 MX MXPA04006400A patent/MXPA04006400A/en active IP Right Grant
- 2002-12-13 AU AU2002357846A patent/AU2002357846A1/en not_active Abandoned
- 2002-12-13 KR KR1020047010464A patent/KR101004196B1/en active IP Right Grant
- 2002-12-13 JP JP2003561138A patent/JP4446743B2/en not_active Expired - Fee Related
- 2002-12-13 CN CN028284526A patent/CN1633809B/en not_active Expired - Lifetime
- 2002-12-13 WO PCT/US2002/040051 patent/WO2003061173A2/en active Application Filing
- 2002-12-13 EP EP02792388A patent/EP1486071A4/en not_active Ceased
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5420866A (en) * | 1994-03-29 | 1995-05-30 | Scientific-Atlanta, Inc. | Methods for providing conditional access information to decoders in a packet-based multiplexed communications system |
WO1995028058A1 (en) * | 1994-04-06 | 1995-10-19 | France Telecom | Method for broadcasting gradual conditional access programmes with data flow separation, and receiver therefor |
EP0696141A2 (en) * | 1994-08-01 | 1996-02-07 | NOKIA TECHNOLOGY GmbH | System for controlling different conditional access systems sending video, audio and data services and a receiver to be used in the system |
US5796829A (en) * | 1994-09-09 | 1998-08-18 | The Titan Corporation | Conditional access system |
WO1998008341A1 (en) * | 1996-08-20 | 1998-02-26 | France Telecom | Method and equipment for allocating to a television programme already conditionally accessed a complementary conditional access |
Non-Patent Citations (3)
Title |
---|
"FUNCTIONAL MODEL OF A CONDITIONAL ACCESS SYSTEM" EBU REVIEW- TECHNICAL, EUROPEAN BROADCASTING UNION. BRUSSELS, BE, no. 266, 21 December 1995 (1995-12-21), pages 64-77, XP000559450 ISSN: 0251-0936 * |
CUTTS D J: "DVB CONDITIONAL ACCESS" ELECTRONICS AND COMMUNICATION ENGINEERING JOURNAL, INSTITUTION OF ELECTRICAL ENGINEERS, LONDON, GB, vol. 9, no. 1, 1 February 1997 (1997-02-01), pages 21-27, XP000722905 ISSN: 0954-0695 * |
See also references of WO03061173A2 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2341708A1 (en) | 2010-01-05 | 2011-07-06 | Irdeto Access B.V. | Broadcasting variants of digital signals in a conditional access system |
US9532006B2 (en) | 2010-01-05 | 2016-12-27 | Irdeto B.V. | Broadcasting variants of digital signals in a conditional access system |
Also Published As
Publication number | Publication date |
---|---|
EP1486071A4 (en) | 2009-09-30 |
JP2005515694A (en) | 2005-05-26 |
MXPA04006400A (en) | 2004-10-04 |
WO2003061173A2 (en) | 2003-07-24 |
KR101004196B1 (en) | 2010-12-24 |
WO2003061173A3 (en) | 2004-09-23 |
CN1633809B (en) | 2010-04-21 |
KR20040068994A (en) | 2004-08-02 |
AU2002357846A1 (en) | 2003-07-30 |
CN1633809A (en) | 2005-06-29 |
JP4446743B2 (en) | 2010-04-07 |
AU2002357846A8 (en) | 2003-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8411857B2 (en) | Partial multiple encryption | |
US7602912B2 (en) | Content selection for partial encryption | |
US8724806B2 (en) | Partial multiple encryption | |
EP2346246B1 (en) | Critical packet partial encryption | |
EP1461950B1 (en) | Decoding and decryption of partially encrypted information | |
WO2003061173A2 (en) | Elementary stream partial encryption | |
EP1468561B1 (en) | Time division partial encryption | |
CA2405899C (en) | Partial encryption and pid mapping | |
CA2405902C (en) | Time division partial encryption | |
CA2405865C (en) | Elementary stream partial encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
17P | Request for examination filed |
Effective date: 20040713 |
|
AK | Designated contracting states |
Kind code of ref document: A2 Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SI SK TR |
|
AX | Request for extension of the european patent |
Extension state: AL LT LV MK RO |
|
A4 | Supplementary search report drawn up and despatched |
Effective date: 20090828 |
|
17Q | First examination report despatched |
Effective date: 20091020 |
|
APBK | Appeal reference recorded |
Free format text: ORIGINAL CODE: EPIDOSNREFNE |
|
APBN | Date of receipt of notice of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA2E |
|
APBR | Date of receipt of statement of grounds of appeal recorded |
Free format text: ORIGINAL CODE: EPIDOSNNOA3E |
|
APAV | Appeal reference deleted |
Free format text: ORIGINAL CODE: EPIDOSDREFNE |
|
REG | Reference to a national code |
Ref country code: DE Ref legal event code: R003 |
|
APBT | Appeal procedure closed |
Free format text: ORIGINAL CODE: EPIDOSNNOA9E |
|
STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION HAS BEEN REFUSED |
|
18R | Application refused |
Effective date: 20170323 |