Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR PROVIDING PROTECTED MULTIMEDIA CONTENT TO A TERMINAL
Document Type and Number:
WIPO Patent Application WO/2015/132500
Kind Code:
A1
Abstract:
The invention relates to a method for providing protected multimedia content, during which a terminal: a) acquires (1408) a service date from a date server; and b) assesses (1414) a license time criterion corresponding to the last acquired service date. In said method: a head end associates (1202) the transmission date of the multimedia content with each segment thereof and transmits (1206) said date into a stream, together with the segment; then the terminal extracts (1400, 1402) the transmission date of the segment from the stream then compares the extracted transmission date with the last acquired date of service, and only if the extracted transmission date comes after said last acquired service date, the terminal acquires (1406) same as the service date and uses (1414) same as the last acquired service date when carrying out Step b), between two consecutive instances of carrying out Step a).

Inventors:
PHIRMIS MATHIEU (FR)
BOIVIN MATHIEU (FR)
CHIEZE QUENTIN (FR)
POCHON NICOLAS (FR)
Application Number:
PCT/FR2015/050424
Publication Date:
September 11, 2015
Filing Date:
February 20, 2015
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
VIACCESS SA (FR)
International Classes:
G06F21/10
Foreign References:
US20140033323A12014-01-30
EP1806672A22007-07-11
EP1376304A22004-01-02
US20090006854A12009-01-01
US20060248596A12006-11-02
US20100024000A12010-01-28
Other References:
"Functional Model of a Conditional Access System", EBU REVIEW, TECHNICAL EUROPEAN BROADCASTING UNION, BRUXELS, BE, N° 266, 21 December 1995 (1995-12-21)
Attorney, Agent or Firm:
COLOMBO, Michel et al. (FR)
Download PDF:
Claims:
REVENDICATIONS

1 . Procédé de fourniture, à un terminal, de contenus multimédias protégés par un système de protection de contenus multimédias, procédé dans lequel :

lors d'une phase d'émission, une tête de réseau :

a) associe (1200), à un bloc de segments de contenu multimédia, un droit d'accès nécessaire au terminal pour accéder à tout segment de ce bloc en vue de le jouer, et une licence comportant le droit d'accès et un critère temporel de validité, chacun de ces segments comportant au moins une suite de groupes d'images vidéo ou de trames audio, ce bloc comportant un ou plusieurs segments,

b) transmet (1204, 1206) au terminal la licence et un flux comportant chaque segment,

lors d'une phase de réception, le terminal :

c) reçoit (1302) le flux de segments de contenu multimédia,

d) reçoit (1300) la licence,

lors d'une phase de jeu des segments, le terminal :

e) authentifie (1408) un serveur de dates et, uniquement si le serveur de dates est authentifié avec succès, acquiert (1408) une date de service auprès de ce serveur de dates,

f) évalue (1414) le critère temporel de la licence en regard de la dernière date de service acquise, puis, si le résultat de l'évaluation est positif, extrait (1416, 1418) le droit d'accès de la licence permettant ainsi l'accès aux segments et, sinon, inhibe (1414) l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments,

procédé caractérisé en ce que :

- lors de l'étape b), la tête de réseau associe (1202) à chacun des segments sa date de transmission, et la transmet (1206) dans le flux conjointement au segment, puis, lors de la phase de jeu,

- lors d'une étape g), le terminal :

• extrait (1400, 1402) du flux, conjointement à un segment, la date de transmission du segment, puis

• compare (1404) la date de transmission extraite à la dernière date de service acquise, et

• seulement si la date de transmission extraite est postérieure à la cette dernière date de service acquise, l'acquiert (1406) comme date de service, et l'utilise (1414) comme dernière date de service acquise lors d'une prochaine exécution de l'étape f) entre deux exécutions successives de l'étape e).

2. Procédé d'obtention, par un terminal, pour la mise en œuvre du procédé de la revendication 1 , de contenus multimédias protégés, dans lequel le terminal :

lors de la phase de réception :

- à l'étape c), reçoit (1302) un flux comportant chaque segment du bloc de segments de contenu multimédia,

- à l'étape d), reçoit (1300) une licence comportant un droit d'accès nécessaire au terminal pour accéder à tout segment du bloc en vue de le jouer, et un critère temporel de validité,

lors de la phase de jeu des segments :

- à l'étape e), authentifie (1408) un serveur de dates et, uniquement si le serveur de dates est authentifié avec succès, acquiert (1408) une date de service auprès de ce serveur de dates,

- à l'étape f), évalue (1414) le critère temporel de validité de la licence en regard de la dernière date de service acquise, puis, si le résultat de l'évaluation est positif, extrait (1416, 1418) le droit d'accès de la licence permettant ainsi l'accès aux segments et, sinon, inhibe (1414) l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments,

procédé caractérisé en ce que :

lors de la phase de jeu, à l'étape g), le terminal :

• extrait (1400, 1402) du flux, conjointement à un segment, la date de transmission de ce segment, puis

• compare (1404) la date de transmission extraite à la dernière date de service acquise, et

• seulement si la date de transmission extraite est postérieure à la cette dernière date de service acquise, l'acquiert (1406) comme date de service, et l'utilise (1414) comme dernière date de service acquise lors d'une prochaine exécution de l'étape f) entre deux exécutions successives de l'étape e).

3. Procédé selon la revendication 2, dans lequel le droit d'accès de la licence comporte un clé intermédiaire ou un cryptogramme de cette clé intermédiaire obtenu en la chiffrant avec un clé cryptographique du terminal, la clé intermédiaire étant une clé utilisée pour chiffrer les clés Ks, de tous les segments du bloc de segments, chaque clé Ks, étant la clé utilisée pour chiffrer un segment respectif du contenu multimédia. .

4. Procédé selon l'une quelconque des revendications 2 et 3, dans lequel le terminal, à l'étape g), compare la date de transmission extraite à la dernière date de service acquise, et, seulement si la date de transmission extraite est antérieure à cette dernière date de service d'au plus une première durée prédéterminée, alors la dernière date de service acquise est maintenue (1404) inchangée et l'étape f) est exécutée en utilisant cette dernière date de service acquise maintenue inchangée.

5. Procédé selon l'une quelconque des revendications 2 à 4, dans lequel le terminal, à l'étape g), compare (1406) la date de transmission extraite à la date de service acquise lors de la dernière exécution de l'étape e), et déclenche (1406) une nouvelle exécution de l'étape e) si l'écart entre la date de transmission extraite et cette date de service est supérieure à une deuxième durée prédéterminée et, dans le cas contraire, ne déclenche pas (1406) cette nouvelle exécution de l'étape e) en réponse à cette comparaison.

6. Procédé selon l'une quelconque des revendications 2 à 5, dans lequel, à l'étape e), si la connexion au serveur de dates ne peut pas être établie, en réponse, le terminal inhibe (1408) l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments.

7. Procédé selon la revendication 6, dans lequel :

- le terminal compte (1408) le nombre de fois consécutives où la connexion au serveur de dates ne peut être établie, et

- en réponse au franchissement par ce nombre d'un seuil prédéterminé, inhibe (1408) l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments et, dans le cas contraire, autorise (1408) l'extraction du droit d'accès de la licence autorisant ainsi l'accès aux segments.

8. Procédé selon l'une quelconque des revendications 2 à 7, dans lequel, entre deux exécutions consécutives de l'étape f), le terminal extrait (1402) une ou plusieurs dates de transmission de segments reçus et, à chaque extraction d'une date de transmission postérieure à la dernière date de service acquise, le terminal l'acquiert (1406) comme date de service, à utiliser comme dernière date de service acquise lors de la prochaine exécution de l'étape f).

9. Support d'enregistrement d'informations, caractérisé en ce qu'il comporte des instructions pour la mise en œuvre d'un procédé conforme à l'une quelconque des revendications 2 à 8, lorsque ces instructions sont exécutées par un calculateur électronique.

10. Terminal (4) pour la mise en œuvre d'un procédé d'obtention de contenus multimédias conforme à l'une quelconque des revendications 2 à 8, dans lequel le terminal est apte :

lors d'une phase de réception :

c) à recevoir un flux comportant chaque segment d'un bloc de segments de contenu multimédia, chacun de ces segments comportant au moins une suite de groupes d'images vidéo ou de trames audio,

d) à recevoir une licence comportant un droit d'accès nécessaire au terminal pour accéder à tout segment du bloc en vue de le jouer, et un critère temporel de validité, lors d'une phase de jeu des segments :

e) à authentifier un serveur de dates et, uniquement si le serveur de dates est authentifié avec succès, à acquérir une date de service auprès de ce serveur de dates,

f) à évaluer le critère temporel de validité de la licence en regard de la dernière date de service acquise, puis, si le résultat de l'évaluation est positif, à extraire le droit d'accès de la licence permettant ainsi l'accès aux segments et, sinon, à inhiber l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments, terminal caractérisé en ce qu'il comporte un calculateur (44) électronique programmé pour, lors de la phase de jeu, mettre en œuvre une étape g) lors de laquelle :

• il extrait du flux, conjointement à un segment, la date de transmission de ce segment, puis

• il compare la date de transmission extraite à la dernière date de service acquise, et

• seulement si la date de transmission extraite est postérieure à la cette dernière date de service acquise, il l'acquiert comme date de service, et l'utilise comme dernière date de service acquise lors d'une prochaine exécution de l'étape f) entre deux exécutions successives de l'étape e).

Description:
Procédé de fourniture, à un terminal, de contenus

multimédias protégés

[001 ] L'invention concerne un procédé de fourniture, à un terminal, de contenus multimédias protégés par un système de protection de contenus multimédias. L'invention concerne également un procédé d'obtention, par un terminal, de contenus multimédias protégés pour la mise en œuvre de ce procédé de fourniture de contenus multimédias. L'invention concerne enfin un terminal et un support d'enregistrement d'informations pour la mise en œuvre de ce procédé d'obtention de contenus multimédias.

[002] Les procédés considérés, peuvent être mis en œuvre au titre de tout service de fourniture de contenus multimédias protégés, dans tout système de fourniture en ligne de contenus multimédias protégés, dans lequel une tête de réseau assure la protection des contenus et leur transmission à une pluralité de terminaux.

[003] Un terminal est utilisé par un client du service pour accéder à un contenu en vue de le jouer. Accéder à un contenu multimédia, signifie ici le charger en mémoire et en lever la protection, à la volée alors qu'on le reçoit, ou sur un support d'enregistrement sur lequel il a préalablement été enregistré, l'enregistrer, ou en faire toute autre utilisation offerte par le service de fourniture de contenus multimédias protégés.

[004] Les contenus fournis sont :

- des contenus audiovisuels, par exemple des programmes de télévision,

- des contenus audio seulement, par exemple un programme radiophonique, ou

- plus généralement, tout contenu numérique contenant de la vidéo et/ou de l'audio tel qu'une application informatique, un jeu, un diaporama, une image ou tout ensemble de données.

[005] Parmi ces contenus, on considérera plus particulièrement dans la suite des contenus dits temporels. Un contenu multimédia temporel est- un contenu multimédia dont le jeu est une succession dans le temps de sons, dans le cas d'un contenu temporel audio, ou d'images, dans le cas d'un contenu temporel vidéo, ou de sons et d'images temporellement synchronisés entre eux dans le cas d'un contenu multimédia temporel audiovisuel. Un contenu multimédia temporel peut également comporter des composantes temporelles interactives temporellement synchronisées avec les sons ou les images.

[006] Pour être fourni, un tel contenu est d'abord codé, c'est-à-dire compressé, de façon à ce que sa transmission requière une moindre bande passante. [007] A cet effet, la composante vidéo du contenu est codée selon un format vidéo, tel par exemple que MPEG-2. Le lecteur intéressé pourra trouver une présentation complète de ce format dans le document publié par l'Organisation internationale de normalisation sous la référence ISO/IEC 13818-2:2013 et le titre « Technologies de l'information - Codage générique des images animées et du son associé - Partie 2: Donnée vidéo ». De nombreux autres formats, tels que MPEG-4 ASP, MPEG-4 Part 2, MPEG-4 AVC (ou Part 10), HEVC (High Efficiency Video Coding), ou WMV (Windows Media Video) peuvent alternativement être utilisés, et reposent sur les mêmes principes. Ainsi, tout ce qui suit s'applique également à ces autres formats vidéo qui reposent sur le même principe que le codage MPEG-2.

[008] Le codage MPEG-2 fait appel à des procédés généraux de compression de données. Pour les images fixes, elle exploite notamment la redondance spatiale interne à une image, la corrélation entre les points voisins et la moindre sensibilité de l'œil aux détails. Pour les images animées, elle exploite la forte redondance temporelle entre images successives. L'exploitation de cette dernière permet de coder certaines images du contenu, ici dites déduites, en référence à d'autres, ici dites sources, par exemple par prédiction ou interpolation, de sorte que leur décodage n'est possible qu'après celui desdites images sources. D'autres images, ici dites initiales, sont codées sans référence à de telles images sources, c'est-à-dire qu'elles contiennent chacune, lorsqu'elles sont codées, l'ensemble des informations nécessaires à leur décodage et donc qu'elles peuvent être complètement décodées indépendamment des autres images. Les images initiales sont ainsi le point d'entrée obligatoire lors de l'accès au contenu. Le contenu codé résultant ne comporte donc pas les données nécessaires au décodage de chacune des images indépendamment des autres, mais est constitué de « séquences » selon la terminologie MPEG-2. Une séquence réalise la compression d'au moins un « groupe d'images » (ou GOP, pour Group Of Pictures, dans MPEG-2). Un groupe d'images est une suite d'images consécutives dans laquelle chaque image est :

- soit initiale et source pour au moins une image déduite contenue dans la même suite d'images consécutives,

- soit déduite et telle que chacune des images sources nécessaires à son décodage appartient à la même suite d'images consécutives.

Un groupe d'images ne contient pas de suite d'images consécutives plus petite et possédant les mêmes propriétés que ci-dessus. Le groupe d'images est ainsi la plus petite partie de contenu à laquelle on peut accéder sans avoir à décoder au-préalable une autre partie de ce contenu.

[009] Une séquence est délimitée par une « en-tête » et une « fin », chacune identifiée par un premier code spécifique. L'en-tête comporte des paramètres qui caractérisent des propriétés attendues des images décodées, telles que les tailles horizontales et verticales, ratio, fréquence. Le standard recommande de répéter l'entête entre les groupes d'images de la séquence, de façon à ce que ses occurrences successives soient espacées d'environ quelques secondes dans le contenu codé.

[0010] Par exemple, un groupe d'images comporte le plus couramment plus de 5 à 10 images et, généralement, moins de 12 ou 20 ou 50 images. Par exemple, dans un système à 25 images par seconde, un groupe d'images, représente typiquement une durée de jeu supérieure à 0,1 ou 0,4 seconde et, généralement, inférieure à 0,5 ou 1 ou 10 secondes.

[0011] Un contenu multimédia temporel peut comporter plusieurs composantes vidéo. Dans ce cas, chacune de ces composantes est codée comme ci-dessus décrit.

[0012] La composante audio du contenu est par ailleurs codée selon un format audio tel que MPEG-2 Audio. Le lecteur intéressé pourra trouver une présentation complète de ce format dans le document publié par l'Organisation internationale de normalisation sous la référence ISO/IEC 13818-3:1998 et le titre « Technologies de l'information - Codage générique des images animées et des informations sonores associées - Partie 3: Son ». De nombreux autres formats, tels que MPEG-1 Layer III, mieux connu sous l'appellation MP3, AAC (Advanced Audio Coding), Vorbis ou WMA (Windows Media Audio), peuvent alternativement être utilisés, et reposent sur les mêmes principes. Ainsi, tout ce qui suit s'applique également à ces autres formats audios qui reposent sur les mêmes principes que le codage MPEG-2 Audio.

[0013] Le codage MPEG-2 Audio obéit aux mêmes principes ci-dessus décrits pour celle d'un contenu temporel vidéo. Le contenu codé résultant est donc, de façon analogue, constitué de « trames ». Une trame est l'analogue, en audio, d'un groupe d'images en vidéo. La trame est donc notamment la plus petite partie de contenu audio à laquelle on peut accéder sans avoir à décoder une autre partie de ce contenu audio. La trame contient en outre l'ensemble des informations utiles à son décodage.

[0014] Une trame comporte typiquement plus de 100 ou 200 échantillons codant chacun un son et, généralement, moins de 2000 ou 5000 échantillons. Typiquement, lorsqu'elle est jouée par un appareil multimédia, une trame dure plus de 10 ms ou 20 ms et, généralement, moins de 80 ms ou 100 ms. Par exemple, une trame comporte 384 ou 1152 échantillons codant chacun un son. Selon la fréquence d'échantillonnage du signal, cette trame représente une durée de jeu de 8 à 12, ou 24 à 36 millisecondes.

[0015] Un contenu multimédia temporel peut comporter plusieurs composantes audio. Dans ce cas, chacune de ces composantes est codée comme ci-dessus décrit.

[0016] Les composantes codées du contenu, également qualifiées de trains élémentaires de données, sont ensuite multiplexées, c'est-à-dire, notamment, synchronisées temporellement, puis combinées en un seul train, ou flux, de données. [0017] Un tel contenu, notamment lorsqu'il est l'objet de droits tels que des droits d'auteur ou des droits voisins, est fourni protégé par un système de protection de contenus multimédias. Ce système permet d'assurer le respect de conditions d'accès au contenu qui découlent de ces droits.

[0018] Il est alors typiquement fourni chiffré au titre de sa protection par un système de gestion de droits numériques, ou DRM, pour Digital Rights Management, en anglais. Ce chiffrement est généralement réalisé au moyen d'une clé de chiffrement, par un algorithme symétrique. Il s'applique au flux résultant du multiplexage ou, avant multiplexage, aux composantes du contenu codé.

[0019] Un système de DRM est en effet un système de protection de contenus multimédias. La terminologie du domaine des systèmes de gestion de droits numériques est ainsi utilisée dans la suite de ce document. Le lecteur intéressé pourra par exemple en trouver une présentation plus complète dans les documents suivants :

- Concernant l'architecture générale d'un système de DRM : DRM Architecture, Draft version 2.0, OMA-DRM-ARCH-V2_0-20040518-D, Open Mobile Alliance, 18 mai 2004,

- Concernant plus particulièrement les licences : DRM Spécification, Draft version 2.1 , OMA-TS-DRM-DRM-V2J -20060523-D, Open Mobile Alliance, 23 mai 2006.

[0020] Dans un tel système de gestion de droits numériques, l'obtention d'une licence permet à un terminal d'accéder au contenu multimédia protégé.

[0021] De structure bien connue une telle licence comporte au moins un droit d'accès nécessaire à ce terminal pour accéder au contenu, et typiquement un critère temporel de validité. Le droit d'accès comporte typiquement une clé, dite de contenu, nécessaire au déchiffrement du contenu multimédia protégé par un algorithme de déchiffrement symétrique. Le critère temporel de validité caractérise la période de temps sur laquelle la licence peut être exploitée. Il consiste typiquement en un ou plusieurs intervalles de temps. En dehors de ces intervalles de temps, la licence ne permet pas l'accès au contenu.

[0022] La clé de contenu est généralement insérée dans la licence sous forme d'un cryptogramme obtenu par chiffrement de la clé de contenu avec une clé de chiffrement, dite « de terminal », propre au terminal.

[0023] Pour accéder au contenu, le terminal extrait de la licence la clé de contenu, en déchiffrant son cryptogramme au moyen de sa clé de terminal.

[0024] Le terminal désembrouille ensuite le contenu au moyen de la clé de contenu ainsi extraite de la licence, en levant ainsi la protection. Puis, le terminal décode le contenu désembrouillé.

[0025] Le terminal génère ainsi un flux multimédia en clair comportant au moins une suite temporelle de séquences vidéo ou de groupes d'images, ou de trames audio. Ce flux multimédia est apte à être joué par un appareil multimédia raccordé à ce terminal. Ici, par « en clair », on désigne le fait que le flux multimédia n'a plus besoin d'être désembrouillé pour être joué, par un appareil multimédia, de façon directement perceptible et intelligible par un être humain. Par « appareil multimédia », on désigne en outre tout dispositif apte à jouer le flux multimédia en clair, tel par exemple qu'un téléviseur ou un lecteur multimédia.

[0026] De façon à en améliorer la protection, le contenu est fourni, par le système de fourniture de contenus multimédias protégés, scindé en plusieurs segments successifs de contenu individuellement protégés par le système de gestion de droits numériques. Ces segments sont donc ordonnés temporellement les uns par rapport aux autres.

[0027] Plus précisément, un segment est une partie restreinte du flux multimédia en clair dont le jeu a une durée inférieure à celle du jeu du flux multimédia en entier. Un segment comporte donc une partie restreinte de chaque composante vidéo et audio du flux multimédia en clair, dont le jeu a une même durée inférieure à celle du jeu du flux multimédia en entier. Ces parties restreintes de composantes sont synchronisées dans le flux pour être jouées simultanément. Un segment comporte donc la partie restreinte de la la suite temporelle de séquences vidéo ou de groupes d'images, ou de trames audio réalisant le codage de cette partie restreinte de composante du flux multimédia en clair. Cette partie restreinte est constituée d'une pluralité de séquences vidéos ou de groupes d'images, ou de trames audio successives. Successives s'entend ici comme se suivant immédiatement, c'est-à-dire sans être séparées, dans le déroulement temporel du contenu, par d'autres séquences vidéo ou de groupes d'images, ou trames audio appartenant à un autre segment. Typiquement, un segment comporte plus de dix, cent, mille ou dix mille, groupes d'images vidéo successifs d'une même composante vidéo codée du flux, ou plus de dix à cent fois plus de trames audio successives d'une même composante audio codée du flux.

[0028] Chaque segment est chiffré par l'algorithme symétrique, au titre de sa protection par le système de gestion de droits numériques, au moyen d'une clé de contenu spécifique. Cette clé de contenu est dite « spécifique » car elle est uniquement utilisée pour chiffrer ce segment parmi l'ensemble des segments du contenu multimédia. L'obtention d'une licence spécifique, comportant la clé de contenu spécifique nécessaire au déchiffrement du segment protégé, permet à un terminal d'accéder à ce segment.

[0029] Un segment n'est donc pas caractérisé par sa structure, mais par la clé de contenu spécifique utilisée pour le chiffrer. Un segment est la pluralité de séquences vidéos et de trames audios immédiatement successives chiffrées avec une même clé de contenu spécifique. [0030] Pour améliorer encore la protection du contenu, un niveau intermédiaire de chiffrement des clés de contenu est introduit. Il permet de changer, au cours du déroulement temporel du contenu, les clés de chiffrement utilisées pour calculer les cryptogrammes des clés de contenu spécifiques transportés dans les licences spécifiques.

[0031] On regroupe à cet effet les segments en blocs de segments. Chaque bloc ne contient qu'une partie restreinte des segments du contenu. Typiquement, chaque bloc contient au minimum un segment et, généralement, plusieurs segments successifs. Successifs s'entend ici comme se suivant immédiatement, c'est-à-dire sans être séparés, dans le déroulement temporel du contenu, par des segments n'appartenant pas au bloc considéré. On associe à chacun de ces blocs une clé de chiffrement de clés de contenu, dite clé intermédiaire. La clé de contenu nécessaire au déchiffrement d'un segment, est chiffrée avec la clé intermédiaire associée au bloc auquel appartient ce segment. Le cryptogramme résultant est ensuite inséré dans une licence, dite licence intermédiaire, transmise conjointement au segment. La licence intermédiaire comporte également un identifiant d'une licence, dite « de terminal ». La licence de terminal comporte un cryptogramme de la clé intermédiaire obtenu par chiffrement de cette clé intermédiaire avec la clé de terminal.

[0032] Un bloc de segments n'est donc pas caractérisé par sa structure, mais par la clé intermédiaire utilisée pour chiffrer la clé de contenu spécifique de tout segment lui appartenant. Un bloc de segments correspond donc aux segments associés chacun à une licence intermédiaire dans laquelle la clé de contenu spécifique est chiffrée avec une même clé intermédiaire.

[0033] Dans un tel système, un terminal reçoit donc, conjointement à un segment chiffré, une licence intermédiaire comportant le cryptogramme de la clé de contenu spécifique nécessaire au déchiffrement du segment. Ce cryptogramme a été obtenu en chiffrant cette clé de contenu spécifique avec une clé intermédiaire. Afin d'accéder au segment, le terminal doit d'abord obtenir la licence de terminal qui comporte le cryptogramme de cette clé intermédiaire obtenu en chiffrant cette clé avec sa clé de terminal. Le terminal obtient cette licence de terminal au moyen de l'identifiant contenu dans la licence intermédiaire.

[0034] Pour exploiter cette licence de terminal, le terminal doit ensuite d'abord évaluer son critère temporel en regard d'une date de service, contrôlée par l'opérateur du service en tant que référence temporelle du service. Cette évaluation consiste à déterminer si la date de service, typiquement exprimée en secondes, est ou non comprise dans la période de validité de la licence de terminal. Le terminal doit donc connaître ou acquérir la date de service.

[0035] Si le résultat de l'évaluation du critère temporel de la licence de terminal est positif, le terminal poursuit l'exploitation de la licence de terminal, notamment en déchiffrant le cryptogramme de la clé intermédiaire qu'elle comporte, au moyen de sa clé de terminal. Si le résultat de cette évaluation est négatif, le terminal inhibe l'exploitation de la licence de terminal, et ne déchiffre notamment pas le cryptogramme de la clé intermédiaire qu'elle comporte. Cela interdit ainsi l'exploitation de la licence intermédiaire, et l'accès au segment protégé grâce à la clé de contenu dont elle comporte le cryptogramme.

[0036] La date de service acquise par le terminal, conditionne ainsi son accès au bloc de segments auquel appartient le segment reçu, et donc le respect des droits dont ce bloc est l'objet. On comprend qu'il est important que la date de service ne puisse pas être modifiée facilement par un utilisateur du terminal. En effet, il pourrait alors la régler à une date comprise dans la période de validité de la licence de terminal, s'affranchissant ainsi de la date de service contrôlée par l'opérateur, ainsi que du respect des droits dont le segment correspondant est l'objet.

[0037] Pour remédier à cet inconvénient, il a déjà été proposé d'équiper les terminaux avec des horloges locales sécurisées, c'est-à-dire des horloges qui ne peuvent pas être réglées par l'utilisateur du terminal. De telles solutions sont par exemple divulguées dans les demandes US20090006854, US20060248596 et US2010024000A1 .

[0038] De nombreux terminaux ne possèdent pourtant pas d'horloge sécurisée, c'est- à-dire de mécanisme interne apte à fournir localement une date avec une garantie jugée suffisante qu'elle soit suffisamment proche de la date de service. La plupart ne possèdent en effet pas d'horloge locale, et les autres en possèdent une non sécurisée, c'est-à-dire non protégée et restant donc modifiable par l'utilisateur.

[0039] Pour remédier à cette dernière difficulté, il a été proposé d'intégrer un serveur de dates au système de DRM. Une horloge locale, interne au terminal mais non protégée, est alors synchronisée régulièrement avec ce serveur de dates, par exemple selon le protocole d'heure réseau, dit NTP, pour « Network Time Protocol », en anglais. Si le terminal ne comporte pas d'horloge locale ou si l'on ne souhaite pas utiliser cette horloge locale, alors la date de service est acquise auprès du serveur de dates, systématiquement à chaque fois que le critère temporel de validité d'une licence doit être évalué.

[0040] Ce dernier mode de réalisation est avantageux car, le recours au serveur de dates y étant systématique, il dispense d'utiliser une horloge locale, et impose l'utilisation d'une date de service contrôlée par l'opérateur. Toutefois, il en résulte en général une sollicitation, et donc une charge de calcul, importantes du serveur de dates, ce qui nécessite beaucoup de serveurs pour tenir la charge. En effet, lorsque de nombreux terminaux requièrent, dans un court intervalle de temps, l'accès à des contenus offerts par le service de fourniture de contenus multimédias protégés, il faut donc évaluer le critère temporel de validité des licences correspondantes pour chacun des terminaux utilisés. Il en résulte une charge de calcul importante pour le serveur de dates. Il en résulte également un trafic réseau important vers les serveurs de date. Or, ces charges de calcul et trafic réseau importants sont susceptibles de nuire à la qualité du service rendu.

[0041] Il est donc particulièrement intéressant de réduire cette charge et ce trafic réseau, tout en garantissant un niveau de sécurité élevé du système vis-à-vis des tentatives de manipulation de la date de service et sans qu'il soit nécessaire d'utiliser une horloge locale dans le terminal.

[0042] L'invention vise à atteindre cet objectif.

[0043] L'invention a ainsi pour objet un procédé de fourniture, à un terminal, de contenus multimédias protégés conforme à la revendication 1 .

[0044] Dans un tel procédé, l'association, à l'étape a), à chacun des segments, de sa date de transmission, et la transmission dans le flux, à l'étape b), de cette date conjointement au segment, permettent au terminal de recevoir, à l'étape c), cette date conjointement au segment, et donc d'en disposer, lors de la phase de jeu. Le terminal est ainsi doté d'une nouvelle source de dates, alternative au serveur de dates et différente d'une horloge locale, mais contrôlée par l'opérateur du service de fourniture de contenus multimédias protégés. Elle fournit donc des dates probablement plus proches de la date de service, et plus difficiles à modifier que celle d'une horloge locale. Ces dates sont donc ainsi plus sûres.

[0045] Dans un tel procédé, l'extraction du flux, à l'étape g), conjointement à un segment, de la date de transmission du segment, permet au terminal d'utiliser comme date de service cette date contrôlée par l'opérateur du service, lors d'une exécution de l'étape f), donc sans recourir au serveur de dates. La charge du serveur de dates, ainsi que le trafic réseau associé, sont ainsi réduits sans compromettre le niveau de sécurité du système.

[0046] La comparaison, à l'étape g), de la date de transmission extraite à la dernière date de service acquise, permet de contraindre cette date de service à augmenter et donc de restreindre autant que possible la plage des dates de service possibles entre deux requêtes au serveur de dates.

[0047] Enfin, la transmission, dans le flux, de la date de transmission génère moins de trafic réseau que la connexion à un serveur de dates. En effet, pour chaque date transmise dans le flux il n'est pas nécessaire d'établir puis de terminer une connexion avec un serveur. On utilise ici une connexion déjà établie entre le terminal et une tête de réseau.

[0048] L'invention a également pour objet un procédé d'obtention, par un terminal, pour la mise en œuvre du procédé ci-dessus, de contenus multimédias protégés, conforme à la revendication 2. [0049] Les modes de réalisation de ce procédé d'obtention de contenus multimédias protégés peuvent comporter une ou plusieurs des caractéristiques des revendications dépendantes.

[0050] Ces modes de réalisation de ce procédé d'obtention de contenus multimédias protégés présentent en outre les avantages suivants :

- le maintien inchangée, à l'étape g), de la dernière date de service acquise si la date de transmission extraite est antérieure à cette date de service d'au plus une première durée prédéterminée, permet d'autoriser un jeu différé d'un contenu en cours de réception ;

- la comparaison, à l'étape g), de la date de transmission extraite à la date de service acquise lors de la dernière exécution de l'étape e), permet de contraindre le terminal à acquérir la date de service auprès du serveur de dates, lorsqu'il ne l'a pas fait depuis au moins la deuxième durée prédéterminée ;

- l'inhibition, à l'étape e), si la connexion au serveur de dates ne peut pas être établie, permet de renforcer la contrainte d'acquérir la date de service auprès du serveur de dates ;

- le comptage du nombre de fois consécutives où la connexion au serveur de dates ne peut être établie, permet de protéger la qualité du service rendu de l'influence de difficultés momentanées de connexion au serveur de dates, en autorisant la poursuite du traitement du contenu multimédia même en absence de connexion au serveur de dates ;

- l'acquisition comme date de service, de toute date de transmission extraite postérieure à la dernière date de service acquise, permet de contraindre la dernière date de service acquise à augmenter au rythme de celles des segments reçus.

[0051] L'invention a également pour objet un support d'enregistrement d'informations comportant des instructions pour la mise en œuvre du procédé ci-dessus d'obtention de contenus multimédias, lorsque ces instructions sont exécutées par un calculateur électronique.

[0052] L'invention a enfin pour objet un terminal pour la mise en œuvre du procédé ci- dessus , ce terminal étant conforme à la revendication 10.

[0053] L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple non limitatif, et faite en référence aux dessins sur lesquels :

- la figure 1 est une représentation schématique de l'architecture d'un système de fourniture de contenus multimédias protégés,

- la figure 2 est une représentation schématique d'une licence intermédiaire,

- la figure 3 est une représentation schématique d'une licence de terminal,

- la figure 4 est une représentation schématique d'un flux transmis par une tête de réseau à un terminal dans le système de la figure 1 , - la figure 5 est une représentation schématique d'un procédé de fourniture de contenus multimédias protégés à l'aide du système de la figure 1 .

[0054] Dans ces figures, les mêmes références sont données pour désigner les mêmes éléments.

[0055] Dans la suite de cette description, les caractéristiques bien connues de l'homme du métier ne sont pas décrites en détail.

[0056] La figure 1 représente un système de fourniture de contenus multimédias protégés. Ce système comprend une pluralité, typiquement des milliers, de terminaux reliés, par l'intermédiaire d'un réseau 3, d'une part à une tête 1 de réseau, et d'autre part à un serveur 2 de dates. Ici, on suppose que tous ces terminaux sont identiques. Ainsi, pour simplifier l'illustration, seul un terminal 4 est représenté sur la figure 1 .

[0057] Le terminal 4 est apte à accéder à un contenu en vue de le jouer. A cet effet, le terminal 4 comporte un calculateur électronique 44 programmable et une mémoire 46. Le calculateur 44 est apte à exécuter des instructions enregistrées dans la mémoire 46. La mémoire 46 comporte les instructions nécessaires à l'exécution du procédé de la figure 5. La mémoire 46 comporte également une dernière date de service acquise TE et une date TT S de service acquise lors de la dernière connexion au serveur 2.

[0058] Le réseau 3 est un réseau grande distance de distribution d'informations permettant d'établir une communication bidirectionnelle entre le terminal 4 et la tête 1 de réseau et le serveur 2. Par exemple, le réseau 3 est la toile d'araignée mondiale, plus connue sous le terme de « réseau Internet ».

[0059] La tête 1 de réseau est apte à protéger un contenu, et à le transmettre au terminal 4. A cet effet, la tête 1 comporte une horloge 12. Cette horloge 12 fournit à la tête 1 la date de transmission d'un segment de contenu. Cette horloge 12 est ici synchronisée, selon le protocole d'heure réseau NTP (Network Time Protocol), avec une première horloge de référence externe à la tête 1 .

[0060] Le serveur 2 de dates est apte à fournir au terminal 4 une date de service en réponse à une requête. Le serveur 2 est ici synchronisé, selon le protocole NTP, avec une seconde horloge de référence externe au système.

[0061] Les première et seconde horloges de référence sont, ou non, la même horloge. En vertu de l'architecture hiérarchique, en niveaux appelés strates, associée au protocole NTP, les première et seconde horloges de référence sont elles-mêmes de la même façon, chacune synchronisée avec une horloge de référence de la strate immédiatement supérieure, et ainsi de suite, de proche en proche et en dernière instance, chacune synchronisée avec une horloge de référence de la strate 1 . A chaque strate, ces horloges de référence sont, ou non, la même horloge.

[0062] Ici, pour la tête 1 et le serveur 2, seules les différences par rapport à une tête de réseau conventionnelle et à un serveur de dates conventionnel sont décrites en détails. Pour les informations concernant une tête de réseau conventionnelle et un serveur de dates conventionnel, le lecteur peut se référer à l'état de l'art cité dans l'introduction de cette demande de brevet.

[0063] La figure 2 représente une licence intermédiaire L,. Cette licence U comporte notamment un cryptogramme (K S i) * K G 51 obtenu en chiffrant une clé K s , avec une clé intermédiaire K G . La clé K s , est la clé utilisée pour chiffrer le segment S, du contenu multimédia. La clé intermédiaire K Gp est la clé utilisée pour chiffrer les clés K si de tous les segments du bloc G p . La licence intermédiaire U comporte également :

- un identifiant ld(K G ) 50 de cette clé intermédiaire K Gp , et

- une date TS, 53 de transmission du segment S,.

[0064] Les notations utilisées dans cette figure et la figure 3 sont décrites plus en détail en référence à la figure 5.

[0065] La figure 3 représente une licence L p , ou licence de terminal, d'un système de gestion de droits numériques. Cette licence comporte un droit 52 d'accès, et un critère temporel 54 de validité tels que définis dans la partie introductive de cette demande de brevet. Le droit 52 d'accès comporte ici un cryptogramme de cette clé intermédiaire K Gp . La licence L p comporte aussi l'identifiant ld(K Gp ) 50 de clé intermédiaire.

[0066] La figure 4 représente un flux 6 transmis par la tête 1 de réseau au terminal 4 lors de la mise en œuvre du procédé de la figure 5. Le flux 6 comporte plusieurs blocs de segments de contenu multimédia. Par exemple, le flux 6 comporte plus de deux, dix ou cent blocs de segments. Pour simplifier la figure 3, seuls deux blocs 62, 63 ont été représentés. Sur cette figure, le symbole « ... » entre les blocs 62, 63 indique que des blocs n'ont pas été représentés. Ici, on suppose que tous ces blocs sont structurellement identiques et diffèrent les uns des autres uniquement par le contenu encodé dans chacun des segments. En particulier, tous les blocs comportent le même nombre de segments. Ainsi, seul la structure du bloc 62 va maintenant être décrite plus en détail.

[0067] Le bloc 62 comporte une pluralité de segments. Typiquement, le bloc 62 comporte plus de dix ou cent segments successifs. Le bloc 62 comporte seulement une partie restreinte de l'ensemble des segments dont la concaténation forme la totalité du contenu. Ici seuls trois segments 622, 623 et 624 ont été représentés sur la figure 4. Le symbole « ... » entre les segments 623 et 624 indique que d'autres segments n'ont pas été représentés. Ici, tous ces segments sont structurellement identiques et diffèrent les uns des autres uniquement par les informations encodées dans chacun d'eux. Ainsi, seul le segment 622 est maintenant décrit plus en détail.

[0068] Le segment 622 est conforme à la définition du terme « segment » donnée dans l'introduction de ce texte. Au segment 622 est associée une licence intermédiaire 642, transmise conjointement à ce segment dans le flux 6. Ici, cette association est réalisée par synchronisation du segment 622 et de la licence intermédiaire 642 dans le flux. Typiquement, cette synchronisation est réalisée par l'adjacence du segment 622 et de la licence intermédiaire 642 dans le flux, et, le moment venu, par leur transmission conjointe.

[0069] Le fonctionnement du système de la figure 1 va maintenant être décrit en référence au procédé de la figure 5.

[0070] Initialement, lors d'une étape 1000, de façon connue de l'homme du métier, la tête 1 de réseau obtient un contenu multimédia temporel en clair. Elle encode ensuite ce contenu.

[0071] Puis, lors d'une étape 1002, la tête 1 scinde le contenu multimédia encodé en plusieurs segments S, successifs de contenu. Ces segments S, sont ordonnés temporellement les uns par rapport aux autres, et leur séquence complète constitue le contenu. Dans la suite de cette description, l'indice « i » est le numéro d'ordre du segment S, dans cette suite temporelle de segments.

[0072] La tête 1 de réseau assure ensuite la protection individuelle, par un système de gestion de droits numériques, de chacun des segments S,. A ce titre, lors d'une étape 1004, elle chiffre chaque segment Si avec une clé K s , de contenu spécifique, qui n'est pas utilisée pour chiffrer un autre segment de la même séquence de segments.

[0073] Ensuite, lors d'une étape 1006, la tête 1 de réseau constitue des blocs G p de segments successifs. L'indice « p » est le numéro d'ordre du bloc dans la suite de blocs successifs ainsi constituée. Ici, la tête 1 de réseau fixe à cet effet le nombre de segments contenus dans chaque bloc. Pour chaque bloc comportant ce nombre de segments successifs, elle génère ensuite une clé intermédiaire K G . La clé intermédiaire K G est différente pour chaque bloc du contenu multimédia protégé. Puis elle chiffre la clé K si de chiffrement de chacun des segments S, du bloc G p avec la clé intermédiaire K G . Elle obtient donc pour chaque segment S, du bloc G p le cryptogramme (K S i) * K gp 51 . La tête 1 de réseau insère ensuite l'identifiant ld(K G ) 50 de la clé intermédiaire K Gp et le cryptogramme (K S i) * K Gp 51 dans la licence intermédiaire U qu'elle associe à ce segment S, comme décrit en référence à la figure 3.

[0074] En parallèle, par exemple de l'une des étapes 1000, 1002, 1004 et 1006, lors d'une étape 1100, la tête 1 de réseau reçoit du terminal 4 une requête visant à obtenir le contenu. Cette requête contient notamment un identifiant d'une clé K T de terminal. La clé K T est ici unique pour chaque terminal. De façon connue de l'homme du métier, la clé K T a été obtenue par le terminal lors de sa phase de fabrication ou de personnalisation. La clé K T a ensuite été obtenue par la tête 1 de réseau lors d'une phase d'enregistrement du terminal 4 avant la mise en œuvre du procédé de la figure 5. [0075] En réponse à la requête reçue à l'étape 1 100, la tête 1 de réseau met en œuvre les étapes 1200, 1202, 1204 et 1206.

[0076] Lors de l'étape 1200, la tête 1 de réseau chiffre chaque clé K G intermédiaire utilisée avec la clé K T du terminal 4 pour obtenir le cryptogramme (K G )*K T . Puis pour chaque bloc G p , elle insère, en tant que droit 52 d'accès à ce bloc, le cryptogramme (K Gp )*K T dans la licence L p de terminal destinée au terminal 4. L'identifiant ld(K G ) 50 de la clé K Gp intermédiaire est aussi inséré dans la licence L p et dans chaque licence U intermédiaire associée à tout segment S, du bloc G p . La licence L p est ainsi associée à chacun des segments Si, et donc au bloc G p , par cette identifiant ld(K Gp ). Enfin, la tête 1 de réseau insère, dans la licence L p , le critère temporel 54 de validité de cette licence. Par exemple, ce critère 54 spécifie que la licence L p ne peut être utilisée qu'entre le 1 er janvier 2014 et le 1 er mars 2014.

[0077] Ensuite, lors d'une étape 1202, la tête 1 de réseau associe à chacun des segments S, sa date TS, de transmission. Ici, elle obtient la date de transmission du segment S, auprès de l'horloge 12. Puis, elle insère cette date TS, de transmission dans la licence U intermédiaire associée au segment S,. Typiquement, cette date de transmission est celle de la fin du calcul de la licence L, intermédiaire associée au segment Si. Elle précède donc de peu, typiquement d'une fraction de seconde, le début de la transmission sur le réseau 3 de ce segment S,. Elle est de préférence insérée, protégée en intégrité, dans la licence U.

[0078] La tête 1 de réseau génère ainsi de proche en proche le flux 6 comportant chacun des segments S, du bloc G p considéré et sa licence U intermédiaire associée qui comporte elle-même sa date TS, de transmission.

[0079] La tête 1 de réseau transmet enfin, au terminal 4, lors de l'étape 1204 la licence L p , et lors de l'étape 1206 le flux 6.

[0080] De façon connue de l'homme du métier, selon notamment la nature du service de fourniture de contenus considéré et la requête du terminal, les étapes 1204 et 1206 peuvent être synchronisées, ou indépendantes dans le temps. Par exemple, ici, le service de fourniture de contenus considéré est un service de diffusion de contenus, et la requête reçue à l'étape 1 100, vise à obtenir le contenu pour le jouer à la volée au fur et à mesure de sa réception. L'étape 1204 précède alors l'étape 1206 de diffusion du contenu, de façon que la licence L p soit reçue et traitée par le terminal avant que le bloc G p ne soit joué. Il en est de même si la requête reçue à l'étape 1 100 vise à obtenir le contenu pour en faire, à la volée au fur et à mesure de sa réception, toute autre utilisation contrôlée par le système de protection de contenus, telle que son enregistrement.

[0081 ] Le terminal reçoit ainsi, lors d'une étape 1300 la licence L p , et lors d'une étape 1302 le flux 6. [0082] De façon correspondante à ce qu'il en est pour les étapes 1204 et 1206, les étapes 1300 et 1302 peuvent être synchronisées, ou indépendantes dans le temps. Par exemple, ici, l'étape 1300 précède l'étape 1302, de façon que la licence L p soit traitée par le terminal avant que le bloc G p ne soit joué.

[0083] Ensuite, le terminal engage une phase de jeu du contenu. Lors de cette phase, il procède, successivement pour chacun des segments Si du flux 6 reçu, à des étapes 1400 à 1422.

[0084] Lors de l'étape 1400, le terminal extrait le segment S, et sa licence U intermédiaire associée, du flux 6.

[0085] Ensuite, lors de l'étape 1402, le terminal extrait de la licence L, la date TS, de transmission du segment S,.

[0086] Puis, lors de l'étape 1404, le terminal compare la date de transmission TS, à la dernière date de service acquise, ici notée TE.

[0087] Si TSi est postérieure à TE alors, lors de l'étape 1406, le terminal 4 remplace la valeur de la date TE par la valeur de la date TS, extraite à l'étape 1402. Puis, toujours lors de l'étape 1406, le terminal 4 compare cette nouvelle date TE à la dernière date de service acquise auprès du serveur 2 de dates, ici notée TT S .

[0088] Si TE est postérieure à TT S d'au moins une durée prédéterminée, ici notée ETTD, alors le terminal procède à l'étape 1408 d'acquisition de la date de service auprès du serveur 2 de dates. Dans le cas contraire, le terminal procède directement à l'étape 1410. On force ainsi le terminal 4 à se connecter régulièrement au serveur 2.

[0089] La durée prédéterminée ETTD a pu être initialisée dans le terminal 4 lors de la production du système, ou par l'opérateur du service. Sa valeur est typiquement supérieure à dix ou vingt minutes. La valeur de la durée ETTD est également généralement inférieure à dix, cinquante ou cent heures.

[0090] Les valeurs des dates TE et TT S ont initialement pu être acquises par le terminal 4, lors d'une phase par exemple dite d'installation, d'activation ou de personnalisation, auprès du serveur 2 de dates, ou initialisées par exemple à zéro.

[0091] Lors de l'étape 1404, si TSi est antérieure à TE de plus d'une durée prédéterminée, ici notée TSW, alors le terminal procède directement à l'étape 1408 d'acquisition de la date de service auprès du serveur 2 de dates. Ainsi, quand on ne peut pas se fier à la date de transmission, c'est essentiellement la date de service communiquée par le serveur 2 de dates qui est utilisée.

[0092] Enfin, lors de l'étape 1404, si TSi est compris entre TE et TE-TSW, alors le procédé se poursuit directement par l'étape 1410. Dans ce cas, la date TE n'est pas mise à jour en fonction de la date TS, extraite lors de l'étape 1402. Cette situation se produit lorsqu'un segment est joué par le terminal avec un léger différé par rapport à l'instant de réception de ce segment par ce terminal. La valeur du léger différé admissible est ici égale à TSW.

[0093] La durée prédéterminée TSW a pu être initialisée dans le terminal 4 lors de la production du système, ou par l'opérateur du service. Sa valeur est typiquement supérieure à dix ou vingt minutes. Généralement, sa valeur est également inférieure à une heure ou dix heures.

[0094] Lors de l'étape 1408, le terminal 4 authentifie le serveur 2, par exemple à l'aide d'un certificat électronique. Le terminal 4 transmet aussi, au serveur 2 de dates, une requête de date, et obtient en retour une date. Uniquement si le serveur 2 est authentifié avec succès, alors le terminal 4 acquiert cette date et remplace la valeur de la date TT S et de la date TE par la valeur de cette date obtenue auprès du serveur 2.

[0095] Ici, lors de l'étape 1408, si la connexion au serveur 2 de dates ne peut pas être établie ou si l'authentification échoue, le terminal 4 incrémente un compteur d'échecs de connexions. Si la valeur de ce compteur ne franchit pas un seuil prédéterminé, ici noté Max_tts_bypass, le terminal 4 procède à l'étape 1410 sans modifier les valeurs des dates TT S et TE. Si la valeur de ce compteur franchit le seuil Max_tts_bypass le terminal 4 inhibe les étapes 1410 et suivantes du procédé, notamment l'extraction du droit d'accès de la licence L p de terminal, interdisant ainsi l'accès au segment S,. Ensuite, le compteur d'échec peut être réinitialisé à sa valeur initiale par l'opérateur du service. Il peut aussi être réinitialisé automatiquement après une durée prédéterminée, par exemple supérieure à 30 min ou 1 h ou 10 h.

[0096] Le seuil Max_tts_bypass a pû être initialisé dans le terminal 4 lors de la production du système, ou par l'opérateur du service. Sa valeur est typiquement supérieure à deux, trois ou cinq et, par exemple, inférieure à dix, vingt ou cinquante.

[0097] Lors de l'étape 1410, le terminal 4 extrait de la licence intermédiaire L, l'identifiant ld(K G ) 50 de la clé K G intermédiaire.

[0098] Puis, lors de l'étape 1412, le terminal 4 recherche, parmi les licences de terminal reçues, la licence L p qui comporte l'identifiant ld(K G ) 50.

[0099] Lors de l'étape 1414, le terminal 4 extrait le critère temporel 54 de la licence L p trouvée à l'étape 1412. Puis il évalue ce critère en regard de la dernière date TE de service acquise. Si cette date de service satisfait le critère temporel 54, alors le terminal 4 met en œuvre les étapes 1416 et suivantes du procédé. Sinon, il inhibe les étapes 1416 et suivantes du procédé, notamment l'extraction du droit d'accès de la licence L p , interdisant ainsi l'accès aux segments et retourne à l'étape 1400 pour traiter le segment suivant S i+ i .

[00100] Lors de l'étape 1416, si la clé K G intermédiaire contenue dans le droit 52 d'accès n'en a pas déjà été extraite depuis le début de la phase de jeu, alors le terminal 4 extrait de la licence L p trouvée à l'étape 1412 le cryptogramme (K gp ) * K T . [00101 ] Ensuite, lors de l'étape 1418, le terminal 4 déchiffre le cryptogramme (K G ) * K T avec sa clé K T de terminal, obtenant ainsi la clé K G intermédiaire.

[00102] Puis, lors de l'étape 1420, le terminal 4 déchiffre le cryptogramme (Ksi) * K G avec la clé K G intermédiaire déchiffrée lors de l'étape 1418, obtenant ainsi la clé Ksi spécifique.

[00103] Enfin, lors de l'étape 1422, le terminal 4 déchiffre le cryptogramme du segment Si avec la clé spécifique K si obtenue lors de l'étape 1420, de façon à obtenir le segment S, en clair. Le segment S, en clair peut alors être transmis par le terminal 4 à tout appareil multimédia pour être joué. Le procédé retourne alors à l'étape 1400 pour recevoir et jouer le segment suivant S i+ i .

[00104] De nombreux autres modes de réalisation de l'invention sont possibles. Par exemple, le contenu est fourni, par le système de fourniture de contenus multimédias protégés, chiffré avec plusieurs clés au titre de sa protection par le système de gestion de droits numériques. Plusieurs licences, contenant chacune au moins l'une de ces clés de contenu, sont alors nécessaires au terminal pour accéder au contenu. Le procédé revendiqué s'applique alors à l'une, au moins, de ces licences.

[00105] Dans un autre mode de réalisation, le droit 52 d'accès de la licence L p comporte la clé intermédiaire K Gp et non pas le cryptogramme (K Gp ) * K T . Dans ce mode de réalisation, la licence de terminal n'est pas nécessaire.

[00106] Dans le mode de réalisation précédent, le droit d'accès est un cryptogramme de la clé K Gp obtenu en la chiffrant avec la clé cryptographique K T . Un cryptogramme est une information insuffisante à elle seule pour retrouver la clé de contenu K s ,. Ainsi, si la transmission de la licence est interceptée, la seule connaissance du cryptogramme ne permet pas de retrouver la clé de contenu permettant de désembrouiller un segment du contenu multimédia. Pour retrouver la clé de contenu en clair, c'est-à-dire la clé de contenu permettant de désembrouiller directement le segment du contenu multimédia, le cryptogramme doit être combiné avec une information secrète. Dans l'exemple précédent, l'information secrète est la clé cryptographique K T permettant de déchiffrer le cryptogramme(K Gp ) * K T . D'autres façons pour obtenir le cryptogramme contenu dans le droit d'accès sont possibles. Par exemple, le cryptogramme peut être un pointeur vers une clé cryptographique stockée en clair dans une table contenant une multitude de clés intermédiaires possibles. Dans ce cas, l'information secrète est la table associant à chaque pointeur une clé cryptographique en clair. Le cryptogramme peut aussi être :

• un identifiant de cette clé cryptographique, à fournir à la tête de réseau, via une voie de retour, permettant ainsi de requérir la clé auprès de la tête de réseau, puis de recevoir, en réponse et typiquement uniquement après une authentification réussie du terminal, la clé cryptographique ou une valeur d'initialisation permettant au terminal de reconstruire cette clé cryptographique ;

• un lien, typiquement une URL (Uniform Ressource Locator), permettant d'aller lire, typiquement uniquement en cas d'authentification réussie du terminal, cette clé cryptographique sur un serveur de clés cryptographiques; ou

• une valeur d'initialisation, permettant au terminal de reconstruire cette clé cryptographique, typiquement, en réalisant un calcul de la valeur de cette clé en utilisant, par exemple, un algorithme secret connu seulement du terminal et de la tête de réseau.

[00107] De façon alternative, le contenu est fourni protégé par un système de gestion de droits numériques sans toutefois être chiffré. La clé de contenu ne figure alors pas parmi les données d'accès insérées dans la licence.

[00108] Dans un autre mode de réalisation, le contenu multimédia est fourni protégé par un système d'accès conditionnel, ou CAS, pour Conditional Access System. La terminologie du domaine des systèmes d'accès conditionnel est alors utilisée. Le lecteur intéressé pourra par exemple en trouver une présentation plus complète dans le document : « Functional Model of a Conditional Access System », EBU Review, Technical European Broadcasting Union, Bruxels, BE, N° 266, le 21 décembre 1995. Un segment est alors une cryptopériode, une licence de terminal un EMM, et la licence intermédiaire un ECM. La date de transmission est alors typiquement insérée dans un ECM.

[00109] Dans un autre mode de réalisation, le contenu est fourni, par le système, protégé par tout autre type de système de protection de contenus, tel par exemple qu'un système de protection de données plus classique ne réalisant pas de gestion de droits d'accès. Le procédé revendiqué s'applique alors à la fourniture des messages nécessaires à l'acheminement des clés de déchiffrement, par exemple.

[00110] Dans un autre mode de réalisation, tous les segments d'un bloc de segments de contenu ne se suivent pas immédiatement dans le déroulement temporel du contenu. Certains de ces segments y sont alors séparés par des segments n'appartenant pas au bloc considéré.

[00111] En variante, un terminal partage avec au moins un autre terminal, sa clé de chiffrement et sa clé de déchiffrement, dites de terminal.

[00112] En variante le réseau 3 comporte un premier sous-réseau de transmission unidirectionnelle d'informations entre la tête 1 et le terminal 4 et un second sous-réseau de transmission bidirectionnelle d'informations entre le serveur 2 et le terminal 4. Par exemple, le premier sous-réseau est un réseau de transmission satellitaire et le second sous-réseau est le réseau Internet.

[00113] En variante, l'horloge 12 de la tête 1 est synchronisée avec une horloge de référence selon un protocole distinct de NTP. Dans une autre variante, l'horloge 12 est synchronisée avec le serveur 2 de dates. Dans une autre variante, l'horloge 12 est synchronisée avec une horloge de référence interne à la tête 1 . Dans une dernière variante, l'horloge 12 est elle-même une horloge de référence interne à la tête 1 . De même, le serveur 2 de dates peut être synchronisé avec une horloge de référence selon un protocole distinct de NTP. Dans une autre variante, le serveur 2 comporte lui-même une horloge de référence avec laquelle il est synchronisé. Il est aussi possible que l'horloge 12 et le serveur 2 de dates soient synchronisés avec des horloges de référence selon des protocoles différents.

[00114] En variante, le serveur 2 de dates est intégré à la tête 1 de réseau.

[00115] Le nombre de blocs et de segments par bloc peut varier. Par exemple, le flux 6 comporte un seul bloc de segments de contenu. Dans une autre variante, chaque bloc comporte un seul segment. Dans un autre mode de réalisation, le nombre de segments dans chaque bloc n'est pas nécessairement le même d'un bloc à l'autre.

[00116] La date TS, de transmission du segment 622 peut être insérée dans un message ou une structure de données autre que la licence intermédiaire associée à ce segment. Toutefois, ce message ou cette structure de données autre est transmis conjointement au segment et à la licence intermédiaire. Par exemple, la date de transmission est adjacente à chaque segment transmis dans le flux mais ne fait pas partie de la structure de données formant la licence U.

[00117] D'autre mode de réalisation de la licence L p sont possibles. Par exemple, la tête 1 peut, à l'étape 1200, pour compléter le droit 52 d'accès de la licence L p , combiner, des règles ou critères d'accès additionnels au cryptogramme (K Gp ) * K T . Lors de l'étape 1416, ces règles ou critères additionnels sont alors également extraits du droit 52 d'accès par le terminal 4, puis évalués. Le succès de cette évaluation conditionne alors la mise en œuvre l'étape 1418 de déchiffrement du cryptogramme (K Gp ) * K T .

[00118] En variante, la tête 1 de réseau obtient la date de transmission d'un segment auprès du serveur 2 de dates, ou d'un serveur de dates tiers externe au système de la figure 1 .

[00119] En variante, le service de fourniture de contenus considéré est un service de diffusion ou de téléchargement de contenus dont l'enregistrement n'est pas contrôlé par le système de protection de contenus, et la requête reçue à l'étape 1100 vise à obtenir le contenu pour l'enregistrer en vue de le jouer ultérieurement. Les étapes 1204 et 1206 ne répondent alors à aucune contrainte de synchronisation, de façon que, en fonction de la dynamique du service, elles peuvent être simultanées ou se succéder dans l'un ou l'autre ordre. Il en est alors de même des étapes 1300 et 1302. [00120] Dans une autre variante, la durée prédéterminée TSW n'est pas utilisée. Cela revient à prendre cette durée TSW égale à zéro à l'étape 1404 du procédé de la figure 5. De même, il n'est pas nécessaire d'utiliser la durée prédéterminée ETTD. Cela revient donc à considérer que à l'étape 1404 de la figure 5, la durée ETTD est infinie. Dans ce cas, la mise à jour de la date TT S est déclenchée autrement. Par exemple, cette mise à jour est déclenchée périodiquement ou après avoir reçu un nombre prédéterminé de segments S, à déchiffrer.

[00121 ] En variante, lors de l'étape 1408, si la valeur du compteur d'échecs de connexion franchit le seuil Max_tts_bypass, le terminal 4 inhibe les étapes 1410 et suivantes du procédé, notamment l'extraction du droit d'accès de la licence L p de terminal, et met par exemple fin à la phase de jeu du contenu multilmédia protégé.

[00122] En variante, le terminal 4 ne comporte pas de compteur d'échecs de connexion au serveur 2 de dates. Ainsi, lors de l'étape 1408, dès la première fois que la connexion à ce serveur ne peut-être établie, le terminal inhibe l'extraction du droit d'accès de la licence interdisant ainsi l'accès aux segments.

[00123] Lors de l'étape 1414, si la dernière date TE de service acquise ne satisfait pas le critère temporel 54 de la licence L p trouvée à l'étape 1412, le terminal peut rechercher ou tenter d'exploiter une autre licence comportant l'identifiant ld(K G ) 50 de la clé K Gp intermédiaire. Dans une autre variante, il inhibe les étapes 1416 et suivantes du procédé, notamment l'extraction du droit d'accès de la licence L p de terminal, et met par exemple fin à la phase de jeu du contenu multilmédia protégé.