Procédé de conditionnement et de contrôle d'accès à des contenus en codage hiérarchique, processeur et émetteur pour ce procédé.
La présente invention concerne un procédé de conditionnement et de contrôle d'accès à des contenus en codage hiérarchique embrouillés, un processeur et un émetteur pour ce procédé.
Un contenu en codage hiérarchique embrouillé est un programme multimédia codé et embrouillé par composantes, dont les composantes sont en outre hiérarchiquement organisées de façon à correspondre à des niveaux de complétude ordonnés dudit contenu. La notion considérée de complétude du contenu dépend du contexte d'application du procédé ; une liste non limitative d'exemples en sera donnée dans la suite. Un programme multimédia codé et embrouillé par composantes est un flux formé d'au moins k flux élémentaires d'informations h à Ik, où k est un entier supérieur ou égal à deux. Typiquement, chaque flux élémentaire d'informations h à Ik est transporté par un canal respectif Ci à Ck de données. Ces flux élémentaires d'informations h à Ik sont temporellement synchronisés les uns avec les autres.
Dans un contenu en codage hiérarchique embrouillé, ces flux élémentaires, ou composantes, sont en outre hiérarchiquement organisé(e)s les un(e)s par rapport aux autres de la façon suivante :
- le flux élémentaire d'informations \-\ correspond au niveau de complétude le plus bas du contenu et contient des informations \-\ de type vidéo ou audio destinées à être utilisées par un dispositif multimédia, après désembrouillage, afin d'être rendues directement compréhensibles et intelligibles par un être humain, sans qu'il soit nécessaire d'y ajouter des informations b à Ik, le flux élémentaire d'informations h étant embrouillé avec un mot de contrôle CWi, - le flux élémentaire d'informations Ii, poun strictement supérieur à 1 , correspond à un niveau de complétude i supérieur au niveau de complétude i-1 du flux élémentaire d'informations IM , et l'améliorant directement, le flux élémentaire d'informations Ij contenant des informations Ij, destinées à être utilisées par le dispositif multimédia, après désembrouillage, en même temps que les informations \-\ à IM afin que la combinaison des informations \-\ à Ii ainsi réalisée soit directement compréhensible et intelligible par un être humain, les informations
Ii complétant les informations IM de sorte que les informations h peuvent graduellement être complétées, dans l'ordre, par les informations b et suivantes, ce qui rend possible l'utilisation, par un dispositif multimédia, du programme multimédia dans k niveaux différents de complétude, le niveau de complétude allant croissant au fur et à mesure que l'indice [ croît, chaque flux élémentaire d'informations Ij étant embrouillé avec un mot de contrôle CWj différent des mots de contrôle CWj, où i est différent de j.
Un programme multimédia peut être une émission de télévision, un film ou tout autre contenu multimédia destiné à être joué par un dispositif multimédia. Le dispositif multimédia est, par exemple, un poste de télévision lorsque le programme multimédia est une émission de télévision ou un film. Lorsque le programme multimédia est uniquement composé d'un contenu audio, le dispositif multimédia peut être une simple chaîne HIFI.
On dit que les informations sont directement compréhensibles et intelligibles par un être humain lorsqu'elles sont jouées par un dispositif multimédia si cet être humain est capable de percevoir et de comprendre les informations restituées par le dispositif multimédia sans l'aide de dispositifs électroniques complémentaires.
Le déposant connaît des procédés de contrôle d'accès à des contenus codés et embrouillés par composantes, mais sans relation hiérarchique, comportant :
- la réception de messages ECMi (Entitlement Control Message), chaque message ECMi contenant des conditions d'accès CA et un premier cryptogramme (CWi)CEi obtenu en chiffrant le mot de contrôle CW1 avec une clé d'exploitation CEi,
- la transmission au moins du message ECMk à un processeur de sécurité,
- la comparaison par le processeur de sécurité des conditions d'accès CAk contenues dans le message ECMk à des titres d'accès TA préalablement enregistrés dans le processeur de sécurité, et
- le déchiffrement par le processeur de sécurité du premier cryptogramme (CWk)cEk contenu dans le message ECMk à l'aide de la clé d'exploitation CEk uniquement si les conditions d'accès CAk correspondent aux
titres d'accès TA et, dans le cas contraire, l'interruption du traitement du message ECMk reçu.
Les procédés connus comportent également :
- la comparaison de chaque condition d'accès CAi, pour \ strictement inférieur à k, aux titres d'accès TA préalablement enregistrés dans le processeur de sécurité, et
- le déchiffrement du premier cryptogramme (CWi)CEi contenu dans le message ECMi uniquement si les conditions d'accès CAi correspondent aux titres d'accès TA préalablement enregistrés. Typiquement, les clés d'exploitation CEi et les titres d'accès TA sont mis à jour régulièrement, par exemple mensuellement, en utilisant des messages EMM1 (Entitlement Message Management). De façon à simplifier cette gestion, plusieurs composantes peuvent partager une même clé d'exploitation.
Dans la suite de ce texte on utilise la terminologie classique employée dans le domaine technique de la diffusion des programmes multimédias embrouillés vers une multitude de récepteurs. Ainsi, les termes tels que « mot de contrôle », message « ECM » ou « EMM » ne sont pas définis ici plus en détail.
Pour une meilleure compréhension concernant la terminologie propre à ce domaine technique, on pourra se reporter au document suivant : « FUNCTIONAL MODEL OF A CONDITIONAL ACCESS SYSTEM » EBU REVI EW-TECH N ICAL EUROPEAN BROADCASTING UNION. BRUSSELS, BE, no 266 21 décembre 1995.
Un processeur de sécurité est typiquement un calculateur programmable sécurisé. Lorsqu'il est amovible, il peut se présenter sous de multiples formes telles que celle, usuelle, d'une carte à puce, mais aussi celles d'un dongle, d'une clé USB, ou d'autres formats plus récents de modules amovibles de stockage.
La variété de ces supports et l'objectif de leur permettre l'utilisation des mêmes contenus de façon transparente pour l'utilisateur, rendent aujourd'hui souhaitable de minimiser la puissance de calcul requise pour mettre en œuvre les procédés de contrôle d'accès à des contenus codés et embrouillés par composantes hiérarchiques.
L'invention vise à satisfaire ce besoin en proposant un procédé de contrôle d'accès à des contenus codés et embrouillés par composantes hiérarchiques, nécessitant une puissance de calcul réduite par rapport aux procédés connus.
Elle a donc pour objet un procédé de contrôle d'accès dit hiérarchique, comportant :
- la réception et la transmission au processeur de sécurité de seconds cryptogrammes (CWi)Ki, pour [ compris entre 1 et k-1 , obtenus en chiffrant les mots de contrôle CWi à CWk-i avec des clés respectives K1 à Kk-i construites avec au moins une partie de l'ensemble formé des informations présentes dans l'ECMk et de la clé d'exploitation CEk ,
- le déchiffrement du premier cryptogramme (CWk)CEk et des seconds cryptogrammes (CWi)Ki uniquement si les conditions d'accès CAk reçues dans le message ECMk correspondent aux titres d'accès TA et sans comparer au préalable les conditions d'accès CAi aux titres d'accès TA pour \ strictement inférieur à k, et dans le cas contraire,
- l'interdiction du déchiffrement du premier cryptogramme (CWk)CEk et des seconds cryptogrammes (CWi)Ki pour i compris entre 1 et k-1 , si les conditions d'accès CAk ne correspondent pas aux titres d'accès TA.
Dans le procédé ci-dessus, il n'est pas nécessaire de procéder à la comparaison des conditions d'accès CAj aux titres d'accès TA pour tous les messages ECMi, où i est strictement inférieur à k, afin de pouvoir obtenir les mots de contrôle CWi à CWk. Puisque ces opérations de comparaison ne sont pas systématiquement nécessaires pour obtenir les mots de contrôle CWi à CWk, la puissance de calcul requise du processeur de sécurité est réduite. De plus, lorsque les seconds cryptogrammes (CWi)Ki utilisés ici sont déchiffrés avec des clés Ki obtenues à partir des seules informations présentes dans l'ECMk et de la clé d'exploitation CEk , le déchiffrement des mots de contrôle
CWi à CWk est possible même si les clés d'exploitation CEi à CEk-i ne sont pas à jour, par exemple. Dans ce cas, dans le procédé ci-dessus, la gestion et la mise à jour des clés CE1 à CEk-1 n'est pas nécessaire pour obtenir les mots de contrôle
CW1 à CWk. Ceci peut être mis à profit pour simplifier la gestion des clés d'exploitation CEi pour i compris entre 1 et (k-1 ) tout en maintenant la possibilité d'accès au niveau k.
Les modes de réalisation de ce procédé de contrôle d'accès hiérarchique peuvent comporter une ou plusieurs des caractéristiques suivantes :
- le procédé comporte la construction d'au moins l'une des clés Kj, pour \ compris entre 1 et k-1 , à partir d'informations uniquement contenues dans le message ECMk de sorte que si le traitement du message ECMk est interrompu car les conditions d'accès CAk ne correspondent pas aux titres d'accès TA, le déchiffrement d'au moins un des seconds cryptogrammes est rendu impossible ;
- le procédé comporte la construction d'au moins l'une des clés Kj, pour i compris entre 1 et k-1 , à partir du mot de contrôle CWk obtenu après déchiffrement du premier cryptogramme (CWk)cEk uniquement lorsque les conditions d'accès CAk correspondent aux titres d'accès TA ;
- le procédé comporte la construction de la clé Kk-i à partir du mot de contrôle CWk obtenu après déchiffrement du premier cryptogramme (CWk)cEk uniquement lorsque les conditions d'accès CAk correspondent aux titres d'accès TA, et la construction de chaque clé Kj, pour j strictement inférieur à k-1 , à partir du mot de contrôle CWi+i obtenu après déchiffrement du second cryptogramme (CWi+1 )κi+i ;
- le procédé comporte pour chaque message ECMi reçu , pour \ compris entre 1 et k, au plus le déchiffrement d'un seul second cryptogramme (CWj)κj pour j compris entre 1 et i-1 ;
- le procédé comporte pour le message ECMk, en plus du déchiffrement du premier cryptogramme (CWk)cEk, le déchiffrement de l'ensemble des seconds cryptogrammes, (CWi)Ki poun compris entre 1 et k-1 , contenu dans ce message ECMk ; - chaque flux élémentaire d'informations \\, pour [ strictement supérieur à 1 , ne contient pas assez d'informations pour être directement compréhensible et intelligible par un être humain lorsqu'il est joué seul par le dispositif multimédia ;
- chaque flux élémentaire d'informations h à Ik est transporté par l'intermédiaire d'un canal respectif Ci à Ck de données. Les modes de réalisation du procédé de contrôle d'accès hiérarchique présentent en outre les avantages suivants :
- la construction de la clé Kk-i à partir du mot de contrôle CWk, et de chaque clé Ki, pour [ strictement inférieur à k-1 , à partir du mot de contrôle CWi+i
rend le déchiffrement de l'un quelconque des seconds cryptogrammes impossible tant que le cryptogramme (CWk)cEk n'a pas été déchiffré avec succès,
- placer au plus un second cryptogramme (CWi)Ki dans chaque message ECMi limite la taille de chaque message ECMi, - placer l'ensemble des seconds cryptogrammes dans le message
ECMk permet le désembrouillage des flux d'informations h à Ik sans qu'il soit nécessaire pour cela d'envoyer au processeur de sécurité les messages ECMi à ECMk-i,
L'invention a également pour objet un procédé de conditionnement d'accès, dit hiérarchique, d'un programme multimédia comportant :
- l'embrouillage des flux élémentaires d'informations \-\ à lk respectivement avec des mots de contrôle CW1 à CWk, chaque mot de contrôle CWi étant différent des mots de contrôle CWj, où i est différent de ^
- la construction et la transmission de messages ECMi, où [ est un nombre entier compris entre 1 et k, chaque message ECMi contenant des conditions d'accès CA et un premier cryptogramme (CWi)0Ei obtenu en chiffrant le mot de contrôle CW1 avec une clé d'exploitation CE1,
- la construction et la transmission de seconds cryptogrammes, (CWi)Ki pour [ compris entre 1 et k-1 , obtenus en chiffrant les mêmes mots de contrôle CWi à CWk-i avec des clés respectives Ki à Kk-i construites avec au moins une partie de l'ensemble formé des informations présentes dans l'ECMk et de la clé d'exploitation CEk.
L'invention a également pour objet un processeur de sécurité pour la mise en œuvre du procédé de contrôle d'accès hiérarchique ci-dessus, ce processeur de sécurité comprenant une mémoire stockant des titres d'accès TA préalablement enregistrés et au moins une clé d'exploitation CEk, ce processeur de sécurité étant apte à :
- comparer les conditions d'accès CAk contenues dans le message ECMk aux titres d'accès TA préalablement enregistrés dans la mémoire de ce processeur de sécurité, et
- déchiffrer le premier cryptogramme (CWk)cEk contenu dans le message ECMk à l'aide de la clé d'exploitation CEk uniquement si les conditions
d'accès CAk correspondent aux titres d'accès TA et, dans le cas contraire, à interrompre le traitement du message ECMk reçu.
Ce processeur de sécurité est également apte à :
- recevoir des seconds cryptogrammes, (CWi)Ki pour [ compris entre 1 et k-1 , obtenus en chiffrant les mots de contrôle CW1 à CWk-1 avec des clés respectives K1 à Kk-1 construites avec au moins une partie de l'ensemble formé des informations présentes dans l'ECMk et de la clé d'exploitation CEk ,
- déchiffrer les seconds cryptogrammes (CWi)Ki uniquement si les conditions d'accès CAk reçues dans le message ECMk correspondent aux titres d'accès TA et sans comparer au préalable les conditions d'accès CAj aux titres d'accès TA pour [ strictement inférieur à k, et dans le cas contraire,
- interdire le déchiffrement des seconds cryptogrammes (CWi)Ki si les conditions d'accès CAk ne correspondent pas aux titres d'accès TA.
L'invention a également pour objet un émetteur pour la mise en œuvre du procédé de conditionnement d'accès hiérarchique ci-dessus, cet émetteur comprenant :
- un embrouilleur propre à embrouiller les flux élémentaires d'informations Ii à lk respectivement avec des mots de contrôle CW1 à CWk, chaque mot de contrôle CWj étant différent des mots de contrôle CWj, où i est différent de i,
- un générateur de messages ECMi, où i est un nombre entier compris entre 1 et k, chaque message ECMi contenant des conditions d'accès CAi et un premier cryptogramme (CWi)0Ei obtenu en chiffrant le mot de contrôle CWi avec une clé d'exploitation CE1. Cet émetteur est apte à construire et à diffuser des seconds cryptogrammes, (CWi)κi pour \ compris entre 1 et k-1 , obtenus en chiffrant les mêmes mots de contrôle CW1 à CWk-1 avec des clés respectives K1 à Kk-1 construites avec au moins une partie de l'ensemble formé des informations présentes dans l'ECMk et de la clé d'exploitation CEk. L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple non limitatif.
Cette description est faite en se référant aux dessins sur lesquels :
- la figure 1 est une illustration schématique d'un système d'émission et de réception de programmes multimédias embrouillés,
- la figure 2 est une illustration schématique d'un exemple d'organisation hiérarchique de flux élémentaires d'informations d'un programme multimédia,
- la figure 3 est une illustration schématique d'une portion d'un flux d'informations multiplexées émis par un émetteur du système de la figure 1 ,
- la figure 4 est une illustration schématique d'une table PMT (Program Map Table) utilisée dans le système de la figure 1 , - la figure 5 est une illustration schématique d'une portion d'un flux élémentaire d'informations de la figure 2,
- la figure 6 est une illustration schématique d'un message ECMj correspondant à un paquet du flux d'informations multiplexées de la figure 3,
- la figure 7 est un organigramme d'un procédé de conditionnement et de contrôle d'accès à un programme multimédia mis en œuvre dans le système de la figure 1 , et
- la figure 8 est un organigramme d'un autre mode de réalisation du procédé de la figure 7.
Dans ces figures, les mêmes références sont utilisées pour désigner les mêmes éléments.
Dans la suite de cette description, les caractéristiques et fonctions bien connues de l'homme du métier ne sont pas décrites en détail.
La figure 1 représente un système 2 de diffusion et de réception de programmes multimédias embrouillés. Ce système 2 comporte un émetteur 4 de programmes multimédias embrouillés raccordé à une multitude de récepteurs par l'intermédiaire d'un réseau 6 grande distance de transmission d'informations également connu sous l'acronyme WAN (Wide Area Network).
Le réseau 6 est, par exemple, un réseau de transmission d'informations par l'intermédiaire de satellites ou un réseau WAN sur lequel est mis en œuvre le protocole IP (Internet Protocol) tel que la toile d'araignée mondiale plus connue sous le terme « Internet ».
L'émetteur 4 reçoit des flux élémentaires d'informations formant un programme multimédia Pa à diffuser vers l'ensemble des récepteurs sous forme
embrouillée. A cet effet, l'émetteur 4 comprend un embrouilleur 10 propre à embrouiller chaque flux élémentaire d'informations Ii à l'aide d'un mot de contrôle respectif CWj afin d'obtenir un flux d'informations embrouillées.
L'émetteur 4 comprend également un générateur 12 de messages ECMj (Entitlement Control Message). Chaque message ECMj contient un cryptogramme (CWi)cEi du mot de contrôle CWj utilisé pour embrouiller un flux élémentaire d'informations. Plus précisément, le cryptogramme (CWi)CEi est obtenu en chiffrant le mot de contrôle CWj à l'aide d'une clé d'exploitation CEj. Les mots de contrôle CWj et les clés d'exploitation CEj sont changés régulièrement. Toutefois, les mots de contrôle CWj sont modifiés beaucoup plus fréquemment que les clés d'exploitation CEj. Par exemple, les mots de contrôle sont modifiés avec une périodicité inférieure à la minute, tandis que les clés d'exploitation sont modifiées avec une périodicité supérieure à plusieurs semaines et, typiquement, supérieure ou égale à quatre semaines. L'émetteur 4 comprend également un multiplexeur 14 apte à créer un flux
Fm d'informations multiplexées contenant entre autres les flux élémentaires d'informations embrouillées et les messages ECMj générés.
L'émetteur 4 est apte à diffuser le flux Fm vers l'ensemble des récepteurs connectés au réseau 6. Pour simplifier la figure 1 , seuls deux récepteurs 20, 22 raccordés à leurs dispositifs multimédias respectifs 24, 26 ont été représentés.
Par exemple, les dispositifs 24 et 26 sont ici des postes de télévision. Ici, les récepteurs 20 et 22 sont identiques et seul le récepteur 20 sera décrit plus en détail. Le récepteur 20 comprend :
- un décodeur 30 raccordé, par exemple, au réseau 6 par l'intermédiaire d'une antenne 32 et d'une liaison sans fil 34,
- une unité de désembrouillage 36 propre à désembrouiller les informations embrouillées reçues par l'intermédiaire de la liaison 34, et - un processeur de sécurité 38 propre à déchiffrer les mots de contrôle
CWj nécessaires au désembrouillage des informations embrouillées.
Par exemple, le décodeur est équipé d'un démultiplexeur 39 propre à recevoir le flux Fm transmis par l'intermédiaire du réseau 6 et à transmettre les
messages ECMi au processeur de sécurité 38 et les flux élémentaires d'informations embrouillés à l'unité de désembrouillage 36.
Le processeur de sécurité 38 comporte un calculateur électronique programmable 40 dans lequel est implémenté un module cryptographique 42 propre à effectuer les opérations de déchiffrement nécessaires à l'exécution du procédé de la figure 7.
Le processeur de sécurité 38 comporte également une mémoire 44 raccordée au calculateur 40. Cette mémoire 44 comporte les informations nécessaires au désembrouillage du programme multimédia P3. En particulier, la mémoire 44 comporte :
- les clés d'exploitation CEj nécessaires au déchiffrement des mots de contrôle CWi, et
- des titres d'accès TA permettant d'autoriser et, en alternance, d'interdire le déchiffrement des mots de contrôle CWj. Les clés d'exploitation CEj et les titres d'accès TA sont enregistrés dans la mémoire 44 avant la réception du programme multimédia Pa. Typiquement, les clés d'exploitation CEj et les titres d'accès TA sont mis à jour par l'intermédiaire de messages EMM (Entitlement Management Message), reçus à intervalles réguliers par l'intermédiaire du réseau 6. Le processeur de sécurité 38 est apte à transmettre à l'unité de désembrouillage 36 les mots de contrôle déchiffrés CWj.
L'unité de désembrouillage 36 est apte à désembrouiller les informations embrouillées à l'aide des mots de contrôle CWi transmis par le processeur de sécurité 38. Le décodeur 30 est également apte à transmettre au dispositif multimédia
24 des signaux vidéo et audio obtenus à partir du programme multimédia Pa désembrouillés afin que ceux-ci puissent être présentés en clair à l'utilisateur. On considère que la présentation des signaux vidéo et audio est réalisée « en clair » si les images et les sons présentés par le dispositif 24 sont directement compréhensibles et intelligibles par un être humain sans passer par l'intermédiaire de dispositifs électroniques supplémentaires. Plus généralement, une utilisation, autre que sa présentation à l'utilisateur, peut être faite du programme multimédia en clair.
La figure 2 représente un exemple des différents flux élémentaires d'informations qui constituent le programme multimédia Pa. Ici, le programme multimédia P3 est décomposé en plusieurs types de données et chaque type de données est décomposé en un ou plusieurs flux élémentaires d'informations. Les différents flux élémentaires d'informations d'un même programme multimédia sont synchronisés temporellement les uns par rapport aux autres. De plus, ici, les différents flux élémentaires d'un même type de données sont organisés hiérarchiquement les uns par rapport aux autres.
Par exemple, ici, on distingue trois types de données, à savoir les données vidéo, les données audio et les données alphanumériques. Dans cet exemple, on suppose que les données alphanumériques et les données audio ne sont formées, respectivement, que d'un seul flux élémentaire d'informations A1 et D1. Par contre, les données vidéo sont formées de cinq flux élémentaires d'informations V1 à V5.
Les flux élémentaires d'informations V1 à V5 sont organisés hiérarchiquement les uns par rapport aux autres. Ici, l'organisation hiérarchique de ces flux est représentée sous forme d'une structure arborescente dans laquelle :
- le flux d'informations V1 est au niveau hiérarchique le plus bas, noté ici niveau 1 , et constitue le nœud racine de cette structure arborescente,
- le flux d'informations V2 dépend hiérarchiquement directement du flux d'informations V1 et se trouve donc au niveau 2 de la hiérarchie,
- les flux d'informations V3 et V5 dépendent hiérarchiquement directement du flux d'informations V2 et se trouvent donc chacun au niveau 3 de la hiérarchie, et
- le flux d'informations V4 dépend hiérarchiquement directement du flux d'informations V3 et se trouve donc au niveau 4 de la hiérarchie.
Cette organisation hiérarchique définit plusieurs suites ordonnées par ordre croissant de niveaux de complétude. Par exemple, ici, cette organisation hiérarchique définit deux suites croissantes de niveaux de complétude, à savoir (V1 , V2, V5} et (V1 , V2, V3, V4}. De manière à ce que l'indice \ utilisé dans la suite de cette description corresponde au niveau hiérarchique du flux d'informations et donc à son niveau de complétude, dans chacune de ces suites ordonnées, on note h le flux d'informations au niveau hiérarchique [.
De plus, pour simplifier, dans la suite de cette description, on décrit en détail le système et les procédés de conditionnement et de contrôle d'accès hiérarchique uniquement dans le cas particulier de la suite (V1, V2, V3, V4} que l'on note, ci-dessous, (I1 à l4}. Ce qui est décrit ci-dessous dans le cas particulier de la suite (V1, V2, V3, V4} est aisément transposable au cas de la suite (V1, V2, V5} et à toutes suites ordonnées par niveau de complétude croissant de flux d'informations.
Lorsqu'un flux d'informations Ii dépend hiérarchiquement, directement ou non, d'un autre flux d'informations, cela signifie que les informations Ij ne peuvent pas être exploitées indépendamment des informations de niveau hiérarchique inférieur. A cet effet, le flux d'informations Ij, pour j supérieur à 1 , ne contient pas assez d'informations en lui-même pour permettre la construction d'un signal vidéo compréhensible et intelligible par un être humain lorsqu'il est joué par le dispositif multimédia 24 sans avoir recours à des informations contenues dans les flux d'informations I1 à Ij-1. Seul le flux d'informations I1 contient assez d'informations pour être directement compréhensible et intelligible par un être humain lorsqu'il est joué seul par le dispositif 24.
Autrement dit, chaque flux d'informations Ii, où [ est strictement supérieur à 1 , n'est pas complètement redondant avec les flux élémentaires d'informations de niveaux hiérarchiques inférieurs.
A titre d'exemple, on suppose ici que :
- le flux d'informations V1 code un signal vidéo dont la résolution est suffisamment faible pour permettre l'affichage de cette vidéo sur un écran d'un téléphone mobile sans que ce téléphone mobile n'ait à effectuer aucun traitement visant à réduire la quantité d'informations à afficher tel que, par exemple, une quantification,
- le flux d'informations V2 est propre à compléter le flux d'informations V1 pour obtenir des images en simple définition, c'est-à-dire, par exemple, 625 lignes par image et au format 4/3, - le flux d'informations V5 complète les informations V2 pour passer de la simple définition à la haute définition (plus de 1000 lignes par image) tout en maintenant un format d'image de 4/3,
- le flux d'informations V3 complète le flux d'informations V2 pour passer d'un format d'affichage 4/3 à un format d'affichage 16/9 tout en restant en simple définition, et
- le flux d'informations V4 complète le flux d'informations V3 pour passer du format d'affichage 16/9 en simple définition au format d'affichage 16/9 en haute définition.
Les formats 4/3 et 16/9 ainsi que les résolutions d'images « simple définition » et « haute définition » sont définis par les normes sur le codage des signaux vidéo. On notera ici que les suites {Vi, V2, V5} et {Vi, V2, V3, V4} sont organisées par qualité d'image croissante. Ainsi, le flux d'informations V1 transporte le signal vidéo dont la qualité est la plus médiocre et qui, par conséquent, est susceptible d'être affiché par n'importe quel dispositif multimédia.
Ici, chaque flux élémentaire d'informations V pour i compris entre 1 et 5 est embrouillé à l'aide d'un mot de contrôle CWj différent des mots de contrôle utilisés pour embrouiller les autres flux élémentaires d'informations Vj, où i est différent de L
Ainsi, grâce à l'organisation hiérarchique représentée sur la figure 2, il est possible d'autoriser sélectivement le désembrouillage des flux élémentaires d'informations h à Ii tout en interdisant le désembrouillage des flux d'informations li+i à I4. On remarquera cependant qu'étant donné que le flux d'informations élémentaires Ii ne contient pas toutes les informations h à IM , l'autorisation de désembrouiller le flux élémentaire d'informations Ii doit nécessairement s'accompagner de l'autorisation de désembrouiller les flux d'informations \-\ à IM pour permettre de présenter un programme multimédia compréhensible et intelligible par l'utilisateur.
Chaque mot de contrôle CWi est communiqué par l'émetteur 4 au récepteur par l'intermédiaire d'un message ECMi contenant un cryptogramme (CWi)0Ei du mot de contrôle CWi. Ainsi, dans ce mode de réalisation, il existe autant de messages ECMi que de flux élémentaires d'informations embrouillées transmis.
Chaque flux élémentaire d'informations Ii est transmis dans son propre canal élémentaire de données C1 de l'émetteur 4 vers les récepteurs. Chaque canal élémentaire de données comporte un seul flux élémentaire d'informations.
Dans la suite de cette description, on note O, le canal de données utilisé pour transmettre le flux élémentaire d'informations Ij.
Ici, les flux élémentaires d'informations audio et alphanumériques n'étant pas organisés hiérarchiquement de manière à former une suite croissante de niveaux de complétude, leur transmission sera considérée comme conventionnelle et donc non décrite en détail par la suite.
La figure 3 représente un exemple d'organisation du flux d'informations multiplexées Fm transmis par l'émetteur 4. Cet exemple est inspiré du format des flux d'informations multiplexées conforme aux normes MPEG2-TS et DVB et certaines notations utilisées ici correspondent à celles de ces normes MPEG2 et
DVB. Toutefois, le lecteur doit bien garder à l'esprit que l'exemple d'organisation du flux Fm donné en regard de la figure 3 n'est donné qu'à titre d'illustration et de nombreuses autres organisations sont possibles pour multiplexer dans un même flux d'informations différents flux élémentaires d'informations Ii organisés de façon hiérarchique. Cet exemple est directement transposable dans le cadre des protocoles propres à TCP-IP tels RTP (Real Time Protocol) ou UDP pour la diffusion des flux d'informations en unicast comme en multicast, l'usage de
Ismacryp pour le chiffrement des contenus et l'usage par exemple de SDP
(Session Description Protocol) pour la description des flux élémentaires formant le programme multimédia selon leurs adresses au sens des protocoles cités.
La figure 3 représente seulement les parties du flux d'informations multiplexées pertinentes pour la description qui va suivre.
Ici, le flux d'informations est multiplexe temporellement. Ce flux d'informations multiplexées est donc constitué d'une succession temporelle de paquets. Chaque paquet comporte un identifiant PID de voie ou de canal. Sur la figure 3, les valeurs indiquées en hexadécimal correspondent à la valeur de l'identifiant PID de chacun des paquets représentés. La succession temporelle des paquets ayant le même identifiant PID forme un canal élémentaire de données. A titre d'exemple, tous les paquets du flux Fm ont la même longueur et comportent, par exemple, 188 octets.
L'identifiant PIDOxOO identifie un canal élémentaire réservé pour la transmission d'une table PAT (Program Association Table). Cette table PAT associe à chaque programme multimédia diffusé, l'identifiant PID du canal
élémentaire utilisé pour transmettre une table PMT (Program Map Table) associée à ce programme multimédia. Par exemple, dans le flux Fm, la table PAT associe l'identifiant PIDOxδO au programme P3.
Le canal élémentaire identifié par l'identifiant PIDOxδO est uniquement utilisé pour transmettre la table PMT. La table PMT indique pour chaque type de données formant le programme multimédia quels sont les identifiants PID des canaux élémentaires sur lesquels sont transmis les flux d'informations correspondants. La table PMT indique également dans quels canaux élémentaires sont transmis les messages ECMj associés à chacun des flux élémentaires d'informations.
La figure 4 représente un exemple de table PMT susceptible d'être utilisée lors de la transmission du programme multimédia P3. Cette table comporte une première colonne T-Id. La colonne T-Id comporte l'identifiant du type de données. Une seconde colonne PID indique la valeur de l'identifiant PID des canaux élémentaires utilisés pour transmettre les données du type considéré. Par exemple, sur la figure 4, la colonne T-Id comporte quatre identifiants V, A, D et ECM, correspondant respectivement aux types de données suivant : données vidéo, données audio, données alphanumériques et messages ECM. La colonne PID associe : - les valeurs 0x81 à 0X85 au type de données vidéo,
- la valeur 0x90 au type de données audio,
- la valeur 0x100 au type de données alphanumériques, et
- les valeurs 0x111 à 0x115 aux messages ECM.
Plus précisément, la table PMT de la figure 4 indique que les canaux élémentaires Ci à C5 correspondent, respectivement, aux identifiants PID0x81 à 0x85. De même, les canaux élémentaires utilisés pour transmettre les messages ECMi à ECM5 correspondent, respectivement, aux PID 0x111 à 0x115.
On remarquera ici que puisque les données vidéo sont organisées en une hiérarchie de plusieurs flux élémentaires d'informations \Λ à V5, l'identifiant O, de type de données vidéo est associé à autant de valeurs d'identifiants PID que de flux élémentaires d'informations vidéo V1 à V5. De façon similaire, étant donné que les flux d'informations élémentaires Vi à V5 sont embrouillés avec des mots de contrôle respectifs CWi à CW5, l'identifiant du type de données ECM est associé à
autant de valeurs d'identifiants PID que de flux élémentaires d'informations embrouillées avec des mots de contrôle différents.
Chaque paquet du flux Fm comprend également un numéro d'ordre qui définit la position temporelle de ce paquet par rapport aux autres paquets reçus par l'intermédiaire du même canal. De plus, la position de chaque paquet dans le flux Fm par rapport aux autres paquets des autres canaux définit la relation temporelle qu'il existe entre les informations transmises dans chacun de ces paquets. Par exemple, sur la figure 3, les paquets des canaux Ci à C4 qui se trouvent les uns à côté des autres dans le flux Fm transportent les informations \-\ à I4 destinées à être jouées en même temps par le dispositif 24. Ainsi, par ce biais là, les flux élémentaires d'informations \-\ à I4 sont synchronisés temporellement entre eux.
Sur la figure 3, les canaux élémentaires utilisés pour transmettre les flux d'informations audio Ai et alphanumériques Di sont notés CAi et CDi . Chaque canal élémentaire utilisé pour transmettre le message ECMj est noté CECMj. La position des différents paquets des canaux CAi, CDi et CECMj par rapport aux paquets des canaux Cj dans le flux Fm définit une relation temporelle entre les informations audio Ai, alphanumériques Di, les messages ECMj et les informations Ij. Ainsi, il est possible de déterminer, à chaque instant, quels sont les messages ECMj à utiliser pour désembrouiller les informations Ij et les informations audio Ai, alphanumériques Di à jouer en même temps.
Les paquets de chaque canal élémentaire se succèdent, par exemple, à intervalles de temps réguliers dans le flux Fm.
La figure 5 représente un exemple de l'architecture d'un paquet du canal Q. Ce paquet comporte l'identifiant PID et l'information I1 embrouillée à l'aide du mot de contrôle CWj. De plus, ici, chaque paquet comporte un identifiant ICI-IM indiquant la position hiérarchique de l'information Ij par rapport aux autres informations Ij, où i est différent de \. Par exemple, l'identifiant ICI-IM est égal à l'identifiant PID du canal CM utilisé pour transmettre le flux élémentaire d'informations IM que complète directement le flux élémentaire d'informations Ij. Lorsque l'indice \ est égal à 1 , c'est-à-dire que l'information I1 est en bas de hiérarchie, l'identifiant ICI-IM prend une valeur prédéterminée tel que, par exemple, zéro. Ainsi, grâce à ces identifiants ICI-IM chaque récepteur est capable de
reconstruire la hiérarchie des flux élémentaires d'informations Ii représentée sur la figure 2.
La figure 6 représente un exemple d'architecture pour un paquet du canal
CECMj. Ce paquet comporte l'identifiant PID du canal CECMj ainsi que les différents champs formant le message ECM1. Ici, seuls les champs du message
ECMj nécessaires à la compréhension de la suite de la description sont représentés. Le message ECMj comprend :
- un premier cryptogramme (CWj)CEi obtenu en chiffrant le mot de contrôle CW1 à l'aide de la clé d'exploitation CE1, - des conditions d'accès CAj destinées à être comparées aux titres d'accès TA préalablement enregistrés dans le processeur de sécurité afin d'autoriser ou au contraire d'interdire l'accès au programme multimédia par le récepteur, et
- un second cryptogramme (CWj-i)cwi obtenu en chiffrant le mot de contrôle CWj-1 à l'aide du mot de contrôle CWj.
Le cryptogramme (CWj-i)cwi existe uniquement dans les messages ECMj, où i est strictement supérieur à 1.
Le fonctionnement du système 2 va maintenant être décrit en regard du procédé de la figure 7. Le procédé de la figure 7 comprend une phase 70 de conditionnement de l'accès aux flux élémentaires d'informations h à I4 et d'émission de ces flux, suivie d'une phase 72 de réception et de contrôle de l'accès, par chaque récepteur, aux flux élémentaires d'informations h à I4 transmis.
Lors de la phase 70, les informations Ij sont traitées par ordre croissant d'indice \.
La phase 70 débute par une étape 80 de réception du paquet d'informations Ij à transmettre. Ensuite, lors d'une étape 82, l'émetteur 4 génère un mot de contrôle CWj.
Lors d'une étape 84, l'embrouilleur 10 embrouille le paquet d'informations Ij à l'aide du mot de contrôle CW1.
Lors d'une étape 86, le générateur 12 chiffre le mot de contrôle CW1 avec la clé d'exploitation CEj pour obtenir le cryptogramme (CWj)CEi-
Si l'indice i est strictement supérieur à 1 , lors d'une étape 88, le générateur 12 chiffre également le mot de contrôle CWM avec une clé KM de manière à obtenir un second cryptogramme (CWj-1)Ki-I du mot de contrôle CWj-1. La clé K1-1 est indépendante des clés d'exploitation CE1 à CEi-2. De préférence, la clé Kj-1 est obtenue à partir d'informations contenues dans le message ECMj en cours de génération. Par exemple, ici, la clé Kj-1 est choisie égale au mot de contrôle CWj. Le second cryptogramme (CWj-1)Ki-1 est donc noté par la suite (CWM )cwι-
Si l'indice i est égal à 1 , la valeur OxOO est inscrite dans le champ prévu pour recevoir le cryptogramme (CWJ-1 )CWJ. Lors d'une étape 90, le générateur 12 génère le message ECMj. Ce message ECMj contient donc en particulier, les conditions d'accès CA1, le cryptogramme (CWj)CEi et le cryptogramme (CWj-1)CWi- Les opérations 80 à 90 sont réitérées pour \ allant de 1 à 4. Ces étapes sont également exécutées pour embrouiller les informations V5, A1 et D1 et pour générer les messages ECM correspondants.
Ensuite, lors d'une étape 92, le multiplexeur 14 multiplexe les différents paquets d'informations embrouillés, et les messages ECM1 pour créer le flux Fm d'informations multiplexées décrit en regard de la figure 3.
Lors d'une étape 94, le flux Fm est diffusé vers l'ensemble des récepteurs du système 2 par l'intermédiaire du réseau 6.
La phase 72 débute par une étape 100 de réception du flux Fm diffusé par l'émetteur 4.
Ensuite, lors d'une étape 102, le démultiplexeur 39 démultiplexe les différents canaux élémentaires du flux Fm. Lors d'une étape 104, le démultiplexeur 39 transmet les flux élémentaires d'informations I1 à I4, V5, A1 et D1 à l'unité de désembrouillage 36. En parallèle, lors d'une étape 106, le démultiplexeur 39 transmet les messages ECMi contenus dans les canaux CECMi au processeur de sécurité 38.
Ensuite, dans l'ordre décroissant des indices j, lors d'une étape 108, le processeur de sécurité 38 compare les conditions d'accès CAi aux titres d'accès
TA préalablement enregistrés. Donc, dans l'exemple décrit ici, le processeur de sécurité 38 commence par comparer les conditions d'accès CA4 aux titres d'accès
TA.
Si les conditions d'accès CA4 ne correspondent pas aux titres d'accès TA, alors, lors d'une étape 110, le processeur de sécurité 38 rend le désembrouillage des informations I4 impossible. Par exemple, lors de l'étape 110, le processeur de sécurité 38 inhibe le déchiffrement du cryptogramme (CW4)CE4- Après l'étape 110, le procédé retourne à l'étape 108. Lors de la nouvelle génération de l'étape 108, le processeur de sécurité 38 réitère les mêmes comparaisons que précédemment mais pour l'indice i-1. Ainsi, lors de la nouvelle itération de l'étape 108, le processeur de sécurité 38 compare les conditions CA3 aux titres d'accès TA.
Tant qu'aucune des conditions d'accès reçues CAj ne correspondent aux titres d'accès TA, alors l'étape 108 est réitérée jusqu'à comparer les conditions d'accès CA1 aux titres d'accès TA. Si les conditions d'accès CA1 ne correspondent pas aux titres d'accès TA, alors l'étape 110 est exécutée puis la phase 72 s'interrompt. En effet, cela signifie que ce récepteur n'est pas autorisé à désembrouiller le programme multimédia Pa. Si, lors de l'étape 108, le processeur de sécurité 38 établit que les conditions d'accès CAk reçues correspondent aux titres d'accès TA préalablement enregistrés dans la mémoire 44, alors, le processeur de sécurité 38 procède à une étape 114 de déchiffrement du cryptogramme (CWk)CEk à l'aide de la clé d'exploitation CEk préalablement enregistrée dans sa mémoire 44. Ici, on note donc k la plus grande valeur de l'indice j pour laquelle les conditions d'accès CAj correspondent aux titres d'accès TA.
Ensuite, lors d'une étape 116, si k est strictement supérieur à 1 , le processeur de sécurité 38 déchiffre le second cryptogramme (CWk-1)κk-i contenu dans le message ECMk afin d'obtenir un mot de contrôle CWk-1. En l'occurrence, dans ce mode de réalisation, lors de l'étape 116, le processeur de sécurité 38 déchiffre le cryptogramme (CWk-1)Cwk à l'aide du mot de contrôle CWk obtenu à l'issue de l'étape 114.
Ensuite, lors d'une étape 118, les seconds cryptogrammes(CW1)Ki à (CWk- 2)κk-2 contenus, respectivement, dans les messages ECIVb à ECMk-1 sont déchiffrés de proche en proche dans l'ordre décroissant de leurs indices.
Une fois l'ensemble des mots de contrôle CW1 à CWk obtenus, ceux-ci sont transmis, lors d'une étape 120, à l'unité de désembrouillage 36.
Lors d'une étape 122, l'unité de désembrouillage 36 désembrouille les flux élémentaires d'informations h à Ik à l'aide, respectivement, des mots de contrôle CW1 à CWk.
Les flux élémentaires d'informations I1 à Ik désembrouillés par l'unité de désembrouillage 36 sont alors transmis au décodeur 30 lors d'une étape 124.
En réponse, lors d'une étape 126, le décodeur 30 combine entre eux les flux d'informations désembrouillés I1 à Ik pour produire le signal vidéo construit à l'aide des informations contenues dans chacun de ces flux élémentaires d'informations désembrouillés. Enfin, lors d'une étape 128, le dispositif multimédia 24 présente sous la forme d'images directement compréhensibles et intelligibles par un être humain, le signal vidéo reçu du décodeur 30. Les étapes 80 à 128 sont réitérées en boucle.
On remarquera que lors de la phase 72, l'obtention des mots de contrôle CWi à CWk-i ne nécessite pas la comparaison des conditions d'accès CAi à CAk-i aux titres d'accès préalablement enregistrés TA.
La figure 8 représente un autre mode de réalisation du procédé de la figure 7. Le procédé de la figure 8 est identique au procédé de la figure 7 à l'exception que :
- l'étape 88 est remplacée par une étape 140, lors de laquelle le mot de contrôle CWj-I est chiffré à l'aide du mot de contrôle CWj et les mots de contrôle CWi à CWi-2 sont chiffrés à l'aide, respectivement, des mots de contrôle CW2 à CWM,
- l'étape 90 est remplacée par une étape 142 lors de laquelle le message ECMj généré comporte en plus du cryptogramme (CWj-1)CWi les cryptogrammes (CW1 )Cw2 à (CWi-2)cwi-i, et
- les étapes 116 et 118 sont remplacées par une étape 146 de déchiffrement de proche en proche de l'ensemble des seconds cryptogrammes (CWj-1)CWi contenus dans le même message ECMj de manière à obtenir les mots de contrôle CW1 à CWM . Dans le procédé de la figure 8, l'ensemble des seconds cryptogrammes nécessaires à la visualisation du programme multimédia avec un niveau de complétude donné sont contenus dans le même message ECMj. Il n'est donc plus
nécessaire de transmettre au processeur de sécurité 38 les messages ECMi à ECMM .
De nombreux autres modes de réalisation sont possibles. Par exemple, l'organisation hiérarchique des flux élémentaires d'informations n'est pas limitée à quatre niveaux de complétude. En fait, ce qui a été décrit précédemment s'applique dès qu'il y a plus de deux niveaux de complétude. Toutefois, de préférence, les procédés de conditionnement et de contrôle d'accès décrits ci- dessus s'appliquent au cas où il existe au moins une suite de trois niveaux successifs de complétude. Ce qui a été décrit ci-dessus s'applique également à d'autres types de données que les données vidéo. En particulier, il est possible d'adapter les procédés des figures 7 et 8 aux cas des données audio ou alphanumériques ou d'autres types de données à partir du moment où celles-ci se présentent sous la forme d'une ou plusieurs suites de flux élémentaires ordonnés par niveau de complétude croissant. Ce qui a été décrit ci-dessus s'applique également aux cas où plusieurs programmes multimédias embrouillés hiérarchiquement sont multiplexes dans le même flux d'informations.
Les clés Kj utilisées pour obtenir les seconds cryptogrammes (CWi)Ki peuvent également être toutes identiques et, par exemple, prises égales soit à la clé d'exploitation CEk, soit au mot de contrôle CWk.
Ici, le conditionnement et le contrôle d'accès hiérarchiques ont été décrits dans le cas particulier où les messages ECMi sont transmis par des canaux élémentaires différents. Toutefois, en variante, l'ensemble des messages ECMi peuvent être transmis aux récepteurs par l'intermédiaire d'un seul et même canal élémentaire dédié à cet usage.
Ici, l'organisation hiérarchique du programme multimédia a été décrite dans le cas particulier où la qualité du signal vidéo obtenu augmente au fur et à mesure que l'indice [ augmente. Toutefois, l'organisation hiérarchique du programme multimédia peut être basée sur d'autres critères. Par exemple, chaque flux d'informations complémentaires peut correspondre à un objet ou un personnage à ajouter dans une scène vidéo par rapport au niveau hiérarchique inférieur. On peut, par exemple, imaginer l'exemple suivant où le flux élémentaire d'informations h code uniquement les informations nécessaires à la restitution
d'un seul personnage. Le flux élémentaire d'informations complémentaires b code uniquement l'arrière plan de la scène multimédia.
Enfin, le flux élémentaire d'informations complémentaires I3 contient les informations nécessaires à l'ajout d'un second personnage ou à l'ajout d'un médaillon contenant du hors texte dans la scène multimédia.