SYSTEME DE CRYPTAGE/DECRYPTAGE " A LA VOLEE " POUR LA DIFFUSION DE DONNEES.
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 à 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 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 1 1.
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 elles-mêmes qui 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 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 decrypteur 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 decrypteur 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 decrypteur 8,
- Libération de la mémoire tampon à travers le decrypteur.
Si les paquets 12 consécutifs sont très rapprochés dans le temps, il faut protéger l'accès au decrypteur 8 : tant que le paquet N ne s'est pas entièrement propagé à travers le decrypteur, 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 "PIDs" 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 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 decrypteur 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 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) T'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 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 dispositifs similaires.