Brevet FR2856539A1 — publié le 20041224

L'invention concerne un procédé et un système traçables de chiffrement et/ou de déchiffrement d'informations diffusées ainsi que des supports d'enregistrement pour la mise en oeuvre du procédé. Plus précisément, I'invention concerne un procédé traçable dans lequel: lors du chiffrement des informations diffusées, l'émetteur met en oeuvre au moins une première fonction cryptographique secrète, et - lors du déchiffrement de ces informations diffusées, tous les décodeurs mettent en oeuvre au moins une même seconde fonction 10 cryptographique secrète identique à ladite première fonction ou à son inverse, chaque décodeur faisant appel à cet effet à une description mathématique de ladite seconde fonction enregistrée dans une mémoire. Les procédés traçables de chiffrement sont des procédés dans lesquels un procédé de traçage des traîtres peut être mis en oeuvre. Les procédés de traçage des traîtres sont utilisés pour lutter contre le piratage de services de distribution, sur un canal diffusé, de contenus multimédia chiffrés tels que vidéo, télévision, images, musique, textes, pages Web, livres électroniques, programmes, etc. Les procédés de traçage des traîtres ont pour but de prévenir la redistribution frauduleuse, par un ou plusieurs utilisateurs 20 légitimes de tels services, de données déduites des clés secrètes et des algorithmes de déchiffrement implantés dans leur équipement de décodage, afin de permettre à des utilisateurs illicites (pirates) d'accéder aux contenus en clair. Ces procédés garantissent que si une telle fraude se produit, I'identité de l'un au moins des utilisateurs légitimes qui sont à l'origine de la fraude peut être 25 reconstituée par l'opérateur du service de distribution de contenus ou plus généralement par une autorité à partir des données redistribuées aux utilisateurs illicites. Cet utilisateur légitime à l'origine de la fraude est appelé "traitre" dans la suite de la description. Le concept de traçage des traîtres a été pour la première fois proposé 30 par Benny Chor, Amos Fiat et Moni Naor dans leur article de 1994, "Tracing Traitors", Advances in Cryptology - Crypto'94, Lecture Notes in Computer Science, vol. 839, Springer-Verlag, 1994, pp. 257-270. Dans cet article, les premières techniques de traçage dans un système cryptographique sont proposées. Les systèmes cryptographiques dans lesquels un procédé de traçage des traîtres peut être mis en oeuvre sont dits "traçables". Quasiment toutes ces techniques sont de nature combinatoire. En d'autres termes, chaque utilisateur légitime du système cryptographique se voit attribuer un sous-ensemble de clés d'un ensemble (généralement assez grand) de clés de base. Ce sous-ensemble 5 de clés de base attribué à un utilisateur est unique pour chaque utilisateur et constitue sa clé personnelle. Les informations diffusées dans ce système comprennent des messages chiffrés. Chaque message chiffré est formé d'un contenu chiffré à l'aide d'une clé de chiffrement de contenu et d'en-têtes chiffré chacun avec une 10 clé de base. Chaque en-tête contient une valeur représentant une partie de la clé de chiffrement de contenu. Lorsqu'un utilisateur reçoit l'un de ces messages, il déchiffre à l'aide de son sous-ensemble de clés de base certaines valeurs contenues dans les entêtes reçus. Il combine alors les valeurs ainsi déchiffrées pour reconstituer la clé 15 de chiffrement de contenu et cette clé de chiffrement de contenu reconstituée est utilisée pour déchiffrer le contenu du message. Si l'un des utilisateurs légitimes du système communique sa clé personnelle à un utilisateur illicite, alors, dans ce système cryptographique traçable, il est possible de retrouver l'identité du traître à partir de la clé 20 personnelle mise en oeuvre par l'utilisateur illicite. Toutefois, les procédés de traçage de traîtres de nature combinatoire présentent l'inconvénient qu'il est nécessaire de diffuser un volume considérable d'en-têtes. Le nombre d'en-têtes à diffuser est en particulier proportionnel au logarithme du nombre d'utilisateurs légitimes du système ainsi qu'à d'autres 25 paramètres tel que la taille maximale k des coalitions de traîtres contre lesquelles on cherche à se protéger. On entend ici, par coalition, un groupe de k traîtres qui se regroupent pour combiner leurs clés personnelles de manière à essayer de créer une nouvelle clé personnelle apte à être utilisée pour déchiffrer le contenu chiffré sans pour autant que l'étude de cette nouvelle clé personnelle divulgue 30 lI'identité de l'un des traîtres. L'invention vise à remédier à cet inconvénient en proposant un nouveau procédé de traçage des traîtres ne nécessitant pas la diffusion d'un nombre important d'en-têtes. L'invention a donc pour objet un procédé de traçage des traîtres tel que décrit ci-dessus caractérisé en ce que lors de la mise en oeuvre de la seconde fonction, la description mathématique de cette seconde fonction à laquelle chaque décodeur fait appel est différente d'un décodeur à l'autre ou d'un groupe 5 de décodeurs à l'autre de manière à ce que la description mathématique à laquelle il est fait appel identifie de façon unique le décodeur ou un groupe de décodeurs particulier parmi l'ensemble des décodeurs. Dans le procédé ci-dessus, il est possible de retrouver le traître qui a communiqué la description mathématique de sa seconde fonction secrète à un 10 utilisateur illicite à partir de l'analyse de la description mathématique de cette seconde fonction mise en oeuvre par l'utilisateur illicite pour déchiffrer les informations transmises. En effet, par construction de chaque description mathématique du système, celle-ci est représentative de l'identité du traître. De plus, avec les procédés combinatoires, à cause du fait qu'un jeu personnel de 15 clés est mis en oeuvre dans chaque décodeur, il est nécessaire que la même clé de chiffrement de contenu soit transmise plusieurs fois chiffrée sous différentes formes. Les en-têtes placés au début du contenu diffusé sont utilisés à cet effet. Ainsi l'information contenue dans les en-têtes est extrêmement redondante et chaque décodeur ne traite qu'une partie des en-têtes reçus. Dans le procédé ci-dessus grâce au fait que l'identification d'un traître repose non plus sur la mise ne oeuvre de jeux personnels de clés, mais sur la mise en oeuvre de descriptions différentes d'une même fonction cryptographique, identique à la première fonction cryptographique ou à son inverse mise en oeuvre par l'émetteur, il n'est plus nécessaire qu'au moins une partie des informations 25 diffusées soit redondante. Par conséquent, le nombre d'en-têtes nécessaires pour diffuser un message chiffré à l'aide du procédé ci-dessus est inférieur au nombre d'en-têtes nécessaires pour diffuser le même message à l'aide d'un procédé combinatoire. Suivant d'autres caractéristiques du procédé, celui-ci se caractérise en 30 ce que: - la seconde fonction cryptographique est apte à traiter des informations non redondantes - ladite description mathématique FKj enregistrée dans la mémoire de chaque décodeur est formée de plusieurs fonctions élémentaires Gij qui doivent être composées les unes avec les autres dans un ordre déterminé pour former ladite seconde fonction secrète. - chaque fonction élémentaire G1j est égale à la composée d'au moins trois fonctions selon l'une des relations suivantes GI1j = f 1,j ogj (1) oS G2,j = f2,j ogaj (2) of1,j Gri =l fr-1,j Oguj (r-1) Ofr-2,j Gr, j = Togd (r) Ofr-1,j o: G- ij est la ième fonction élémentaire du décodeur j, j étant un indice identifiant un décodeur ou un groupe de décodeurs - les fonctions fij et fij sont des fonctions prédéfinies aptes à rendre non commutatives entre elles les fonctions élémentaires Gi,j - oj est une permutation de l'ensemble d'indices {1; ... ; r} unique pour chaque décodeur ou groupe de décodeurs - gaj(t) est la aj(t) ième fonction d'un ensemble prédéfini formé de r fonctions prédéfinies gi non linéaires commutatives entre elles, et - S et T sont des fonctions prédéfinies aptes à rendre difficile la 20 cryptanalyse des fonctions élémentaires respectivement GIj et Gr,j. - chaque fonction f'ij est égale à l'inverse f, de la fonction fij; - les fonctions fj sont des fonctions linéaires d'un ensemble Ln des nuplets d'éléments d'un corps fini L sur lui-même; - les fonctions S et T sont inversibles; - les fonctions S et T sont des fonctions linéaires d'un ensemble Ln des n-uplets d'éléments d'un corps fini L vers lui-même; - les fonctions g, sont choisies de manière à ce que chaque fonction élémentaire Gij corresponde à un bloc de chiffrement d'un algorithme de chiffrement multivariables; - chaque fonction gi est de la forme gi (a) = aei, o a est un élément d'une l'extension L' de degré n d'un corps de base L à q éléments, et eest un exposant prédéfini; 81 a Od-1 - l'exposant ei est de la forme l+q +...+q +...+q,o les exposants Oi sont des entiers prédéfinis. L'invention a également pour objet un support d'enregistrement d'informations, caractérisé en ce qu'il comporte des instructions pour l'exécution 5 d'un procédé traçable conforme à l'invention, lorsque ces instructions sont exécutées par un décodeur. L'invention a également pour objet un support d'enregistrement d'informations, caractérisé en ce qu'il comporte des instructions pour l'exécution d'un procédé traçable conforme à l'invention, lorsque lesdites instructions sont 10 exécutées par un émetteur. L'invention a également pour objet un système traçable de chiffrement et/ou de déchiffrement d'informations diffusées apte à permettre l'identification, parmi différents utilisateurs légitimes, d'un traître qui a communiqué à un tiers non autorisé des informations secrètes de manière à ce que ce tiers puisse 15 chiffrer et/ou déchiffrer les informations diffusées, ce système comportant: - un émetteur propre à chiffrer les informations diffusées, cet émetteur étant apte à mettre en oeuvre au moins une première fonction cryptographique secrète, et plusieurs décodeurs propres à déchiffrer les informations diffusées, 20 tous les décodeurs étant aptes à mettre en oeuvre au moins à une même seconde fonction cryptographique secrète identique à ladite première fonction ou à son inverse, à cet effet, chaque décodeur étant équipé d'une mémoire dans laquelle est enregistrée une description mathématique de ladite seconde fonction; caractérisé en ce que la mémoire de chaque décodeur contient une description mathématique de ladite seconde fonction différente de celle enregistrée dans la mémoire des autres décodeurs ou dans la mémoire des autres groupes de décodeurs de manière à ce que cette description mathématique identifie de façon unique le décodeur ou un groupe de décodeurs 30 particulier parmi l'ensemble des décodeurs. Finalement, I'invention a également pour objet une mémoire destinée à être associée à un décodeur d'un système traçable de chiffrement et/ou de déchiffrement conforme à l'invention, caractérisée en ce qu'elle comporte une description mathématique équivalente de ladite seconde fonction secrète propre à être utilisée par le décodeur, cette description mathématique se composant de plusieurs fonctions élémentaires (G11) dont chacune est égale à la composée d'au moins trois fonctions selon l'une des relations suivantes G1,j = f1,j ogOj (1)oS G2,j = f2,j Ogoj (2) of1,j Gr 1ij = fr-I, j ogcj (r-1) Ofr-2,j Gr, j = Togj (r) ofr-l,j o: - G1,j est la ième fonction élémentaire du décodeur j, j étant un indice identifiant un décodeur ou un groupe de décodeurs - les fonctions fj et f?,j sont des fonctions prédéfinies aptes à rendre non commutatives entre elles les fonctions élémentaires G1,j - uj est une permutation de l'ensemble d'indices {1; ...; r} unique pour chaque décodeur ou groupe de décodeurs gj(t) est la oj(t) ième fonction d'un ensemble secret prédéfini formé de r fonctions prédéfinies g' non linéaires commutatives entre elles,_ et - S et T sont des fonctions prédéfinies aptes à rendre difficiles la 20 cryptanalyse des fonctions élémentaires respectivement Gi,j et Gr,j. L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple et faite en se référant aux dessins sur lesquels: - la figure 1 est une illustration schématique de l'architecture d'un 25 système cryptographique traçable conforme à l'invention, et - la figure 2 est un organigramme d'un procédé de traçage des traîtres conforme à l'invention. La figure 1 représente un système cryptographique traçable, désigné par la référence générale 2. Ce système 2 comporte un émetteur 4 d'informations 30 chiffrées, un réseau 6 de transmission d'informations, et des décodeurs propres à déchiffrer les informations chiffrées diffusées par l'émetteur 4 au travers du réseau 6. Le système 2 comporte N décodeurs, N étant un nombre entier supérieur à 100, 1000 ou plus. Ici, pour simplifier l'illustration, seul un décodeur 8 a été représenté. Les autres décodeurs non représentés sont, par exemple, identiques au décodeur 8. Dans la suite de la description, ce décodeur 8 est associé à l'indice j. A titre d'exemple, I'émetteur 4 est un émetteur de chaînes de télévision payantes. Cet émetteur 4 comporte un module 10 de chiffrement d'un contenu Ba 5 et un module 12 de calcul d'un mot de contrôle CWa. Le contenu Ba est ici formé d'une succession de bits d'informations représentant des chaînes de télévision en clair, c'est-à-dire non chiffrées. Le module 12 est apte à exécuter une fonction cryptographique définie par une description mathématique FK. Cette fonction cryptographique est 10 destinée à traiter directement un en-tête EBa codé sur n caractères pour le transformer en un mot de contrôle CWa codé également sur n caractères, n étant un entier strictement positif supérieur, par exemple, à 100. Ici, à titre d'exemple, chaque caractère est soit un "0" soit un "1". A cet effet, l'émetteur 4 est associé à une mémoire 14 dans laquelle 15 est enregistrée la description mathématique FK de la fonction cryptographique. Une description mathématique est un ensemble d'informations déterminant la suite exacte d'opérations mathématiques à effectuer pour calculer, pour toute valeur d'entrée, la valeur de sortie correspondante de cette fonction, sans qu'aucune autre valeur que la valeur d'entrée de la fonction n'ait à être fournie au 20 programme pour effectuer les calculs. Cette description FK est enregistrée dans la mémoire 14 dans un format directement exploitable par l'émetteur pour que le module 12 puisse réaliser, à partir de cette description, sa fonction cryptographique. Par exemple, ici, la description FK est une suite d'instructions formant un programme informatique. Toutefois, dans la suite de cette description, 25 les descriptions mathématiques des fonctions seront uniquement représentées sous la forme de relations mathématiques exprimées à l'aide de symboles conventionnels. En effet, le ou les programmes informatiques correspondant aux relations mathématiques décrites par la suite sont aisément réalisables. La description FK sera décrite plus en détail en regard de la figure 2. Le module 10 est apte à exécuter une fonction de chiffrement E paramétrée par le mot de contrôle CWa construit par le module 12, pour chiffrer le contenu Ba et délivrer en sortie un contenu chiffré CBa correspondant. La fonction de chiffrement E est ici une fonction de chiffrement conventionnelle inversible. Par exemple, il s'agit de l'algorithme de chiffrement AES (Advanced Encryption Standard) ou de l'algorithme de chiffrement connu sous le terme de "one time pad". Pour chaque contenu Ba chiffré à l'aide du mot de contrôle CWa par le module 10, l'émetteur 4 est apte à diffuser vers l'ensemble des décodeurs du 5 système, un couple d'informations. Ce couple d'informations est formé par l'entête EBa et par le contenu chiffré CBa. Pour déchiffrer les informations transmises ou diffusées par l'émetteur 4 au travers du réseau 6, le décodeur 8 comporte un module 20 de calcul du mot de contrôle CWa et un module 22 de déchiffrement du contenu chiffré CBa. Le module 20 est apte à exécuter une fonction cryptographique. Cette fonction est définie par une description mathématique FKj différente de la description FK. Plus précisément cette description FKj est différente de toutes les descriptions FKj mises en oeuvre dans les autres décodeurs du système 2. Toutefois, bien que la description mathématique FKj soit différente de la 15 description FK, la fonction qu'elle définit est la même. Par conséquent, la transformation de l'en-tête EBa par le module 20 permet d'obtenir le mot de contrôle CWa, c'est-à-dire le même que celui qui aurait été obtenu à l'aide du module 12. Dans ces conditions, la description FKj est dite équivalente à la description FK. De façon similaire à l'émetteur 4, le décodeur 8 est associé à une mémoire 21 dans laquelle est enregistrée la description mathématique FKj. La description FKj sera décrite plus en détail en regard de la figure 2. Le module 22 est apte à exécuter une fonction de déchiffrement D. Cette fonction D est l'inverse de la fonction E et permet donc de déchiffrer le 25 contenu CBa, à l'aide du mot de contrôle CWa construit par le module 20 à partir de l'en-tête reçu EBa. Le décodeur 8 est également propre à transmettre le contenu Ba déchiffré par le module 22 à un poste de télévision 26 sur lequel il sera affiché en clair. L'émetteur 4 et chacun des décodeurs sont réalisés à partir de calculateurs programmables conventionnels aptes à exécuter des instructions enregistrées sur un support d'enregistrement d'informations. A cet effet, les mémoires 14 et 21 contiennent, en plus des paramètres secrets pour chiffrer et déchiffrer les informations transmises, des instructions pour l'exécution du procédé de la figure 2. Le fonctionnement du système 2 va maintenant être décrit en regard du procédé de la figure 2. Le procédé de la figure 2 se décompose en trois phases principales. Une phase 50 d'initialisation du système 2, une phase 52 d'utilisation du système 2 et finalement une phase 54 de recherche d'un traître parmi les différents utilisateurs légitimes du système 2. La phase 50 débute par une étape 60 de construction de la description 10 mathématique FK. A cet effet, r fonctions non linéaires g1 sont construites, lors d'une opération 62, r étant un nombre entier strictement positif. Le nombre r de fonctions gi est choisi de manière à vérifier la relation suivante (1) N Ces fonctions gi sont construites de manière à être commutatives entre elles, par l'opération de composition, de telle sorte que la relation suivante est vérifiée: (2) Vi, lE {1, ..., r}, il gi ogl = gl ogi o le symbole o représente l'opération de composition de deux 20 fonctions mathématiques. Ici, chacune de ces fonctions est une fonction non linéaire transformant un n - uplet en un autre n - uplet. Par n - uplet on désigne ici un ensemble de n éléments. Par exemple l'ensemble des n coefficients d'un polynôme de degré (n-1) peut être vu comme un n - uplet. Ainsi, chaque fonction gi admet n variables d'entrée et restitue en sortie n variables calculées. Elles correspondent, ici, chacune à un système de n équations non linéaires à n variables. n est un entier strictement positif qui correspond ici au nombre de caractères de l'en- tête EBa. Ici, chaque fonction gi est choisie pour former un bloc de chiffrement G1 30 d'un algorithme de chiffrement multivariables lorsqu'elle est composée à droite et à gauche avec des fonctions linéaires. Un exemple d'algorithme de chiffrement multivariables est, par exemple, I'algorithme C proposé par Matsumoto et Imai dans (Tsutomu Matsumoto and Hideki Imai, Public Quadratic Polynomial-tuples for Efficient Signature Verification and Message Encryption, Advances in Cryptology- EUROCRYPT '88 (Cristoph G. GUnther, e d.), Lecture Notes in Computer Science, vol. 330, Springer, 1988, pp. 419 - 453). D'autres exemples d'algorithmes de chiffrement multivariables sont les algorithmes connus sous les termes de SFLASH v2 (Le projet NESSIE, New European Schemes for 5 Signatures, integrity and Encryption) et HFE (PATARIN Jacques Hidden Fields Equations (HFE) and Isomorphisms of Polynomyals (IP) : two new families of Asymmetric Algorithms - Eurocrypt 96, Springer Verlag, pp. 33-48). De manière à obtenir à partir des gi une description à la fois simple et compacte des blocs de chiffrement G1 qui en découlent, les fonctions gi sont 10 choisies comme étant des fonctions monomiales, appelées monomes. Ici, à titre d'exemple, chacune des fonctions gi opère sur les éléments d'une extension L' de degré n d'un corps de base L à q éléments. Par exemple, ici, q = 2 et L = {0,1} L'extension L' est représentée comme l'ensemble des polynomes de la 15 forme: n-l Y ai Xi i=O 0o: - les coefficients sont des éléments du corps L, - I'indice i est un entier, et 20 - X est une variable. L'extension L' est munie de l'addition de polynomes et de la multiplication modula un polynome irréductible de degré n défini par la relation suivante: P(X) = pi x OU 00: les coefficients pi sont des éléments prédéfinis du corps L, et, - X est une variable. A titre d'exemple, les fonctions gisont des fonctions de l'extension L' dans l'extension L' de la forme: g i(a)= ae'i o: - a est un élément de l'extension L', et - I'exposant es est un entier prédéfini de la forme l+q 9 +...+q% +...+q-, o q est le nombre d'éléments du corps L et les exposants Oi sont des entiers prédéfinis. Ici, d est choisi égal à 2 de sorte que l'exposant eide chacune des fonctions g i est de la forme 1 + q' L'avantage d'un exposant eide cette forme est que si l'on identifie chaque élément a de l'extension L' aux n uplets ( a o, a1,..., a,-,) de coefficients, chacun des coefficients bo, , b b n-I de l'élément b de l'extension L' défini par la relation b = g1 (a) s'écrit comme une fonction de degré seulement d des coefficients a o, al a,_, de a. C'est-à-dire, ici, comme une fonction 10 quadratique dans le cas particulier o d est égal à 2. Dans ce cas particulier, chaque coefficient bi peut s'écrire sous la forme de la fonction quadratique suivante: bi = (co ao + . . .+ cn-1 an-1) + (co,1 ao a1 + ... + Con-1 ao an-1) + (Cl,2 a1 a2 + ... + cl,n-1 al an-1) + ... + Cn-2,n-1 an-2 an-1 oles n coefficients c, et les n(n-1)/2 coefficients cuv sont des constantes appartenant au corps L. Ainsi, grâce à la forme de l'exposant choisi, la description mathématique de chaque fonction gi est compacte et aisément enregistrable dans une mémoire. Ensuite, lors d'une opération 64, deux fonctions S et T de Ln sur Ln sont choisies, o L" est l'ensemble des n - uplets formés d'éléments du corps L. De préférence, ces fonctions S et T sont des fonctions inversibles linéaires. Par exemple, la description mathématique de chacune de ces fonctions S et T est une matrice de n éléments par n éléments, chacun de ces éléments 25 appartenant au corps L. Ensuite, la description FK est construite lors d'une opération 66, en composant les fonctions gi et les fonctions S et T de la façon suivante: (3) FK = To grO gr-o... 09og2 0g1OS. Après avoir construit la description FK, le procédé se poursuit par une 30 étape 70 de construction pour chaque décodeur de la description équivalente FKj. Lors de cette étape 70, pour chaque décodeur j du système, une permutation aj unique de l'ensemble {1,2, ..., r} sur lui-même est définie lors d'une' opération 72. Cette permutation aj est, par exemple, soit construite par tirage au sort, soit déduite à partir de l'indice j identifiant le décodeur et d'un paramètre secret M. On notera qu'il est possible de construire une permutation unique pour chaque décodeur du système car la relation (1) est vérifiée. Ensuite, lors d'une opération 74, r-1 bijections fij, sont choisies pour l'utilisateur j. Chacune de ces bijections fij est une fonction inversible de 10 I'ensemble L" sur lui-même. Ces bijections fi,j sont, par exemple, décrites à l'aide d'une matrice de n éléments par n éléments, chacun de ces éléments appartenant au corps L. Par exemple, lors de cette opération 74, les bijections fi,j sont choisies par tirage au sort dans l'ensemble des applications linéaires inversibles de 15 l'ensemble L" dans lui-même. Une autre possibilité est de déduire chacune de ces bijections fi,j, à partir de l'indice j du décodeur et du paramètre secret M. Finalement, lors d'une opération 76, la description mathématique FKj est construite. A cet effet, r fonctions élémentaires G1, j sont construites pour le décodeur j. Ces fonctions Gi,j sont construites en composant les fonctions S, T, 20 ft,j et gi de la façon suivante: (4) G1,j =f, Ogoj (1) oS 1, j G2,j = f, Ogao (2) Of1,j -....................... ..................... Gr,=fr-l, j ogd (r-1) Ofr-2,j Gr, j = Togaj (r) fr-lij o - flij est l'inverse de la bijection fij, et - gj(t), et la fonction gi dont l'indice i est égal au permuté de l'indice t 30 par la permutation aj de l'utilisateur j, t appartenant à l'ensemble {1, 2, ..., r}. La propriété de la fonction gi selon laquelle chaque coefficient bide l'élément b de l'extension L' défini par la relation b = gi (a) peut s'écrire comme un polynome de degré seulement d est conservée lorsque la fonction gi est composée à droite et à gauche par des bijections ou fonctions linéaires. Par conséquent, les composantes de l'élément y de Ln défini par la relation y = Gij (x) peuvent être décrites par un polynome de degré seulement d des 5 composantes xi de l'élément x de Ln. Par exemple, lorsque d est égal à 2, la composante y, est définie à l'aide de la description mathématique suivante: Y, = (C'o Xo + ... + C'n-1 Xn-1) + (C'0,1 Xo X1 + -... + C'o,n-1 Xo Xn-1) + (C'1,2 X1 X2 + ... + C'l,n1 X1 Xn-1) + - -... - + C'n-2,n-1 Xn-2 Xn-1 o les n coefficients c',, et les n (n-1)/2 coefficients c'u,, sont des 10 constantes appartenant au corps L. O1 Ainsi, grâce au choix d'exposant eide la forme 1 +q, la description mathématique de chaque fonction élémentaire Gj est simple et compacte et occupe donc peu de place dans une mémoire. En particulier, dans le mode de réalisation décrit ici, la description mathématique de chaque fonction 15 élémentaireGij est un système de n équations non linéaires à n variables. La description FKjest formée par ces r fonctions élémentairesGij. En effet, en traitant un message d'entrée à l'aide de la relation (5): FKj = Gr,j O Gr-1, j O... oG2,j oG1,j on obtient exactement le même message de sortie que celui qui aurait été obtenu à l'aide de la description FK. L'équivalence des descriptions 20 mathématiqueFKj et FKest aisée à vérifier en remplaçant dans la relation précédente chaque fonction élémentaire Gj par sa définition donnée par la relation (4). En faisant celà dans la relation précédente, on obtient: FKj = To gui(r)Ogj(r-_)O. . ogj(2) oga](1) oS Puisque l'ensemble des fonctions gj sont commutatives entre elles, on 25 démontre ainsi que la description FKj est équivalente à la description FK. On comprend donc que la fonction des bijections fij est de rendre non commutatives entre elles les fonctions élémentaires Gi,j. Dès lors, pour obtenir une description équivalente à la description FK, les fonctionsélémentaires Gi,j ne peuvent être composées les unes avec les autres que dans l'ordre croissant de 30 leur indice i comme dans la relation (5). De plus, la robustesse du système contre toute tentative de cryptanalyse repose, dans le mode de réalisation particulier décrit ici, sur la difficulté du problème d'isomorphisme de polynôme également connu sous le terme de problème IP. En effet, connaissant les fonctions Gi,j, il est mathématiquement très 5 difficile, même en connaissant l'ensemble des fonctions g. à gr d'identifier les valeurs aj(i) puisque des fonctions inconnues sont utilisées dans chaque fonction élémentaire Gj pour les camoufler par composition à droite et à gauche. Ici, ces fonctions inconnues sont les fonctions S et T qui sont gardées secrètes et les bijections fi,j. Dès lors, il n'est pas possible pour un utilisateur illicite en 10 possession d'un jeu de fonctions élémentaires Gi,j valides, de construire un nouveau jeu de fonctions élémentaires G'i,j dans lequel la relation d'ordre définie par aj entre les fonctions gi n'est pas conservée. Autrement dit, puisque l'utilisateur illicite n'est pas capable de retrouver les fonctions S, T et fi,j à partir des fonctions élémentaires Gi,j, il doit se contenter de modifier la description 15 mathématique de chaque fonction élémentaire G0,j, sans pour autant pouvoir modifier l'ordre dans lequel ces fonctions élémentaires doivent être combinées. Ainsi, puisque l'ordre dans lequel les fonctions élémentaires G'l,j sont combinées n'est pas modifié, I'ordre dans lequel les fonctions gi sont combinées n'est pas non plus modifié. L'intérêt de cette propriété apparaîtra à la lecture de la suite de 20 la description. Une fois les fonctions élémentaires Gij construites pour chaque utilisateur j du système 2, celles ci sont distribuées et enregistrées, lors d'une étape 80, dans la mémoire 21 de chaque décodeur 8, sous la forme, par exemple, d'un programme informatique. De plus, lors de cette étape 80, des informations nécessaires en vue d'exécuter la phase 54 de recherche d'un traître sont, par exemple, enregistrées dans la mémoire 14. En particulier, I'ensemble des fonctions utilisées pour construire chaque fonction élémentaire G,.j est enregistré dans cette mémoire 14 ainsi que chacune des permutations o- utilisées. La relation entre chaque 30 permutation craj et le décodeur pour lequel elle a été utilisée est enregistrée. De même, une relation permettant d'identifier un utilisateur à partir de l'identité du décodeur est enregistrée dans cette mémoire 14. Une fois que les fonctions G. jont été enregistrées dans la mémoire de chaque décodeur 8, la phase 52 d'utilisation du système 2 peut débuter. Lors de cette phase 52, l'émetteur 4 tire au sort, lors d'une étape 84, à intervalle régulier, par exemple toutes les secondes, un nouvel en-tête EBa. Cet en-tête EBa est transformé, lors d'une étape 86, à l'aide de la description FK, par le module 12 afin d'obtenir le mot de contrôle CWa. Ensuite, le contenu Ba est chiffré par le module 10, lors d'une étape 88, à l'aide de la fonction E et du mot de contrôle CWa. Le contenu ainsi chiffré CBa et l'en-tête EBa utilisé à cet effet sont alors diffusés conjointement, lors d'une 10 étape 90, par l'émetteur 4, au travers du réseau 6 et à destination de l'ensemble des décodeurs du système 2. Lors de la réception des informations chiffrées, chaque décodeur procède d'abord à une étape 92 de calcul du mot de contrôle CWa à partir de l'entête reçu EBa. Lors de cette étape, le module 20 utilise successivement et 15 dans l'ordre chacune des fonctions élémentaires Gi,j enregistrées dans sa mémoire 21, de manière à effectuer le calcul correspondant à la composée des fonctions élémentaires Gi,j selon la relation- (5). A l'issue de cette étape 92, le module 20 délivre en sortie le même mot de contrôle CWa que celui construit par le module 12 de l'émetteur 4. A l'aide de ce mot de contrôle CWa et de la fonction D, le module 22 déchiffre, lors d'une étape 94, le contenu chiffré reçu CBa. Le contenu déchiffré Ba délivré par le module 22 est alors transmis pour affichage en clair, par exemple, sur le poste de télévision 26. Les étapes 84 à 94 sont réitérées pendant toute la phase d'utilisation 25 du système 2 pour chaque information ou trame d'informations diffusée par l'émetteur 4. Pour la suite de la description, il est supposé que l'utilisateur du décodeur j a transmis à un utilisateur illicite son jeu de fonctions élémentaires Gi,j, de manière à ce que cet utilisateur illicite puisse utiliser un décodeur pirate 30 pour déchiffrer les informations diffusées par l'émetteur 4, sans avoir à payer, par exemple, un abonnement. L'utilisateur du décodeur j est donc le traître puisqu'il a transmis illégalement et illicitement les informations secrètes permettant de déchiffrer les informations diffusées par l'émetteur 4. La phase 54 de recherche du traître débute par la saisie et l'analyse, lors d'une étape 100, du décodeur pirate de l'utilisateur illicite. Lors de cette étape 100, l'analyse du décodeur est réalisée de manière à retrouver dans celui-ci les fonctions élémentaires Gi,j qui lui ont été communiquées illicitement par le traître, 5 ainsi que l'ordre dans lequel ces fonctions Gqj sont combinées pour transformer l'en-tête EBa reçu en un mot de contrôle CWa. Les fonctions élémentaires retrouvées dans le décodeur pirate sont notées ici G1,p o l'indice i indique l'ordre dans lequel ces fonctions élémentaires sont utilisées pour transformer le mot de contrôle EBa. Ensuite, chaque fonction Gi,p est analysée lors d'une étape 102 pour retrouver la fonction gi, à partir de laquelle elle a été construite. Une telle analyse est possible, par exemple, pour l'opérateur du système 2, puisque celui-ci connaît les fonctions S, T, fj, et gi utilisées pour construire les fonctions élémentaires Gij de chaque utilisateur du système. Ainsi, à l'issue de l'étape 102, I'opérateur du système 2 est capable de dire que la fonction élémentaire G1,p a été construite à partir de la fonction gm, que la fonction élémentaire G2,p a été construite à partir de la fonction gn et ainsi de suite pour chacune des fonctions Gi,p o les indices m et n des fonctions gm et gn représentent l'indice de la fonction gi utilisée pour construire respectivement 20 G1,p et G2,p. A partir de ces informations, I'opérateur est donc capable de reconstruire, lors d'une étape 104 la permutation uj utilisée lors de la construction des fonctions élémentaires Gi,p utilisées dans le décodeur pirate. Une fois cette permutation oj reconstruite, celle-ci est comparée, lors d'une étape 106, aux 25 différentes permutations enregistrées dans la mémoire 14, lors de l'étape 80. Grâce à cela, le traître, c'est à dire ici l'utilisateur du décodeur j, est identifié, puisque dans le système 2, chaque permutation oj correspond à un seul décodeur, lui-même associé à un seul utilisateur. Ce système et ce procédé s'avèrent donc particulièrement dissuasifs 30 pour empêcher des utilisateurs légitimes de communiquer les informations nécessaires au déchiffrement des contenus chiffrés CBa. Des études de robustesse du procédé de la figure 2 contre des tentatives de crypt-analyses ont été menées. Ces études ont montré, en particulier, que le système et le procédé de la figure 2 résistent à des attaques menées par une coalition de k traîtres, k étant un entier positif supérieur à deux. Par coalition de k traîtres, on désigne ici un groupe de k utilisateurs légitimes qui essaient de construire, en mettant en commun leurs jeux respectifs de fonctions élémentaires Gh,j une nouvelle description équivalente de la fonction Fk. Il a été 5 montré que ces utilisateurs illicites peuvent au mieux construire à partir de ces k jeux de fonctions élémentaires Gi,j, une fonction faisant intervenir un ou plusieurs nouveaux jeux de fonctions élémentaires Gp. Toutefois, tout nouveau jeu de fonctions élémentaires Gi,p résulte de la combinaison de séquences successives de fonctions élémentaires Gj, extraites dans chacun des jeux de fonctions 10 élémentaires à sa disposition. Par exemple, dans le cas d'une coalition de deux traîtres, le nouveau jeu de fonctions élémentaires Gi,p que pourrait construire un utilisateur illicite, se composerait des p premières fonctions élémentaires {G1,1, G2,1, ..., Gp,1} du premier traître et des r-p dernières fonctions élémentaires {Gp+1,2, . , Gr,2} du second traître. Pour lutter contre une telle tentative de 15 camouflage de l'identité du traître, le nombre r de fonctions gi sera choisi suffisamment grand pour qu'au moins un traître puisse être identifié uniquement à partir de l'identification, lors de-la phase 54, d'une partie seulement de la permutation aj qui a été utilisée pour construire son jeu de fonctions élémentaires Gi,j. Par exemple, dans le cas de la coalition de deux traîtres, r sera choisi 20 suffisamment grand pour qu'au moins un des deux traîtres puisse être identifié soit à partir des p premières fonctions élémentaires Gi,1 soit à partir des r-p dernières fonctions élémentaires Gi,2...DTD: On remarquera que dans le procédé ci-dessus, les mêmes informations secrètes, c'est-à-dire ici les fonctions cryptographiques associées 25 aux descriptions FK, FKj sont utilisées pour chiffrer et déchiffrer, de sorte que le procédé de chiffrement décrit présente les mêmes caractéristiques qu'un algorithme de chiffrement symétrique. En particulier, grâce à cette propriété, le procédé décrit ici est plus rapide qu'un algorithme de chiffrement asymétrique. Ici, les fonctions S, T, f,ij, doivent être gardées secrètes, tandis que les 30 fonctions gi sont éventuellement publiques. Dans le système 2, seule une même fonction de calcul du mot de contrôle CWa est utilisée aussi bien dans l'émetteur 4 que dans les décodeurs. Dès lors, cette fonction cryptographique n'a pas besoin d'être inversible ce qui facilite le choix et la construction des fonctions gi. Toutefois, en variante, la description FK correspond à une fonction de chiffrement et les descriptions FKj correspondent à l'inverse de cette fonction de chiffrement. Dans cette variante, les différentes descriptions, FKj implantées dans les différents décodeurs du système sont équivalentes les unes des autres et sont des descriptions 5 équivalentes de l'inverse de la fonction définie par la description FK. Ce qui a été précédemment décrit pour construire les descriptions FKj s'applique, à la différence près que les fonctions gi doivent être inversibles dans cette variante. Dans ce cas, la description FK est, par exemple, utilisée pour chiffrer directement le contenu Ba tandis que les descriptions équivalentes FKj sont utilisées pour 10 déchiffrer directement les contenus chiffrés CBa. Ici, la fonction cryptographique correspondant aux descriptions FK et FKj transforme un message initial codé sur n caractère en un message transformé codé également sur le même nombre de caractères. Cette fonction cryptographique n'augmente pas la taille du message transformé par rapport à 15 celle du message initial contrairement à ce qui est constaté, par exemple, dans le cas des algorithmes asymétriques. En variante, la fonction cryptographique augmente la taille du message transformé par rapport à celle du message initial. On remarquera cependant que dans cette variante cette augmentation en taille reste indépendante du nombre de traîtres. Le système 2 a été décrit dans le cas particulier o une description FKj est associée à un unique décodeur. En variante, une mrnême description FKj est associée à un groupe de décodeurs. Dans cette variante, I'ensemble des décodeurs du système 2 sont regroupés en plusieurs groupes, de sorte que la description FKj identifie non pas un décodeur particulier mais le groupe auquel 25 appartient ce décodeur particulier. REVENDICATIONS 1. Procédé traçable de chiffrement et/ou de déchiffrement d'informations diffusées par au moins un émetteur vers plusieurs décodeurs, ce procédé permettant d'identifier parmi différents utilisateurs légitimes des 5 décodeurs, un traître qui a communiqué à un tiers non autorisé des informations secrètes de manière à ce que ce tiers puisse chiffrer et/ou déchiffrer les informations diffusées par l'émetteur, dans lequel - lors du chiffrement des informations diffusées, l'émetteur met en 10 oeuvre (en 86) au moins une première fonction cryptographique secrète, et - lors du déchiffrement de ces informations diffusées, tous les décodeurs mettent en oeuvre (en 92) au moins une même seconde fonction cryptographique secrète identique à ladite première fonction ou à son inverse, chaque décodeur faisant appel à cet effet à une description mathématique de 15 ladite seconde fonction enregistrée dans une mémoire (21), caractérisé en ce que lors de la mise en oeuvre (en 92) de la seconde fonction, la description mathématique de cette seconde fonction à laquelle chaque décodeur fait appel est différente d'un décodeur à l'autre ou d'un groupe de décodeurs à l'autre de manière à ce que la description mathématique à 20 laquelle il est fait appel identifie de façon unique le décodeur ou un groupe de décodeurs particulier parmi l'ensemble des décodeurs. 2. Procédé selon la revendication 1, caractérisé en ce que la seconde fonction cryptographique est apte à traiter des informations non redondantes. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce que ladite 25 description mathématique (FKj) enregistrée dans la mémoire de chaque décodeur est formée de plusieurs fonctions élémentaires (Gi,j) qui doivent être composées les unes avec les autres dans un ordre déterminé pour former ladite seconde fonction secrète. 4. Procédé selon la revendication 3, caractérisé en ce que chaque 30 fonction élémentaire (Gij) est égale à la composée d'au moins trois fonctions selon l'une des relations suivantes G1, = f1,j ogrj (1) oS G2,j = f2,j Ogaj (2) oflj Gr- ,j = f r-1, j Ogj (r-) Ofr-2,j Gr, j = Togaj (r) Ofr-ij o: - Gij est la ième fonction élémentaire du décodeur j, j étant un indice identifiant un décodeur ou un groupe de décodeurs - les fonctions fj et fij sont des fonctions prédéfinies aptes à rendre non commutatives entre elles les fonctions élémentaires Gij - aj est une permutation de l'ensemble d'indices {1; ...; r} unique pour chaque décodeur ou groupe de décodeurs - goj(t) est la Uj(t) ième fonction d'un ensemble prédéfini formé de r fonctions prédéfinies gi non linéaires commutatives entre elles, et - S et T sont des fonctions prédéfinies aptes à rendre difficile la cryptanalyse des fonctions élémentaires respectivement G1,j et Grj. 5. Procédé selon la revendication 4 ou 5, caractérisé en ce que chaque fonction f'jj est égale à l'inverse f de la fonction fjj. 6 Procédé selon la revendication 4 ou 5, caractérisé en ce que les fonctions fij sont des fonctions linéaires d'un ensemble (Ln) des nuplets d'éléments d'un corps fini (L) sur lui-même. 7. Procédé selon l'une quelconque des revendications 4 à 6, 20 caractérisé en ce que les fonctions S et T sont inversibles. 8. Procédé selon l'une quelconque des revendications 4 à 7, caractérisé en ce que les fonctions S et T sont des fonctions linéaires d'un ensemble (La) des n-uplets d'éléments d'un corps fini (L) vers lui-même. 9. Procédé selon l'une quelconque des revendications 4 à 8, 25 caractérisé en ce que les fonctions gi sont choisies de manière à ce que chaque fonction élémentaire Gij corresponde à un bloc de chiffrement d'un algorithme de chiffrement multivariables. 10. Procédé selon l'une quelconque des revendications 4 à 9, caractérisé en ce que chaque fonction gi est de la forme gi (a) = aei, o a est un 30 élément d'une l'extension L' de degré n d'un corps de base L à q éléments, et eest un exposant prédéfini. 11. Procédé selon la revendication 10, caractérisé en ce que l'exposant ej est de la forme l+q01 +...+q +...+q,o les exposants Oi sont des entiers prédéfinis. 12. Support d'enregistrement d'informations (21), caractérisé en ce qu'il comporte des instructions pour l'exécution d'un procédé traçable de chiffrement et/ou de déchiffrement selon l'une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un décodeur. 13. Support d'enregistrement d'informations (14), caractérisé en ce qu'il comporte des instructions pour l'exécution d'un procédé traçable de chiffrement 10 et/ou de déchiffrement d'informations selon l'une quelconque des revendications 1 à 10, lorsque lesdites instructions sont exécutées par un émetteur. 14. Système traçable de chiffrement et/ou de déchiffrement d'informations diffusées apte à permettre l'identification, parmi différents utilisateurs légitimes, d'un traître qui a communiqué à un tiers non autorisé des 15 informations secrètes de manière à ce que ce tiers puisse chiffrer et/ou déchiffrer les informations diffusées, ce système comportant: - un émetteur (4) propre à chiffrer les informations diffusées, cet émetteur étant apte à mettre en oeuvre au moins une première fonction cryptographique secrète pour traiter directement un message, puis à diffuser le 20 message, - plusieurs décodeurs (8) propres à déchiffrer les informations diffusées, tous les décodeurs étant aptes à mettre en oeuvre une même seconde fonction cryptographique secrète identique à ladite première fonction ou à son inverse pour traiter directement ledit message diffusé, à cet effet, chaque 25 décodeur étant équipé d'une mémoire (21) dans laquelle est enregistrée une description mathématique de ladite seconde fonction; caractérisé en ce que la mémoire (21) de chaque décodeur contient une description mathématique de ladite seconde fonction différente de celle enregistrée dans la mémoire des autres décodeurs ou dans la mémoire des 30 autres groupes de décodeurs de manière à ce que cette description mathématique identifie de façon unique le décodeur ou un groupe de décodeurs particulier parmi l'ensemble des décodeurs. 15. Mémoire (21) destinée à être associée à un décodeur (8) d'un système traçable de chiffrement et/ou de déchiffrement d'informations selon la revendication 13, caractérisée en ce qu'elle comporte une description mathématique équivalente de ladite seconde fonction secrète propre à être 5 utilisée par le décodeur, cette description mathématique se composant de plusieurs fonctions élémentaires (Gij) dont chacune est égale à la composée d'au moins trois fonctions selon l'une des relations suivantes G1,j = f1,j ogj (1)oS G2,j = f2,j og9aj (2) Of1,j 10........................................... Gr-i,j = f r-1, j ogj (r1) ofr-2,j Gr, j = Togaj (r) Ofr-lj o: - Gi,j est la ième fonction élémentaire du décodeur j, j étant un indice 15 identifiant un décodeur ou un groupe de décodeurs - les fonctions f,j et fi,j sont des fonctions prédéfinies aptes à rendre non commutatives entre elles les fonctions élémentaires Gij - j est une permutation de l'ensemble d'indices {1; ... ; r} unique pour chaque décodeur ou groupe de décodeurs - g0j(t) est la oj(t) ième fonction d'un ensemble prédéfini formé de r fonctions prédéfinies gi non linéaires commutatives entre elles, et - S et T sont des fonctions prédéfinies aptes à rendre difficiles la cryptanalyse des fonctions élémentaires respectivement G1,j et Gr,j.