MXPA00012255A - Decoder for, and method of, processing a transport packet stream - Google Patents

Decoder for, and method of, processing a transport packet stream

Info

Publication number
MXPA00012255A
MXPA00012255A MXPA/A/2000/012255A MXPA00012255A MXPA00012255A MX PA00012255 A MXPA00012255 A MX PA00012255A MX PA00012255 A MXPA00012255 A MX PA00012255A MX PA00012255 A MXPA00012255 A MX PA00012255A
Authority
MX
Mexico
Prior art keywords
data
security module
decoder
filter
identifier
Prior art date
Application number
MXPA/A/2000/012255A
Other languages
Spanish (es)
Inventor
Christophe Declerck
Original Assignee
Canal+ Societe Anonyme
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canal+ Societe Anonyme filed Critical Canal+ Societe Anonyme
Publication of MXPA00012255A publication Critical patent/MXPA00012255A/en

Links

Abstract

A decoder (12) is described for processing a transport packet stream. The packet stream comprises packetised data encapsulated within the packet payloads. The decoder comprises:means (81) for receiving an identifier of a particular security module system from a portable security module;means (81) for configuring the decoder in response to the received identifier;means (80) for receiving filter data for filtering packetised data associated with said particular security module system from the portable security module;and means (80) for filtering said packetised data in response to said received filter data.

Description

DECODER FOR. AND METHOD OF. PROCESSING OF A TRANSPORT PACKAGE CURRENT The present invention relates to a decoder for, and to a method of, processing a stream of transport packets. The invention is particularly suitable for a receiver / decoder for a digital transmission system, in particular for use in a digital television system. The conventional digital television transmission systems transmit data in the form of separate transport stream packets, or transport packets, each packet being of a previously determined length, and containing a header and a payload. The MPEG standard is the currently favored standard in this domain, and stipulates, among other things, a previously determined format for these packages. The header of the packet comprises general descriptive data with respect to the packet, while the payload comprises the data to be processed in the receiver / decoder. The package header includes at least one packet ID or PID, which identifies the packet. The payload of the packet may contain audio, video and other data, such as application data, or in particular, conditional access system data.
Conventionally, the input data stream is filtered by a receiver / decoder according to the PID of each packet. Data that requires immediate processing, such as audio or visual data, is communicated to an appropriate processor in the form of what is conventionally known as an elementary stream in packets or PES. This continuous data flow, which is formed by assembling the payloads of the transport packets, comprises a sequence of packets, each PES packet comprising a packet header and a payload. Other data that does not require immediate processing can also be encapsulated within the payloads of transport packages. Unlike PES data, which is immediately processed by a processor to generate real-time output, this class of data is normally processed in an asynchronous manner by the receiver / decoder processor. In this case, the data is formatted in a single table or in a series of sections; or tables, each one including a header and a payload, including the heading of the section or table, a table ID or TID. In the case where access to a transmission is to be restricted, for example, in a pay-TV system, the conditional access data may be included in a table or section transmission in the transport stream with the transmission. This conditional access data is filtered by the decoder, and passed to a portable security module, such as a smart card, inserted in the decoder. The data is then processed by the smart card, for the purpose of generating, for example, a control word subsequently used by the decoder to demix a transmission. A problem is in the volume of data that will be received and processed by the decoder, and notably the volume of the conditional access data eventually sent to the security module. In particular, the processing capabilities of a processor of a security module, and the capacity of the communication channel between the decoder and the security module may be insufficient to handle a given volume of messages. This problem is exacerbated by the growing tendency to transmit programs with multiple conditional access messages that enable access by different operators to the same program (for example, a football match or a thematic television channel). In a first aspect, the present invention provides a decoder for processing a transport packet stream comprising data in packets encapsulated within the payloads of the packets, this decoder comprising: an element for receiving an identifier of a packet module system; Particular security from a portable security module; an element for configuring the decoder in response to the received identifier; an element for receiving the filter data for filtering the data in packets associated with that particular security module system, from the portable security module, and an element for filtering the data in packets in response to the received filter data. There may be different security modules associated with different systems of respective security modules, each security module storing therein, an identifier of the particular system with which it is associated. When the security module is first connected to, or inserted into, the decoder, the security module can communicate the stored identifier to the decoder. The configuring element can then configure the decoder in response to the received identifier, in order to extract from the packet data, the data associated with the particular security module system. This can provide a simple, inexpensive and efficient way to configure the decoder for one of a number of different security module systems. As described above, the filter element can be configured to filter the data in packets in response to the filter data received from the security module. This can make it possible for the filtering element to be configured to filter from the data in extracted packets, only the data in packets that are of interest to the security module. This can make it possible to greatly reduce the flow of data to the security module, to comply with the processing capabilities of the security module. In a preferred embodiment, the element for receiving the system identifier of the security module, and for configuring the decoder, comprises an application stored in the decoder, and the element for receiving the filter data and filtering the data in packets, comprises a filter. The filter element may be configurable by the configuring element, to extract from the packet data, the data associated with the particular security module system for subsequent filtering in response to the received filter data. In a preferred embodiment, the identifier comprises an identifier of a particular conditional access system. The decoder can be configured to extract packet data, the data associated only with the conditional access system used by the security module. This can provide a simple individualization of the decoder for any of a number of different conditional access systems used by the respective service providers. Accordingly, the subscriber need not be limited, for example, by the decoder provider, to only a conditional access system. The filter element can be adapted to extract packet data, transport packets containing a program map table and a conditional access table. The configurator element can be adapted to receive the table of the program map and the conditional access table from the filtering element, and configure the filtering element in response to the received identifier and to the data contained in the table of the program map and in the table of conditional access. This can make it possible for the filter element to easily identify the packet ID of the data associated with the particular conditional access system. Preferably, the filtering element can be configured in response to the filter data comprising at least one table identifier or a section identifier for the extracted transport packet data. The filtering data at the level of the table or section, in response to the information from the security module, makes it possible to carry out a more precise identification and a selection of the data, for example, to extract relevant conditional access messages addressed to the module. The filter element can also be configured in accordance with other data received from the portable security module. In another preferred embodiment, the identifier comprises an identifier of a particular debit system used by the security module. Different security modules can use different debit systems, for example, for pay-per-view events or payments per file. For example, the security module can store a portfolio of electronic tokens, reducing the number of chips when an event is purchased. Alternatively, the security module may include characteristics of a credit card, which may require the decoder to read the details of the credit card, and communicate with the bank in order to debit the subscriber's account for a appropriate amount after buying this event. By passing the identifier to the decoder via the security module, the security module can configure the decoder to perform the debit operation in the manner supported by the security module. In an alternative way, the identifier may comprise an identifier of a particular credit system used by the security module. Again, different security modules can use different credit systems. For example, the portfolio of electronic records stored in the security module may be increased, or the subscriber's bank account may be credited, by the program provider, when the subscriber has seen a promotional event, such as a beverage advertisement. By passing the identifier to the decoder via the security module, the security module can configure the decoder to perform the credit operation in the manner supported by the security module. In a preferred embodiment, the filter element comprises a first filtering element, for example, a first set of filters, for extracting from the data in packets, the data associated with that particular security module system, and a second filtering element, for example, a second set of filters, to filter the extracted data in response to the filter data. Accordingly, in a second aspect, the present invention provides a decoder for processing a stream of transport packets, comprising packet data encapsulated within packet payloads, this decoder comprising: a first filtering element for extracting from the data in packets, the data associated with a particular security module system; and a second filter element for filtering the extracted data in response to the filter data received from a portable security module. The first filter element can be configurable in response to a system identifier of the particular security module received from the security module. At least one of the filters in the second set of filters can be configured in response to a data pattern included in the filter data. The at least one of the filters of the second filter set can be configured to filter, from the data in packets, the data having a pattern that matches the data pattern included in the filter data, or it can be configured not to filter from the data in packets, the data that have a pattern that matches that data pattern included in the filter data. The at least one of the filters of the second filter set may be configurable to ignore at least part of the data pattern in response to a data masking pattern included in the filter data. In a preferred embodiment, the decoder comprises an element, such as the filter, for sending to the security module the conditional access data obtained in accordance with the filter data received from the security module. Although the present invention is particularly adapted to make possible a reduction in the volume of conditional access messages communicated between the decoder and the module, however, it will be appreciated that the filtering element can be configured to extract different data from the conditional access data, and that they have a different destination from the security module. The conditional access data filtered and sent to the security module may comprise rights control messages (ECMs) and / or rights management messages (EMMs). Even within a group of messages associated with a single conditional access system, there may be a large number of irrelevant messages for a particular Lar user within that system. For example, within a single conditional access system, a number of different groups of users can be defined, leading to the generation of a number of EMMs, not all of which may be relevant for a given user. Accordingly, preferably, the filter data provided by the security module comprises the data used by the filter element to extract the group and / or individual rights management messages addressed to the security module. In one embodiment, the decoder is adapted to receive a control word generated by the security module in response to the conditional access data sent thereto, the control word being used by the decoder to demix a mixed transmission. In order to preserve security, some or all of the communications between the security module and the decoder can be encoded cryptically. In particular, the demix control word generated by the security module, and possibly transmitted to the decoder, can be encoded cryptically. Although the present invention can be applied to any packet transmission system, the present invention is particularly applicable to a decoder adapted to receive a data stream compatible with MPEG, for example, comprising table, section or other data in packets. encapsulated within the payloads of the packages. In this regard, the term "table, section or other packet data" refers, in its broadest sense, to any data table, alone or in a sequence, and comprising a header and a payload, and that is encapsulated within a stream of transport packets. As will be described in the preferred embodiment, the present invention is particularly applicable for filtering data contained within an MPEG table, notably a single table of short MPEG form.
In the context of this application, the term MPEG refers to the data transmission standards developed by the working group of the International Standa.rds Organization "Motion Pictures Expert Group", and in particular, but not exclusively, the MPEG standard. -2 developed for digital television applications and stipulated in documents ISO 13818-1, ISO 13818-2, ISO 13818-3 and ISO 13818-4. In the context of the present application, the term MPEG includes all variants, modifications, or developments of MPEG formats applicable to the field of digital data transmission. The present invention also provides a portable security module for use with a decoder as mentioned above, this security module comprising a memory element for storing an identifier of a particular security module system, and an element for communicating the identifier to the security module. decoder, in order to configure the decoder. In a preferred embodiment, the portable security module comprises a smart card. As used herein, the term "smart card" includes, but is not limited to, any chip-based card device, or object of similar function and function, that possesses, for example, a microprocessor and / or storage. of memory. This term includes devices having alternate physical forms other than a card, for example, key-shaped devices, such as are frequently used in television receiver / decoder systems, credit cards, and devices where restrict access to information stored inside the device. The present invention also provides a method for processing a stream of transport packets, comprising data in packets encapsulated within packet payloads, this method comprising the steps of, in a decoder: receiving an identifier of a module system of particular security from a portable security module; configure the decoder in response to the received identifier; receiving filter data to filter the data in packets associated with that particular security module system from the portable security module; and filter the data in packets in response to the received filter data. The present invention also provides a method for processing a transport packet stream, comprising packet encapsulated data within payloads of the packets, this method comprising the steps of, in a decoder: extracting from the packet data , the data associated with a particular security module system; and filtering the extracted data in response to the filter data received from a portable security module. The present invention also provides a decoder for a digital transmission system adapted to receive a stream of transport packets containing table, section or other data in encapsulated packets within the payloads of the packets, and characterized in that the decoder comprises an element for filtering the configurable encapsulated data in response to the filter data received from a portable security module. In addition to filtering at the level of the table or section, the decoder can also perform filtering at the transport level, for example, to extract only the packets comprising data associated with the particular conditional access system used. by the security module. Preferably, therefore, the decoder further comprises an element for filtering the data into configurable transport packets in response to the data received from the security module. In a convenient manner, the element for filtering the data in transport packets can be configured in response to the data representing the identity of the conditional access system received from the security module. The features described above in relation to the aspects of the device of the present invention can also be applied to aspects of the method, and vice versa. The term "decoder" or "receiver / decoder" used herein may connote a receiver to receive the encoded or non-encoded signals, for example, television and / or radio signals, which may be transmitted by some other means. The modalities of these receivers / decoders may include a decoder integral with the receiver, for decoding the received signals, for example, in a "top box", a decoder operating in combination with a physically separate receiver, as well as a decoder including additional functions, such as a network browser, or integrated with a video recorder or a television. As used herein, the term "digital transmission system" includes any transmission system for transmitting or disseminating digital data, for example, primarily digital audiovisual or multimedia data. Although the present invention is particularly applicable to a digital broadcast television system, the invention can also be applied to a fixed telecommunications network for mutimedia Internet applications, to a closed circuit television, etc. As used herein, the term "digital television system" includes, for example, any satellite, terrestrial, cable and other system. Now, by way of example only, a preferred embodiment of the invention will be described, with reference to the following figures, in which: Figure 1 shows the overall architecture of a digital television system in accordance with this embodiment. Figure 2 shows the architecture of the conditional access system in Figure 1. Figure 3 shows the hierarchy of MPEG-2 packets, in particular those associated with conditional access messages. Figure 4 shows the structure of the private sections of MPEG-2 in a long and short form. Figure 5 shows the elements of a receiver / decoder for use in this mode. Figure 6 shows the receiver / decoder elements used to process the transport stream, in particular in relation to the conditional access messages. Figure 7 shows the structure of the PID and section filters of the filter unit of Figure 6.
An overview of a digital television transmission and reception system 1 is shown in Figure 1. The invention includes a mostly conventional digital television system 2, which uses the MPEG-2 compression system to transmit compressed digital signals. In more detail, the MPEG-2 compressor 3 in a transmission center receives a digital signal stream (e.g., an audio or video signal stream). The compressor 3 is connected to a multiplexer and mixer 4 via the link 5. The multiplexer 4 receives a plurality of additional input signals, assembles one or more transport streams, and transmits compressed digital signals to a transmitter 6 of the transmission center by middle of link 7, which of course, can take a wide variety of form, including telecommunication links. The transmitter 6 transmits electromagnetic signals by means of the uplink 8, towards a satellite transponder 9, where they are electronically processed and transmitted by means of a notional downlink 10 to the ground receiver 11, conventionally in the form of a plate owned or rented by the end user. The signals received by the receiver 11 are transmitted to an integrated receiver / decoder 12 owned or rented by the end user, and connected to the television set of the end user 13. The receiver / decoder 12 decodes the MPEGi-2 signal compressed into a signal of television for the television set 13. A conditional access system 20 is connected to the multiplexer 4 and the receiver / decoder 12, and is located partially in the transmission center and partly in the receiver / decoder. It makes it possible for the end user to have access to digital television transmissions from one or more transmission providers. A smart card can be inserted, capable of cryptically decoding the messages related to the commercial offers (ie, one or more television programs sold by the transmission provider) on the receiver / decoder 12. Using the receiver / decoder 12 and the smart card, the end user can buy events in a subscription mode or in a pay per view mode. An interactive system 17, also connected to the multiplexer 4 and the receiver / decoder 12, and again partially located in the transmission center and partially in the receiver / decoder, can be provided to enable the end user to interact with different applications by means of of a return channel in modem 16. The conditional access system 20 will now be described in greater detail. With reference to Figure 2, an overview of the conditional access system 20 includes a Subscriber Authorization System (SAS) 21. The SAS 21 is connected to one or more Subscriber Management Systems (SMS) 22, one SMS per each transmission provider, through a respective TCP-IP link 23 (although alternatively other types of links could be used). In an alternative way, an SMS could be shared between two transmission providers, or a provider could use two SMS, etc. The first cryptic encoding units in the form of cipher units 24 using "mother" smart cards 25, are connected to the SAS via the link 26. The second cryptic encoding units again in the form of the cipher units 27, which use the mother smart cards 28, are connected to the multiplexer 4 through the link 29. The receiver / decoder 12 receives a "daughter" smart card 30. It is directly connected to the SAS 21 through the Communications Servers 31, by means of the return channel in modem 16. The SAS sends, among other things, subscription rights, to the smart daughter card on your request. Smart cards contain the secrets of one or more commercial operators. The "mother" smart card cryptically encodes different kinds of messages, and "daughters" smart cards cryptically decode the messages, if they have the rights to do so.
The first and second encryption units 24 and 27 comprise a grid, an electronic VME card with software stored in an EEPROM, up to 20 electronic cards and a smart card 25 and 28, respectively, for each electronic card, a card 28 for cryptically encoding the ECMs, and a card 25 to cryptically code the EMMs. The operation of the conditional access system 20 of the digital television system will now be described in more detail, with reference to the different components of the television system 2 and the conditional access system 20.
Multiplexer v Mixer With reference to Figures 1 and 2, in the transmission center, the digital audio or video signal is first compressed (or the bit rate is reduced), using the MPEG-2 compressor 3. Then this compressed signal is transmitted to the multiplexer and mixer 4 via link 5, in order to be multiplexed with other data, such as other compressed data. The mixer generates a control word used in the mixing process, and included in the MPEG-2 stream in the multiplexer. The control word is generated internally, and makes it possible for the integrated receiver / decoder of the end user 12, to demix the program. Access criteria are also added, indicating the way in which the program is marketed, to the MPEG-2 stream. The program can be marketed in one of a number of "subscription" modes and / or one of a number of "Pay Per View" (PPV) modes or events. In the subscription mode, the end user subscribes to one or more commercial offers, or "bouquets", thus obtaining the rights to see each channel within these bouquets. In the preferred mode, up to 960 commercial offers can be selected from a bouquet of channels. In Pay Per View mode, the end user is provided the ability to buy events as desired. This can be achieved by either pre-booking the event in advance ("pre-booking mode"), or by purchasing the event as soon as it is transmitted ("impulse mode"). In the preferred mode, all users are subscribers, whether they see or not in the subscription or PPV mode, but of course, PPV viewers do not necessarily need to be subscribers.
Rights Control Messages Both the control word and the access criteria are used to build a Control Message Rights (ECM). This is a message sent in relation to a mixed program; the message contains a control word (which allows to demix the program), and the access criteria of the transmission program. The access criteria and the control word are transmitted to the second cryptic encoding unit 27 via link 29. In this unit, an ECM is generated, cryptically encoded, and transmitted to the multiplexer and mixer 4. During a transmission of diffusion, the control word normally changes every few seconds, and in this way, the ECMs are also transmitted periodically, to enable the changing control word to be demixed. For redundancy purposes, each ECM usually includes two control words; the present control word and the next control word .. Each transmission of service by a transmission provider in a data stream comprises a number of different components; for example, a television program includes a video component, an audio component, a subtitle component, etc. Each of these components of a service is cryptically mixed and encoded in an individual manner for subsequent transmission to the transponder 9. With respect to each mixed component of the service, a separate ECM is required. Alternatively, a single ECM may be required for all mixed components of a service. Multiple ECMs are also generated in the case where multiple conditional access systems control access to the same transmitted program.
Program Transmission The multiplexer 4 receives the electrical signals comprising EMMs encoded cryptically from the SAS 21, ECMs encoded cryptically from the second cryptic encoding unit 27, and compressed programs from the compressor 3. The multiplexer 4 mixes the programs and sends the programs mixed, the cryptically encoded EMMs, and the crypically encoded ECMs to a transmitter 6 of the transmission center via the link 7. The transmitter 6 transmits electromagnetic signals to the satellite transponder 9 via the uplink 8.
Reception of the Program The satellite transponder 9 receives and processes the electromagnetic signals transmitted by the transmitter 6, and transmits the signals to the receiver on the ground 11, conventionally in the form of a plate owned or rented by the end user, by means of the link downwards 10. The signals received by the receiver 11 are transmitted to the integrated receiver / decoder 12 owned or rented by the end user, and connected to the end user's television set. 13. the receiver / decoder 12 demultiplexes the signals to obtain the programs mixed with the cryptically encoded EMMs and the cryptically encoded ECMs. If the program is not mixed, that is, no ECM has been transmitted with the MPEG-2 current, the receiver / decoder 12 decompresses the data, and transforms the signal into a video signal to be transmitted to the television set 13. If the program is mixed, the receiver / decoder 12 extracts the corresponding ECM from the MPEG-2 stream, and passes the ECM to the "daughter" smart card 30 of the end user. This has its slot in a housing in the receiver / decoder 12. The daughter smart card 30 controls whether the end user has the right to cryptically decode the ECM, and to have access to the program. If not, it is passed to a negative state to the receiver / decoder 12, to indicate that the program can not be demixed. If the end user has the rights, the ECM is decoded cryptically, and the control word is extracted. The receiver / decoder 12 can then demix the program using this control word. The MPEG-2 current is decompressed and translated into a video signal to follow the transmission to the television set 13.
Rights Management Messages (EMMs) The EMM is a message dedicated to an individual end user (subscriber), or to a group of end users. Each group can contain a given number of end users. This organization, as a group, aims to optimize bandwidth; that is, access to a group can allow it to reach a large number of end users. You can use different specific types of EMM. Individual EMMs are dedicated to individual subscribers, and are typically used in the provision of Pay Per View services; these contain the group identifier and the position of the subscriber in that group. Group subscription EMMs are dedicated to groups of, say, 256 individual users, and are typically used in the administration of some subscription services. This EMM has a group identifier, and a group bitmap of the subscribers. Audience EMMs are dedicated to whole audiences, and could be used, for example, by a particular operator, to provide certain free services. An "audience" is the totality of subscribers who have smart cards that carry the same identifier of the conditional access system (CA ID). Finally, a "unique" MM is addressed to the unique identifier of the smart card.
Subscriber Management System (SMS) A Subscriber Management System (SMS) 22 includes a database 32 that manages, among other things, all the files of the end users, commercial offers, subscriptions, PPV details, and data regarding the consumption and authorization of the end users. The SMS may be physically remote from the SAS. Each SMS 22 transmits messages to SAS 21 through the respective link 23, which implies modifications to, or creations of Rights Management Messages (EMMs) to be transmitted to the end users. SMS 22 also transmits messages to SAS 21, which implies that there will be no modifications or creations of EMVIs, but only implies a change in the state of an end user (in relation to the authorization granted to the end user when ordering products, or to the amount that will be charged to the end user). The SAS 21 sends messages (usually requesting information, such as callback information or billing information) to the SMS 22, so that you can see that the communication between the two is two-way.
Subscriber Authorization System (SAS) Messages generated by SMS 22 are passed through link 23 to the Subscriber Authorization System (SAS) 21, which in turn generates messages recognizing the reception of the messages generated by the SMS 21, and passes these acknowledgments to the SMS 22. In an overview, the SAS includes a Subscription Chain area, to give rights for subscription mode, and to automatically renew rights every time, a Pay-Per-View chain area, to give rights for PPV events, and an EMM Injector to pass the EMMs created by the Subscription and PPV chain areas to multiplexer and mixer 4, and therefore, to feed the MPEG stream with the EMMs. If other rights are granted, such as Payment by File (PPF) rights, in the case of downloading computer software to a user's Personal Computer, other similar areas are also provided. One function of SAS 21 is to manage access rights to television programs, available as commercial offers in subscription mode, or sold as PPV events according to different marketing modes (pre-order mode, impulse mode). The SAS 21, in accordance with these rights, and with the information received from the SMS 22, generates the EMMs for the subscriber. The EMMs are passed to the Crypter Unit (CU) 24, to be encrypted with respect to the administration and exploitation keys. The CU makes the signature in the EMM, and passes the EMM back to the Message Generator (MG) in SAS 21, where a header is added. The EMMs are passed to a Message Emitter (ME) as complete EMMs. The Message Generator determines the transmission start and end time, and the emission speed of the EMMs, and passes them as appropriate addresses together with the EMMs to the Message Emitter. The MG only generates a given EMM once; it is the ME that carries out the cyclic transmission of the EMMs. After the generation of an EMM, the MG assigns a unique identifier to the EMM. When the MG passes the EMM to the ME, it also passes the ID of the EMM. This makes it possible to identify a particular EMM, both in the MG and in the ME. In systems such as simulcrypt, which is adapted to handle multiple conditional access systems, for example, associated with multiple operators, EMM streams associated with each conditional access system are generated separately, and multiplexed together by the multiplexer 4 before its transmission.
Conditional Access Messages in the Transport Stream The different nature of the ECM and EMM messages leads to differences vis a vis the mode of message transmission in the MPEG transport stream. The ECM messages, which carry the control words necessary to demix a program, are necessarily linked to the video and audio streams of the program being transmitted. In contrast, EMM messages are general messages that disseminate asynchronously to convey rights information to individuals or groups of clients. This difference is reflected in the placement of the ECM and EMM messages within the MPEG transport stream.
As you know, MPEG transport packages sor. of a fixed length of 188 bytes, including a header. In a standard package, the three bytes of the header next to the synchronization data include: TABLE I Transport error indicator 1 bit 1 bit payload unit indicator Transport priority 1 bit PID 13 bits 2-bit transport mix control 2-bit adaptation field control 4-bit continuity counter The characteristics of these fields are largely determined by the MPEG standard. Referring to Figure 3, the organization of the data within a transport stream will be described. As shown, the transport stream contains an association table with program 40 ("PAT"), fixing the PID in the packet header using the MPEG-2 standard at a value of 0x00. The program access table 40 provides the entry point to access the program data, and contains a table that has reference to the PID values of the program map tables ("PMT") 41, 42, associated with a number of programs. Each program map table 41, 42 contains in turn a reference to the PID values of the packet streams of the audio tables 43 and the video tables 44 of that program. As shown, the map of the program map 42 also contains references to the PID values of other packets 45, 46, which contain additional data related to the program in question. In the present case, the ECM data generated by a number of conditional access systems, and associated with the program in question, are contained within the referred packages 45, 46. In addition to the access table to the PAT 40 program, the transport stream MPEG further comprises a conditional access table 47 ("CAT"), whose PID value is fixed at 0x01. Any packet headers that contain this PID value, therefore, are automatically identified as containing the access control information. The CAT 47 table refers to the PID values of the MEPG packets 48, 49, 50 associated with the EMM data associated with one or more conditional access systems. As with the PMT packets, the PID values of the EMM packets referred to in the CAT table are not fixed, and can be determined at the option of the system operator.
Private Section Data In accordance with the MPEG-2 standard, the information contained in a packet payload is subject to an additional level of structure according to the type of data being transported. In the case of audio, visual, teletext, subtitle or other data that evolve and synchronize rapidly, the information is assembled in the form of what is known as an elementary stream in packets or PES. This data stream, which is formed by assembling the payloads of the transmitted packets, itself comprises a sequence of packets, each packet comprising a header and a payload of the packet. Unlike the packets transmitted in the transport stream, the PES packet length is variable. In the case of other data, such as the application data or, in this example, the ECM and EMM data, a different format is prescribed from the formation of PES packets. In particular, the data contained in the payload of the transport packet is divided into a series of sections or tables, including the table header or section an ID or TID that identifies the table in question. Depending on the size of the data, a section may be contained entirely within a payload of a packet, or it may be extended in a series of tables on a number of transport packets. In the MPEG-2 context, the term "table" is often used to refer to a single data table, while "section" refers to one of a plurality of tables with the same TID value. As with the data of the transport package and the data of the PES package; The data structure of a table or section is further defined by the MPEG-2 standard. In particular, two possible forms of syntax are proposed for private table or section data; a long form or a short form, as illustrated in Figure 4. In both the short and long form, the header includes at least the data 60 comprising: TABLE II Identification of table 8 bits Indicator of syntax of section 1 bit Private / reserved 1 bit indicator ISO reserved 2 bits Section length 12 bits The lengths of the private indicator and the private section are comprised of data not fixed by the MPEG-2 standard, and which can be used by the system operator for their own purposes. In the case of the short form, the header 60 is immediately followed by the payload data 61. In the case of the long form, an additional header section 62 is provided before the payload 63, and the message also includes a CRC 64 verification value. The long form, which is normally used when a message is so long that it must be divided into a number of sections, contains the information necessary to assemble the sections, such as the section number, the number of the last section in the sequence of sections, etc. For more information regarding the table data in a long and short way, the reader is directed to the MPEG-2 standard. In the case of conditional access ECM and EMM messages, data can usually be accommodated in a single table, and the short form will be the appropriate format. A specific syntax for these conditional access messages is proposed shortly in the context of the present invention, namely: TABLE III Table identification (filter data) 8 bits (1 byte) Section syntax indicator. 1 bit Private / reserved indicator 1 bit reserved ISO 2 bits Length of the section 12 bits Specific header field of CA (data filter) 56 bits (7 bytes) For these CA messages, the table identification value can be set by the system operator, for example, at 0x80 and 0x81 for ECM messages (e.g., odd and even messages), and 0x82 to 0x8F for EMM messages. These values are not prescribed to MPEG-2, and can be selected at the discretion of the system operator. Likewise, in the case of the specific header field of CA, designated herein as the first 7 bytes of the payload next to the header, the parameters may be set by the system operator to reflect, for example, the fact that the CA message is an EMM message that carries individual, group or audience subscription information. In this way, the "heading" of this table or section is extended. The advantages of this message syntax will become clear later, with respect to the processing and filtering of messages by the receiver / decoder, notoriously using the identification of the table and the specific field data of CA.
Receiver / Decoder Referring to Figure 5, the elements of a receiver / decoder 12 or upper box for use in a digital transmission system, and adapted for use in the present invention will now be described. As will be understood, the basic elements of this receiver / decoder are largely conventional, and their implementation will be within the capabilities of a person skilled in the art. As shown, the receiver / decoder 12 is equipped with several interfaces for receiving and transmitting data, in particular a tuner 70 for receiving the broadcast MPEG broadcastings, a serial interface 71, a parallel interface 72, and a modem 73 for sending and receive data through the telephone network. The receiver / decoder also includes first and second smart card readers 74 and 75, the first reader 74 for accepting the smart subscription card, and the second reader 75 for accepting bank cards and / or other smart cards. The receiver / decoder also includes a receiver 76 for receiving the infrared control signals from a manual remote control 77, and a Peritel output for sending audiovisual signals to a television 13 connected to the receiver / decoder. The processing of the digital signals received by means of the interfaces, and the generation of the output signals are handled by an assembly of hardware and software elements grouped together as a central control unit 78. The software architecture of the unit The control within the receiver / decoder may correspond to that used in a known receiver / decoder, and will not be described here in any detail. It can be based, for example, on a virtual machine that interacts by means of an interfacing layer with a system operating at a lower level implemented in the hardware components of the receiver / decoder. In terms of hardware architecture, the control unit 78 will be equipped with a processor, memory elements, such as ROM, RAM, FLASH memory, etc., as in known receivers / decoders. The applications processed by the control unit 78 may be resident applications stored in the ROM or FLASH of the receiver / decoder, or applications transmitted and downloaded via the MPEG interface 2 of the receiver / decoder. The applications may include program guide applications, games, interactive services, teleshopping applications, as well as initiate applications to enable the receiver / decoder to be immediately operative at startup, and applications to configure aspects of the receiver / decoder. The applications are stored in the memory locations in the receiver / decoder, and are represented as resource files comprising descriptive files of graphic objects, unit files, variable block files, instruction sequence files, application files , data files, etc.
Conditional Access Data Filtering Figure 6 shows schematically the elements necessary to process the data in packets and tables according to this embodiment of the invention. As will be understood, the elements shown in this figure can be implemented in the hardware, in the software or in a combination of the two. The broadcast transmission received from the satellite receiver is passed through the conventional tuner 70 and an associated demodulator unit 79. The tuner 70 normally scans a range of frequencies, stopping when a selected carrier frequency is detected within that range. The signals are then processed by the demodulator unit 79, which extracts and sends the transport packet stream to a demultiplexer and filter unit 80. The filter structure of the demultiplexer and filter unit 80 will be described in detail later in relationship with Figure 7. As will be understood, the actual choice of the components needed to implement this unit is at the discretion of the manufacturer, and the most important aspect of this unit is the selected filter configuration. In the case of the cryptically encoded data according to a conditional access system in accordance with the present embodiment, the filter unit interacts with a smart card 30 (or any other secure device) inserted in the receiver / decoder 12, and a channel parameter application 81, normally implemented as a software application in the receiver / decoder. The filter unit 80 extracts the PMT and CAT tables present in the stream from the transport packet stream. Referring again to Figure 3, this filtering operation is performed at a PID level, the CAT table being identified by the PID value 0x01, and the PMT table corresponding to the selected transmission channel that is being extracted by means of the PAT table ( PID value: 0x00), and the PID value of the selected channel identified in the PAT table. The application of the channel parameter 81 additionally receives from the smart card 30, an identification of the conditional access system associated with that smart card. Again, by referring back to Figure 3, a first conditional access system is associated with the ECM and EMM data in packets 45 and 48, respectively. Using the identification of the conditional access system received from the smart card 30, and the PMT and CAT tables received from the filter unit 80, the application 81 determines the PID values of the conditional access packets associated with the conditional access system in issue, and return these values to the filter unit 80. In the case of a simplified system, where a relatively small number of ECMs and EMMs are issued, another filtering may not be necessary, and these PID values can be used by the filter unit 80 to extract all the private sections of ECM and EMM from the identified packets, and then send the data contained within these sections to the smart card 30. This conditional access data is then processed by the microprocessor in the smart card 30, and the control word associated with the transmission passed to a demixer unit 83. The demixed unit ora 83 receives the information of the audiovisual data or other mixed data extracted from the transport packet stream by the demultiplexer and filter unit 80, demixes the information using the control word, and then passes the data to an MPEG-2 chip conventional, which prepares the data for its subsequent deployment in the visual display of associated television. However, although a PID-level filter makes it possible to extract the ECM and EMM messages associated exclusively with the conditional access system in question, nevertheless there may be a large proportion of messages irrelevant to the user. These messages can include group EMM messages for other user groups, individual EMM messages for other users, etc. The production of conditional access messages to the smart card, therefore, can be very "a." Given the limitations of processor power and smart card memory, this production in practice may be more than can handle the card In order to overcome this problem, the smart card 30 is adapted to pass additional filter data to the unit 80 to be used in a filter process at the level of the section or the table. Table III above, the tables containing conditional access data include the fields of identification of the table and specific header CA, which are selected to identify, for example, the presence of an EMM or ECM (values of identification of the table 0x80 or 0x81, and 0x82 to 0x8F, respectively), and the type of message (CA-specific data that identifies the group concerned by a group EMM message, the presence of an audience EMM message, etc.). Depending on the data required, the smart card 30 will send the identification of the table and the CA-specific data necessary to configure the filter unit to extract and return only the conditional access messages of interest to the smart card. In this way, the flow of data sent to the smart card can be reduced to comply with the processing capabilities of the smart card microprocessor. Referring to Figure 7, the details of the filtering unit 80 will be described. Typically, the unit can be implemented as a hardware resource, driven by a firmware management application with the receiver / decoder. As shown, a first set of filters 85 performs a PID filtering process, using the AC PID information received from the application of the channel parameter. The PID filters 85 can also be configured to extract other relevant packets, such as the PMT, CAT tables sent to the channel parameter application. Other PID filters (not shown) can be used to extract the information from the audiovisual PES packet eventually sent to the demixer, etc. Once separated from the packet header, the private section or table data is then directed to a set of pre-filters 86 adapted to filter the 8 bytes in the extended header of a table. As shown in Table III, 1 byte of the extended header is associated with the identification of the table, 7 bytes with the CA-specific information. The filtering operation is performed by comparing the 8-byte pattern in a table with the filter data received from the smart card. Some bits within the 8-byte, 64-bit pattern can be masked or ignored in the evaluation. In this modality, 32 different patterns are proposed, applying a subset of these patterns through pre-filters, depending on the information received from the smart card. If a pattern matches, the section is sent to the FIFO 87 buffer zone element. If no patterns match, the section is ignored. The filters 86 also act to extract the information from the PMT and CAT table from the appropriate sections, which is passed to the FIFO buffer zone 88. Due to the characteristics of the transport layer, the arrival of sections is explosive. The buffering capacity of buffer zones 87, 88 should be sufficient to handle an average speed of 5Mbits / second, based on the insertion of packets in a regular allocation with a possible deviation of + 25 percent. In order to better understand the invention, a proposed example of operating instructions handled by section 86 filters will now be illustrated. Filtering all_section.es (filter_id, Target, Mask, Conditions _dispensers, p / n) This command operates each section that matches the target, except for the masked bits, after the trigger_conditions are presented. Filter_next_section (filter_id, Object, Mask, Conditions _dis stops, p / n) This command operates the next section that matches the target, except for the masked bits after the trigger_conditions are presented. The triggering conditions are related to other filters previously identified as concordant. Filter_ID is an index between 0 and 31, which points to a filter and an output row. In addition, it gives the priority of enfilamiento, being 0 the highest priority. Objective is an 8-byte pattern. Mask is an 8-byte pattern that shows the bits that are to be masked on the target, and the value of 0 means masked. Dispatcher conditions is a 32-bit bitmap, which sets the filter_id for that filter to OR (ó). Setting a bit to 0 means that there is no trip condition. The auto-trigger condition is ignored. p / n is a value normally set to 1, positive for normal operation as described above. When set to 0, it means a negative filtering, that is, sections that do not match the target are retrieved. Examples of use: Example 1: Filter_all_sections (5, 0x8C7C453AA8BBFF00, OXFF557FFFEEFFFF00, 0, 1) will capture all the EMMs corresponding to the matching criteria. Example 2: Filter_next_section (0, 0x8000000000000000, 0XFF00000000000000, 0, 1). Filter_next_section (l, 0x8100000000000000, 0XFF00000000000000, 5, 1). Next_filter_section (2, 0x8000000000000000, 3, 1) will initiate an ECM capture process with nones / pairs leverage. Example 3: Subsequent_filter_section (8, 0xPMT_TID0000version_number00000000, 0XFF00001F00000000, 0, 0).
Next_filter_section (l, 0x8100000000000000, OXFF00000000000000, 0x14, 1). Subsequent_filter_section (2, 0x8000000000000000, 0XFF00000000000000, 0x12, 1) will initiate an ECM capture process with nones / pairs leverage, starting when there is a change in the PMT. In terms of communication of CA messages and filter data to and from the smart card 82 and the filter unit 80, a standard protocol, such as IS07816, can be used. Since not all the data of the filtered private section is required by the smart card 82, the section can be modified and a message of the following format is sent to the smart card: Table identification 8 bit Zero 11 bits Filter identification 5 bits Specific header field CA 56 bits Message from CA N * 8 bits The meaning of each of these terms will be clear from the description. In terms of the filter data sent from smart card 82 to filter 80, the following format can be used: Number of filters 8 bits Filter instruction 5 bits Filter identification 5 bits Target 64 bits Mask 64 bits Trigger conditions 5 bits p / n 1 bit Number of filters describes the number of filters to be set in this instruction. Instruction_fil tracidn is describing the type of instruction (filter the next section, filter all sections). Filter_ID is an index that points to a filter and to an output row. In addition, the priority of enfilamiento is given, being zero the highest priority. Objective is the objective model. Mask is a pattern that shows the bits that are to be masked on the target, and the value 0 means masked. Conditions _disparadoras is a bitmap, which puts in OR (ó) the trigger of id_filtro for that filter. Setting bits to 0 means that there is no trip condition. The auto-trigger condition is ignored. p / n is a value, normally set to 1, positive for normal operation as described above. When set to 0, it means negative filtration, that is, sections that do not match the target are retrieved. In practice, communications between the smart card and the receiver / decoder may be subject to a level of cryptic encoding or mixing for security reasons. In particular, communications between the smart card 82 and the filter unit 80, as well as the control word stream sent to the demixer unit 83, can be encoded in this way. The cryptic encoding algorithms suitable for this purpose are widely known (RSA, DES, etc.). Although the above embodiment has described the configuration of the receiver / decoder 12 in response to an identification of the conditional access system associated with the smart card 30, the present invention is not limited to the configuration of the receiver / decoder in relation to this module system. of security. The decoder can be configured in response to any of a number of different security module systems. For example, the smart card 30 can use a debit system, where a "portfolio" of electronic tokens stored in the smart card, is owed a certain amount when the subscriber buys a PPV event. Alternatively, the smart card 30 can use a debit system similar to that used ina smart card, where the receiver / decoder reads the banking information stored in the smart card, and contacts a bank through the return channel in modem 16, in order to debit the subscriber's bank account. By passing a debit system identifier to an application, such as, or similar to, the channel parameter application 81, the application can configure the decoder to perform the debit operation in the manner supported by the smart card. In another example, the smart card 30 can use a credit system, where the portfolio of electronic tokens stored in the smart card, is credited a certain amount when the subscriber has seen, for example, a particular promotional event. Alternatively, the smart card 30 can use a credit system similar to that used in a credit card, where the receiver / decoder reads the banking information stored in the smart card, and contacts a bank through the channel back in modem 16, in order to credit the subscriber's bank account. Upon passing an identifier of the credit system to an application, such as, or similar to, the channel parameter application 81, the application can configure the decoder to perform the credit operation in the manner supported by the smart card.

Claims (43)

1. A decoder for processing a transport packet stream comprising data in packets encapsulated within the payloads of the packets, this decoder comprising: an element for receiving an identifier of a particular security module system from a portable security module; an element for configuring the decoder in response to the received identifier; an element for receiving the filter data for filtering the data in packets associated with that particular security module system, from the portable security module, and an element for filtering the data in packets in response to the received filter data.
2. A decoder according to claim 1, wherein the filtering element is configurable by the configuring element, to extract from the data in packets, the data associated with the particular security module cel system for subsequent filtering in response to the received filter data.
3. A decoder according to claim 1 or 2, wherein the identifier comprises an identifier of a particular conditional access system.
4. A decoder according to claim 3, wherein the filter element is adapted to extract packet data, transport packets containing a program map table and a conditional access table.
5. A decoder according to claim 4, wherein the configuring element is adapted to receive the program map table and the conditional access table from the filtering element, and configure the filtering element in response to the received identifier and the data. contained in the table of the program map and in the conditional access table.
6. A decoder according to any of the preceding claims, wherein the identifier comprises an identifier of a particular debit system used by the security module.
7. A decoder according to any of the preceding claims, wherein the identifier comprises an identifier of a particular credit system used by the security module. A decoder according to any one of the preceding claims, wherein the filter element can be configured in response to the filter data? [Which comprise at least one table identifier or a section identifier for the data in packets. 9. A decoder according to any of the preceding claims, wherein the filtering element comprises a first filtering element for extracting the data in packets, the data associated with that particular security module system, and a second filtering element for filtering the data extracted in response to the filter data. 10. A decoder for processing a stream of transport packets, comprising data in packets encapsulated within the payloads of the packet, this decoder comprising: a first filtering element for extracting from the packet data, the data associated with a payload system; particular security module; and a second filter element for filtering the extracted data in response to the filter data received from a portable security module. 11. A decoder according to claim 10, wherein the first filtering element is configurable in response to a system identifier of the particular security module received from the security module. 12. A decoder according to any of claims 9 to 11, wherein the second filter element comprises a plurality of filters, it being possible to configure at least one of the filters in response to the filter data. 13. A decoder according to any of claims 9 to 12, wherein the second filter element can be configured in response to a damage pattern included in the filter data. 14. A decoder according to claim 13, wherein the second filter element can be configured to filter, from the extracted data, the data having a pattern that matches the data pattern included in the filter data. 15. A decoder according to claim 13, wherein the second filter element can be configured not to filter, from the data extracted, the data having a pattern that matches the data pattern included in the filter data. . 16. A decoder according to any of claims 13 to 15, wherein the second filter element is configurable to ignore at least part of the data pattern in response to a data masking pattern included in the filter data. 17. A decoder according to any of the preceding claims, which comprises an element for sending to the security module, the conditional access data included in the data in packets. 1
8. A decoder according to claim 17, wherein the conditional access data sent to the security module comprises rights control messages (ECMs) and / or rights management messages (EMMs). A decoder according to any one of the preceding claims, wherein the filter data provided by the security module comprises the data used by the filter element to extract the group rights and / or individual rights management messages addressed to the security module. 20. A decoder according to any of claims 17 to 19, wherein the decoder is adapted to receive a control word generated by the security module in response to the conditional access data sent to it, using the control word by the decoder to demix a mixed transmission. 21. A decoder according to any of the preceding claims, adapted to cryptically encode and / or cryptically decode communications to and from the portable security module. 22. A portable security module for use with a decoder as claimed in any of the preceding claims, this security module comprising a memory element for storing an identifier of a particular system of the security module, and an element for communicating the identifier to the decoder, in order to configure the decoder. 23. A portable security module according to claim 22, which comprises an element for storing the filter data, and an element for communicating the filter data to the filtering element in the decoder .. 24. A portable security module according to claim 22 or 23, which comprises a smart card. 25. A method for processing a stream of transport packets, comprising packet encapsulated data within the payloads of the packets, this method comprising the steps of, in a decoder: receiving an identifier of a particular security module system from a portable security module; configure the decoder in response to the received identifier; receiving filter data to filter the data in packets associated with that particular security module system from the portable security module; and filter the data in packets in response to the received filter data. 26. A method according to claim 25, wherein the packet data is filtered to extract the data associated with the particular security module system. 27. A method according to claim 25 or 26, wherein the identifier comprises an identifier of a particular conditional access system. 28. A method according to claim 27, wherein the transport packets containing a program map table and a conditional access table are extracted from the data in packets. 2
9. A method according to claim 28, wherein the packet data is filtered in response to the received identifier and to the data contained in the program map table and in the conditional access table. 30. A method according to any of claims 25 to 29, wherein the identifier comprises an identifier of a particular debit system used by the security module. 31. A method according to any of claims 25 to 30, wherein the identifier comprises an identifier of a particular credit system used by the security module. 32. A method according to any of claims 25 to 31, wherein the filter data comprises at least one table identifier or a section identifier for the data in packets. 33. A method according to any of claims 25 to 32, wherein the packet data is filtered according to a data pattern included in the filter data. 34. A method according to claim 33, wherein the data having a pattern conforming to the data pattern is filtered from the data in packets. 35. A method for processing a transport packet stream, comprising data in packets encapsulated within packet payloads, this method comprising the steps of, in a decoder: extracting data from packets, data associated with a particular security module system; and filtering the extracted data in response to the filter data received from a portable security module. 36. A method according to claim 35, wherein an identifier of the particular security module system is received, from this security module. 37. A method according to any of claims 25 to 36, wherein the conditional access data included in the extracted data is sent to the security module. 38. A method according to claim 37, wherein the conditional access data sent to the security module comprises rights control messages (ECMs) and / or rights management messages (EMMs). 39. A method according to any of claims 25 to 38, wherein the filter data provided by the security module comprises data used by the decoder to extract the group rights and / or individual rights management messages addressed to the module. of security. 40. A method according to any of claims 37 to 39, wherein the security module generates a control word in response to the conditional access data sent to it, this control word being used by the decoder to demix a mixed transmission. 41. A decoder substantially as described herein. 42. A portable security module substantially as described herein. 43. A method for processing a stream of transport packets substantially as described herein.
MXPA/A/2000/012255A 1998-06-08 2000-12-08 Decoder for, and method of, processing a transport packet stream MXPA00012255A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP98401374 1998-06-08

Publications (1)

Publication Number Publication Date
MXPA00012255A true MXPA00012255A (en) 2001-11-21

Family

ID=

Similar Documents

Publication Publication Date Title
EP1086579B1 (en) Decoder for, and method of, processing a transport packet stream
CA2349335C (en) Signalling of bouquet information in a digital transmission system
RU2225075C2 (en) Data burst filtering
CN100385910C (en) Application data table for a multiservice digital transmission system
CZ20012824A3 (en) Method for encoding data and a system for providing safe data communication
US8099749B2 (en) Viewer data collection system and method for use in a direct broadcast satellite television network
JP2002503063A (en) Configuration method and apparatus
MXPA00012255A (en) Decoder for, and method of, processing a transport packet stream
CZ20004586A3 (en) Decoder, method for processing transport packet flow and portable safety module
MXPA01007879A (en) Method and apparatus for encrypted transmission
MXPA00007588A (en) Configuring method and device
MXPA99008540A (en) Method and apparatus for preventing fraudulent access in a conditional access system
MXPA01003050A (en) Application data table for a multiservice digital transmission system
MXPA00004837A (en) Packet filtering
MXPA01004674A (en) Signalling of bouquet information in a digital transmission system