Brevet FR2812504A1 — publié le 20020201

La présente invention a pour objet un système de cryptage/décryptage "à la volée" pour la diffusion de données. Elle se rapporte d'une manière générale au domaine de la transmission d'informations de tous types sous forme numérique utilisant le codage par "paquets" constitués d'un ensemble de données acheminées en blocs dans un réseau, et en particulier a la diffusion de données cryptées par satellite. Aujourd'hui le cryptage de données en diffusion est largement utilisé par les fournisseurs de services, par exemple pour les bouquets de télévision numérique ou les films et matches de football à la carte. Les contrôles d'accès utilisés par ces diffuseurs fonctionnent souvent sur un principe de cryptage par mots de contrôle. Les données 1, en général pour l'instant audio et vidéo, sont codées à l'émission par un générateur de flux 2 au moyen de clés de cryptage 3 et déchiffrées à la réception grâce à la diffusion en parallèle d'un flux de clés de décryptage 4 permettant au système client 5 de retrouver les mots de contrôle, ou clés, rendant possible le décryptage l'information 6 reçue pour obtenir les données en clair 20. Ces systèmes utilisent en général une carte à puce 7 permettant la reconstruction des clés à partir des mots cryptés (figure 1). Afin d'améliorer la sécurité, ces clés sont changées régulièrement, par exemple toutes les dix secondes, ou toutes les cinq secondes, on parle de "crypto-période". Cette "crypto-période" est en général limitée par le système client 5 qui a besoin de temps pour récupérer les mots cryptés (paramétrage de filtres et récupération des données) et les envoyer à la carte à puce 7 qui génère la clé à utiliser par le décrypteur 8. Le système selon la présente invention permet d'obtenir un transfert de données sécurisé basé sur un cryptage dont la période de changement des clés est inférieure aux systèmes actuels connus. Pour permettre une accélération de la période de changement des clés, celles-ci ne sont pas diffusées sur une voie parallèle à celle des données mais à l'intérieur des données elles-mêmes, cryptées puis émises sous forme de paquets o contenant chacun une clé et les données utiles cryptées avec cette clé, cette dernière pouvant être changée à chaque paquet et étant récupérée à la réception par un dispositif matériel ou logiciel spécifique. Sur les schémas annexés, donnés à titre d'exemples non limitatifs de formes de réalisation de l'objet de l'invention: la figure 1, déjà mentionnée, montre un système connu de diffusion de données par satellite la figure 2 représente un exemple de système d'émission satellite avec voie unique de transmission pour les données et les clés de décryptage, la figure 3 représente un paquet de données avec clé intégrée, les figures 4a, 4b et 4c illustrent la progression d'un paquet dans une station de réception, les figures 5a, 5b et 5c représentent respectivement la chaîne d'émission, un paquet et la station de réception d'un système de transmission utilisant des identifiants de paquets variables et les figures 6a, 6b et 6c représentent respectivement la chaîne d'émission, un paquet et la station de réception d'un système de transmission utilisant des identifiants de paquets et des canaux de fréquences variables. La figure 2 montre un exemple d'application de l'invention à une chaîne d'émission de flux de données cryptées 10 transmises par satellite 11. Les données 1, sont codées à l'émission par un générateur de flux 2' au moyen de clés de cryptage 3 diffusées à l'intérieur des données ellesmêmes qui s sont cryptées et émises sous forme de paquets 12. Chaque paquet contient alors en plus de l'entête 13 une clé 14 et des données utiles 15 cryptées avec cette clé (figure 3), la station d'émission étant agencée pour permettre un changement de clé 14 pour chaque paquet 12, et ce à des débits les plus élevés possibles. Pour utiliser ces clés à la réception, on peut envisager une solution I0 matérielle permettant de récupérer la clé contenue dans un paquet et de l'utiliser "à la volée" sur les données utiles 15 de ce même paquet. Cette méthode permet d'assurer un niveau de sécurité important sans utiliser de soft ni de carte à puce, surtout à des débits élevés. Cependant, selon les capacités du système récepteur, et le débit utilisé, une solution logicielle peut être envisagée. Le paquet 12 peut comporter, entre la clé 14 et les données 15 un intervalle vide ou "gap" 16 permettant à un filtre électronique 17 du système de réception d'avoir le temps de récupérer la clé de décryptage et de l'utiliser dans le décrypteur 8 du système de réception pour obtenir les données en clair 20, avant que les données cryptées n'atteignent ce dernier (figures 4a, 4b, 4c). Une autre méthode peut être utilisée si la propagation des données est trop rapide pour le récepteur: elle consiste à stocker chaque paquet 12 de données dans une mémoire tampon tant que la nouvelle clé n'a pas été chargée avant de le libérer vers le décrypteur 8. Le processus de décryptage se déroule alors de la façon suivante: Stockage du paquet 12 dans la mémoire tampon après extraction de la clé, Chargement des octets de la clé dans le décrypteur 8, - Libération de la mémoire tampon à travers le décrypteur. Si les paquets 12 consécutifs sont très rapprochés dans le temps, il faut protéger l'accès au décrypteur 8: tant que le paquet N ne s'est pas entièrement propagé à travers le décrypteur, la clé ne doit pas être changée. Dans ce cas l'utilisation d'une mémoire tampon devient quasi obligatoire. Il est possible également d'utiliser deux décrypteurs en alternance, les paquets 12 étant transmis en alternance vers chacun des décrypteurs. Cette méthode peut être utile si la mémorisation ne s'avère pas suffisamment efficace. Dans le domaine de la diffusion par satellite ( télévision numérique, informations diverses, etc.), les données sont diffusées dans des paquets 12 de transports de 188 octets (codage "MPEG") qui présentent dans leur entête 13 un identifiant sur 13 bits appelé "PID" (Packet identifier) permettant la sélection des paquets. Par exemple, pour une chaîne de télévision, le flux vidéo est diffusé sur le "PID" 400 et le flux audio sur le "PID" 401. Dans le cas ou une personne malveillante déciderait de "pirater" le système décrit précédemment, si le débit est trop élevé pour reproduire le comportement en temps réel du système récepteur matériel par un système logiciel (par exemple avec une carte de réception satellite, un ordinateur individuel et un programme permettant le filtrage logiciel des clés et leur utilisation automatique sur chaque paquet reçut), il reste au pirate la possibilité d'enregistrer le flux sur le "PID" de données désirées, et d'appliquer ensuite un programme ad hoc sur ces données cryptées et stockées. Supposons que le système émetteur permette de multiplexer les données à émettre sur des "PIlDs" différents. Par ex, les paquets d'un flux vidéo ne sont pas tous à la suite sur un "PID" donné mais se trouvent dans le temps sur des "PIDs" différents. On suppose aussi que le "PID" d'un paquet est contenu dans les données cryptées du paquet précédent. Le système récepteur lui, est capable de décrypter chaque paquet "à la volée" (méthode décrite ci-dessus). Toujours au moyen d'un équipement matériel, il récupère l'information "PID" 19 du paquet suivant dans les données décryptées du paquet courant. Dans ce cas, et à des niveaux assez élevés de débits, le pirate qui a décidé d'enregistrer le flux pour décrypter l'information en temps différé doit à présent s enregistrer l'ensemble des "PIDs" o l'information est diffusée et doit disposer de moyens de réception et de stockage plus importants que si l'information est contenue dans un "PID" unique connu. Sur les figures 5a, 5b, 5c on peut voir un exemple d'architecture à identifiants de paquet variables. Le générateur de flux 2 est alimenté par les données 1, les clefs de cryptage 3, ainsi que par un générateur aléatoire de "PIDs" 18. A la réception, les paquets 12 passent successivement dans un premier filtre 21, dans le décrypteur 8, puis dans un second filtre 22. Le premier filtre 21 extrait la clé 14 correspondant à l'identifiant ("PID") du paquet précédent, la zone d'information 1s décryptée 19' étant extraite par le second filtre et retournée au premier filtre. Aujourd'hui, les données d'un flux satellite particulier (par exemple, la vidéo d'une chaîne donnée) sont non seulement diffusées avec un identifiant ("PID") de paquet connu, mais également sur un canal déterminé (chaque canal correspondant à une fréquence donnée utilisée par les tuners de réception). Pour améliorer encore la sécurité la transmission de données par rapport à la méthode des identifiants multiples, il est possible de transmettre et recevoir les paquets de données sur des canaux variables, par exemple le paquet N est diffusé sur le canal X et le paquet N+1 sur le canal Y. Cette technique peut être utilisée seule, ou conjointement à la précédente comme c'est le cas sur les figures 6a, 6b et 6c. La station d'émission comporte alors un générateur aléatoire 23 de numéros de canal (figure 6a) l"'information canal" 24 de chaque paquet 12 est alors contenue dans les données cryptées du paquet précédent. La encore une technique matérielle rapide peut être choisie pour diriger rapidement le système de réception sur la fréquence désirée. Le système de réception est pourvue d'un second filtre 22' apte à extraire "information canal" décryptée 24' d'un paquet pour le transmettre au tuner 25. Actuellement le temps de calage d'un tuner 25 sur une fréquence donnée est souvent supérieur à la distance entre deux paquets d'un flux de données précis (par exemple entre deux paquets d'un flux vidéo). Néanmoins il est possible de restreindre la solution à un changement de canal moins fréquent et à espacer suffisamment des paquets d'un flux de données lorsqu'il y a un changement de canal. Une solution à deux tuners utilisés en alternance peut également accélérer la capture o0 des paquets. Le positionnement des divers éléments constitutifs donne à l'objet de l'invention un maximum d'effets utiles qui n'avaient pas été, à ce jour, obtenus par des s15 dispositifs similaires. REVENDICATIONS 1. Système de cryptage/décryptage "à la volée" pour la diffusion de données, ayant pour objet la transmission d'informations de tous types sous forme numérique utilisant le codage par "paquets" constitués d'un ensemble de données acheminées en blocs dans un réseau, et en particulier à la diffusion de données cryptées par satellite, caractérisé en ce que les clés de décryptage (14) ne sont pas diffusées sur une voie parallèle à celle du flux de données (10) mais à l'intérieur des données elles- mêmes, cryptées puis émises sous forme de paquets (12) contenant chacun une clé et les données utiles (15) cryptées avec cette clé, cette dernière pouvant être changée à chaque paquet (12) et étant récupérée à la réception par un dispositif matériel ou logiciel spécifique. 2. Système selon la revendication 1, se caractérisant par le fait que la station d'émission est agencée pour permettre un changement de clé (14) pour chaque paquet (12). 3. Système selon la revendication 2, se caractérisant par le fait que le dispositif de réception comporte un élément matériel permettant de récupérer la clé (14) contenue dans un paquet (12) et de l'utiliser "à la volée" sur les données utiles (15) de ce même paquet, de façon à permettre un changement de clé pour chaque paquet. 4. Système selon la revendication 2, se caractérisant par le fait que le dispositif de réception comporte un élément logiciel permettant de récupérer la clé (14) contenue dans un paquet (12) et de l'utiliser "à la volée" sur les données utiles (15) de ce même paquet, de façon à permettre un changement de clé pour chaque paquet. 5. Système selon l'une quelconque des revendications 1 et 2, se caractérisant par le fait que le dispositif de réception comporte une mémoire tampon apte à stocker chaque paquet (12) de données tant qu'une nouvelle clé (14) n'a pas été chargée, avant de le libérer vers le décrypteur (8) permettant d'obtenir les données en clair (20). 6. Système selon l'une quelconque des revendications précédentes, se caractérisant par le fait que les paquets (12) comportent, entre la clé (14) et les données (15) un intervalle vide ou "gap" (16) permettant au dispositif de réception d'avoir le temps de récupérer la clé de décryptage et de l'utiliser dans un décrypteur (8). 7. Système selon l'une quelconque des revendications précédentes, se caractérisant par le fait qu'il est utilisé pour la transmission de paquets dont l'entête comporte un identifiant permettant la sélection des paquets (12) (identifiant appelé PID dans le cas de flux MPEG), et qu'il est agencé pour pouvoir changer cet identifiant à chaque paquet émis, la station d'émission comportant un générateur éventuellement aléatoire (18) d'identifiant et insérant dans chaque paquet une zone d'information (19) relative à l'identifiant du paquet suivant, le dispositif de réception étant équipé d'un premier filtre (21) apte à extraire la clé (14) correspondant à du paquet précédent, la zone d'information décryptée (19') étant extraite par un second filtre (22) et retournée au premier filtre. 8. Système selon l'une quelconque des revendications précédentes, se caractérisant par le fait qu'il est utilisé pour la transmission de paquets pouvant être émis sur plusieurs canaux de fréquences différentes, et qu'il est agencé pour pouvoir changer de canal à chaque paquet émis, la station d'émission comportant un générateur aléatoire (23) de numéros de canal et insérant dans chaque paquet une zone "information canal" (24) relative au canal du paquet suivant, le dispositif de réception étant équipé d'un premier filtre (21) apte à extraire la clé (14) correspondant au canal du paquet précédent, I"'information canal" décryptée (24') étant extraite par un second filtre (22) et transmise au tuner (25) du dispositif de réception. 9. Système selon les revendications 7 et 8, se caractérisant par le fait qu'il est utilisé pour la transmission de paquets dont l'entête comporte un identifiant ("PID") permettant la sélection des paquets (12), et qu'il est agencé pour pouvoir changer à la fois cet identifiant et le canal de diffusion à chaque paquet émis, la station d'émission comportant un générateur aléatoire (18) d'identifiant et un générateur aléatoire (23) de numéros de canal, le second filtre (22) étant apte à extraire la zone d'information décryptée (19') de l'identifiant, ainsi que l"'information canal" décryptée (24'). o10 1. Système selon l'une quelconque des revendications précédentes, se caractérisant par le fait que le dispositif de réception est équipé de deux décrypteurs (8), les paquets (12) étant transmis en alternance vers chacun des dits décrypteurs.