Brevet FR3030827A1 — publié le 20160624

Procédé et dispositif de traitement sécurisé de données cryptées Des modes de réalisation de l'invention concernent le traitement de données cryptées, et plus particulièrement la protection de données issues d'un flux vidéo crypté. Les données cryptées sont très utilisées pour la protection de l'information notamment dans le transfert de données, comme par exemple dans le domaine des données vidéographiques. Un boîtier de décodage de flux vidéo tel qu'un décodeur télévisuel est un boîtier électronique réalisant une restitution de signaux cryptés et/ou compressés en vu d'un affichage sur l'écran d'un téléviseur. Le boîtier électronique réalise le décodage nécessaire, c'est-à-dire au moins le décryptage et la décompression des données reçues, pour que l'image puisse être transmise au poste récepteur, par exemple un poste de télévision. Le signal externe entrant dans le boîtier électronique peut provenir d'une antenne satellite, d'une ligne téléphonique, d'une fibre optique, d'un câble Ethernet, ou même d'une clé de stockage numérique. Un boîtier électronique de décodage peut être utilisé pour traiter également d'autres données que des données vidéo. Dans un boîtier électronique de décodage, on peut définir quatre zones dont le niveau de sécurité requis est différent. Une première zone correspond au traitement des données avant leur décryptage. Dans cette première zone non protégée, aucune sécurité particulière n'est nécessaire étant donné que les données sont toujours encryptées, et que la sécurité du contenu des données est assurée par leur encryptage. Une deuxième zone très protégée correspond au traitement des données une fois décryptées mais pas encore décompressées. Cette deuxième zone nécessite un très haut degré de sécurité car les données sont décryptées et donc lisibles par n'importe qui et encore compressées ce qui signifie qu'elles sont très facilement et très rapidement transférables vers un boîtier extérieur de piratage par exemple. Une troisième zone protégée correspond au traitement des données décryptées après la décompression de ces données. Cette troisième zone nécessite une sécurité moindre que la seconde zone, car bien que les données soient décryptées et donc lisibles par n'importe quel système externe, les données sont décompressées et donc très volumineuses. Le transfert de données décompressées vers un boîtier externe est bien plus long, et souvent rédhibitoire lorsque les données décompressées sont importantes. Dans le cas où les données doivent être retransmises, à un système externe, il est possible de recrypter les données. Dans cette quatrième zone non protégée, aucune sécurité supplémentaire n'est nécessaire étant donné l'encryptage des données. Pour prévenir le piratage de données critiques, les données critiques correspondant aux données décryptées non décompressées, les boîtiers électroniques de traitement des données doivent assurer une sécurité optimale dans la deuxième zone de traitement. Il est connu dans l'état de l'art un système comprenant deux zones mémoires physiques distinctes et un procédé de traitement de données utilisant une zone mémoire pour les données non protégées et l'autre zone mémoire pour les données critiques issues du décryptage de ces données. Un tel système comprend un filtre d'autorisation d'accès paramétré lors de la conception du système et non modifiable. Un tel procédé présente l'inconvénient de bloquer tout un espace mémoire donné non modifiable pour le traitement des données protégées. Si bien que lorsque le système ne reçoit aucune donnée protégée ou peu de données protégées, seule la moitié de la mémoire physiquement disponible dans le système est utilisée. Un tel système oblige à doubler la taille des mémoires utilisées et par conséquent à augmenter la taille physique des boîtiers électroniques pour traiter un flux de données important. Selon un mode de mise en oeuvre et un mode de réalisation, il est proposé un procédé et un dispositif électronique associé de traitement sécurisé de données cryptées permettant de préserver l'accès aux données critiques une fois décryptées avant qu'elles ne soient décompressées grâce à une gestion dynamique de l'accès aux données critiques, tout en optimisant à tout instant l'espace mémoire utilisé pour les données protégées d'une part et l'espace mémoire utilisé pour les données non protégées d'autre part. Selon un aspect, il est proposé dans un mode de mise en oeuvre, un procédé de traitement sécurisé de données protégées au sein d'un récepteur comportant un moyen de mémoire et un filtre paramétrable d'accès à ce moyen de mémoire. Le procédé comprend : a) une réception des données par paquets incluant au moins un paquet de données compressées cryptées, b) une allocation d'une région du moyen de mémoire, et c) une modification du paramétrage du filtre d'autorisation d'accès pour définir les droits d'accès à ladite région allouée, d) un décryptage des données compressées cryptées dudit au moins un paquet reçu, e) une mémorisation des données compressées décryptées dudit au moins un paquet dans ladite région allouée et protégée, f) et une répétition des étapes b) à e) à chaque nouvelle réception d'au moins un paquet de données compressées cryptées de façon à modifier dynamiquement le paramétrage du filtre d'autorisation d'accès au fur et à mesure des réceptions d'au moins un paquet de données compressées cryptées. Le procédé permet ainsi d'utiliser et de bloquer de l'espace mémoire, c'est-à-dire ladite région allouée, pour des données protégées uniquement à partir du moment où de telles données sont reçues, la taille de cet espace mémoire étant ajustée à la taille des données compressées cryptées reçues. Il est ainsi possible de conserver un maximum d'espace mémoire libre et utilisable par un système d'exploitation. Notamment au démarrage du dispositif électronique de traitement, le procédé permet d'utiliser toute la mémoire pour le démarrage étant donné qu'aucune donnée protégée n'est reçue au démarrage. L'espace mémoire dédié au traitement de données compressées initialement cryptées est ajusté continuellement en fonction des groupes d'au moins un paquet de données compressées cryptées reçus. Le procédé offre ainsi une gestion dynamique de l'accès aux données de la mémoire. Le filtre d'autorisation d'accès, aussi appelé « CAF » en anglais pour « Compartment Aware Filter », comprend les identifiants des modules électroniques autorisés à accéder à d'autres modules électroniques et notamment à certains espaces mémoire. En modifiant régulièrement les paramètres du CAF en fonction des nouveaux espaces mémoire créés et alloués pour le stockage de données critiques ou cryptées, on s'assure de contrôler l'accès aux données critiques tout en optimisant l'espace mémoire disponible pour les données non protégées initialement. Chaque identifiant de module électronique du boîtier de décodage, aussi appelé CID, permet au procédé de connaître la fiabilité de ce module et de savoir s'il est autorisé ou non à accéder à des zones mémoires protégées. En créant de manière dynamique des espaces mémoire et en modifiant les paramètres du CAF à chaque nouvel espace mémoire créé, il est possible de créer des compartiments mémoires sécurisés. On peut également modifier dynamiquement les permissions d'accès en écriture pour chaque CID. Ainsi les droits d'accès contrôlés par espaces mémoires et par modules contrôle les lecture et/ou peuvent être électroniques Le procédé créations/destructions des compartiments mémoire et les permissions d'accès des modules électroniques en modélisant un graphe orienté où les noeuds représentent les compartiments mémoires et les modules électroniques et où les arcs représentent les permissions d'accès entre deux noeuds. Le procédé offre ainsi la possibilité de former un graphe vérifiable de tous les chemins d'accès aux données autorisés par le CAF. Le procédé permet ainsi de détecter toute possibilité d'évasion de données grâce à l'étude du graphe de chemins d'accès autorisés. Le graphe est vérifiable en ce que la protection des données peut être garantie au travers des accès à la mémoire. De préférence, le filtre d'autorisation d'accès comprend la définition d'un groupe d'au moins un système électronique, chaque modification du paramétrage du filtre d'autorisation d'accès étant réalisée de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture à une région de mémorisation comprenant des données protégées. Le ou les systèmes électroniques dudit groupe comprennent des systèmes électroniques considérés comme fiables c'est-à-dire auxquels sera autorisé un accès à une région de mémorisation comprenant des données protégées. Au contraire, le ou les systèmes électroniques non compris dans ledit groupe ne sont pas considérés comme fiables et aucun accès à une région de mémorisation comprenant des données protégées ne sera autorisé. Les systèmes électroniques considérés comme fiables, et donc pouvant appartenir audit groupe, peuvent être par exemple un système électronique de décryptage des données protégées, un vidéo décodeur et/ou un processeur interne dédié aux données protégées distinct du processeur sur lequel fonctionne le système d'exploitation principal. Les systèmes électroniques considérés comme non fiables peuvent être par exemple le processeur principal sur lequel tourne le système d'exploitation principal, un système électronique couplé via une entrée de type USB, un décodeur audio. Bien entendu, ces exemples ne sont pas limitatifs et dépendent des applications envisagées. Les paramètres du CAF sont modifiés à chaque modification d'organisation de la mémoire, de manière à contrôler l'accès aux données critiques, c'est-à-dire l'accès aux données compressées décryptées. L'accès à une région mémoire comportant des données critiques reste ainsi interdit à tout système non autorisé. Le procédé comprend préférentiellement au moins un traitement des données compressées décryptées dudit au moins un paquet reçu par un moyen électronique de traitement et une mémorisation desdites données traitées dans ladite région allouée, chaque modification du paramétrage du filtre d'autorisation d'accès étant réalisée de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture et/ou en écriture à tout moyen électronique de traitement recevant des données compressées décryptées. Les paramètres du CAF comportent non seulement les identifiants des moyens électroniques ayant le droit d'accéder à un espace donné, mais également les identifiants des moyens électroniques ayant le droit de communiquer avec d'autres moyens de traitement. De cette manière, on s'assure qu'un système externe non autorisé à traiter des données critiques ne puisse pas accéder aux données critiques via l'accès à un moyen électronique de traitement bénéficiant d'une autorisation d'accès à l'espace mémoire comprenant des données critiques. Un système ou des moyens électroniques de traitement doivent émettre à un moyen de contrôle une requête d'accès à un espace mémoire. Le moyen de contrôle reçoit avec la requête l'identifiant du requérant. Il le compare aux identifiants définis dans le CAF comme autorisés à accéder à l'espace mémoire avant d'accéder ou non à la requête. Selon un autre aspect, il est proposé dans un mode de réalisation un dispositif électronique de traitement sécurisé de données cryptées comprenant des moyens de mémoire, un filtre paramétrable d'autorisation d'accès à ces moyens de mémoire, des moyens de réception de données par paquets aptes à recevoir au moins un paquet de données compressées cryptées, des moyens de décryptage des données compressées cryptées dudit au moins un paquet reçu, des moyens d'allocation aptes à allouer une région des moyens de mémoire audit au moins un paquet reçu, des moyens de commande aptes à commander le décryptage des données compressées décryptées dans la région allouée des moyens de mémoire, des moyens de réglage aptes à modifier les paramètres du filtre d'autorisation d'accès pour définir les droits d'accès à ladite région allouée de façon à modifier dynamiquement le paramétrage du filtre d'autorisation d'accès au fur et à mesure des réceptions d'au moins un paquet de données compressées cryptées. De préférence, les moyens de réglage sont configurés pour définir un groupe d'au moins un système électronique et modifier les paramètres du filtre d'autorisation d'accès de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture à une région de mémorisation comprenant des données compressées décryptées. Le dispositif comprend préférentiellement au moins un moyen électronique de traitement des données compressées décryptées dudit au moins un paquet, les moyens de commande étant configurés pour commander une mémorisation des données traitées délivrées en sortie de chaque moyen électronique de traitement de données compressées décryptées, et les moyens de réglage étant configurés pour modifier les paramètres du filtre d'autorisation d'accès de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture et/ou en écriture à tout moyen électronique de traitement recevant des données compressées décryptées. D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen de la description détaillée d'un mode de réalisation, nullement limitatif, et des dessins annexés, sur lesquels : - la figure 1 représente de manière schématique un organigramme d'un procédé de traitement sécurisé de données cryptées au sein d'un récepteur selon un mode de mise en oeuvre de l'invention ; - la figure 2 présente schématiquement un dispositif de traitement apte à mettre en oeuvre le procédé de la figure 1. Sur la figure 1 est représenté de manière schématique un organigramme d'un procédé de traitement sécurisé de données cryptées au sein d'un récepteur selon un mode de mise en oeuvre de l'invention. Le procédé est mis en oeuvre dans un système global de traitement de données recevant une pluralité de paquets de données, les paquets contenant des données compressées cryptées ou bien des données compressées non cryptées. Dans une première étape 100 du procédé, on reçoit un groupe de paquets de données compressées cryptées. On crée, dans une étape 110, une région de mémorisation dans une mémoire du système mettant en oeuvre le procédé de traitement. La région de mémorisation possède une taille permettant de stocker les données compressées décryptées des paquets de données du groupe de paquets reçu. Dans une étape 120, on définit un groupe de systèmes électroniques considérés comme fiables et on modifie les paramètres de la partie du filtre d'autorisation d'accès (CAF) du système relative à la région de mémorisation créée. Les paramètres du CAF sont modifiés de manière à définir des autorisations d'accès à la région de mémorisation créée à l'étape 120. Dans une étape suivante 130, on déchiffre les données compressées cryptées de chaque paquet reçu par un système électronique fiable. On enregistre, dans une étape 140, les données compressées décryptées des paquets du groupe reçu dans la région de mémorisation définie à l'étape 120. On modifie également les paramètres des parties du CAF relatives aux moyens électroniques en communication directement ou indirectement avec les données décompressées décryptées stockées dans ladite région de mémorisation. Par communication indirecte, on entend un échange d'information avec des moyens de communication électronique ayant traités des données décompressées décryptées ou ayant le droit d'accéder à un moyen électronique en communication avec un moyen électronique en communication directe ou indirecte avec des données décompressées décryptées. Le CAF comprend les identifiants des modules électroniques autorisés à accéder à d'autres modules électroniques et notamment à certains espaces mémoire. Lorsqu'on modifie les paramètres d'une partie du CAF, on modifie les paramètres du graphe modélisant les régions de mémorisation, et on renseigne les identifiants des moyens électroniques autorisés à accéder à la région de mémorisation d'une part, ainsi que les identifiants autorisés à accéder aux moyens électroniques en communication directe ou indirecte avec les données enregistrées dans cette région de mémorisation. Dans une étape suivante 150, on réalise un ou plusieurs traitement(s) des données compressées décryptées en enregistrant à nouveau les données compressées décryptées dans la même région de mémorisation après chaque traitement. Dans une étape suivante 160, on réalise une décompression des données compressées décryptées. La décompression permet de visionner les données vidéo dans le cas d'un flux vidéo de données. Une fois décompressées, les données décryptées décompressées occupent beaucoup plus d'espace de stockage et ne sont alors plus stockées dans la région de mémorisation créée à l'étape 120. Elles sont stockées dans une autre région de mémorisation non sécurisée et la région de mémorisation créée à l'étape 120 est à nouveau libre pour être utilisée pour le traitement d'autres données compressées cryptées ou non cryptées. Sur la figure 2 est présenté un dispositif électronique apte à mettre en oeuvre le procédé de la figure 1. Le dispositif électronique 1 de traitement de données cryptées comprend des moyens de mémoire 2 et un filtre d'autorisation d'accès 3 à ces moyen de mémoire 2. Le dispositif 1 comprend en entrée des moyens de réception 4 de paquets de données compressées cryptées couplés en sortie à des moyens 5 de décryptage des données compressées cryptées reçues. Les moyens 5 de décryptage sont couplés à des moyens 6 d'allocation déterminant la taille des paquets à enregistrer dans une même région de mémorisation et aptes à définir en fonction une région de mémorisation à partir de la mémoire disponible pour enregistrer les paquets de données compressées décryptées par les moyens de décryptages 5. Les moyens d'allocation 6 sont couplés aux moyens de mémoire 2 pour définir et attribuer la région de mémorisation. Le dispositif 1 comprend en outre des moyens de commande 7 aptes à commander l'enregistrement des données compressées décryptées dans la région allouée de la mémoire 2. Les moyens de commande 7 sont couplés aux moyens d'allocation 6 pour connaître la région de mémorisation allouée, aux moyens de décryptage 5 pour commander l'enregistrement des données compressées décryptées aux moyens de mémoire 2. Le dispositif 1 comprend également des moyens de réglage 8 aptes à paramétrer le filtre 3 d'autorisation d'accès aux données pour définir les droits d'accès à au moins une partie des moyens de mémoire 2 après la réception des données. Les moyens de réglage 8 sont aptes à réinitialiser au moins une partie du filtre 3 d'autorisation d'accès avec de nouveaux paramètres à chaque nouvelle réception d'au moins un paquet de données. Les moyens de réglage 8 reçoivent en entrée les informations relatives aux espaces mémoire créés par les moyens d'allocation 6. Le dispositif 1 comprend en outre un moyen de traitement 9 des données décryptées tel qu'un décodeur de flux video, un décodeur de flux audio. Chaque modifications des paramètres du filtre d'autorisation d'accès 3 est réalisé par les moyens de réglage 8 de manière, d'une part, à interdire à un système électronique non fiable tout accès en lecture à une région de mémorisation des moyens de mémoire 2 comprenant des données compressées décryptées, et d'autre part, à interdire à un système informatique d'exploitation tout accès en lecture et/ou en écriture à tout moyen électronique de traitement 9 recevant des données compressées décryptées. Le procédé de traitement sécurisé de données cryptées permet de préserver l'accès aux données critiques une fois décryptées avant qu'elles ne soient décompressées grâce à une gestion dynamique de l'accès aux données critiques, tout en optimisant à tout instant l'espace mémoire utilisé pour les données critiques et pour les données initialement non cryptées. Les différents moyens du dispositif 1 de traitement des données cryptées peuvent être réalisés de façon logicielle au sein d'un microprocesseur et/ou par de circuits logiques spécifiques. Le procédé et le dispositif présentés dans les figures 1 et 2 sont appliqués à la protection de données encryptées puis décodées. L'invention ne se limite pas qu'à ces exemples de réalisation. L'invention permet de protéger toute donnée enregistrée en mémoire et jugée sensible comme, par exemple, un code exécutable d'application ou de service qui ne doit pas être altéré, ou encore une isolation de données personnelles face à des applications ouvertes dites de type « open source » en anglais. REVENDICATIONS1. Procédé de traitement sécurisé de données cryptées au sein d'un récepteur comportant un moyen de mémoire et un filtre paramétrable d'autorisation d'accès à ce moyen de mémoire, le procédé comprenant : a) une réception (100) des données par paquets incluant au moins un paquet de données compressées cryptées, b) une allocation (110) d'une région du moyen de mémoire, et c) une modification du paramétrage (120) du filtre d'autorisation d'accès pour définir les droits d'accès à ladite région allouée, d) un décryptage (130) des données compressées cryptées dudit au moins un paquet reçu, e) une mémorisation (140) des données compressées décryptées dudit au moins un paquet dans ladite région allouée, f) et une répétition des étapes b) à e) à chaque nouvelle réception d'au moins un paquet de données compressées cryptées de façon à modifier dynamiquement le paramétrage du filtre d'autorisation d'accès au fur et à mesure des réceptions d'au moins un paquet de données compressées cryptées. 2. Procédé selon la revendication 1, dans lequel le filtre d'autorisation d'accès comprend la définition d'un groupe d'au moins un système électronique, chaque modification du paramétrage du filtre d'autorisation d'accès étant réalisée de manière à interdire à un système électronique non compris dans le ledit groupe tout accès en lecture à une région de mémorisation comprenant des données compressées décryptées. 3. Procédé selon la revendication 2, comprenant au moins un traitement des données compressées décryptées dudit au moins un paquet par un moyen électronique de traitement et une mémorisation desdites données traitées dans ladite région allouée, chaque modification du paramétrage du filtre d'autorisation d'accès étant réalisée de manière à interdire à un système électronique non comprisdans ledit groupe tout accès en lecture et/ou en écriture à tout moyen électronique de traitement recevant des données compressées décryptées. 4. Dispositif (1) électronique de traitement sécurisé de données cryptées comprenant des moyens de mémoire (2), un filtre (3) paramétrable d'autorisation d'accès à ces moyens de mémoire (2), des moyens de réception (4) de données par paquets aptes à recevoir au moins un paquet de données compressées cryptées, des moyens (5) de décryptage des données compressées cryptées dudit au moins un paquet reçu, des moyens d'allocation (6) aptes à allouer une région des moyens de mémoire (2) audit au moins un paquet reçu, des moyens de commande (7) aptes à commander le décryptage des données compressées cryptées dans la région allouée des moyens de mémoire (2), des moyens de réglage (8) aptes à modifier les paramètres du filtre (3) d'autorisation d'accès pour définir les droits d'accès à ladite région allouée de façon à modifier dynamiquement le paramétrage du filtre d'autorisation d'accès (3) au fur et à mesure des réceptions d'au moins un paquet de données compressées cryptées. 5. Dispositif selon la revendication 4, dans lequel les moyens de réglage (8) sont configurés pour définir un groupe d'au moins un système électronique et modifier les paramètres du filtre (3) d'autorisation d'accès de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture à une région de mémorisation comprenant des données compressées décryptées. 6. Dispositif selon la revendication 5, comprenant au moins un moyen électronique de traitement (9) des données compressées décryptées dudit au moins un paquet, les moyens de commande (7) étant configurés pour commander une mémorisation des données traitées délivrées en sortie de chaque moyen électronique (9) de traitement de données compressées décryptées, et les moyens de réglage (8) étant configurés pour modifier les paramètres du filtre (3) d'autorisation d'accès de manière à interdire à un système électronique non compris dans ledit groupe tout accès en lecture et/ou en écriture àtout moyen électronique (9) de traitement recevant des données compressées décryptées.