FR2880485A1 - Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. - Google Patents
Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. Download PDFInfo
- Publication number
- FR2880485A1 FR2880485A1 FR0500123A FR0500123A FR2880485A1 FR 2880485 A1 FR2880485 A1 FR 2880485A1 FR 0500123 A FR0500123 A FR 0500123A FR 0500123 A FR0500123 A FR 0500123A FR 2880485 A1 FR2880485 A1 FR 2880485A1
- Authority
- FR
- France
- Prior art keywords
- content
- key
- parameter
- calculation
- ncm
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 109
- 238000004364 calculation method Methods 0.000 claims abstract description 162
- 238000004590 computer program Methods 0.000 claims abstract description 6
- 238000012545 processing Methods 0.000 claims description 49
- 238000013475 authorization Methods 0.000 claims description 11
- 230000007246 mechanism Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 description 90
- 238000007726 management method Methods 0.000 description 35
- 230000005540 biological transmission Effects 0.000 description 32
- 238000004891 communication Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000005192 partition Methods 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/167—Systems rendering the television signal unintelligible and subsequently intelligible
- H04N7/1675—Providing digital key or authorisation information for generation or regeneration of the scrambling sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43622—Interfacing an external recording device
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4363—Adapting the video stream to a specific local network, e.g. a Bluetooth® network
- H04N21/43632—Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/4367—Establishing a secure communication between the client and a peripheral device or smart card
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4405—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4408—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64784—Data processing by the network
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Storage Device Security (AREA)
Abstract
L'invention concerne un procédé de stockage d'un contenu d'un dispositif source vers un dispositif de stockage, les dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une première clé de cryptage (Kc) associée à un premier paramètre de calcul de clé (Nc).Selon l'invention, un tel procédé de stockage comprend les étapes suivantes :- obtention (802) d'une première fonction de traitement (ml) qui est fonction d'une information prédéterminée d'accès au contenu à stocker (CPK) ;- obtention (805), en tenant compte de ladite première fonction de traitement, d'un second paramètre (Ncpk ; Ncm) de calcul de clé ,- calcul (806) d'une seconde clé de cryptage (Kcpk), en tenant compte dudit second paramètre (Ncpk ; Ncm) de calcul de clé ;- cryptage (810) du contenu à stocker avec ladite seconde clé (Kcpk), obtenant ainsi un premier contenu crypté (Msa0), puis cryptage (811) du premier contenu crypté (Msa0) avec la première clé (Kc), obtenant ainsi un second contenu crypté (Msa) ;- Envoi (812) au dispositif de stockage du second contenu crypté (Msa) ; et- mémorisation (808) d'au moins une donnée de calcul (Ncm, Nc) nécessaire au calcul dudit second paramètre (Ncpk ; Ncm).
Description
Procédés de stockage et de lecture d'un contenu, du type mettant en oeuvre
un protocole de protection de contenu, dispositifs source, de stockage et récepteur correspondants.
1. Domaine de l'invention Le domaine de l'invention est celui des réseaux de communication de données. Plus particulièrement, l'invention concerne la restriction de l'accès à des contenus, notamment mais non exclusivement de données isochrones, stockés sur des unités de stockage dans un tel réseau.
On connaît, en effet, aujourd'hui des réseaux de communication auxquels sont connectés différents appareils générant et/ou recevant des contenus de données isochrones, ainsi que des unités de stockage de ces contenus (disques durs externes par exemple).
L'invention s'applique notamment, mais non exclusivement, dans le cas d'un réseau multimédia, où les flux de données isochrones transportent des données de type 15 audio-vidéo (AV).
2. Art antérieur: Les équipements modernes dont une famille peut s'équiper ont souvent pour tâche de transmettre des données de nature différente comme de la vidéo, du son, des photos, des fichiers de texte et autres. La transmission de ces données est soumise à des exigences variables selon le type de données considéré. Ces données doivent notamment être véhiculées au moyen de câbles ou de liens adaptés. Ainsi, à chaque format de données, correspond un moyen de transport adapté et un type de connecteur permettant de relier des équipements entre eux. Par exemple, les équipements traitant des données numériques peuvent fonctionner selon la norme IEEE-1394.
L'invention s'applique notamment, mais non exclusivement, dans le cas d'un réseau audio-vidéo, par exemple un réseau domestique, comprenant un réseau fédérateur comprenant lui-même des noeuds. Aux noeuds sont reliés des équipements, directement via des liens analogiques ou indirectement, par exemple, via des bus numériques séries conformes à la norme IEEE-1394. On rappelle que cette dernière est décrite dans les documents de référence suivants: IEEE Std 1394-1995, Standard for High Performance Serial Bus , IEEE Std 1394a-2000, Standard for High Performance Serial Bus (Supplement) et IEEE P1394.1 Draft 0.15, Standard for High Performance Serial Bus Bridges .
La figure IA illustre un exemple d'un tel réseau audio-vidéo domestique 1000. Ce réseau domestique 1000 comprend un réseau fédérateur 101 comprenant lui-même des noeuds 003, 004, 005 interconnectés via une unité centrale de commutation 015.
Comme illustré sur la figure 1B, l'unité centrale de commutation 015 comprend plusieurs dispositifs de commutation 150a, 150b, 150c et 150d. Par simplicité, on a représenté sur la figure 1B une telle unité de commutation 015 ne comprenant que quatre dispositifs de commutation 150a, 150b, 150c et 150d.
Le dispositif de commutation 150a est relié par l'intermédiaire d'un câble 153a au dispositif de commutation 150d, il est aussi relié par l'intermédiaire d'un autre câble 153d au dispositif de commutation 150c qui est lui-même relié par un autre lien 153e au dispositif de commutation 150d.
Le dispositif de commutation 150c est relié au dispositif de commutation 150b par l'intermédiaire d'une liaison 153c et finalement le dispositif de commutation 150b est relié au dispositif de commutation 150a par intermédiaire d'un lien de communication 153b.
Il est à remarquer que les dispositifs de commutation 150a, 150b, 150c, 150d sont, dans cet exemple, insérés dans les cloisons d'une habitation. Le dispositif 150a est par exemple placé dans la cloison 152a d'une pièce telle qu'une salle de séjour, le dispositif 150b dans la cloison 152b d'une autre pièce telle que la cuisine et le dispositif 150c dans la cloison 120c d'une pièce telle qu'un bureau, le dispositif 150d dans la cloison 152d d'une chambre.
Les dispositifs de commutation 150a, 150b, 150c, 150d peuvent cependant être 25 indépendants des cloisons et être ainsi déplaçables.
Les dispositifs de commutation 150a, 150b et 150c (figure 1B) sont reliés aux noeuds 003, 004 et 005 (notés NA, NB et NC respectivement sur la figure lA) du réseau fédérateur 1001 par l'intermédiaire d'un unique médium, dans notre cas des câbles 15la, 151b et 151c.
Par ailleurs, comme illustré sur la figure 1A, le noeud 003 est aussi connecté à des dispositifs terminaux: - un téléviseur 014, un lecteur DVD 013 et un magnétoscope VHS 012 au moyen de liens analogique; - un disque dur audio-vidéo 006, un magnétoscope VHS numérique 007 et un lecteur DVD numérique IEEE-1394 008 au moyen d'un bus série numérique 5 IEEE-1394 001.
Le noeud 004 est connecté via un bus série numérique IEEE-1394 002 à un téléviseur numérique 009, un magnétoscope VHS numérique 010 et un tuner IEEE-1394 011.
Dans un réseau, tel que le réseau domestique 1000 de la figure 1A, il est nécessaire de protéger les contenus stockés sur des unités de stockage connectées au réseau par des bus IEEE-1394, lorsque ces contenus sont transmis depuis les unités de stockage vers le réseau. Une première technique connue afin de garantir la protection contre la copie de contenus isochrones (tels que des contenus audio-vidéo) lors de leur transmission dans un réseau domestique est la mise en oeuvre du protocole DTCP (pour Digital Transfer Content Protection en anglais et protection de contenus en transmission numérique en français). Les caractéristiques et recommandations de ce protocole sont détaillées dans le document de référence suivant: Digital Transmission Content Protection Specification, Volume 1 et 2, Draft 1.29 .
La figure 2 illustre la mise en oeuvre du protocole DTCP lors de la transmission 20 d'un contenu entre un dispositif source, référencé A, et un dispositif récepteur, référencé B. Le protocole DTCP classique comprend une phase d'authentification 200 mutuelle du dispositif récepteur B et du dispositif source A, suivi d'une phase d'échange de clés entre ces deux dispositifs A et B. L phase d'authentification 200 comprend les étapes suivantes: - dans une première étape 201, le dispositif récepteur B émet une requête d'authentification, comprenant des informations d'authentification du dispositif récepteur B, qu'il envoie au dispositif source A; dans une seconde étape 202, le dispositif source A vérifie les 30 informations d'authentification du dispositif récepteur B; dans une troisième étape 203, le dispositif source A envoie au dispositif récepteur B un message de réponse à la requête d'authentification précitée, comprenant des informations d'authentification du dispositif source A; dans une quatrième étape 204, le dispositif récepteur B vérifie les informations d'authentification du dispositif source A; dans une cinquième étape 205, le dispositif source A envoie au dispositif récepteur B un premier message signé comprenant des informations spécifiques au protocole DTCP; dans une sixième étape 206, le dispositif récepteur B contrôle le premier message signé du dispositif source A et calcule une première clé d'authentification; - dans une septième étape 207, le dispositif récepteur B envoie à son tour, au dispositif source A, un second message signé comprenant des informations spécifiques au protocole DTCP; dans une huitième étape 208, le dispositif source A contrôle le second message signé du dispositif récepteur B et calcule une seconde clé d'authentification.
La phase d'échange de clés 210 comprend les étapes suivantes: dans une neuvième étape 211, le dispositif source A génère une information aléatoire, par exemple un nombre aléatoire Ncl, et calcule une clé de cryptage Kc 1 qui est une fonction notamment de ce nombre aléatoire Ncl et qui vérifie Kc 1 =J[Kx, EMI, Nd], ], où J est une fonction déterminée, EMI et Kx des paramètres classiques du protocole DTCP; - dans une dixième étape 212, le nombre aléatoire Nc est envoyé par le dispositif source A au dispositif récepteur B; - dans une onzième étape 213, le dispositif récepteur B calcule la clé de cryptage Kc 1 au moyen du nombre aléatoire Nc 1; dans une douzième étape 214, le dispositif source A crypte, en appliquant une fonction fKe, déterminée, le contenu au moyen de la clé de cryptage Kcl de manière à obtenir un contenu crypté noté Msal; dans une treizième étape 215, le dispositif source A envoie le contenu crypté Msal au dispositif récepteur B; dans une quatorzième étape 216, le dispositif récepteur B décrypte le contenu crypté Msal au moyen de la clé de cryptage Kcl, en appliquant une fonction p1Ke1 (qui est la fonction réciproque de la fonction fKc1).
Une seconde technique connue afin de garantir la protection contre la copie de contenus isochrones lors de leur transmission dans un réseau est présentée dans la demande de brevet internationale n WO0239661 (appartenant à la société COAXMEDIA INC).
Cette seconde technique propose de mettre en oeuvre une étape préalable de premier cryptage d'une clé de cryptage suivie d'une étape de second cryptage d'un contenu, avec la clé cryptée avant de transmettre le contenu dans un réseau de communication.
Une troisième technique connue afin de garantir la protection contre la copie de contenus isochrones lors de leur transmission dans un réseau est décrite dans la demande de brevet européen n EP1122910 (appartenant à la société MITSUBISHI CORP).
Cette troisième technique comprend un procédé de protection des contenus à base de deux étapes de cryptage consécutives, la première au moyen d'une clé de cryptage statique et la seconde au moyen d'une clé de cryptage évoluant dynamiquement dans le temps (l'ordre d'utilisation des deux clés de cryptage peut être inversé). inversement.
Ainsi, ces deux dernières techniques à base de double encryptage sont utilisées à des fins de sécurisation du transfert de contenus sur un médium. Cependant, un premier inconvénient est qu'elles ne permettent pas de protéger les contenus en dehors de leurs transferts.
En outre, l'encryption et la décryption ne se font pas à partir d'un même dispositif, en effet, le dispositif sur lequel les données sont stockées (par exemple une unité de stockage) possède des moyens pour décrypter les données. Un second inconvénient de ces techniques est donc qu'il est nécessaire d'implémenter notamment des moyens de décryptage au niveau des dispositifs de stockage qui deviennent des dispositifs de stockage actifs. Ainsi, on ne peut pas utiliser des dispositifs de stockage classiques pour mettre en oeuvre ces techniques selon l'état de l'art.
D'autre part, dans un réseau mettant en oeuvre par exemple le protocole DTCP, lorsqu'un dispositif extérieur à ce réseau mais qui implémente lui aussi le protocole DTCP se connecte directement à un dispositif de stockage de ce réseau, il peut, selon une mise en oeuvre classique de DTCP, accéder au données du dispositif de stockage.
Ainsi, un troisième inconvénient de ce type de technique classique est que des personnes peuvent avoir accès sans restriction aux contenus des dispositifs de stockage. 3. Objectifs de l'invention L'invention a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique.
Plus précisément, l'un des objectifs de la présente invention, dans au moins un mode de réalisation, est de fournir une technique améliorée de restriction de l'accès, depuis un dispositif récepteur, à un contenu stocké sur un dispositif de stockage, dans le cas où les deux dispositifs mettent en oeuvre un protocole de protection de contenus (par
exemple DTCP).
L'invention a aussi pour objectif, dans au moins un de ses modes de réalisation, de mettre en oeuvre une telle technique qui permette, si l'on utilise un premier réseau lors du stockage, d'assurer la restriction de l'accès aux contenus lorsque le dispositif de stockage est utilisé, lors de la lecture du contenu, dans un second réseau distinct du premier réseau, ce second réseau ne mettant pas en oeuvre la même technique selon l'invention de restriction d'accès et de contrôle de contenu que celle mise en oeuvre par le premier réseau.
Un autre objectif est de prévenir l'accès à un contenu sur un support amovible 25 lorsque celui-ci est accédé par un dispositif extérieur au réseau.
Encore un autre objectif de l'invention, dans au moins un de ses modes de réalisation, est de mettre en oeuvre une telle technique qui permette d'utiliser des dispositifs de stockage classiques et donc de ne pas avoir besoin d'implémenter de quelconques moyens au niveau des dispositifs de stockage qui demeurent passifs.
L'invention a encore pour objectif, dans au moins un mode de réalisation, de fournir une telle technique qui soit sûre, simple à mettre en oeuvre et peu coûteuse.
4. Caractéristiques essentielles de l'invention Ces différents objectifs, ainsi que d'autres qui apparaîtront par la suite, sont atteints selon l'invention à l'aide d'un procédé de stockage d'un contenu d'un dispositif source vers un dispositif de stockage, les dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une première clé de cryptage associée à un premier paramètre de calcul de clé.
Selon l'invention, un tel procédé de stockage comprend les étapes suivantes: - obtention d'une première fonction de traitement qui est fonction d'une information prédéterminée d'accès au contenu à stocker; obtention, en tenant compte de ladite première fonction de traitement, d'un second paramètre de calcul de clé , - calcul d'une seconde clé de cryptage, en tenant compte dudit second paramètre de calcul de clé ; cryptage du contenu à stocker avec ladite seconde clé, obtenant ainsi un premier contenu crypté, puis cryptage du premier contenu crypté avec la première clé, obtenant ainsi un second contenu crypté ; - Envoi au dispositif de stockage du second contenu crypté ; et - mémorisation d'au moins une donnée de calcul nécessaire au calcul dudit second paramètre.
Ce type de procédé de stockage offre donc un double niveau de sécurité pour l'accès au contenu et un accès restreint à des dispositifs du réseau de communication implémentant l'invention.
En effet, le dispositif de stockage et le dispositif source mettent en oeuvre le protocole de protection qui permet de décrypter une première fois le contenu du dispositif de stockage grâce à la clé Kc échangée selon le protocole. Cependant, le contenu décryté n'est accessible que si le dispositif est capable de calculer la seconde clé de cryptage à partir de l'au moins une donnée de calcul. Un dispositif ne mettant pas en oeuvre l'invention ne pourra pas calculer cette clé.
Ainsi, l'invention propose une méthode qui ne permette d'accéder à un contenu stocké sur un dispositif de stockage que dans le cas où le dispositif de lecture provient du réseau qui possède des noeuds implémentant l'invention.
Préférentiellement, le second paramètre de calcul de clé est calculé, avec une première fonction, en tenant compte de la première fonction de traitement obtenue et du premier paramètre de calcul de clé.
Avantageusement, la mémorisation de ladite au moins une donnée de calcul s'effectue par l'envoi de cette dite au moins une donnée au dispositif de stockage.
Selon une caractéristique avantageuse de l'invention, ladite au moins une donnée de calcul est calculée avec une seconde fonction, en tenant compte de la première fonction de traitement obtenue et du premier paramètre de calcul de clé.
Préférentiellement, une autre donnée de calcul est un paramètre de 10 réactualisation du second paramètre de calcul de clé.
Selon un premier mode de réalisation avantageux de l'invention, le paramètre de réactualisation est une période de temps d'une durée prédéterminée.
Selon un second mode de réalisation avantageux de l'invention, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de 15 paquets cryptés avec la seconde clé.
Avantageusement, le procédé de stockage selon l'invention comporte en outre les étapes suivantes: - mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé en fonction du paramètre de réactualisation; - recalcul de la seconde clé de cryptage après chaque incrémentation du second paramètre de calcul de clé.
Ainsi, la réactualisation de la seconde clé de cryptage, offre une garantie supplémentaire sur le contrôle d'accès au contenu.
Selon une caractéristique avantageuse de l'invention, le paramètre de réactualisation du second paramètre de calcul de clé est crypté à l'aide d'une troisième fonction prenant en compte la première fonction de traitement de façon à former une donnée de calcul.
Préférentiellement, la mémorisation de ladite au moins une donnée de calcul s'effectue localement.
Par exemple, la mémorisation est effectuée sur le dispositif source.
Selon un mode de mise en oeuvre avantageux de l'invention, ladite au moins une donnée de calcul est le premier paramètre de calcul de clé.
Avantageusement, ladite information prédéterminée d'accès au contenu à stocker, est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
Préférentiellement, ledit protocole de protection de contenu est le protocole DTCP.
Mais l'invention peut être adaptée également à tout autre protocole de protection de contenu.
L'invention concerne également un procédé de lecture d'un contenu provenant d'un dispositif de stockage vers un dispositif récepteur, le contenu ayant été stocké selon le procédé de stockage tel que décrit précédemment, lesdits dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une troisième clé de cryptage associée à un troisième paramètre de calcul de clé.
Selon l'invention, un tel procédé de lecture comprend les étapes suivantes: - réception d'un troisième contenu crypté du dispositif de stockage, obtenu par cryptage avec la troisième clé de cryptage du premier contenu crypté ; - obtention d'au moins une donnée de calcul; - obtention d'une seconde fonction de traitement qui est fonction d'une information d'autorisation d'accès au contenu à lire, ladite seconde fonction de traitement étant identique à ladite première fonction de traitement si l'information d'autorisation d'accès correspond à une information prédéterminée d'accès au contenu stocké ; - obtention, en tenant compte de ladite seconde fonction de traitement et de ladite donnée de calcul, d'un second paramètre de calcul de clé ; - calcul de la seconde clé de cryptage, en tenant compte dudit second paramètre de calcul de clé; décryptage du troisième contenu crypté avec la troisième clé, obtenant ainsi ledit premier contenu crypté, puis décryptage, avec la seconde clé, dudit premier contenu crypté, obtenant ainsi un contenu non crypté.
Ainsi, si un utilisateur frauduleux tente de lire un contenu à accès restreint, stocké sur un dispositif de stockage, avec un dispositif récepteur qui n'est pas capable de mettre en oeuvre le protocole de protection de contenu, modifié selon l'invention (cas par exemple d'un noeud d'un autre réseau, ne mettant pas en oeuvre la présente invention), et/ou si cet utilisateur ne connaît pas le bon mot de passe, il n'aura pas accès au contenu.
Préférentiellement, le second paramètre de calcul de clé est calculé, avec une première fonction, en tenant compte de la seconde fonction de traitement obtenue et du premier paramètre de calcul de clé obtenu par le calcul selon une seconde fonction prenant en compte la au moins une donnée de calcul et la seconde fonction de traitement.
Avantageusement, l'obtention de ladite au moins une donnée de calcul s'effectue par lecture de cette donnée mémorisée sur le dispositif de stockage.
Selon une caractéristique avantageuse de l'invention, une des au moins une donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
Selon un premier mode de réalisation avantageux de l'invention, le paramètre de réactualisation est une période de temps d'une durée prédéterminée.
Selon un premier mode de réalisation avantageux de l'invention, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé.
Préférentiellement, le procédé de lecture comporte en outre les étapes suivantes: - mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé en fonction du paramètre de réactualisation; - recalcul de la seconde clé de cryptage après chaque incrémentation du second paramètre de calcul de clé.
Préférentiellement, l'obtention de ladite au moins une donnée de calcul s'effectue par récupération de ladite au moins une donnée de calcul sur le dispositif source ayant mis en oeuvre le procédé de stockage tel que précédemment décrit.
Selon une caractéristique préférentielle de l'invention, ladite information d'autorisation d'accès au contenu à lire est un mot de passe utilisateur.
Selon un mode de mise en oeuvre avantageux de l'invention, ladite information prédéterminée d'accès au contenu stocké, est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
Préférentiellement, ledit protocole de protection de contenu est le protocole 5 DTCP.
L'invention concerne également un produit programme d'ordinateur, comprenant des instructions de code de programme pour l'exécution des étapes du procédé de stockage tel que décrit précédemment, lorsque ledit programme est exécuté sur un ordinateur.
L'invention concerne également un produit programme d'ordinateur, comprenant des instructions de code de programme pour l'exécution des étapes du procédé de lecture de contenu tel que décrit précédemment, lorsque ledit programme est exécuté sur un ordinateur.
L'invention concerne également un moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant un jeu d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé de stockage tel que décrit précédemment.
L'invention concerne également un moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant un jeu 20 d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé de lecture de contenu tel que décrit précédemment.
L'invention concerne également un dispositif source mettant en oeuvre des moyens de stockage d'un contenu sur un dispositif de stockage, les dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une première clé de cryptage associée à un premier paramètre de calcul de clé, le dispositif source comprenant: des moyens d'obtention d'une première fonction de traitement qui est fonction d'une information prédéterminée d'accès au contenu à stocker; des moyens d'obtention, en tenant compte de ladite première fonction de traitement, d'un second paramètre de calcul de clé ; - des moyens de calcul d'une seconde clé de cryptage, en tenant compte dudit second paramètre de calcul de clé ; - des premiers moyens de cryptage du contenu à stocker avec ladite seconde clé, permettant d'obtenir ainsi un premier contenu crypté, puis des seconds moyens de cryptage du premier contenu crypté avec la première clé, permettant d'obtenir ainsi un second contenu crypté ; - des moyens d'envoi au dispositif de stockage du second contenu crypté ; - des moyens de mémorisation d'au moins une donnée de calcul nécessaire au calcul dudit second paramètre.
Préférentiellement, le dispositif source selon l'invention comprend des moyens de calcul du second paramètre de calcul de clé mettant en oeuvre une première fonction, prenant en compte la première fonction de traitement obtenue et le premier paramètre de calcul de clé.
Avantageusement, les moyens de mémorisation de ladite au moins une donnée 15 de calcul mettent en oeuvre des moyens d'envoi de cette dite au moins une donnée au dispositif de stockage.
Préférentiellement, le dispositif source selon l'invention comprend des moyens de calcul de ladite au moins une donnée de calcul mettant en oeuvre une seconde fonction, prenant en compte la première fonction de traitement obtenue et le premier 20 paramètre de calcul de clé.
Selon une caractéristique avantageuse de l'invention, une autre donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
Selon un premier mode de réalisation avantageux de l'invention, le paramètre de réactualisation est une période de temps d'une durée prédéterminée.
Selon un second mode de réalisation avantageux de l'invention, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé.
Préférentiellement, le dispositif source selon l'invention comporte en outre: - des moyens de mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé en fonction du paramètre de réactualisation; - des moyens de recalcul de la seconde clé de cryptage activés après chaque incrémentation du second paramètre de calcul de clé.
Avantageusement, le dispositif source selon l'invention comprend des troisième moyens de cryptage du paramètre de réactualisation du second paramètre de calcul de clé mettant en oeuvre une troisième fonction prenant en compte la première fonction de traitement de façon à former une donnée de calcul.
Préférentiellement, les moyens de mémorisation de ladite au moins une donnée de calcul sont mis en oeuvre localement.
Selon une caractéristique avantageuse de l'invention, ladite au moins une donnée de calcul est le premier paramètre de calcul de clé.
Avantageusement, ladite information prédéterminée d'accès au contenu à stocker, est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
Préférentiellement, ledit protocole de protection de contenu est le protocole DTCP.
L'invention concerne également un dispositif récepteur d'un contenu provenant d'un dispositif de stockage afin de mettre en oeuvre des moyens de lecture du contenu, des moyens de stockage du contenu ayant été activés par un dispositif source tel que précédemment décrit, lesdits dispositif récepteur et dispositif de stockage mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une troisième clé de cryptage associée à un troisième paramètre de calcul de clé, le dispositif récepteur comprenant: - des moyens de réception d'un troisième contenu crypté du dispositif de stockage, des moyens de cryptage, mettant en oeuvre la troisième clé de cryptage, ayant été préalablement appliqués sur le premier contenu crypté afin d'obtenir le troisième contenu crypté ; - des moyens d'obtention d'au moins une donnée de calcul; - des moyens d'obtention d'une seconde fonction de traitement qui est fonction d'une information d'autorisation d'accès au contenu à lire, ladite seconde fonction de traitement étant identique à ladite première fonction de traitement si l'information d'autorisation d'accès correspond à une information prédéterminée d'accès au contenu stocké ; - des moyens d'obtention d'un second paramètre de calcul de clé, tenant compte de ladite;seconde fonction de traitement et de ladite donnée de calcul; - des moyens de calcul de la seconde clé de cryptage, prenant en compte ledit second paramètre de calcul de clé; - des premier moyens de décryptage dutroisième contenu crypté mettant en oeuvre la troisième clé, permettant d'obtenir ledit premier contenu crypté, et des second moyens de décryptage dudit premier contenu crypté mettant en oeuvre la seconde clé permettant d'obtenir un contenu non crypté.
Préférentiellement, le dispositif récepteur comprend: - des moyens de calcul du second paramètre de calcul de clé mettant en oeuvre une première fonction prenant en compte la seconde fonction de traitement obtenue et le premier paramètre de calcul de clé ; - des moyens de calcul, mettant en oeuvre une seconde fonction prenant en compte la au moins une donnée de calcul et la seconde fonction de traitement, permettent 15 d'obtenir le premier paramètre de calcul de clé.
Avantageusement, les moyens d'obtention de ladite au moins une donnée de calcul mettent en oeuvre des moyens de lecture de cette donnée mémorisée sur le dispositif de stockage.
Selon une caractéristique préférentielle de l'invention, une des au moins une 20 donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
Selon un premier mode de réalisation avantageux de l'invention, le paramètre de réactualisation est une période de temps d'une durée prédéterminée.
Selon un second mode de réalisation avantageux de l'invention, le contenu 25 comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé.
Préférentiellement, le dispositif récepteur selon l'invention comporte en outre: - des moyens de mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé en fonction du paramètre de réactualisation; - des moyens de recalcul de la seconde clé de cryptage activés après chaque incrémentation du second paramètre de calcul de clé.
Avantageusement, les moyens d'obtention de ladite au moins une donnée de calcul mettent en oeuvre des moyens de récupération de ladite au moins une donnée de calcul sur le dispositif source selon l'une quelconques des revendications 29, 38 et 39. Selon une caractéristique avantageuse de l'invention, ladite information d'autorisation d'accès au contenu à lire est un mot de passe utilisateur.
Préférentiellement, ladite information prédéterminée d'accès au contenu stocké, est un mot de passe associé audit contenu et/ou audit dispositif de stockage. Avantageusement, ledit protocole de protection de contenu est le protocole DTCP.
5. Liste des figures D'autres caractéristiques et avantages de l'invention apparaîtront à la lecture de la description suivante de trois modes de réalisation particuliers de l'invention, donnés à titre d'exemples indicatifs et non limitatifs, et des dessins annexés, dans lesquels: - la figure lA présente le schéma d'un exemple de réseau audio- vidéo domestique dans lequel peuvent être mis en oeuvre un procédé de stockage et un procédé lecture selon l'invention; - la figure 1B illustre un exemple de réalisation de l'unité centrale de commutation comprise dans le réseau domestique de la figure lA; La figure 1C présente le schéma d'une implémentation d'un noeud du réseau domestique de la figure lA selon un mode de mise en oeuvre particulier de l'invention; - la figure 2 illustre le protocole de protection DTCP classique, mis en oeuvre lors de la transmission d'un contenu entre un dispositif source et un dispositif récepteur; - la figure 3 illustre un premier mode de réalisation du procédé de stockage d'un contenu cO selon l'invention; -la figure 4 illustre un premier mode de réalisation du procédé de lecture d'un contenu cO selon l'invention; - la figure 5 illustre un second et un troisième modes de réalisation du procédé de stockage du contenu cO selon l'invention; - la figure 6 illustre un second et un troisième modes de réalisation du procédé de lecture du contenu cO selon l'invention; - la figure 7 présente un organigramme d'un exemple d'algorithme de gestion de clés, exécuté par un noeud de gestion de stockage, dans les trois modes de réalisation précités des procédés de stockage et de lecture selon l'invention; - la figure 8 présente les étapes mises en oeuvre par le premier noeud NA lors d'un stockage du contenu cO selon le premier mode de réalisation du procédé de stockage de l'invention; la figure 9 présente les étapes mises en oeuvre par le premier noeud NA lors d'une lecture du contenu cO selon le premier mode de réalisation du procédé de lecture de l'invention; la figure 10 présente les étapes mises en oeuvre par le premier noeud NA lors du stockage du contenu cO selon les second et troisième modes de réalisation du procédé de stockage de l'invention; la figure 11 présente les étapes mises en oeuvre par le premier noeud NA lors de la lecture du contenu cO selon les second et troisième modes de réalisation du procédé de lecture de l'invention; la figure 12 présente un algorithme de mise à jour de la seconde clé de cryptage, mis en oeuvre par le premier noeud NA lors du stockage du contenu cO selon le troisième mode de réalisation de l'invention; et - la figure 13 présente un algorithme de mise à jour de la seconde clé de cryptage, mis en oeuvre par le premier noeud NA lors de la lecture du contenu cO selon le troisième mode de réalisation de l'invention.
6. Description de trois modes de réalisation de l'invention On se place dans la suite de la description, dans le cadre du réseau domestique 1000 de la figure 1A. Cependant l'invention peut être mise en oeuvre dans tout réseau de communication comprenant au moins une unité de stockage, stockant au moins un contenu, reliée à au moins un dispositif récepteur.
Par ailleurs, on considère dans la suite que le protocole de protection de contenus mis en oeuvre dans le réseau domestique 1000 est le protocole DTCP précité. Cependant, il est évident que l'invention s'applique également à tout protocole de protection de contenus comprenant une phase d'échange de clé de cryptage.
A titre d'exemple explicatif, on va se placer, dans la suite, dans le cas particulier suivant: un premier utilisateur requiert la mise en oeuvre d'une opération de stockage d'un contenu c0, depuis un dispositif source initial, par exemple le magnétoscope numérique 010 relié à au noeud NB (appelé dans la suite, second noeud), sur l'unité de stockage 006, reliée à un dispositif source intermédiaire qui est le noeud NA (appelé dans la suite premier noeud).
On suppose également que le premier utilisateur attribue au contenu c0 un statut d'accès restreint.
Puis un second utilisateur (éventuellement confondu avec le premier utilisateur) souhaite mettre en oeuvre une opération de lecture du contenu c0, à accès restreint dans le réseau, de manière à lire c0 sur un dispositif récepteur final qui est le téléviseur numérique 009 relié au second noeud NB. Le contenu c0 est stocké sur l'unité de stockage 006 qui est reliée à un dispositif récepteur intermédiaire qui est le premier noeud NA.
Nous avons choisi à titre d'exemple un cas particulier dans lequel le dispositif source intermédiaire et le dispositif récepteur intermédiaire sont un même et unique noeud, le premier noeud NA. Il est clair cependant que, dans d'autres exemples, le dispositif source intermédiaire et le dispositif récepteur intermédiaire peuvent être deux noeuds distincts du réseau.
Les procédés de stockage et de lecture selon l'invention sont mis en oeuvre sous la forme d'un logiciel et/ou d'une pluralité de sous logiciels (comprenant une pluralité d'algorithmes décrits ci-après) qui est (sont) exécuté(s) dans plusieurs machines du réseau 1000, par exemple dans les noeuds NA, NB, NC décrits notamment ci-après en relation avec la figure 1C.
On présente, en relation avec la figure 1C, le schéma d'une implémentation d'un noeud 100 du réseau domestique 1000 selon un mode de mise en oeuvre particulier de l'invention. On ne décrit, par soucis de simplicité, que ce noeud générique 100 qui représente aussi bien le noeud 003 que le noeud 004 ou même le noeud 005 du réseau domestique 1000 de la figure lA précédemment décrite.
Le noeud 100 est connecté à la fois: - au réseau fédérateur 1001 (dont on a représenté sur cette figure 1C l'unité centrale de commutation 015) via un lien numérique; - à un bus IEEE-1394 125, lequel peut être connecté à une unité de stockage; et 5 - à des dispositifs terminaux analogiques référencés Rai, Sal et Sa2 via des liens analogiques.
Le noeud 100 comprend une interface réseau fédérateur 101 avec le réseau fédérateur 1001 utilisé par le contrôleur de réseau domestique 102 afin de transmettre et/ou recevoir des paquets sur et/ou provenant du réseau fédérateur 1001. Le contrôleur de réseau fédérateur 102 gère aussi le format de ces paquets.
Dans le noeud 100, une mémoire tampon de transmission 103 mise en oeuvre pour les transmissions de données sur le réseau et une mémoire tampon de réception 104 pour la réception de données provenant du réseau.
Un module d'interface microprocesseur 105 est chargé d'assurer l'interface avec le microprocesseur (référencé CPU pour Central Processing Unit en anglais) 122 afin de décoder le registre CPU et mettre en oeuvre les transferts DMA (pour Direct Memory Access ou accès mémoire directs en français) gérés par le microprocesseur 122 depuis ou vers le bloc mémoire SDRAM (pour Synchronous Dual Random Access Memory ou mémoire vive dynamique synchrone en français) 121.
Un module d'interface bus série 106 réalise les interfaces couche physique et couche de lien du bus IEEE-1394 en respectant la norme IEEE- 1394.
Un module d'interface audio-vidéo 107 réalise le formatage et le déformatage des paquets des flux IEEE-1394 envoyés sur le bus IEEE selon des recommandations du document de référence suivant: IEC Std 61883, Consumer audio/video equipment Digital interface .
Le noeud 100 comprend également des décodeurs/encodeurs MPEG2 108, 109, connectés respectivement à des ports d'entrées/sortie audio-video 113, 112 et 111 qui sont eux-mêmes reliés respectivement aux terminaux analogiques Rai, Sal et Sa2. Un module de contrôle de transition 114 assure: - la mise en oeuvre de toutes les opérations critiques au niveau temporel associées au portail de transition IEEE-1394 (tel que décrit dans le document de référence suivant: IEEE P1394.1 Draft 0.15 Standard for High Performance Serial Bus Bridges ) dont notamment: - la surveillance des paquets arrivants; - lia génération d'accusés de réception; - la gestion du routage isochrone et asynchrone; - la synchronisation de l'horloge IEEE-1394; la gestion des requêtes de transfert isochrone entre: ll'interface bus série 106 et l'interface réseau fédérateur 101; ]l'interface bus série 106 et l'interface microprocesseur 105; - la mise en oeuvre des opérations suivantes sur les en-têtes de flux quand c'est nécessaire: - suppression; - requête d'insertion; - horodatage; - la réception de tous les signaux d'interface liés à l'interface signaux d'indicateur de présence et d'interruption ( Status and Interrupt Signais en anglais) de l'interface bus série 106; - la réception de tous les signaux d'interface liés à l'interface signaux interface d'accès au registre physique ( PHY Register Access Interface Signals en 20 anglais) de l'interface bus série 106.
- la gestion des transmissions et réception des paquets des contenus. Le noeud 100 comprend un module de décryptage 115 qui met en oeuvre le décryptage de certains contenus lorsqu'il y est autorisé.
Il comprend un module de cryptage 116 qui met en oeuvre le cryptage de certains 25 contenus lorsqu'il y est invité.
Un module FIFO ( First in First out en anglais ou premier entré premier sorti en français) de transmission isochrone 117 qui implémente une FIFO isochrone de 2Kx32 bits.
Un module FIFO de réception isochrone 118 qui implémente une FIFO 30 isochrone de 2Kx32 bits. 10
Un module de gestion de clés 119 qui génère des clés de cryptage et de décryptage utilisées pour crypter ou décrypter par le module de cryptage 116. Le module de gestion de clés 119 contrôle le procédé de double cryptage ou décryptage selon l'invention Des modules de multiplexage 120a à 120c. Le module de multiplexage 120a est contrôlé par le module de gestion de clés 119 et permet de router un flux de données une fois crypté vers le module FIFO de transmission isochrone 117 ou de router un flux de donnée vers l'entrée du module de cryptage 116 lorsqu'un second cryptage est nécessaire.
Le module de multiplexage 120b est contrôlé par le module de gestion de clés 119 et permet de router un flux de données une fois décrypté vers la mémoire tampon de transmission 103 ou vers le module d'interface audio-vidéo 107 ou même de router un flux de donnée vers l'entrée du module de décryptage 115 lorsqu'un second décryptage est nécessaire.
Le noeud 100 comprend également un bloc de mémoire Flash 123 connecté au module d'interface microprocesseur 105.
Selon un exemple de mise en oeuvre particulier de l'invention, à chaque contenu à accès restreint stocké sur le réseau correspond une clé privée de contenu (notée CPK) formant mot de passe de référence spécifique à ce contenu.
Selon une variante de cet exemple de mise en oeuvre particulier, à l'ensemble des contenus à accès restreint stockés sur le réseau, correspond une unique clé privée de contenu (notée C'PK) formant mot de passe de référence comme à tous les contenus.
Selon une autre variante de cet exemple de mise en oeuvre particulier, ce n'est pas aux contenus à accès restreint qu'est associée une clé privée de contenu (CPK) formant mot de passe de référence, mais aux unités de stockages sur lesquelles sont stockés ces contenus à accès restreints.
Par exemple, à chaque unité de stockage peut être associée une clé privée distincte. Dans un autre exemple, une même clé privée est associée à l'ensemble ou a seulement une partie des unités de stockage.
Une table des contenus et de leur restriction d'accès est également mise en oeuvre dans ce mode de mise en oeuvre préférentiel de l'invention. Cette table comprend notamment l'ensemble des contenus stockés sur le réseau 1000 ainsi que, pour chacun des contenus, une information indiquant s'il est à accès restreint ou pas. Dans la suite, on appelle cette information le statut de restriction du contenu.
Cette table des contenus est par exemple comprise dans un noeud de gestion du 5 stockage ou dans chaque noeud du réseau, comme expliqué ci- après en relation avec la figure 7.
Par exemple, cette table comprend le nom de chaque contenu, le statut de restriction, la clé privée de contenu de chaque contenu (CPK) ainsi qu'un identifiant de l'unité de stockage sur laquelle est stocké chaque contenu.
Selon une caractéristique préférentielle de l'invention, une interface graphique est utilisée pour permettre aux utilisateurs de transmettre leurs instructions aux équipements du réseau 1000.
Cette interface est notamment utilisée lors d'une étape de configuration du réseau, dans laquelle un utilisateur décide d'attribuer un statut de restriction d'accès ainsi qu'une éventuelle clé privée de contenu à chaque contenu du réseau 1000. Cette étape de configuration peut être mise en oeuvre préalablement à l'utilisation du réseau et/ou peut être mise en oeuvre à chaque fois qu'un nouveau contenu est introduit pour stockage dans le réseau 1000.
En d'autres termes, dans le second cas, l'utilisateur saisit pendant l'opération de 20 stockage un mot de passe (CPK), qui est utilisé pour calculer un premier masque pendant l'opération de stockage, puis saisit un second mot de passe (UCPK), qui est utilisé pour calculer un second masque pendant l'opération de lecture.
La table des contenus précitée est remplie grâce à l'interface graphique, lors de cette (ces) étape(s) de configuration.
Cette interface est en outre utilisée lorsque le second utilisateur souhaite mettre en oeuvre l'opération de lecture. En effet, préalablement à cette opération de lecture, il est demandé au second utilisateur de saisir un mot de passe, appelé dans la suite clé privée de contenu utilisateur et notée UCPK. Comme expliqué en détail par la suite, en relation avec la figure 4, notamment, si le mot de passe saisi (UCPK) correspond (soit à l'identique soit selon une fonction prédéfinie) au mot de passe de référence (CPK), le second utilisateur est autorisé à avoir accès au contenu.
Les équipements du réseau 1000 comprennent des moyens pour savoir si les contenus du réseau 1000 sont à accès libre ou à accès restreint, par exemple, ils accèdent à la table des contenus précitée.
La figure 3 illustre un premier mode de réalisation du procédé de stockage du contenu cO selon l'invention, mis en oeuvre lors de l'opération de stockage du contenu cO précitée.
Lors de l'opération de stockage du contenu cO, avant le stockage à proprement parler de cO sur l'unité de stockage, sont mises en oeuvre: une première transmission du contenu cO depuis le magnétoscope numérique 010 vers le premier noeud NA, au moyen du protocole DTCP classique ou par toute autre technique de sécurisation de la transmission d"un flux dans un réseau de communication; une seconde transmission du contenu cO depuis le premier noeud NA (jouant le rôle du dispositif source de la figure 2) vers l'unité de stockage 006 (jouant le rôle du dispositif récepteur de la figure 2).
Lors de cette seconde transmission, une phase d'authentification entre le premier noeud Na et l'unité de stockage 006 est mise en oeuvre. Elle est identique à la phase d'authentification 200 du protocole DTCP classique (décrit ci-dessus en relation avec la figure 2).
Par contre, la phase d'échange de clé 310 mise en oeuvre est différente de la phase d'échange de clé du protocole DTCP classique. La figure 3 illustre plus particulièrement cette phase d'échange de clé modifiée 310, qui comprend les étapes suivantes: dans une première étape 311, le premier noeud NA génère et mémorise un premier paramètre de calcul de clé, par exemple un premier nombre aléatoire Nc, qui sera également dans ce mode de réalisation, une donnée de calcul utilisée dans le procédé de lecture. Le premier noeud NA calcule une première clé de cryptage Kc qui est une fonction notamment du premier nombre aléatoire Nc et qui vérifie Kc =J[Kx, EMI, Nc], où J est une fonction déterminée, EMI et Kx des paramètres classiques du protocole DTCP; 30 dans une deuxième étape 312, le premier nombre aléatoire Nc est envoyé par le premier noeud NA à l'unité de stockage 006; dans une troisième étape 313, l'unité de stockage 006 calcule la première clé de cryptage Kc au moyen du premier nombre aléatoire Nc; - dans une quatrième étape 314, le premier noeud NA calcule une première fonction de traitement ml, appelée dans la suite premier masque, à partir de la clé privée de contenu CPK, selon la relation ml = H(CPK) où H est une fonction déterminée; dans une cinquième étape 315, le premier noeud NA calcule, à partir du premier nombre aléatoire Nc et du premier masque ml, un second paramètre de calcul de clé, ci-après appelé nombre brouillé Ncm, selon la relation Ncm = F(Nc, ml) où F est une fonction déterminée; - dans une sixième étape 317, le premier noeud NA calcule une seconde clé de cryptage Kcpk qui est une fonction notamment du nombre brouillé Ncm et qui vérifie Kcpk =J[Kx, EMI, Ncm] ; dans une septième étape 318, le premier noeud NA effectue un premier cryptage du contenu cO au moyen de la seconde clé Kcpk de manière à obtenir un premier contenu crypté msa0 selon la relation: MsaO = fKcpk(cO), où fKepk est une fonction déterminée, puis effectue un second cryptage du premier contenu crypté MsaO, au moyen de la première clé Kc, de manière à obtenir un second contenu crypté Msa selon la relation: Msa = fKc(MsaO), où fK est une fonction déterminée, le second contenu crypté Msa est donc doublement crypté (il a subit un double cryptage) ; - dans une huitième étape 319, le premier noeud NA envoie à l'unité de stockage le second contenu crypté Msa; dans une neuvième étape 320, l'unité de stockage 006 décrypte (selon la relation f-'KC (Msa) = MsaO, où f'Kc est la fonction réciproque de la fonction fKc) le second contenu crypté Msa au moyen de la première clé de cryptage Kc de manière à obtenir le premier contenu crypté MsaO, puis stocke le premier contenu crypté résultant; La figure 4 illustre un premier mode de réalisation du procédé de lecture du contenu cO selon l'invention, mis en oeuvre lors de l'opération de lecture du contenu cO précitée.
Lors de 1 opération de lecture du contenu cO, avant la lecture à proprement parler du contenu cO sur le téléviseur numérique 009, sont mises en oeuvre: une première transmission du contenu cO, stocké sur l'unité de stockage 006 (jouant le rôle du dispositif source de la figure 2), au premier noeud NA (jouant le rôle du dispositif récepteur de la figure 2) ; une seconde transmission du contenu cO du premier noeud NA vers le téléviseur numérique 009 au moyen du protocole DTCP classique ou par toute autre technique de sécurisation de la transmission d'un flux dans un réseau de communication.
Lors de la première transmission, une phase d'authentification entre le premier noeud Na et l'unité de stockage 006 est mise en oeuvre. Elle est identique à la phase d'authentification 200 du protocole DTCP classique (décrit ci-dessus en relation avec la figure 2).
Par contre, la phase d'échange de clé 410 mise en oeuvre est différente de la phase d'échange de clé du protocole DTCP classique. La figure 4 illustre plus particulièrement cette phase d'échange de clé modifiée 410, qui comprend les étapes suivantes: dans une première étape 412,le premier noeud NA lit la donnée de calcul correspondant ici au nombre aléatoire Nc qui a été préalablement stocké (première étape 311 précitée) lors de l'opération de stockage du contenu cO; dans une seconde étape 413, le premier noeud NA calcule une seconde fonction de traitement m2, appelé dans la suite second masque, à partir de la clé privée de contenu utilisateur UCPK (transmise au premier noeud NA par un noeud de gestion de stockage décrit ci-après en relation avec la figure 7), selon la relation m2 = H(UCPK). Si la clé privée de contenu utilisateur UCPK (qui est aussi le mot de passe saisi par l'utilisateur) correspond à la clé privée de contenu CPK (qui est aussi le mot de passe 30 de référence), ceci signifie que le second utilisateur connaît le bon mot de passe à saisir (UCPK), et est donc autorisé à accéder en lecture au contenu cO. Dans ce cas, la fonction m2 est identique à la fonction ml utilisée lors du stockage; dans une troisième étape 414, le premier noeud NA obtient le nombre brouillé Ncm en utilisant la fonction F précitée appliquée à la donnée de calcul correspondant au premier nombre aléatoire Nc et au second masque m2 selon la relation Ncm = F(Nc, m2) ; dans une quatrième étape 416, le premier noeud NA obtient la seconde clé de cryptage Kcpk en utilisant la fonction J précitée appliquée au nombre brouillé Ncm et aux paramètres du protocole DTCP classique Kx et EMI selon la relation Kcpk = J[Kx, EMI, Ncm] ; dans une cinquième étape 417, l'unité de stockage 006 génère un troisième paramètre de calcul de clé, ici, une information aléatoire, par exemple un second nombre aléatoire Nc2, et calcule une troisième clé de cryptage Kc2 qui est une fonction notamment du second nombre aléatoire Nc2 et qui vérifie Kc2 =J[Kx, EMI, Nc2] ; dans une sixtième étape 418, l'unité de stockage 006 envoie au premier noeud NA le second nombre aléatoire Nc2; dans une septième étape 419, le premier noeud NA calcule la troisième clé de cryptage Kc2; dans une huitième étape 420, l'unité de stockage 006 crypte (selon la relation fKc2 (MsaO) = Msa2 où fKc2 est une fonction déterminée) le premier contenu crypté MsaO au moyen de la troisième clé de cryptage Kc2; de manière à obtenir un troisième contenu crypté Msa2; dans une neuvième étape 421, l'unité de stockage 006 envoie au premier noeud NA le troisième contenu crypté Msa2; - dans une dixième étape 422, le premier noeud NA décrypte (selon la relation f- 'Ka (Msa2) = MsaO où fKc2 est la fonction réciproque de la fonction fKc2) le troisième contenu crypté Msa2 au moyen de la troisième clé de cryptage Kc2, de manière à obtenir le premier contenu crypté MsaO. Puis le noeud NA décrypte une fois encore (selon la relation f1Kcpk (MsaO) = c0 où f1Kcpk est la fonction réciproque de la fonction fKcpk) le premier contenu crypté résultant MsaO au moyen de la seconde clé de cryptage Kcpk, de manière à retrouver le contenu c0 (le contenu c0 subit donc un double décryptage) ; Si la clé privée de contenu utilisateur UCPK ne correspond pas à la clé privée de contenu CPK, ceci signifie que le second utilisateur ne connaît pas le bon mot de passe à saisir, et n'est donc pas autorisé à accéder en lecture au contenu c0. Alors, les troisième et quatrième étapes 414, 416 ne permettent pas d'obtenir le nombre brouillé Ncm, ni la seconde clé de cryptage Kcpk car les fonctions de traitement m2 et ml ne sont pas identiques. En conséquence, le premier contenu crypté MsaO n'est pas décrypté dans la dixième étape 422 et l'utilisateur ne peut pas lire le contenu c0.
Dans ce premier mode de réalisation, la lecture du contenu est conditionnée au fait que cette lecture doit se faire sur le noeud NA qui a effectué le stockage du contenu puisque c'est ce noeud qui a mémorisé la donnée de calcul. Ce mode de réalisation offre donc un contrôle d'accès restreint au niveau d'un noeud.
La figure 5 illustre un second ainsi qu'un troisième modes de réalisation du procédé de stockage du contenu c0 selon l'invention, mis en oeuvre lors de l'opération de stockage du contenu c0 précitée.
On ne décrira ci-après que le troisième mode de réalisation du procédé de stockage étant donné que le second mode de réalisation est identique au troisième mode de réalisation si ce n'est le fait que dans le second mode de réalisation, on ne fait pas intervenir la durée prédéterminée Tcpk. C'est-à-dire, que la durée prédéterminée Tcpk n'est pas transmise du premier noeud NA vers l'unité de stockage 006 dans la onzième étape 521 décrite ci-après et n"est pas stockée sur l'unité de stockage 006 dans la douzième étape 522 décrite ci-après.
Lors de l'opération de stockage du contenu c0, avant le stockage à proprement parler de c0 sur l'unité de stockage, sont mises en oeuvre: une première transmission du contenu c0 depuis le magnétoscope numérique 010 vers le premier noeud NA, au moyen du protocole DTCP classique ou par toute autre technique de sécurisation de la transmission d'un flux dans un réseau de communication; une seconde transmission du contenu cO depuis le premier noeud NA (jouant le rôle du dispositif source de la figure 2) vers l'unité de stockage 006 (jouant le rôle du dispositif récepteur de la figure 2).
Lors de cette seconde transmission, une phase d'authentification entre le premier noeud Na et l'unité de stockage 006 est mise en oeuvre. Elle est identique à la phase d'authentification 200 du protocole DTCP classique (décrit ci-dessus en relation avec la figure 2).
Par contre, la phase d'échange de clé 510 mise en oeuvre est différente de la phase d'échange de clé du protocole DTCP classique. La figure 5 illustre plus particulièrement cette phase d'échange de clé modifiée 510, qui comprend les étapes suivantes: dans une première étape 511, le premiernoeud NA génère un premier paramètre de calcul de clé, ici une information aléatoire, par exemple un premier nombre aléatoire Nc, et calcule une première clé de cryptage Kc qui est une fonction notamment du premier nombre aléatoire Nc et qui vérifie Kc =JIKx, EMI, Nc] , où J est une fonction déterminée, EMI et Kx des paramètres classiques du protocole DTCP; dans une deuxième étape 512, le premier nombre aléatoire Nc est envoyé par le premier noeud NA à l'unité de stockage 006; - dans une troisième étape 513, l'unité de stockage 006 calcule la première clé de cryptage Kc au moyen du premier nombre aléatoire Nc; dans une quatrième étape 514, le premier noeud NA calcule une première fonction de traitement ml, appelée dans la suite premier masque, à partir de la clé privée de contenu CPK, selon la relation ml = H(CPK) où H est une fonction déterminée; dans une cinquième étape 515, le premier noeud NA calcule, à partir du premier nombre aléatoire Nc et du premier masque ml, un second paramètre, ci-après appelé nombre brouillé Ncm, selon la relation Ncm = F(Nc, ml) où F est une fonction déterminée; dans une sixième étape 516, le premier noeud NA calcule, à partir du premier nombre aléatoire Nc et du premier masque ml, un second paramètre de calcul de clé, ci-après appelé nombre privé de contenu Ncpk, selon la relation Ncpk = G(Nc, ml) où G est une fonction déterminée; dans une septième étape 517, le premier noeud NA calcule une seconde clé de cryptage Kcpk qui est une fonction notamment du nombre privé de contenu Ncpk et qui vérifie Kcpk =J[Kx, EMI, Ncpk] ; dans une huitième étape 518, le premier noeud NA effectue un premier cryptage du contenu cO au moyen de la seconde clé Kcpk de manière à obtenir un premier contenu crypté msa0 selon la relation: MsaO = fKcpk(cO), où fKcpk est une fonction déterminée, puis effectue un second cryptage du premier contenu crypté MsaO, au moyen de la première clé Kc, de manière à obtenir un second contenu crypté Msa selon la relation: Msa = fKC(MsaO), où fKc est une fonction déterminée, le second contenu crypté Msa est donc doublement crypté (il a subit un double cryptage) ; dans une neuvième étape 519, le premier noeud NA envoie à l'unité de stockage le second contenu crypté Msa; dans une dixième étape 520, l'unité de stockage 006 décrypte (selon la relation f-Kc (Msa) = MsaO, où f'Kc est la fonction réciproque de la fonction fKc) le second contenu crypté Msa au moyen de la première clé de cryptage Kc de manière à obtenir le premier contenu crypté MsaO, puis stocke le premier contenu crypté résultant; dans une onzième étape 521, le premier noeud NA transmet à l'unité de stockage le nombre brouillé Ncm et une durée prédéterminée Tcpk qui sera décrite ci-après en relation avec la figure 12. Ces données sont des données de calcul qui seront utilisés lors du procédé de lecture; dans une douzième étape 522, l'unité de stockage stocke les données de calcul, c'est à dire le nombre brouillé Ncm ainsi que la durée prédéterminée Tcpk.
La figure 6 illustre un second ainsi qu'un troisième modes de réalisation du procédé de lecture du contenu c0 selon l'invention, mis en oeuvre lors de l'opération de lecture du contenu c0 précitée.
On ne décrira ci-après que le troisième mode de réalisation du procédé de lecture étant donné que le second mode de réalisation est identique au troisième mode de réalisation si ce n'est le fait que dans le second mode de réalisation, on ne fait pas intervenir la durée prédéterminée Tcpk. C'est-à-dire, que la durée prédéterminée Tcpk n'est pas lue par le premier noeud NA sur l'unité de stockage 006 dans la première étape 612 décrite ci-après.
Lors de l'opération de lecture du contenu c0, avant la lecture à proprement parler du contenu c0 sur le téléviseur numérique 009, sont mises en oeuvre: une première transmission du contenu c0, stocké sur l'unité de stockage 006 (jouant le rôle du dispositif source de la figure 2), au premier noeud NA (jouant le rôle du dispositif récepteur de la figure 2) ; une seconde transmission du contenu c0 du premier noeud NA vers le téléviseur numérique 009 au moyen du protocole DTCP classique ou par toute autre technique de sécurisation de la transmission d'un flux dans un réseau de communication.
Lors de la première transmission, une phase d'authentification entre le premier noeud Na et l'unité de stockage 006 est mise en oeuvre. Elle est identique à la phase d'authentification 200 du protocole DTCP classique (décrit ci-dessus en relation avec la figure 2).
Par contre, la phase d'échange de clé 610 mise en oeuvre est différente de la phase d'échange de clé du protocole DTCP classique. La figure 6 illustre plus particulièrement cette phase d'échange de clé modifiée 610, qui comprend les étapes suivantes: dans une première étape 612, le premier noeud NA lit sur l'unité de stockage 006 les données de calcul, c'est à dire le nombre brouillé Ncm et la durée prédéterminée Tcpk qui ont été préalablement stockés (douzième étape 522) lors de l'opération de stockage du contenu c0; - dans une seconde étape 613, le premier noeud NA calcule une seconde fonction de traitement m2, appelé dans la suite second masque, à partir de la clé privée de contenu utilisateur UCPK (transmise au premier noeud NA par un noeud de gestion de stockage décrit ci-après en relation avec la figure 7), selon la relation m2 = H(UCPK). Si la clé privée de contenu utilisateur UCPK (qui est aussi le mot de passe saisi par l'utilisateur) correspond à la clé privée de contenu (qui est aussi le mot de passe de référence), ceci signifie que le second utilisateur connaît le bon mot de passe à saisir (UCPK), et est donc autorisé à accéder en lecture au contenu co; dans une troisième étape 614, le premier noeud NA obtient le premier nombre aléatoire Nc en utilisant la fonction réciproque F' de la fonction F précitée appliquée au nombre brouillé Ncm et au second masque m2 selon la relation Nc = F'(Ncm, m2) ; - dans une quatrième étape 615, le premier noeud NA obtient le second paramètre de calcul de clé Ncpk en utilisant la fonction G précitée appliquée au premier nombre aléatoire Nc et au second masque m2 selon la relation Ncpk = G(Nc, m2) ; dans une cinquième étape 616, le premier noeud NA obtient la seconde clé de cryptage Kcpk en utilisant la fonction J précitée appliquée au nombre privé de contenu Ncpk et aux paramètres du protocole DTCP classique Kx et EMI selon la relation Kcpk = J[Kx, EMI, NcpkI; - dans une sixième étape 617, l'unité de stockage 006 génère un troisième paramètre de calcul de clé, ici une information aléatoire, par exemple un second nombre aléatoire Nc2, et calcule une troisième clé de cryptage Kc2 qui est une fonction notamment du second nombre aléatoire Nc2 et qui vérifie Kc2 =J[Kx, EMI, Nc2] ; dans une septième étape 618, l'unité de stockage 006 envoie au premier noeud NA le second nombre aléatoire Nc2; dans une huitième étape 619, le premier noeud NA calcule la troisième clé de cryptage Kc2; dans une neuvième étape 620, l'unité de stockage 006 crypte (selon la relation fKc2 (MsaO) = Msa2 où fKcz est une fonction déterminée) le premier contenu crypté MsaO au moyen de la troisième clé de cryptage Kc2; de manière à obtenir un troisième contenu crypté Msa2; dans une dixième étape 621, l'unité de stockage 006 envoie au premier noeud NA le troisième contenu crypté Msa2; dans une onzième étape 622, le premier noeud NA décrypte (selon la relation f-'Kc2 (Msa2) = MsaO où fKcz est la fonction réciproque de la fonction fKc2) le troisième contenu crypté Msa2 au moyen de la troisième clé de cryptage Kc2, de manière à obtenir le premier contenu crypté MsaO. Puis le noeud NA décrypte une fois encore (selon la relation f1Kcpk (MsaO) = cO où Kcpk est la fonction réciproque de la fonction fKepk) le premier contenu crypté résultant MsaO au moyen de la seconde clé de cryptage Kcpk, de manière à retrouver le contenu cO (le contenu cO subit donc un double décryptage) ; Si la clé privée de contenu utilisateur UCPK ne correspond pas à la clé privée de contenu CPK, ceci signifie que le second utilisateur ne connaît pas le bon mot de passe à saisir, et n'est donc pas autorisé à accéder en lecture au contenu cO. Alors, les troisième, quatrième et cinquième étapes 614, 615, 616 ne permettent pas d'obtenir le premier nombre aléatoire Nc, ni le nombre privé de contenu Ncpk, ni la seconde clé de cryptage Kcpk car les fonctions de traitement m2 et ml ne sont pas identiques. En conséquence, le premier contenu crypté MsaO n'est pas décrypté dans la onzième étape 622 et l'utilisateur ne peut pas lire le contenu cO.
Le second mode de réalisation présenté offre donc un contrôle d'accès au contenu pour des noeuds du réseau implémentant l'invention. Le fait que la donnée de calcul Ncm soit stocké sur le dispositif de stockage et non pas sur le noeud qui a effectué le stockage, permet de pouvoir accéder au contenu depuis n'importe quel noeud du réseau, qui implémente l'invention. Le fait d'utiliser le nombre brouillé Ncm et le nombre privé Ncpk, offre une sécurité supplémentaire pour le contrôle d'accès.
On présente, en relation avec la figure 7, un organigramme d'un exemple d'algorithme de gestion de clés, exécuté par un noeud de gestion de stockage qui est par exemple le noeud NC, dans les premier, second et troisième modes de réalisation précités des procédés de stockage et de lecture selon l'invention.
Dans un mode de mise en oeuvre de l'invention, la gestion des clés est centralisée dans le noeud NC, ce dernier est le seul noeud du réseau à jouer le rôle de noeud de gestion du stockage. Il comprend, pour ce faire, la table des contenus précitée.
Cet algorithme de gestion de clés est notamment mis en oeuvre dans le cas où : le premier utilisateur lance l'opération de stockage précitée du contenu cO, provenant du magnétoscope numérique 010 (dispositif source initial), sur l'unité de stockage 006; le second utilisateur lance l'opération de lecture précitée du contenu cO, stocké sur l'unité de stockage 006, sur le téléviseur numérique 009 (dispositif récepteur final) .
Dans la suite, on va décrire cet algorithme dans le cas de la mise en oeuvre de l'opération de lecture précitée.
Dans une première étape 700, la connexion d'un dispositif récepteur final (par exemple le téléviseur numérique 009) auprès d'un dispositif source du réseau 1000 est requise, afin d'accéder à un contenu cO. Dans une seconde étape 701, le noeud de gestion du stockage NC vérifie si le dispositif source est une unité de stockage.
Si le dispositif source n'est pas une unité de stockage, le procédé de lecture selon 20 l'invention n'est pas mis en oeuvre, le noeud de gestion du stockage NC retourne à la première étape 700 et attend qu'une nouvelle connexion soit requise.
Si le dispositif source est une unité de stockage, par exemple, l'unité de stockage 006, dans une troisième étape 702, le noeud de gestion du stockage NC vérifie si l'unité de stockage 006 n'est pas occupée (c'est-à-dire qu'elle est utilisée par d'autres dispositifs du réseau 1000 de telle manière qu'elle ne possède plus de port de sortie disponible pour la lecture).
Si l'unité de stockage 006 est occupée, la connexion est rejetée et le noeud de gestion du stockage NC retourne à la première étape 700.
Dans le cas contraire (c'est-à-dire si au moins un port de sortie en lecture est 30 disponible), dans une quatrième étape 703, le noeud de gestion du stockage NC obtient un identifiant du premier noeud NA auquel l'unité de stockage 006 est connectée.
En parallèle, dans une sixième étape 705, la clé privée de contenu utilisateur (UCPK) de cO est obtenue (après saisie du mot de passe par l'utilisateur comme expliqué précédemment).
Dans une septième étape 706, le noeud de gestion du stockage NC envoie au premier noeud NA la clé privée de contenu utilisateur (UCPK) associée à co.
Dans le cadre de la mise en oeuvre de l'opération de stockage du contenu cO, non représentée, les étape 705 et 706 précitées sont remplacées par une étape d'envoi de la clé privée de contenu CPK associée au contenu cO au premier noeud NA (après avoir été extraite de la table de contenus par le noeud de gestion du stockage NC).
Dans une huitième étape 707, une connexion entre le premier noeud NA et l'unité de stockage 006 est établie et, dans une neuvième étape 708, l'unité de stockage est identifiée comme occupée (si elle ne dispose plus de port de sortie disponible suite à cette connexion) ou un de ses ports de sortie est identifié comme occupé (si elle dispose d'au moins un port de sortie disponible suite à cette connexion).
Ensuite, le noeud de gestion du stockage NC met un terme à ce procédé de gestion de clés, dans une dixième étape 709.
A tout moment (onzième étape 710), si la connexion entre l'unité de stockage 006 et le premier noeud NA est fermée, ou si l'unité de stockage 006 est déconnectée (une douzième étape 711 vise à déterminer si au moins une de ces conditions est vérifiée), l'unité de stockage 006 est identifiée comme disponible (car au moins un de ses ports de sortie en lecture devient disponible) dans une treizième étape 712. Ensuite, le noeud de gestion du stockage NC retourne à la première étape 700.
Ce procédé de gestion de clés et de connexions est mis en oeuvre pour chaque dispositif source auquel un dispositif récepteur final souhaite accéder, et pour chaque connexion correspondante. Il est également mis en oeuvre pour chaque dispositif de stockage auquel un dispositif source final souhaite accéder, et pour chaque connexion correspondante.
Le noeud NC joue ici le rôle du noeud de gestion de stockage. Dans la pratique et selon les cas, chaque noeud NA, NB, NC peut jouer le rôle de noeud récepteur ou de noeud demandeur.
Dans une variante de ce premier mode de mise en oeuvre de l'invention, la gestion de clés n'est pas centralisée dans un noeud spécifique mais est distribuée dans chaque noeud du réseau 1000. Alors chaque noeud comprend ou a accès à une table des contenus. En d'autres termes, pour une transmission de contenus, chaque noeud du réseau joue son rôle (noeud récepteur ou noeud demandeur) ainsi que le rôle de noeud de gestion du stockage. Selon cette variante, les quatrième étape 703, cinquième étape 704 et septième étape 706 du procédé de gestion des clés privées ne sont pas mises en oeuvre.
On a précédemment décrit, en relation avec la figure 3, les étapes du procédé de stockage du contenu cO selon un premier mode de réalisation de l'invention. Nous allons maintenant décrire, en relation avec la figure 8, les étapes mises en oeuvre par le premier noeud NA quand le procédé de stockage illustré sur la figure 3 est exécuté.
On peut noter que l'ordre des étapes mises en oeuvre par le premier noeud NA, décrites en relation avec la figure 8, ne correspond pas parfaitement à l'ordre des étapes concernant ce premier noeud NA, décrites en relation avec la figure 3. En effet, l'ordre de certaines étapes importe peu.
Après que la phase d'authentification DTCP a été mise en oeuvre (étape 800), le premier noeud NA obtient la clé privée de contenu CPK (étape 801) transmise par le noeud de gestion de stockage NC. Ensuite, le premier masque ml est calculé (étape 802).
Ensuite une étape d'attente par le premier noeud NA de la génération du premier nombre aléatoire Nc est mise en oeuvre (étape 803), suivie d'une étape de vérification que le premier nombre aléatoire Nc est généré (étape 804). Si le premier nombre aléatoire Nc n'est pas encore généré, l'étape d'attente 803 est à nouveau mise en oeuvre.
Une fois que le premier nombre aléatoire Nc est généré par le premier noeud NA, le premier masque ml est appliqué au premier nombre aléatoire Nc pour calculer le nombre brouillé Ncm (second paramètre de calcul de clé) (étape 805).
Ensuite, la seconde clé de cryptage Kcpk (étape 806) ainsi que la première clé de cryptage Kc (étape 807) sont calculées par le premier noeud NA. Puis le premier noeud NA dans une étape 808, mémorise le nombre aléatoire Nc en tant que donnée de calcul qui servira pour le procédé de lecture décrit en référence à la figure 9.
Puis, un premier paquet du contenu cO subit le premier cryptage avec la seconde clé de cryptage (étape 810) et un second cryptage avec la première clé de cryptage (étape 811) par le premier noeud NA. Ainsi chacun des paquets du contenu cO subit un double cryptage mis en oeuvre par le premier noeud NA avant d'être transmis à l'unité de stockage.
Puis le premier noeud NA transmet ce premier paquet à l'unité de stockage 006 (étape 812) avant de remettre en oeuvre les étapes de double cryptage 810, 811 et de transmission 812 successivement pour chacun des autres paquets du contenu cO de manière à ce que l'ensemble du contenu cO crypté soit reçu par l'unité de stockage 006.
On a précédemment décrit, en relation avec la figure 4, les étapes du procédé de lecture du contenu cO selon le premier mode de réalisation de l'invention. Nous allons maintenant décrire, en relation avec la figure 9, les étapes mises en oeuvre par le premier noeud NA quand le procédé de lecture illustré sur la figure 4 est exécuté.
On peut noter que l'ordre des étapes mises en oeuvre par le premier noeud NA, décrites en relation avec la figure 9, ne correspond pas parfaitement à l'ordre des étapes concernant ce premier noeud NA, décrites en relation avec la figure 4. En effet, l'ordre de certaines étapes importe peu.
Après que la phase d'authentification DTCP a été mise en oeuvre (étape 900), le premier noeud NA obtient la clé privée de contenu utilisateur UCPK (étape 901) transmise par le noeud de gestion de stockage NC. Ensuite, le second masque m2 est calculé (étape 902).
Ensuite une étape de lecture de la donnée de calcul, ici le premier nombre aléatoire Nc, est mise en oeuvre par le premier noeud NA (étape 904).
Puis, le nombre brouillé Ncm (second paramètre de calcul de clé) (étape 905) est obtenu par le premier noeud NA.
Ensuite une étape d'attente par le premier noeud NA de la réception du second nombre aléatoire Nc2 (généré puis transmis au premier noeud NA par l'unité de stockage 006) est mise en oeuvre (étape 906), suivie d'une étape de vérification que le second nombre aléatoire Nc2 est reçu par le premier noeud NA (étape 907). Si le second nombre aléatoire Nc2 n'est pas encore reçu, l'étape d'attente 907 est à nouveau mise en oeuvre.
Une fois que le second nombre aléatoire Nc2 est reçu par le premier noeud NA, le premier noeud NA obtient la seconde clé de cryptage Kcpk (étape 908) et calcule la troisième clé de cryptage Kc2 (étape 909).
Puis, un premier paquet du contenu c0 est décrypté avec la troisième clé de cryptage Kc2 (étape 910) et décrypté avec la seconde clé de cryptage Kcpk (étape 911) par le premier noeud NA.
Puis le premier noeud NA remet en oeuvre les étapes de décryptage 910, 911 successivement pour chacun des autres paquets du contenu c0 de manière à ce que l'ensemble du contenu c0 soit totalement décrypté (en clair) et puisse être transmis au second noeud NB puis au téléviseur numérique 009 pour mettre en oeuvre la lecture à proprement parler.
On a précédemment décrit, en relation avec la figure 5, les étapes des procédés de stockage du contenu c0 selon les second et troisième modes de réalisation de l'invention. Nous allons maintenant décrire, en relation avec la figure 10, les étapes mises en oeuvre par le premier noeud NA quand les procédés de stockage illustrés sur la figure 5 sont exécutés.
De la même manière que pour la figure 5, on ne décrira ci-après que le troisième mode de réalisation du procédé de stockage étant donné que le second mode de réalisation est identique au troisième mode de réalisation si ce n'est le fait que dans le second mode de réalisation, on ne fait pas intervenir la durée prédéterminée Tcpk. C'est-à-dire, que la durée prédéterminée Tcpk n'est pas transmise du premier noeud NA vers l'unité de stockage 006 dans la dixième étape 1009 décrite ci-après.
On peut noter que l'ordre des étapes mises en oeuvre par le premier noeud NA, décrites en relation avec la figure 10, ne correspond pas parfaitement à l'ordre des étapes concernant ce premier noeud NA, décrites en relation avec la figure 5. En effet, l'ordre de certaines étapes importe peu.
Après que la phase d'authentification DTCP a été mise en oeuvre (étape 1000), le premier noeud NA obtient la clé privée de contenu CPK (étape 1001) transmise par le noeud de gestion de stockage NC. Ensuite, le premier masque m 1 est calculé (étape 1002).
Ensuite une étape d'attente par le premier noeud NA de la génération du premier nombre aléatoire Nc est mise en oeuvre (étape 1003), suivie d'une étape de vérification 30 que le premier nombre aléatoire Nc est généré (étape 1004). Si le premier nombre aléatoire Nc n'est pas encore généré, l'étape d'attente 1003 est à nouveau mise en oeuvre.
Une fois que le premier nombre aléatoire Nc est généré par le premier noeud NA, le premier masque ml est appliqué au premier nombre aléatoire Nc pour calculer le nombre privé de contenu Ncpk (second paramètre de calcul de clé) (étape 1005).
Ensuite, la seconde clé de cryptage Kcpk (étape 1006) ainsi que la première clé de cryptage Kc (étape 1007) sont calculées par le premier noeud NA. Puis le premier nombre aléatoire Nc est brouillé au moyen du premier masque ml dans une étape 1008 de calcul du nombre brouillé Ncm. Le nombre brouillé Ncm est ensuite envoyé à l'unité de stockage 006 avec la durée prédéterminée Tcpk (étape 1009). Ces données sont des données de calcul qui serviront lors du procédé de lecture décrit en référence à la figure 11.
Selon une variante, la durée prédéterminée Tcpk peut aussi être brouillée au moyen du premier masque ml, lors de l'étape 1008, avant d'être transmise à l'unité de 15 stockage dans l'étape 1009.
Puis, un premier paquet du contenu cO subit le premier cryptage avec la seconde clé de cryptage (étape 1010) et un second cryptage avec la première clé de cryptage (étape 1011) par le premier noeud NA. Ainsi chacun des paquets du contenu cO subit un double cryptage mis en oeuvre par le premier noeud NA avant d'être transmis à l'unité de stockage.
Puis le premier noeud NA transmet ce premier paquet à l'unité de stockage 006 (étape 1012) avant de remettre en oeuvre les étapes de double cryptage 1010, 1011 et de transmission 1012 successivement pour chacun des autres paquets du contenu cO de manière à ce que l'ensemble du contenu cO crypté soit reçu par l'unité de stockage 006.
On a précédemment décrit, en relation avec la figure 6, les étapes du procédé de lecture du contenu cO selon les second et troisième modes de réalisation de l'invention. Nous allons maintenant décrire, en relation avec la figure 11, les étapes mises en oeuvre par le premier noeud NA quand les procédés de lecture illustrés sur la figure 6 sont exécutés.
De la même manière que pour la figure 6, on ne décrira ci-après que le troisième mode de réalisation du procédé de lecture étant donné que le second mode de réalisation est identique au troisième mode de réalisation si ce n'est le fait que dans le second mode de réalisation, on ne fait pas intervenir la durée prédéterminée. C'est-à-dire, que la durée prédéterminée Tcpk n'est pas lue par le premier noeud NA sur l'unité de stockage 006 dans la quatrième étape 1103 décrite ci-après.
On peut noter que l'ordre des étapes mises en oeuvre par le premier noeud NA, décrites en relation avec la figure 1l, ne correspond pas parfaitement à l'ordre des étapes concernant ce premier noeud NA, décrites en relation avec la figure 6. En effet, l'ordre de certaines étapes importe peu.
Après que la phase d'authentification DTCP a été mise en oeuvre (étape 1100), le premier noeud NA obtient la clé privée de contenu utilisateur UCPK (étape 1101) transmise par le noeud de gestion de stockage NC. Ensuite, le second masque m2 est calculé (étape 1102).
Ensuite une étape de lecture, sur l'unité de stockage 006, des données de calcul, ici, du nombre brouillé Ncm ainsi que de la durée prédéterminée Tcpk (préalablement 15 transmis par l'unité de stockage 006) est mise en oeuvre par le premier noeud NA (étape 1103).
Puis, le premier nombre aléatoire Nc (étape 1104) ainsi que le nombre privé de contenu Ncpk (étape 1105) sont obtenus par le premier noeud NA.
Ensuite une étape d'attente par le premier noeud NA de la réception du second nombre aléatoire Nc2 (généré puis transmis au premier noeud NA par l'unité de stockage 006) est mise en oeuvre (étape 1106), suivie d'une étape de vérification que le second nombre aléatoire Na est reçu par le premier noeud NA (étape 1107). Si le second nombre aléatoire Nc2 n'est pas encore reçu, l'étape d'attente 1107 est à nouveau mise en oeuvre.
Une fois que le second nombre aléatoire Nc2 est reçu par le premier noeud NA, le premier noeud NA obtient la seconde clé de cryptage Kcpk (étape 1108) et calcule la troisième clé de cryptage Kc2 (étape 1109) .
Puis, un premier paquet du contenu cO est décrypté avec la troisième clé de cryptage Kc2 (étape 1110) et décrypté avec la seconde clé de cryptage Kcpk (étape 30 1111) par le prernier noeud NA.
Puis le premier noeud NA remet en oeuvre les étapes de décryptage 1110, 1111 successivement pour chacun des autres paquets du contenu cO de manière à ce que l'ensemble du contenu cO soit totalement décrypté (en clair) et puisse être transmis au second noeud NB puis au téléviseur numérique 009 pour mettre en oeuvre la lecture à proprement parler.
On présente, en relation avec la figure 12, un algorithme de mise à jour de la seconde clé de cryptage, mis en oeuvre par le premier noeud NA lors du procédé de stockage du contenu cO selon le troisième mode de réalisation de l'invention.
Après avoir sélectionné un premier paquet du contenu cO dans une première étape 1201 (en parallèle du double cryptage des étapes 1010 et 1011 précitées et de la transmission de l'étape 1012 précitée), le premier noeud NA initialise un compteur de mise à jour de la seconde clé de cryptage Kcpk dans une seconde étape 1202.
Puis, dans une troisième étape 1203, il incrémente le compteur de mise à jour au moyen d'une horloge locale du premier noeud NA, avant de vérifier, dans une quatrième étape 1204, si le compteur de mise à jour est arrivé à la durée prédéterminée Tcpk (paramètre de réactualisation).
Si le compteur de mise à jour n'est pas encore arrivé à la durée Tcpk, alors, dans une quatrième étape, le noeud NA remet en oeuvre la troisième étape 1203 précitée pendant qu'une succession de paquets est transmise à l'unité de stockage 006.
Si le compteur de mise à jour est arrivé à la durée Tcpk, alors le noeud NA attend, dans une cinquième étape 1205, que le paquet courant soit transmis à l'unité de stockage 006.
Une fois que le paquet courant est transmis à l'unité de stockage 006, dans une sixième étape 1206, le premier noeud NA incrémente le nombre privé de contenu Ncpk.
Puis, au moyen du nombre privé de contenu incrémenté Ncpk, il calcule une seconde clé de cryptage mise à jour, Kcpk, dans une septième étape 1207.
Le premier noeud Na remet ensuite en oeuvre la seconde étape, de façon quela seconde clé de cryptage soit mise à jour périodiquement.
On présente, en relation avec la figure 13, un algorithme de mise à jour de la seconde clé de cryptage, mis en oeuvre par le premier noeud NA lors du procédé de lecture du contenu cO selon le troisième mode de réalisation de l'invention.
Après avoir sélectionné un premier paquet du contenu cO dans une première étape 1301 (en parallèle avec les étapes de décryptage 1110 et 1111 précitées), le premier noeud NA initialise un compteur de mise à jour de la seconde clé de cryptage Kcpk dans une seconde étape 1302.
Puis, dans une troisième étape 1303, il incrémente le compteur de mise à jour au moyen d'une horloge locale du premier noeud NA, avant de vérifier, dans une quatrième étape 1304, si le compteur de mise à jour est arrivé à la durée prédéterminée Tcpk (paramètre de réactualisation).
Si le compteur de mise à jour n'est pas encore arrivé à la durée Tcpk, alors, dans 10 une quatrième étape, le noeud NA remet en oeuvre la troisième étape 1303 précitée pendant qu'une succession de paquets est transmise au second noeud NB.
Si le compteur de mise à jour est arrivé à la durée Tcpk, alors le noeud NA attend, dans une cinquième étape 1305, que paquet courant soit transmis au second noeud NB.
Une fois que le paquet courant est transmis au second noeud NB, dans une sixième étape 1306, le premier noeud NA incrémente le nombre privé de contenu Ncpk. Puis, au moyen du nombre privé de contenu incrémenté Ncpki, il calcule une seconde clé de cryptage mise à jour, Kcpki, dans une septième étape 1307.
Le premier noeud Na remet ensuite en oeuvre la seconde étape, de façon que la 20 seconde clé de cryptage soit mise à jour périodiquement.
Selon une variante de ce troisième mode de réalisation, le paramètre de réactualisation peut être un nombre prédéterminé de paquets, ce nombre prédéterminé pouvant être crypté au moyen de la seconde clé de cryptage Kcpk.
Selon cette variante, le compteur de mise à jour est incrémenté non pas grâce à une horloge locale mais plutôt en comptant les paquets du contenu cO transmis.
Avec ce troisième mode de réalisation ainsi que sa variante précitée, la réactualisation cle la seconde clé de cryptage Kcpk, offre une garantie supplémentaire sur le contrôle d'accès au contenu.
Bien que l'invention ait été décrite ci-dessus en relation avec un nombre limité 30 de modes de réalisation, l'homme du métier, à la lecture de la présente description, comprendra que d'autres modes de réalisation peuvent être imaginés sans sortir du cadre de la présente invention.
Claims (52)
1. Procédé de stockage d'un contenu d'un dispositif source vers un dispositif de stockage, les dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une première clé de cryptage (Kc) associée à un premier paramètre de calcul de clé (Nc) , caractérisé en ce qu'il comprend les étapes suivantes: - obtention d'une première fonction de traitement (ml) qui est fonction d'une information prédéterminée d'accès au contenu à stocker (CPK) ; -obtention, en tenant compte de ladite première fonction de traitement, d'un 10 second paramètre (Ncpk; Ncm) de calcul de clé , - calcul d'une seconde clé de cryptage (Kcpk), en tenant compte dudit second paramètre (Ncpk; Ncm) de calcul de clé ; - cryptage du contenu à stocker avec ladite seconde clé (Kcpk), obtenant ainsi un premier contenu crypté (MsaO) , puis cryptage du premier contenu crypté (MsaO) avec la première clé (Kc) , obtenant ainsi un second contenu crypté (Msa) ; - Envoi au dispositif de stockage du second contenu crypté (Msa) ; et - mémorisation d'au moins une donnée de calcul (Ncm, Nc) nécessaire au calcul dudit second paramètre (Ncpk; Ncm).
2. Procédé de stockage selon la revendication 1, caractérisé en ce que le second paramètre de calcul de clé (Ncpk, Ncm) est calculé, avec une première fonction, en tenant compte de la première fonction de traitement obtenue (ml) et du premier paramètre de calcul de clé (Nc).
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que la mémorisation de ladite au moins une donnée de calcul s'effectue par l'envoi de cette dite au moins une 25 donnée au dispositif de stockage.
4. Procédé selon les revendications 2 et 3, caractérisé en ce que ladite au moins une donnée de calcul (Ncm) est calculée avec une seconde fonction, en tenant compte de la première fonction de traitement obtenue (ml) et du premier paramètre de calcul de clé (Nc).
5. Procédé selon la revendication 4, caractérisé en ce qu'une autre donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
6. Procédé selon la revendication 5, caractérisé en ce que le paramètre de réactualisation est une période de temps d'une durée prédéterminée (Tcpk).
7. Procédé selon la revendication 5, caractérisé en ce que, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé (Kcpk).
8. Procédé selon l'une des revendications 5 à 7, caractérisé en ce qu'il comporte en outre les étapes suivantes: - mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé (Ncpk; Ncm) en fonction du paramètre de réactualisation; - recalcul de la seconde clé de cryptage (Kcpk) après chaque incrémentation du second paramètre de calcul de clé (Ncpk; Ncm).
9. Procédé selon l'une des revendications 5 à 8, caractérisé en ce que le paramètre de réactualisation du second paramètre de calcul de clé est crypté à l'aide d'une troisième fonction prenant en compte la première fonction de traitement (ml) de façon à former une donnée de calcul.
10. Procédé selon la revendication 1 ou 2, caractérisé en ce que la mémorisation de ladite au moins une donnée de calcul s'effectue localement.
11. Procédé selon la revendication 3, caractérisé en ce que ladite au moins une donnée de calcul est le premier paramètre de calcul de clé (Nc).
12. Procédé selon l'une des revendications 1 à 11, caractérisé en ce que ladite information prédéterminée d'accès au contenu à stocker, est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
13. Procédé de stockage selon l'une quelconque des revendications 1 à 12, caractérisé en ce que ledit protocole de protection de contenu est le protocole DTCP.
14. Procédé de lecture d'un contenu provenant d'un dispositif de stockage vers un dispositif récepteur, le contenu ayant été stocké selon un procédé de stockage conforme à l'une des revendications 1 à 13, lesdits dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une troisième clé de cryptage (Kc2) associée à un troisième paramètre de calcul de clé (Nc2), caractérisé en ce qu'il comprend les étapes suivantes: - réception d'un troisième contenu crypté (Msa2) du dispositif de stockage, obtenu par cryptage avec la troisième clé de cryptage (Kc2) du premier contenu crypté (MsaO) ; obtention d'au moins une donnée de calcul (Ncm; Nc) ; - obtention d'une seconde fonction de traitement (m2) qui est fonction d'une information d'autorisation d'accès au contenu à lire (UCPK), ladite seconde fonction de traitement étant identique à ladite première fonction de traitement (ml) si l'information d'autorisation d'accès (UCPK) correspond à une information prédéterminée d'accès au contenu stocké (CPK) ; - obtention, en tenant compte de ladite seconde fonction de traitement et de ladite donnée de calcul (Ncm; Nc), d'un second paramètre (Ncpk; Ncm) de calcul de clé ; - calcul de la seconde clé de cryptage (Kcpk), en tenant compte dudit second paramètre de calcul de clé; - décryptage du troisième contenu crypté (Msa2) avec la troisième clé (Kc2), obtenant ainsi ledit premier contenu crypté (MsaO), puis décryptage, avec la seconde clé (Kcpk), dudit premier contenu crypté (MsaO), obtenant ainsi un contenu non crypté.
15. Procédé selon la revendication 14, caractérisé en ce que le second paramètre de calcul de clé (Ncpk, Ncm) est calculé, avec une première fonction, en tenant compte de la seconde fonction de traitement obtenue (m2) et du premier paramètre de calcul de clé (Ne) obtenu par le calcul selon une seconde fonction prenant en compte la au moins une donnée de calcul (Ncm) et la seconde fonction de traitement (m2).
16. Procédé selon la revendication 14 ou 15, caractérisé en ce que l'obtention de ladite au moins une donnée de calcul s'effectue par lecture de cette donnée mémorisée sur le dispositif (le stockage.
17. Procédé selon l'une des revendications 14 à 16, caractérisé en ce qu'une des au moins une donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
18. Procédé selon la revendication 17, caractérisé en ce que le paramètre de réactualisation est une période de temps d'une durée prédéterminée (Tcpk).
19. Procédé selon la revendication 17, caractérisé en ce que, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé (Kcpk).
20. Procédé selon l'une des revendications 17 à 19, caractérisé en ce qu'il comporte en outre les étapes suivantes: - mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé (Ncpk; Ncm) en fonction du paramètre de réactualisation; - recalcul de la seconde clé de cryptage (Kcpk) après chaque incrémentation du second paramètre de calcul de clé (Ncpk; Ncm).
21. Procédé selon la revendication 14, caractérisé en ce que l'obtention de ladite au moins une donnée de calcul s'effectue par récupération de ladite au moins une donnée de calcul sur le dispositif source ayant mis en oeuvre le procédé de stockage selon l'une des revendications 1, 10 ou 11.
22. Procédé selon l'une des revendications 14 à 21, caractérisé en ce que ladite information d'autorisation d'accès au contenu à lire (UCPK) est un mot de passe utilisateur.
23. Procédé selon l'une des revendications 14 à 22, caractérisé en ce que ladite information prédéterminée d'accès au contenu stocké (CPK) , est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
24. Procédé de lecture selon l'une quelconque des revendications 14 à 23, caractérisé en ce que ledit protocole de protection de contenu est le protocole DTCP.
25. Produit programme d'ordinateur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution des étapes du procédé de stockage de contenu selon l'une quelconque des revendications 1 à 13, lorsque ledit programme est exécuté sur un ordinateur.
26. Produit programme d'ordinateur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution des étapes du procédé de lecture de contenu selon l'une quelconque des revendications 14 à 24, lorsque ledit programme est exécuté sur un ordinateur.
27. Moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant un jeu d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé de stockage de contenu selon l'une quelconque des revendications 1 à 13.
28. Moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant un jeu d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé de lecture de contenu selon l'une quelconque des revendications 14 à 24.
29. Dispositif source mettant en oeuvre des moyens de stockage d'un contenu sur un dispositif de stockage, les dispositifs mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une première clé de cryptage (Kc) associée à un premier paramètre de calcul de clé (Nc), caractérisé en ce qu'il comprend: - des moyens d'obtention d'une première fonction de traitement (ml) qui est fonction d'une information prédéterminée d'accès au contenu à stocker (CPK) ; - des moyens d'obtention, en tenant compte de ladite première fonction de traitement, d'un second paramètre (Ncpk; Ncm) de calcul de clé ; - des moyens de calcul d'une seconde clé de cryptage (Kcpk), en tenant compte dudit second paramètre (Ncpk; Ncm) de calcul de clé ; - des premiers moyens de cryptage du contenu à stocker avec ladite seconde clé (Kcpk), permettant d'obtenir ainsi un premier contenu crypté (MsaO), puis des seconds moyens de cryptage du premier contenu crypté (MsaO) avec la première clé (Kc), permettant d'obtenir ainsi un second contenu crypté (Msa) ; - des moyens d'envoi au dispositif de stockage du second contenu crypté (Msa) ; - des moyens de mémorisation d'au moins une donnée de calcul (Ncm, Nc) nécessaire au calcul dudit second paramètre (Ncpk; Ncm).
35. Dispositif source selon la revendication 29, caractérisé en ce qu'il comprend des moyens de calcul du second paramètre de calcul de clé (Ncpk, Ncm) mettant en oeuvre une première fonction, prenant en compte la première fonction de traitement obtenue (ml) et le premier paramètre de calcul de clé (Nc).
36. Dispositif source selon l'une quelconque des revendications 29 et 30, caractérisé en ce que les moyens de mémorisation de ladite au moins une donnée de calcul mettent en oeuvre des rnoyens d'envoi de cette dite au moins une donnée au dispositif de stockage.
32. Dispositif source selon les revendications 30 et 31, caractérisé en ce qu'il comprend des moyens de calcul de ladite au moins une donnée de calcul (Ncm) mettant en oeuvre une seconde fonction, prenant en compte la première fonction de traitement obtenue (ml) et le premier paramètre de calcul de clé (Nc).
33. Dispositif source selon la revendication 32, caractérisé en ce qu'une autre donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
34. Dispositif source selon la revendication 33, caractérisé en ce que le paramètre de réactualisation est une période de temps d'une durée prédéterminée (Tcpk).
35. Dispositif source selon la revendication 33, caractérisé en ce que, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé (Kcpk).
36. Dispositif source selon l'une quelconque des revendications 33 à 35, caractérisé en ce qu'il comporte en outre: - des moyens de mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé (Ncpk; Ncm) en fonction du paramètre de réactualisation; - des moyens de recalcul de la seconde clé de cryptage (Kcpk) activés après chaque incrémentation du second paramètre de calcul de clé (Ncpk; Ncm).
37. Dispositif source selon l'une quelconque des revendications 33 à 36, caractérisé en ce qu'il comprend des troisième moyens de cryptage du paramètre de réactualisation du second paramètre de calcul de clé mettant en oeuvre une troisième fonction prenant en compte la première fonction de traitement (ml) de façon à former une donnée de calcul.
38. Dispositif source selon l'une quelconque des revendications 29 et 30, caractérisé en ce que les moyens de mémorisation de ladite au moins une donnée de calcul sont mis en oeuvre localement.
39. Dispositif source selon la revendication 31, caractérisé en ce que ladite au moins une donnée de calcul est le premier paramètre de calcul de clé (Nc).
40. Dispositif source selon l'une quelconque des revendications 29 à 39, caractérisé en ce que ladite information prédéterminée d'accès au contenu à stocker, est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
41. Dispositif source selon l'une quelconque des revendications 29 à 40, caractérisé en ce que ledit protocole de protection de contenu est le protocole DTCP.
42. Dispositif récepteur d'un contenu provenant d'un dispositif de stockage afin de mettre en oeuvre des moyens de lecture du contenu, des moyens de stockage du contenu ayant été activés par un dispositif source conforme à l'une des revendications 29 à 41, lesdits dispositif récepteur et dispositif de stockage mettant en oeuvre un protocole de protection de contenu comprenant une phase d'échange d'une troisième clé de cryptage (Kc2) associée à un troisième paramètre de calcul de clé (Nc2) , caractérisé en ce qu'il comprend: - des moyens de réception d'un troisième contenu crypté (Msa2) du dispositif de stockage, des moyens de cryptage, mettant en oeuvre la troisième clé de cryptage, ayant été préalablement appliqués sur le premier contenu crypté (MsaO) afin d'obtenir le troisième contenu crypté (Msa2) ; - des moyens d'obtention d'au moins une donnée de calcul (Ncm; Nc) ; - des moyens d'obtention d'une seconde fonction de traitement (m2) qui est fonction d'une information d'autorisation d'accès au contenu à lire (UCPK), ladite seconde fonction de traitement étant identique à ladite première fonction de traitement (ml) si l'information d'autorisation d'accès (UCPK) correspond à une information prédéterminée d'accès au contenu stocké (CPK) ; - des moyens d'obtention d'un second paramètre (Ncpk; Ncm) de calcul de clé, tenant compte de ladite seconde fonction de traitement et de ladite donnée de calcul (Ncm; Nc) ; - des moyens de calcul de la seconde clé de cryptage (Kcpk), prenant en compte ledit second paramètre de calcul de clé; - des premier moyens de décryptage du troisième contenu crypté (Msa2) mettant en oeuvre la troisième clé (Kc2), permettant d'obtenir ledit premier contenu crypté (MsaO), et des second moyens de décryptage dudit premier contenu crypté (MsaO) mettant en oeuvre la seconde clé (Kcpk) permettant d'obtenir un contenu non crypté.
43. Dispositif récepteur selon la revendication 42, caractérisé en ce qu'il comprend - des moyens de calcul du second paramètre de calcul de clé (Ncpk, Ncm) mettant en oeuvre une première fonction prenant en compte la seconde fonction de traitement obtenue (m2) et le premier paramètre de calcul de clé (Nc) ; des moyens de calcul, mettant en oeuvre une seconde fonction prenant en compte la au moins une donnée de calcul (Ncm) et la seconde fonction de traitement (m2), permettent d'obtenir le premier paramètre de calcul de clé.
44. Dispositif récepteur selon l'une quelconque des revendications 42 et 43, caractérisé en ce que les moyens d'obtention de ladite au moins une donnée de calcul mettent en oeuvre des moyens de lecture de cette donnée mémorisée sur le dispositif de stockage.
45. Dispositif récepteur selon l'une quelconque des revendications 42 à 44, caractérisé en ce qu'une des au moins une donnée de calcul est un paramètre de réactualisation du second paramètre de calcul de clé.
46. Dispositif récepteur selon la revendication 45, caractérisé en ce que le paramètre de réactualisation est une période de temps d'une durée prédéterminée (Tcpk).
47. Dispositif récepteur selon la revendication 45, caractérisé en ce que, le contenu comprenant des paquets, le paramètre de réactualisation est un nombre prédéterminé de paquets cryptés avec la seconde clé (Kcpk).
48. Dispositif récepteur selon l'une quelconque des revendications 45 à 47, caractérisé en ce qu'il comporte en outre: - des moyens de mise en oeuvre d'un mécanisme permettant d'incrémenter le second paramètre de calcul de clé (Ncpk; Ncm) en fonction du paramètre de réactualisation; des moyens de recalcul de la seconde clé de cryptage (Kcpk) activés après chaque incrémentation du second paramètre de calcul de clé (Ncpk; Ncm).
49. Dispositif récepteur selon la revendication 42, caractérisé en ce que les moyens d'obtention de ladite au moins une donnée de calcul mettent en oeuvre des moyens de récupération de ladite au moins une donnée de calcul sur le dispositif source selon l'une quelconques des revendications 29, 38 et 39.
50. Dispositif récepteur selon l'une quelconque des revendications 42 à 49, caractérisé en ce que ladite information d'autorisation d'accès au contenu à lire (UCPK) est un mot de passe utilisateur.
51. Dispositif récepteur selon l'une des revendications 42 à 50, caractérisé en ce que ladite information prédéterminée d'accès au contenu stocké (CPK), est un mot de passe associé audit contenu et/ou audit dispositif de stockage.
52. Dispositif récepteur selon l'une quelconque des revendications 42 à 51, caractérisé en ce que ledit protocole de protection de contenu est le protocole DTCP.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0500123A FR2880485B1 (fr) | 2005-01-06 | 2005-01-06 | Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. |
US11/303,027 US20070071234A1 (en) | 2005-01-06 | 2005-12-16 | Methods for the storage and reading of a content, of the type implementing a content protection protocol, corresponding source, storage and sink devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0500123A FR2880485B1 (fr) | 2005-01-06 | 2005-01-06 | Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. |
Publications (2)
Publication Number | Publication Date |
---|---|
FR2880485A1 true FR2880485A1 (fr) | 2006-07-07 |
FR2880485B1 FR2880485B1 (fr) | 2007-03-16 |
Family
ID=34954320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0500123A Expired - Fee Related FR2880485B1 (fr) | 2005-01-06 | 2005-01-06 | Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. |
Country Status (2)
Country | Link |
---|---|
US (1) | US20070071234A1 (fr) |
FR (1) | FR2880485B1 (fr) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2922200A1 (fr) | 2004-10-25 | 2006-05-04 | Security First Corp. | Systeme analyseur syntaxique de donnees securise et procede correspondant |
JP4350714B2 (ja) | 2006-02-27 | 2009-10-21 | 株式会社東芝 | 送信装置、受信装置及び送信方法 |
JP4936996B2 (ja) * | 2007-05-24 | 2012-05-23 | 株式会社東芝 | 非線形データ変換器、暗号化装置、および復号装置 |
EP2195761B1 (fr) * | 2007-10-01 | 2013-04-03 | Research In Motion Limited | Masquage de table de substitution pour processus de chiffrement |
US8630648B2 (en) * | 2008-09-02 | 2014-01-14 | Telefonaktiebolaget L M Ericsson (Publ) | Verifying neighbor cell |
EP2504973B1 (fr) * | 2009-11-25 | 2016-11-16 | Security First Corp. | Systèmes et procédés pour la sécurisation de données en mouvement |
AU2011235068B2 (en) | 2010-03-31 | 2015-10-01 | Security First Corp. | Systems and methods for securing data in motion |
WO2011150346A2 (fr) | 2010-05-28 | 2011-12-01 | Laurich Lawrence A | Système accélérateur destiné à être utilisé avec un dispositif de stockage de données sécurisé |
EP2651072A3 (fr) | 2010-09-20 | 2013-10-23 | Security First Corp. | Systèmes et procédés de partage de données sécurisé |
US8862902B2 (en) | 2011-04-29 | 2014-10-14 | Seagate Technology Llc | Cascaded data encryption dependent on attributes of physical memory |
US8705291B2 (en) | 2011-05-27 | 2014-04-22 | Seagate Technology Llc | Sanitizing a non-volatile memory through charge accumulation |
JP6167667B2 (ja) * | 2013-05-23 | 2017-07-26 | 富士通株式会社 | 認証システム、認証方法、認証プログラムおよび認証装置 |
EP2869199A3 (fr) * | 2013-11-04 | 2016-06-29 | Gridstore Inc. | Systèmes et procédés de réservation distribuée |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001084834A1 (fr) * | 2000-04-28 | 2001-11-08 | Keen Personal Media, Inc. | Systeme d'enregistrement video utilisant un stockage video externe pour l'enregistrement des donnees d'une sequence video en continu via une interface asynchrone |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5768380A (en) * | 1995-09-27 | 1998-06-16 | Motorola, Inc. | Method for sending a communication unit parameter to a plurality of communication units |
US6272631B1 (en) * | 1997-06-30 | 2001-08-07 | Microsoft Corporation | Protected storage of core data secrets |
JP2003195759A (ja) * | 2001-12-25 | 2003-07-09 | Hitachi Ltd | 暗号化データの生成方法、記録装置、記録媒体、復号方法、記録媒体再生装置、伝送装置、および、受信装置 |
FR2874143B1 (fr) * | 2004-08-06 | 2006-11-24 | Canon Kk | Procede de securisation du transfert d'un flux de donnees, produit programme d'ordinateur, moyen de stockage et noeuds correspondants |
-
2005
- 2005-01-06 FR FR0500123A patent/FR2880485B1/fr not_active Expired - Fee Related
- 2005-12-16 US US11/303,027 patent/US20070071234A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001084834A1 (fr) * | 2000-04-28 | 2001-11-08 | Keen Personal Media, Inc. | Systeme d'enregistrement video utilisant un stockage video externe pour l'enregistrement des donnees d'une sequence video en continu via une interface asynchrone |
Non-Patent Citations (1)
Title |
---|
HITACHI LTD ET AL: "5C Digital Transmission Content Protection White Paper - Revision 1.0", 14 July 1998, XP002134182 * |
Also Published As
Publication number | Publication date |
---|---|
US20070071234A1 (en) | 2007-03-29 |
FR2880485B1 (fr) | 2007-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
FR2880485A1 (fr) | Procedes de stockage et de lecture d'un contenu, du type mettant en oeuvre un protocole de protection de contenu, dispositifs source, de stockage et recepteur correspondants. | |
EP1815681B1 (fr) | Unité de traitement de données audio/vidéo numériques et méthode de contrôle d'accès audites données | |
FR2874143A1 (fr) | Procede de securisation du transfert d'un flux de donnees, produit programme d'ordinateur, moyen de stockage et noeuds correspondants | |
FR2792482A1 (fr) | Reseau numerique local, notamment reseau numerique domestique, et procede de creation et de mise a jour d'un tel reseau | |
EP1765012A1 (fr) | Méthode de vérification d'un dispositif cible relié à un dispositif maître | |
US20060126831A1 (en) | Systems, methods, and media for adding an additional level of indirection to title key encryption | |
EP1946552B1 (fr) | Méthode de sécurisation de données échangées entre un dispositif de traitement multimédia et un module de sécurité | |
FR2835986A1 (fr) | Systeme de transmission de signaux audiovisuels entre noeud(s) source et noeud(s) destinataire(s) | |
US20070226372A1 (en) | Distributed Authorized Domain Management | |
EP1479233B1 (fr) | Dispositif de traitement et procede de transmission de donnees chiffrees pour un premier domaine dans un reseau appartenant a un second domaine | |
EP1479234B1 (fr) | Procede de traitement de donnees chiffrees pour un premier domaine et recues dans un reseau appartenant a un second domaine | |
JP4834737B2 (ja) | 改善された近接検出方法 | |
WO2013117708A1 (fr) | Systeme de lecture de contenu numerique et procede de lecture correspondant | |
EP1419640B1 (fr) | Reseau numerique local, procedes d'installation de nouveaux dispositifs et procedes de diffusion et de reception de donnees dans un tel reseau | |
FR2879780A1 (fr) | Procede de restriction de l'acces a au moins un contenu, produit programme d'ordinateur et dispositif recepteur correspondants | |
FR2886081A1 (fr) | Procede d'echange de paquets de donnees dans un reseau de communication, produit programme d'ordinateur, moyen de stockage et noeuds correspondants | |
FR2906097A1 (fr) | Procedes d'echange de donnees securises, produit programme d'ordinateur, moyen de stockage et dispositifs correspondants. | |
FR2890266A1 (fr) | Procede d'echange de contenus proteges contre la copie dans un reseau heterogene, produit programme d'ordinateur, moyens de stockage et noeuds correspondants | |
FR2877524A1 (fr) | Procedes de stockage securise et de lecture securisee, produit programme d'ordinateur, moyen de stockage et systeme correspondants | |
JP2009164895A (ja) | 暗号認証処理方法及び装置 | |
FR2888354A1 (fr) | Procede de modification d'un flux afin d'en restreindre l'acces, produits programme d'ordinateur, moyens de stockage noeud source et noeud recepteur correspondants. | |
FR2907287A1 (fr) | Procedes de transmission securisee d'un contenu,incluant une restriction d'acces a ce contenu,produit programme d'ordinateur ,moyen de stockage,et dispositifs correspondants. | |
FR2895183A1 (fr) | Procedes de stockage et de reconstitution d'un contenu decompose sous forme de contenus intermediaires,produit programme d'ordinateur,moyen de stockage et noeuds correspondants. | |
FR2826814A1 (fr) | Procede d'utilisation a distance de moyens de reception de signaux audiovisuels appartenant a un reseau audiovisuel domestique primaire, passerelles, procede d'allocation de ressources correspondants | |
FR2826818A1 (fr) | Procede de controle de la reproduction et/ou de la diffusion de signaux audiovisiuels transmis au sein d'un reseau audiovisuel domestique |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20120928 |