FR 2691827 A1 19931203 FR 9306502 A 19930601 La présente invention concerne un appareil de traitement de données qui est destiné à comprimer/ crypter des données de message par l'utilisation d'un ensemble d'algorithmes de fonctions L'invention concerne également une technique pour donner une structure modulaire à l'appareil de traitement de données. L'attention des spécialistes a été attirée au cours des dernières années par une fonction de traitement de cryptage du type à compression de don- nées (fonction de hachage), qui est applicable au traitement de compression/cryptage de données de message Pour mettre en oeuvre cette fonction, il a été proposé un procédé qui utilise par exemple le mode CBC ("cipher block chaining", ou chaînage de blocs de caractères) de la norme DES ("data encryption standard", ou norme de cryptage de données). Conformément à ce procédé, des données de message qui sont soumises au traitement de hachage de données sont divisées en blocs de données de taille appropriée (par exemple L bits) de la manière sui- vante lBij (i = 1 à m) Le traitement de cryptage pour le (k+ 1)-ième bloc de données (k = O à m-1) est défini de la façon suivante: Ck+ 1 = FK(Ck + Bk+ 1 On suppose que FK représente une fonction de traitement de cryptage de bloc utilisant une clé de cryptage K (fixée) On suppose également que lorsque k = 0, un vecteur initial Io est attribué à C O Dans ce cas, la valeur de hachage est définie par le résul- tat de traitement Cm qui est obtenu au stade final du traitement. Cependant, le système de traitement de com- pression/cryptage de données utilisant le mode CBC présente des problèmes dans la mesure o une fois que la clé de cryptage K est décodée, on peut aisément produire deux articles de données de message ayant la même valeur de hachage. On suppose que les blocs de données des deux articles de données de message différents M et M' sont exprimés par: M = {Bit M' = {Bi i avec i = 1 à m Si dans ce cas la condition qui est exprimée par: c MC + B =C ' + B' m-i m m-i m est satisfaite, les valeurs de hachage de M et M' deviennent mutuellement égales bien que les articles de données de message aient été traités de manières différentes. En d'autres termes, on peut présumer "C +B " m-i d'aprèesla valeur de hachage Cmi si la clé de cryptage K est décodée Par conséquent, M', qui a la même valeur de hachage que M peut être obtenu en effectuant un calcul, avec un groupe de blocs { B 1 ' (i = 1 à m-1) déterminé de façon appropriée, et en déterminant le bloc final B) pour satisfaire la formule de condi- m tion Ceci signifie qu'une collision de données peut aisément se produire dans le procédé de traitement de cryptage qui est basé sur la fonction de hachage utilisant le mode CBD. On connaît un circuit intégré complexe (ou LSI) de cryptage à titre de module de traitement de fonction que l'on utilise pour exécuter la fonction de traitement de données (par exemple un traitement de cryptage), dans un but de sécurité de données Dans l'art antérieur, le module de traitement de fonction de ce type ne permet la mise en oeuvre que d'un seul algorithme de fonction Même s'il permet la mise en oeuvre d'un ensemble d'algorithmes de fonction, l'un d'eux est sélectionné pour l'utilisation, sous la dépendance d'un signal de commande de commutation externe Par conséquent, lorsqu'un appareil de traite- ment de données de ce type est réalisé sous la forme d'un module, il est nécessaire de garantir une grande fiabilité en ce qui concerne la sécurité des données. Comme décrit ci-dessus, l'utilisation de la fonction de hachage utilisant par exemple le mode CBC classique conduit à une augmentation de la possibilité d'apparition d'une collision de données Par consé- quent, un appareil de traitement de données qui utilise la fonction de hachage doit être conçu de façon à éviter une collision de données, pour garantir la sécurité des données Lorsque l'appareil de traite- ment de données de ce type est réalisé sous la forme d'un module, on doit prendre soin de garantir une fiabilité plus élevée en ce qui concerne la sécurité des données. La présente invention a été faite pour résoudre les problèmes mentionnés ci-dessus, et son premier but est de procurer un appareil de traitement de données qui évite l'apparition d'une collision de données lorsque des données sont soumises à un traite- ment de compression/cryptage, et qui assure une fiabi- lité élevée en ce qui concerne la sécurité des don- nées Le second but de l'invention est de procurer une technique permettant d'obtenir une structure modu- laire, qui garantit la confidentialité de données lorsque l'appareil de traitement de données de ce type est réalisé sous la forme d'un module. La présente invention procure un appareil de traitement de données comprenant: une section de traitement de blocs ( 11) qui est destinée à diviser des données de message (B) en un ensemble de blocs, afin d'obtenir un ensemble de blocs de données (Bi (i = 1 à m)); et un ensemble de sections de traitement de conversion de données ( 12 i) qui sont établies en cor- respondance avec les blocs de données (Bi), chacune d'elles conservant en mémoire un ensemble d'algorith- mes de conversion de données, une première des sec- tions de traitement de conversion de données sélec- tionnant l'un (A 1) des algorithmes de conversion de données sous la dépendance d'un signal de commande de sélection initial ( 50), et chacune des sections res- tantes parmi les sections de traitement de conversion de données sélectionnant l'un (A 1) des algorithmes de conversion de données, sous la dépendance d'un signal de commande de sélection (Si) qui est fourni par une section de traitement de conversion de données précédente (B i), chacune des sections de traitement de conversion de données ( 12 i) effectuant un traite- ment de conversion de données concernant le bloc de données correspondant (Bi) sur la base de l'algorithme de conversion de données sélectionné, et générant un signal de commande de sélection qui est utilisé pour traiter un bloc de données suivant (Bi+l) sur la base du traitement de conversion de données. D'autres caractéristiques et avantages de l'invention seront mieux compris à la lecture de la description qui va suivre de modes de réalisation, données à titre d'exemples non limitatifs La suite de la description se réfère aux dessins annexés dans lesquels La figure 1 est un schéma de circuit mon- trant un appareil de traitement de données conforme au premier mode de réalisation de l'invention; La figure 2 est un schéma synoptique montrant la configuration d'un circuit de compression/ cryptage qui est employé dans le premier mode de réalisation; La figure 3 est un schéma synoptique de circuit montrant la configuration d'un codeur convo- lutif qui met en oeuvre le procédé de détermination d'algorithme de cryptage qui est utilisé dans le premier mode de réalisation; La figure 4 est un diagramme du treillis correspondant au fonctionnement du codeur convolutif qui est représenté sur la figure 3; La figure 5 est un schéma synoptique de circuit montrant un appareil de traitement de données conforme au second mode de réalisation de la présente invention, cet appareil de traitement de données étant obtenu en simplifiant celui du premier mode de réali- sation; et La figure 6 est un schéma synoptique de circuit montrant la configuration d'un module de traitement de données universel conforme au troisième mode de réalisation, ce module de traitement de don- nées étant applicable non seulement au traitement de données qui est effectué par les appareils représentés sur les figures 1 et 5, mais également à d'autres sortes de traitement de données. On va maintenant décrire le premier mode de réalisation de l'invention en se référant aux dessins annexés On décrira ce mode de réalisation en consi- dérant le cas dans lequel des données de message sont soumises à un traitement de compression/cryptage par l'emploi d'une fonction de hachage utilisant un mode CBC perfectionné et généralisé. La figure 1 montre l'appareil de traitement de données qui est employé dans ce mode de réalisa- tion En se référant à la figure 1, on note qu'une section de traitement de blocs 11 divise des données de message d'entrée B en un ensemble de blocs, et les blocs de données résultants B (i = 1, 2,, k+ 1, k+ 2,, m) sont émis en parallèle à des intervalles de temps appropriés Chaque bloc de données Bl est appliqué à un circuit correspondant parmi des circuits de traitement de cryptage 12 i. Les circuits de traitement de cryptage 12. i ont la même configuration, et un paramètre initial I O (qui peut être utilisé à titre de clé) est déterminé pour le premier, 121, des circuits de traitement de cryptage 12 Chacun des circuits de traitement de cryptage 12 restants reçoit un bloc de données Bi, et il le crypte sur la base du résultat de traitement Cil$ (lorsque i=l, C O o = IO 0) du circuit de traitement précédent Le résultat du traitement du circuit de traitement final 12 est constitué par les données m comprimées et cryptées correspondant aux données de message B. La figure 2 montre les configurations de circuit des (k+l)-ième et (k+ 2)-ième circuits de trai- tement de cryptage 12 mentionnés ci-dessus En se référant à la figure 2, on note que le (k+l)-ième bloc de données est appliqué à un additionneur 1 k+l Cet additionneur additionne le k-ième résultat de traite- ment Ck* (lorsque k = 0, C O $ = I 0) au bloc de données Bk+ 1 Le résultat de cette addition est appliqué à un processeur de cryptage 2 k+ 1 Le processeur de cryptage 2 k+ 1 sélectionne l'un des N algorithmes de fonction de cryptage préenregistrés (que l'on appelle ci-après des "algorithmes de cryptage" ou simplement des "algorith- mes") A O à A Nl, sous la dépendance d'un signal de sélection Sk qui est fourni par une k-ième unité de sélection d'algorithme, et il crypte le résultat de l'addition de l'additionneur lk+l, en utilisant l'algorithme sélectionné. Le résultat de traitement Ck+l du processeur de cryptage 2 k+l est appliqué à la fois à un proces- seur de masquage 3 k+ 1 et à une unité de commande de k 10 masquage 4 k+ 1. Sous l'effet de la réception du résultat de traitement Ck+ 1, l'unité de commande de masquage 4 k+ 1 identifie l'historique de l'algorithme de cryptage qu'exécute le processeur de cryptage 2 k+, et elle k+li enregistre les données qui sont obtenues par l'iden- tification Ensuite, l'unité de commande de masquage 4 k+ 1 détermine une valeur de commande (, bk, bk+l) sous la dépendance de l'intégralité ou d'une partie de l'algorithme de cryptage, et elle applique la valeur de commande déterminée au processeur de masquage 3 k+ 1. Du fait que l'historique de l'algorithme de cryptage qu'exécute le processeur de cryptage 2 k+l peut être enregistré sous la forme de données dans le processeur de cryptage 2 k+l, l'unité de commande de masquage 4 k+ 1 peut recevoir directement les données d'historique à partir du processeur de cryptage 2 k+l. Le processeur de masquage 3 k+ 1 effectue un traitement de masquage portant sur le résultat de traitement Ck+ 1 du processeur de cryptage 2 k+l,' de façon que le résultat de traitement Ck+l ne puisse pas être lu ou présumé par la suite Plus précisément, l'intégralité ou une partie du résultat de traitement Ck+ 1 est remplacée par d'autres valeurs, sur la base de la valeur de commande (, bk, bk+l) qui est four- nie par l'unité de commande de masquage 4 k+ 1 Le résultat Ck+l du traitement de masquage est appliqué au (k+ 2)-ième additionneur lk+ 2. Le résultat de traitement Ck+ 1 du processeur de cryptage 2 k+ 1 est également appliqué à une unité de commande de sélection d'algorithme 5 k+ 1 Cette unité de commande 5 k+ 1 détermine un algorithme de cryptage qui doit être exécuté par un (k+ 2)-ième processeur de cryptage 2 k+ 2, en utilisant un procédé statistique qui dépend à la fois de l'algorithme de cryptage Ak qu'exécute le processeur de cryptage 2 k+ l, et des valeurs de l'intégralité ou d'une partie du résultat de traitement Ck+ 1 qui est obtenu par l'exécution de l'algorithme de cryptage Ak Un signal de sélection Sk+l, représentant l'algorithme de cryptage qui est déterminé, est appliqué au (k+ 2)-ième processeur de cryptage 2 k+ 2. Exactement comme le (k+ 1)-ième circuit de traitement de cryptage, le (k+ 2)ième circuit de trai- tement de cryptage, qui est destiné à effectuer le cryptage du bloc de données Bk+ 2, est constitué par un additionneur lk+ 2, un processeur de cryptage 2 k+ 2, un processeur de masquage 3 k+ 2 ' une unité de commande de masquage 4 k+ 2 ' et une unité de commande de sélection d'algorithme 5 k+ 2 Le fonctionnement de ces composants constitutifs est similaire à celui des composants constitutifs du (k+ l)ième circuit de traitement de cryptage. La configuration et le fonctionnement de chacun des autres circuits de traitement de cryptage (c'est-à-dire les circuits de traitement allant du premier au i-ième, et les circuits de traitement allant du (k+ 3)-ième au m-ième), sont similaires à ceux mentionnés ci-dessus Par conséquent, les confi- gurations des autres circuits de traitement de cryp- tage ne sont pas représentées dans les dessins, et leur fonctionnement ne sera pas envisagé ici On notera que du fait que chaque circuit de traitement de cryptage traite les données de sortie de son circuit de traitement de cryptage précédent, la section de traitement de blocs 11 doit fournir des blocs de don- nées Bl aux circuits de traitement de cryptage respec- tifs avec des retards appropriés. On va maintenant expliquer les raisons pour lesquelles on peut éviter une collision de données dans l'appareil de traitement de données envisagé ci- dessus. Les procédures de compression/cryptage de données de message sont définies par les relations suivantes: Ck+ 1 = Ak(Ck + Bk+l) ( 1) Ak+ 1 = g(Ak, lCk+lln) ( 2) Ck+ 1 =Ck+ 1 + lbk-r+ 2 bk bk+ll ( 3) avec O _ k _ (m-1). Si l'on suppose que 1 4 i _ (n+ o) et r(n+ î)=L, on obtient les relations suivantes: lbkr+ 2 * bk bk+ 1 l = lbkr+ 2 (i) bk() bk+ (i) bk+l( 4)l b ( __ A) ( 5) k+l(i) = P( k+l: Ak k+ 1) ( 5) Lorsque k= O dans ces relations, A O repré- sente un algorithme initial désigné de façon arbi- traire, et C O représente un vecteur initial approprié (paramètre initial) I 0. On va maintenant expliquer la signification de chacune des relations ( 1) ( 5) ci-dessus. Si Ak désigne l'algorithme de cryptage qu'exécute le (k+ 1)-ième circuit de traitement de cryptage, des données cryptées Ck+ 1 sont obtenues à partir du résultat de traitement Ck du k-ième cir- cuit de traitement de cryptage et du bloc de données présent Bk+l, par l'utilisation de l'algorithme de cryptage Ak (relation ( 1)). Ensuite, un algorithme de cryptage Ak+ 1 à exécuter dans le circuit de traitement de cryptage suivant (c'est-à-dire le (k+ 2)-ième circuit de traite- ment), est déterminé sur la base à la fois de N bits lCk+lln qui sont inclus dans les données cryptées Ck+ 1 (par exemple les N bits inférieurs des données cryp- tées) et de l'algorithme de cryptage Ak qui est exécuté au moment présent (relation ( 2)). L'algorithme de cryptage Ak+ qui doit être exécuté dans le circuit de traitement de cryptage suivant peut être déterminé par divers procédés L'un des procédés est un procédé dans lequel on utilise les n bits des données cryptées Ck+l et l'algorithme de cryptage présent Ak, de façon que les changements temporels dans l'algorithme de cryptage forment un processus de Markov à états finis et à instants discrets. Pour mettre en oeuvre ce procédé, on peut efficacement utiliser un diagramme du treillis des codes convolutifs ayant un taux d'émission de n/(n+ ). Le diagramme du treillis est l'une des représentations de codes convolutifs et c'est une sorte de diagramme de transitions d'états Le diagramme du treillis présente la caractéristique qui consiste en ce que tous les états sont représentés en relation avec le temps. La figure 3 est un schéma synoptique de circuit montrant la configuration d'un codeur convo- lutif de type général, et la figure 4 est undiagramme il du treillis correspondant au fonctionnement du codeur convolutif Dans le codeur convolutif qui est repré- senté sur les figures 3 et 4, un signal de sortie codé de 2 bits est produit sous l'effet d'un signal d'entrée d'information de 1 bit, ce qui fait que le taux d'émission du codage est de 1/2. En se référant à la figure 3, on note qu'un signal d'entrée d'information à 1 bit est décalé séquentiellement par des registres à décalage à 1 bit SR 1 et SR 2 Le signal d'entrée d'information à 1 bit est additionné au signal de sortie du registre à décalage SR 1 par un additionneur AD 1, pour obtenir ainsi un signal y 1 De plus, le signal d'entrée d'information à 1 bit est additionné au signal de sortie du registre à décalage SR 2 par un additionneur AD 2 ' et le signal résultant est additionné au signal de sortie du registre SR 1 par un additionneur AD 3, pour obtenir ainsi un signal Y 2 Les signaux y 1 et Y 2 sont émis alternativement au moyen d'un commutateur SW. Sur la figure 4, les états des registres SR et SR 2 sont représentés dans la direction verticale, et le temps k est représenté dans la direction hori- zontale Lorsqu'un bit d'information " 1 " est appliqué en entrée dans l'état dans lequel k= O et les contenus des registres SR 1 et SR 2 sont ( 00), les contenus des registres SR 1 et SR 2 deviennent " 01 " lorsque k= 1. Cette transition d'états est indiquée par les lignes en pointillés. Sur la figure 4, un signal de sortie de codeur ( 11) est attribué à des segments de lignes correspondant aux transitions d'états Les segments de lignes sont appelés de façon générale "branches", et le signal de sortie de codeur ( 11) est souvent appelé "code de branche". Lorsqu'un bit d'information " O " est appliqué en entrée, les contenus des registres SR 1 et SR 2 deviennent ( 00) Cette transition d'états est indiquée par les lignes continues Les signaux de sortie de codeur associés sont attribués aux branches de transitions correspondantes. Dans la représentation du diagramme du treillis, une série de branches constituent ce que l'on appelle un "chemin", et chacun des chemins s'étendant du côté gauche vers le côté droit du diagramme du treillis correspond à un code. Les codes convolutifs mentionnés ci-dessus et leur diagramme du treillis sont décrits en détail par A J Viterbi, dans Convolutional Codes and Their Performance in Communication Systems, IEEE Trans. Commun Technol, vol COM-19, N O 5, pages 751-772, 1971. Lorsque l'état Ak dans le diagramme du treillis change ensuite pour devenir le nouvel état Ak+l' sous l'effet de l'application de N bits (bits d'information) en entrée, un nouveau code de branche qui est représenté par: bk+ (i) ( 1 i n+ a est produit (relation ( 5)) En utilisant l'historique passé des codes de branches, comprenant ce nouveau code de branche (relation ( 4)), on remplace l'inté- gralité (ou une partie) des valeurs de l'historique par d'autres valeurs, sous la dépendance de l'intégra- lité (ou d'une partie) de l'historique des algorith- mes, pour cacher ainsi la valeur de Ck+l On exprime par Ck+l# (relation 3)) le résultat qui est ainsi obtenu. On va maintenant décrire les conditions dans lesquelles une collision de données se produit Compte tenu des définitions, on comprend qu'une collision de données se produit lorsque les valeurs de hachage Cm m et (Cm') de deux articles de données de message différents M et M' coïncident mutuellement Par consé- quent, dans ce qui suit, on décrira la condition dans laquelle les valeurs de hachage coïncident mutuelle- ment. Les valeurs de hachage Cm 4 et (Cm')> des différents articles de données de message M et M' sont représentées par: C = Cm + bm-r+ 1 bm-r+ 2 bm (C 'm) = Cm' + Lbm-r+l bm-r+ 2 lm b' Par conséquent, les deux valeurs de hachage deviennent mutuellement égales lorsque les deux conditions suivantes sont satisfaites: C =C' m m lbm-r+l bm-r+ 2 b' bml =m-r+l bm-r+ 2 bm' En ayant à l'esprit ces dernières relations, on détermine initialement les conditions suivantes: A = A ' m-r m-r C__+ Bm+ = (C ') + Bmri ( 6) Cm-r m-r+l (Cm- r + Bm-r+l ( 6) Dans ce cas, on obtient la formule suivante, à cause de l'hypothèse: Cr A (C +B Cm-r+l Amr (Cm-r m-r+l = Am-r (Cm-r m-r+ 1 i = Cm-r+l m-r+l Par conséquent, la relation suivante est satisfaite: lCm-r+lln = lCm-r+l un Il en résulte que l'on obtient les deux relations suivantes: A =A m-r+l m-r+l bm-r+ 1 = bmr+ 1 Ensuite, on suppose que la condition indi- quée ci-dessous est satisfaite: C +B =(c 'YC' B ( 7) m-r+ 1 m-r+ 2 m-r+ 1) m-r+ 2 Dans ce cas, on obtient la relation: Cm-r+ 2 Am-r+ 1 (Cm-r+l m-r+ 2 M_ r+l m-r+l m-r+ 2 =A ' r ') + B ' m r+l ( Cm-r+l Sm-r+ 2 i Cm-r+ 2 Il en résulte que la relation suivante est satisfaite: lCm-r+ 2 ln = lCm-r+ 2 In Par conséquent, on obtient les deux rela- tions suivantes: A= A m-r+ 2 m-r+ 2 B =b m-r+ 2 m-r+ 2 Après avoir répété des procédures similai- res, on suppose l'existence de la condition ci- dessous: C + B = (C m-1 ') + Bm' m-1 m m-m ( 8) Dans ce cas, on obtient la relation sui- vante: Cm = Am_ 1 Cm-1 Bm) m i ( 1 B = Am_ 1 {(Cm-1) + Bm = C ' m Il en résulte que la relation suivante est satisfaite: lCmln = lCm'ln Par conséquent, on obtient les deux rela- tions suivantes: A = A m m b = b ' m m A ce moment, la condition qui est représen- tée par la relation suivante est vérifiée: lbm-r+l bm-r+ 2 ' bml lbm- r+l bm-r+ 2 '' ' bm Il en résulte que les relations suivantes sont satisfaites: Cm = C + lbmr+ 1 bm-r+ 2 m m '' (C ')+ = C ' m m + lbmr+ 1 bmr+ 2 ' bm' l ±r+ 1 bm-r+ 2 m D'après ces relations, on obtient: Cm = (Cm')4 m m Compte tenu de ce qui précède, on comprend que les conditions dans lesquelles une collision de données se produit sont représentées par les quatre conditions suivantes: A =A ' ( 11) m-r m-r C_ + Bm-r = (C ') + B ( 12) m-r+l m-r+ m- 2 m-r+ 1 B 2 l + =(C + ' ( 13) Cm-r+l Bm-r+ 2 (Cm-r+l) m-r+ 2 m C + Bm = (Cm ') + B ' (lr) m-1 M-1 m On va considérer la condition pour que la relation ( 11) soit satisfaite Du fait qu'un algorith- me change conformément à la structure de treillis d'une longueur limitée (v 0 = nv), la condition pour que la relation ( 1) soit satisfaite correspond au moment auquel les trois relations ( 21) ( 2 v) suivan- tes sont satisfaites simultanément: lc 1 =l 1 l( 21) lCm-r-v+lln = lCm-r-v+l'ln ( 21) lCm-r-v+ 2 ln = lCm-r-v+ 2 'ln ( 22) lCm-rln = lCm-r N ( 2 v) Plus précisément: lA (C + B lAm-r-v (Cm-r-v m r-v+l n lA ' ( 31) = lAm-r-v {(Cm-r-v)+ + Bm-r-v+l lln ( 31) lA 1 ( + lAmr-v+l (Cm-r-v+l Bm-r-v+ 2) n = lAm-r-v+li(Cm-r-vl 4)+ B lin ( 32) _ Amr-v+li(Cm-r-v+ll m-r-v+ 2}I lA -r (Cm-r-1 + Bm- r)ln = lAi ' (C #-)+ B illn ( 3 v) m-r 1m} m In En supposant que les valeurs jusqu'aux valeurs de Am-r-v et (Cmrv') sont des valeurs connues, on va décrire la manière selon laquelle on détermine les valeurs de B ' à B ' qui sont m-r-v+i m-r des facteurs de M'. En premier lieu, on détermine la valeur de Bm rv+ 1 l de manière à satisfaire la relation ( 31). (Il faut noter que l'on ne peut pas déterminer la valeur de Bmrv+') sans se référer aux autres valeurs) Lorsqu'on a déterminé la valeur de Bmrv+ 1 ' on détermine des valeurs dans l'ordre C ' m-r-v+l - Am-r-v+ (Cm-r-v+ '), conformément à la relation suivante: Cm-r-v+ l'= Am-r-v t (Cm-r-v) + B m-r-v+l Amrv+ = g(Am-r-v C m-r-v+ l n Am-r-v+ 1-) Cm-r-v+ 1 +l + l bî'l La partie " "qui est incluse dans bm-r-v+ 1 'lest plus précisément l b mrv+' b 'l, et c'est une valeur qui est * m-r-v+ 1 m-r-v' déterminée sous la dépendance de l'historique passé de l'algorithme " -* Amrv 1 Amrv "' Du fait que * m-r-v-i m-r-v la valeur qui est représentée par (C ' _ b ' b, (Cm- r-v m-r-vC + l bmr-v-it bm-r-v est une valeur connue à cause de l'hypothèse, on peut considérer que la valeur de la partie " " qui est incluse dans l bmrv+ 1 'l est déterminée Par conséquent, si l'on suppose que les valeurs jusqu'à la valeur de (Cmrv) sont connues, on peut consi- m-r-v dérer que la valeur de (C r v+ 1 ') est déterminée sur m- r-v+li la base seulement de Bmrv+l Après avoir répété des procédures similaires, on détermine la valeur de B m-r de manière à satisfaire la relation ( 3 v) Il en résulte que l'on détermine des valeurs dans l'ordre C ' - A ' (C) m-r m-r M-r Il faut noter que la valeur de (C) m-r dépend de la valeur de Bmrv+ 1 ' qui est déterminée au m-r-v+i début. Lorsque les valeurs jusqu'à la valeur de (Cmr O) ont été déterminées, on peut considérer les relations ( 11) à (lr) qui sont indiquées ci-dessus. Ainsi, si l'on suppose que les valeurs jusqu'aux valeurs de A ' et (C ')+ sont connues, les m-r-v m-r-v relations ci-dessous sont satisfaites et une collision de données se produit: lAM (C + B 1)l _Am-r-v (Cm-r-v Bm-r-v+l)ln lA B ( 41) = lAm-r-v' {(Cm-r-v') + Bm-r-v+lln ( 41) lAml (Crv +B 2 Am-r-v+l (Cm-r-v+l + Bm-r-v+ 2 n = lAm '(Cî)+B ( 42) =lAm-r-v+l l(Cm-r-v+l) + Bm-r-v+ 2 iln lA 1 (C 1 *+ B)l Am-r 1 (Cm-r-1 nm-rn = Am-r-1 (Cm-r-l) + Bm-r ln ( 4 v) C + B = (C_) + B ' ( 51) Cm-r m-r+l (Cm-r m-r+l C * + B = (C B ' ( 52) m-r+l m-r+ 2 m-r+l) Bm-r + 2 Cm-1 + Bm = (CM ' +B ( 5 r) Cm-i m (m-i B m Le fait que ces relations soient satisfaites est l'une des conditions suffisantes pour qu'une collision de données se produise En comparaison avec le mode de cryptage de données CBC, la condition indiquée ci-dessus dans laquelle une collision de données se produit est très stricte Le nombre des relations qui représentent la condition est (v+r), et il faut noter que la condition est exprimée non seule- ment par le paramètre v qui fixe le nombre d'algorith- mes de cryptage, mais également par le paramètre r qui dépend de la longueur d'historique de l'algorithme de cryptage, liée au masquage des données cryptées En d'autres termes, les avantages de la condition indi- quée ci-dessus sont supérieurs aux avantages que l'on obtient en utilisant simplement un certain nombre d'algorithmes de cryptage. Comme on peut le voir d'après les descrip- tions détaillées faites ci-dessus, la présente inven- tion comporte deux caractéristiques essentielles. Premièrement, un ensemble d'algorithmes de cryptage qui sont utilisés sélectivement par les circuits de traitement de cryptage ne font pas l'objet d'une commutation de l'un à un autre sous l'effet d'un signal de commande déterministe; la commutation de l'un à un autre a lieu conformément à un procédé statistique qui dépend du résultat du circuit de traitement de cryptage précédent Secondement, la valeur qui est obtenue par le traitement de cryptage au moment présent est cachée parl'utilisation d'une ou de plusieurs valeurs qui dépendent de l'intégralité ou d'une partie de l'historique passé d'algorithmes de cryptage, avant d'être appliquée au circuit de traite- ment de cryptage suivant, pour ne laisser ainsi aucune donnée pouvant suggérer la commande sous l'effet de laquelle un algorithme de cryptage est changé. Du fait de ces caractéristiques, il est pratiquement impossible pour un tiers de connaître une série d'algorithmes de cryptage qui sont réellement utilisés dans le traitement de hachage De plus, du fait que des données cryptées sont cachées par l'utilisation d'une ou de plusieurs valeurs qui dépen- dent de l'intégralité ou de la totalité de l'histori- que passé des algorithmes de cryptage, il est très difficile d'élaborer des données de message dont la valeur de hachage coïncide avec celle des données de message qui sont cryptées conformément à l'invention. Dans le mode de réalisation qui est envisagé ci-dessus, on peut grouper le circuit de traitement de cryptage en blocs tels que chaque bloc soit constitué par un module de traitement de cryptage Si, dans ce cas, chaque module de traitement de cryptage est conçu de façon à exécuter à la fois la détermination d'un nouvel algorithme de cryptage à utiliser dans le module suivant, et le masquage des données cryptées par l'algorithme de cryptage qui est utilisé au moment présent, l'appareil qui contient de tels modules peut garantir une excellente fiabilité concernant la sécurité des données. Du fait que les circuits de traitement de cryptage ont la même configuration, l'additionneur 1, le processeur de cryptage 2, le processeur de masquage 3, l'unité de commande de masquage 4 et l'unité de commande de sélection d'algorithme 5 d'un circuit de traitement peuvent être réalisés sous la forme d'un module, et ce module peut être utilisé de façon répétée pour des blocs de données Bl à Bmr comme représenté sur la figure 5 Si on effectue ceci, l'appareil complet peut être considérablement simpli- fié. Dans le cas qui est représenté sur la figure , la section de traitement de blocs Il divise des données de message B en blocs de données B 1 à Bme et elle applique les blocs de données Bl à Bm à l'addi- tionneur 1, dans un mode de répartition dans le temps. Le résultat de traitement C # du processeur de masquage 3 est renvoyé vers l'additionneur 1, et un signal de sélection S qui est produit par l'unité de commande de sélection d'algorithme 5 est appliqué au processeur de cryptage 2, de façon à déterminer l'algorithme de cryptage qui doit être utilisé par la suite. Il existe en outre une unité de commande de sortie 6 Lorsque le processeur de masquage 3 produit le signal de sortie de traitement C qui correspond m au dernier bloc de données Bmi, l'unité de commande de sortie 6 émet le signal de sortie de traitement Cm à m titre de résultat de traitement comprimé et crypté. Avec ce traitement de données, l'appareil peut avoir une configuration très simple et on peut néanmoins obtenir un fonctionnement similaire à celui du cas qui est représenté sur la figure 1. La technique pour traiter des données en utilisant sélectivement un ensemble d'algorithmes de fonctions n'est pas limitée au traitement de cryptage décrit ci-dessus; elle est applicable à diverses sortes de conversion de données La figure 6 montre un exemple d'un module de traitement de données universel qui peut être appliqué non seulement à l'appareil de traitement de données qui est représenté sur les figures 1 et 5, mais également à d'autres types de processeurs de données. En se référant à la figure 6, on note qu'un processeur de fonction 21 conserve en mémoire N algo- rithmes de fonction F O à FN-l' L'algorithme de fonc- tion qu'exécute le processeur de fonction 21 est déterminé sous la dépendance d'un signal de sélection qui est fourni par une unité de commande de sélection d'algorithme 22 Lorsqu'un algorithme de fonction Fk est sélectionné, le processeur de fonction 21 accom- plit le calcul Fk(X)=Y sur des données d'entrée X. L'unité de commande de sélection d'algorith- me de fonction 22 reçoit le résultat du calcul F k(X)=Y qui est effectué par le processeur de fonction 21 Sur la base de l'intégralité ou d'une partie du résultat reçu, l'unité de commande de sélection d'algorithme de fonction 22 détermine l'algorithme de fonction Fk+l qui doit ensuite être exécuté par le processeur de fonction 21, et elle applique un signal de sélection S au processeur de fonction 21. * Comme décrit ci-dessus, l'algorithme de fonction peut être changé pour passer de Fk à Fk+l selon divers procédés, et l'un de ces procédés est un procédé statistique dans lequel on considère que les changements temporels dans l'algorithme de cryptage forment un processus de Markov à états finis et à instants discrets Il va sans dire que l'algorithme de fonction peut être changé de façon déterministe sur la base du résultat de calcul Y. Conformément à la configuration ci-dessus, l'algorithme de fonction qui doit être utilisé à la suite est déterminé sur la base du résultat du calcul qu'effectue le processeur de fonction 21, et ce processus de détermination est accompli dans le module Par conséquent, un tiers ne peut pas compren- dre l'algorithme qui est exécuté à chaque stade du traitement. Comme l'indiquent les lignes en pointillés sur la figure 6, l'algorithme de fonction peut être changé sous la dépendance de données X' qui sont introduites de façon externe Dans ce cas, l'unité de commande de sélection d'algorithme 22 compare le résultat de calcul Fk(X) du processeur de fonction 21 avec les données X' qui sont introduites de façon externe, et elle détermine l'algorithme de fonction suivant Fk+ l sur la base de la comparaison Dans cette version modifiée également, l'algorithme de fonction peut être changé de façon déterministe ou statistique. Lorsqu'on met en oeuvre la forme modifiée ci-dessus, on dispose du mode de commande suivant. Ainsi, lorsque la comparaison montre que Fk(X) est égal à X', l'algorithme présent F k est maintenu inchangé, et lorsque la comparaison montre que Fk(X) diffère de X', l'algorithme présent Fk est remplacé par un autre algorithme Fk+l. Conformément à la configuration ci-dessus, l'algorithme de fonction n'est pas désigné directement par les données X' qui sont introduites de façon externe Par conséquent, un tiers ne peut pas connaî- tre le traitement qui est effectué à l'intérieur de l'appareil, même lorsque l'algorithme de fonction est sélectionné ou commandé de façon externe. Dans le mode de réalisation qui est repré- senté sur la figure 6, le résultat du calcul Fk(X)=Y qu'effectue le processeur de fonction 21 n'est pas présenté inchangé en sortie En d'autres termes, il est masqué dans un convertisseur de sortie 23, en étant remplacé par d'autres valeurs, avant d'être présenté en sortie Ceci garantit donc une fiabilité encore plus élevée en ce qui concerne la sécurité des données. On dispose de divers procédés de masquage de données dans le cadre de l'invention Dans le cas o des changements temporels dans l'algorithme forment un processus de Markov à états finis et à instants discrets, on peut appliquer un procédé qui utilise une valeur B (j algorithmes qui ont été exécutés jusqu'à présent. Ainsi, la valeur Y est changée par l'utilisation de la valeur B, de la façon suivante: Y' = Y+B (j l k). Dans le mode de réalisation qui est repré- senté sur la figure 6, une unité de commande de masquage 24 identifie l'historique des algorithmes passés, sur la base du résultat de calcul Y du proces- seur de fonction 21, et elle calcule une valeur B qui dépend de l'historique Cette valeur B est appliquée au convertisseur de sortie 23, de façon à effectuer le traitement de masquage mentionné ci-dessus. Il va sans dire que la conversion de sortie ne doit pas obligatoirement être effectuée par l'unité de commande de masquage 24 Elle peut être effectuée sur la base de données fixées qui sont enregistrées dans le convertisseur de sortie 23 De plus, si on fait en sorte que le processeur de fonction 21 enre- gistre des données concernant l'historique de l'algo- rithme de fonction, l'unité de commande de masquage 24 peut recevoir directement les données d'historique à partir du processeur de fonction 21, comme indiqué par les lignes en pointillés sur la figure 6. On a décrit le mode de réalisation ci-dessus en considérant le cas dans lequel les algorithmes de fonction qui sont enregistrés dans le processeur de fonction 21 sont mutuellement indépendants Ceci ne limite cependant en rien la présente invention Par exemple, un algorithme de fonction peut être une combinaison d'une partie d'algorithme fondamental F et d'un ensemble de parties de sous-algorithmes G O à GN-1 ' et on peut changer l'algorithme complet en agis- sant seulement sur les parties de sous-algorithmes G O à GN 1 Si on effectue ceci, il n'est pas nécessaire que le processeur de fonction 21 ait une grande capacité de mémoire pour enregistrer l'algorithme de fonction, ce qui permet d'atteindre aisément une réduction de la taille du circuit, comme dans le cas o le module est fabriqué sous la forme d'un circuit intégré complexe. Dans le mode de réalisation ci-dessus, le processeur de fonction 21 a une seule borne d'entrée. L'invention n'est cependant pas limitée à ce cas. Comme l'indique la ligne en pointillés sur la figure 6, un signal de sortie du convertisseur de sortie 23 peut être renvoyé vers le processeur de fonction 21. Il n'est pas obligatoire que le module entier soit réalisé sous la forme d'un circuit intégré complexe En d'autres termes, le processeur de fonc- tion 21 peut être divisé en une section d'enregistre- ment d'algorithmes et une section de traitement arithmétique Dans ce cas, un algorithme est lu dans la section d'enregistrement d'algorithmes sous la dépendance d'un signal de commande de sélection qui est fourni par l'unité de commande de sélection d'algorithme 22, et l'algorithme qui est lu est appli- qué à la section de traitement arithmétique Si la section d'enregistrement d'algorithmes est conçue de façon que l'on puisse faire varier les algorithmes qui sont enregistrés à l'intéreur, ou de façon qu'on puisse lui ajouter un nouvel algorithme, alors la fiabilité concernant la sécurité des données peut être encore augmentée, et le domaine d'application du mode de réalisation peut être élargi. Lorsque le module de traitement de données qui est mentionné ci-dessus est appliqué à l'appareil de traitement de données représenté sur la figure 5, on peut utiliser le processeur de fonction 21 pour le processeur de cryptage 2; on peut utiliser l'unité de commande de sélection d'algorithme 22 pour l'unité de commande de sélection d'algorithme 5; on peut utiliser le convertisseur de sortie 23 pour le processeur de masquage 3; et on peut utiliser l'unité de commande de masquage 24 pour l'unité de commande de masquage 4 Le module de traitement de données est également applica- ble d'une manière similaire à l'appareil de traitement de données qui est représenté sur la figure 1. La présente invention n'est pas limitée aux modes de réalisation qui sont décrits ci-dessus Par exemple, les algorithmes de fonction ne sont pas limités aux algorithmes de cryptage qui sont mention- nés ci-dessus; il peut s'agir d'algorithmes qui sont utilisés pour d'autres sortes de conversion de don- nées. Il va de soi que de nombreuses modifications peuvent être apportées au dispositif et au procédé décrits et représentés, sans sortir du cadre de l'invention. REVENDITCAT IONS 1 Appareil de traitement de données, caractérisé en ce qu'il comprend une section de traitement de blocs ( 11) qui est destinée à diviser des données de message (B) en un ensemble de blocs, de façon à obtenir un ensemble de blocs de données (B i (i = 1 à m)); et un ensemble de sections de traitement de conversion de données ( 12 i) qui sont établies en correspondance avec les blocs de données (B i), chacune d'elles conservant en mémoire un ensemble d'algorith- mes de conversion de données, une première des sec- tions de traitement de conversion de données sélec- tionnant l'un (A 1) des algorithmes de conversion de données sous la dépendance d'un signal de commande de sélection initial ( 50) et chacune des sections de traitement de conversion de données restantes sélec- tionnant l'un (A î-1 des algorithmes de conversion de données sous la dépendance d'un signal de commande de sélection (S 1) qui est fourni par une section de traitement de conversion de données précédente (B i-), chacune des sections de traitement de conversion de données ( 12 i) effectuant un traitement de conversion de données sur le bloc de données correspondant (B i) sur la base de l'algorithme de conversion de données sélectionné, et générant un signal de commande de sélection qui est utilisé pour le traitement d'un bloc de données suivant (B î+ 1 sur la base du traitement de conversion de données. 2 Appareil de traitement de données selon la revendication 1, caractérisé-en ce que chacune des sections de traitement de conversion de données ( 12) comprend un processeur d'entrée ( 1 i), un proces- seur d'exécution d'algorithme ( 2 i) et une unité de commande de sélection d'algorithme ( 5 f); le processeur d'entrée (l i) ajoute à son bloc de données corres- pondant (B) des données de traitement (C 1) d'une section de traitement de conversion de données précé- dente ( 12 i 1); le processeur d'exécution d'algorithme ( 2 i) contient un ensemble d'algorithmes de fonction qui ont été enregistrés préalablement dans ce proces- seur, il combine au moins une partie des algorithmes de fonction sous la dépendance du signal de commande de sélection (S i 1), pour produire ainsi un algorithme de conversion de données (A i 1), et il accomplit un traitement de conversion de données sur des données qui sont obtenues par le processeur d'entrée, sur la base de l'algorithme de conversion de données (Ai 1); et l'unité de commande de sélection d'algorithme ( 5 i) produit un signal de commande de sélection (Si) sur la base d'un résultat de traitement (Ci) du processeur d'exécution d'algorithme ( 2 i), ce signal de commande (S.) étant destiné à commander la sélection d'un algorithme de conversion de données (Ai) qui doit être exécuté par un processeur d'exécution d'algorithme ( 2 +) d'une section de traitement de conversion de données suivante ( 12 i+î). 3 Appareil de traitement de données selon la revendication 2, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 5 i) commande la sélection de l'algorithme de conversion de données (Ai) qui doit être exécuté par le processeur d'exécu- tion d'algorithme ( 2 i+l) de la section de traitement de conversion de données suivante ( 12 i+), de façon que des changements temporels dans l'algorithme de conversion de données forment un processus de Markov à états finis et à instants discrets. 4 Appareil de traitement de données selon la revendication 2,- caractérisé en ce que: chacune des sections de traitement de conversion de données ( 12 i) comprend en outre un processeur de masquage ( 3.); et ce processeur de masquage ( 3) masque au moins une partie du résultat de traitement (Ci) du processeur d'exécution d'algorithme ( 2 i), et il fournit en sortie des données de traitement masquées (Ci#), à titre de données de traitement de la section de traitement de conversion de données correspondante ( 12 i). Appareil de traitement de données selon la revendication 4, caractérisé en ce que: chacune des sections de traitement de conversion de données ( 12 i) comprend en outre une unité de commande de masquage ( 4 i); et cette unité de commande de masquage ( 4 i) actualise une information d'historique concernant l'algorithme de conversion de données (Ai) qui est exécuté par le processeur d'exécution d'algorithme ( 2 i), elle enregistre une information d'historique actualisée, et elle commande le traitement de masquage qu'effectue le processeur de masquage ( 3 6 Appareil de traitement de données selon la revendication 5, caractérisé en ce que: l'unité de commande de sélection d'algorithme ( 5 i) commande la sélection de l'algorithme de conversion de données (Ai) qui doit être exécuté par le processeur d'exécu- tion d'algorithme ( 2 i+l) de la section de traitement de conversion de données suivante ( 12 i+l), sur la base d'un diagramme du treillis de codes convolutifs ayant un taux d'émission de codage prédéterminé; et l'unité de commande de masquage ( 4 i) actualise l'information d'historique concernant des codes de branches de l'algorithme de conversion de données (Ai) qui sont représentés sur le diagramme du treillis, elle enre- gistre une information d'historique actualisée, et elle commande le traitement de masquage qu'effectue le processeur de masquage ( 3 i) sur la base d'au moins une partie des valeurs de l'information d'historique. 7 Appareil de traitement de données selon la revendication 1, caractérisé en ce que les algo- rithmes de conversion de données qui sont enregistrés dans les sections de traitement de conversion de don- nées ( 12 i) sont utilisés pour le cryptage de données. 8 Appareil de traitement de données selon la revendication 1, caractérisé en ce que les sections de traitement de conversion de données ( 12 i), au moins, sont réalisées sous la forme de modules, pour empêcher ainsi que le traitement qui est effectué dans les sections de traitement de conversion de données ( 12 i) ne soit connu à l'extérieur. 9 Appareil de traitement de données, carac- térisé en ce qu'il comprend: une section de traite- ment de blocs ( 11) qui est destinée à diviser des données de message (B) en un ensemble de blocs de données (Bi (i = 1 à m)) et à fournir les blocs de données en sortie dans un mode de répartition dans le temps; et une section de traitement de conversion de données ( 12) pour sélectionner l'un (A 1) d'un ensem- ble d'algorithmes de conversion de données qui ont été enregistrés préalablement dans cette section, sous la dépendance d'un signal de commande de sélection (S > 1)' pour accomplir séquentiellement un traitement de conversion de données portant sur les blocs de données (Bi) qui sont fournis par la section de traitement de blocs ( 11), sur la base d'un algorithme de conversion de données sélectionné (Ai), et pour générer un signal de commande de sélection (Si), qui est utilisé pour sélectionner un algorithme pour effectuer une conversion de données portant sur un bloc de données suivant (B i+), sur la base du traitement de conver- sion de données. Appareil de traitement de données selon la revendication 9, caractérisé en ce que: la section de traitement de conversion de données ( 12) comprend un processeur d'entrée ( 1), un processeur d'exécution d'algorithme ( 2) et une unité de commande de sélection d'algorithme ( 5); le processeur d'entrée ( 1) ajoute à un bloc de données présent (Bi) les dernièresdonnées de traitement de conversion de données (C 1); le processeur d'exécution d'algorithme ( 2), dans lequel un ensemble d'algorithmes de fonction ont été enregis- trés préalablement, combine au moins une partie des algorithmes de fonction sous la dépendance du signal de commande de sélection (Si), pour produire ainsi un algorithme de conversion de données (Ai), et il accomplit un traitement de conversion de données portant sur des données qui sont obtenues par le processeur d'entrée ( 1), sur la base de l'algorithme de conversion de données (A 1); et l'unité de com- mande de sélection d'algorithme ( 5) produit un signal de commande de sélection (Si) sur la base d'un résul- tat de traitement (Ci) du processeur d'exécution d'algorithme ( 2), le signal de commande de sélection précité (Si) étant destiné à commander la sélection d'un algorithme de conversion de données (Ai) que le processeur d'exécution d'algorithme ( 2) doit exécuter par la suite. 11 Appareil de traitement de données selon la revendication 10, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 5) commande la sélection de l'algorithme de conversion de données (Ai) que le processeur d'exécution d'algorithme ( 2) doit exécuter par la suite, de façon que des change- ments temporels dans l'algorithme de conversion de données forment un processus de Markov à états finis et à instants discrets. 12 Appareil de traitement de données selon la revendication 10, caractérisé en ce que la section de traitement de conversion de données ( 12) comprend en outre un processeur de masquage ( 3); et ce proces- seur de masquage ( 3) masque au moins une partie du résultat de traitement (Ci) du processeur d'exécution d'algorithme ( 2), et il présente en sortie des données de traitement masquées (Ci#) à titre de données de traitement de la section de traitement de conversion de données ( 12). 13 Appareil de traitement de données selon la revendication 12, caractérisé en ce que: la section de traitement de conversion de données ( 12) comprend en outre une unité de commande de masquage ( 4); et cette unité de commande de masquage ( 4) actualise une information d'historique concernant l'algorithme de conversion de données (Ai) qui est exécuté par le processeur d'exécution d'algorithme ( 12), elle enregistre une information d'historique actualisée, et elle commande le traitement de masquage qu'effectue le processeur de masquage ( 3). 14 Appareil de traitement de données selon la revendication 13, caractérisé en ce que: l'unité de commande de sélection d'algorithme ( 5) commande la sélection de l'algorithme de conversion de données (Ai) que le processeur d'exécution d'algorithme ( 2) doit exécuter par la suite, sur la base d'un diagramme du treillis de codes convolutifs ayant un taux d'émis- sion de codage prédéterminé; et l'unité de commande de masquage ( 4) actualise une information d'historique concernant des codes de branches de l'algorithme de conversion de données (A 1) qui sont représentés sur le diagramme du treillis, elle enregistre l'informa- tion d'historique actualisée, et elle commande le traitement de masquage qu'effectue le processeur de masquage ( 3) sur la base d'au moins une partie des valeurs de l'information d'historique. Appareil de traitement de données selon la revendication 9, caractérisé en ce que les algorithmes de conversion de données qui sont enregis- trés dans la section de traitement de conversion de données ( 12) sont utilisés pour le cryptage de données. 16 Appareil de traitement de données selon la revendication 9, caractérisé en ce que la section de traitement de conversion de données ( 12), au moins, est réalisée sous la forme d'un module, pour empêcher ainsi que le traitement qui est effectué dans la section de traitement de conversion de données ( 12) ne soit connu à l'extérieur. 17 Module de traitement de données, carac- térisé en ce qu'il comprend: un processeur de fonc- tion ( 21) qui est destiné à conserver en mémoire un ensemble d'algorithmes de fonction (F O à FN 1), et à exécuter l'un désigné des algorithmes de fonction, pour effectuer un traitement d'accomplissement de fonction; et une unité de commande de sélection d'algorithme ( 22) qui est destinée à désigner un algorithme de fonction devant être exécuté par la suite, sur la base d'un résultat de traitement (Y) qui est obtenu par le processeur de fonction ( 21). 18 Module de traitement de données selon la revendication 17, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 22) commande un changement dans les algorithmes de fonction du proces- seur de fonction ( 21), en utilisant un procédé statis- tique qui est basé sur l'intégralité ou une partie du résultat de traitement (Y) qui est obtenu à partir d'un algorithme de fonction qui est exécuté au moment présent. 19 Module de traitement de données selon la revendication 17, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 22) commande un changement dans les algorithmes de fonction du proces- seur de fonction ( 21) en utilisant un procédé déter- ministe qui est basé sur l'intégralité ou une partie du résultat de traitement (Y) qui est obtenu à partir d'un algorithme de fonction qui est exécuté au moment présent. Module de traitement de données selon la revendication 17, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 22) effectue une comparaison entre le résultat de traitement (Y) qui est obtenu par le processeur de fonction ( 21) et des données introduites de façon externe (X'), et elle désigne sur la base de la comparaison un algorithme de fonction qui est exécuté par la suite. 21 Module de traitement de données selon la revendication 20, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 22) commande un changement dans les algorithmes de fonction du proces- seur de fonction ( 21), en utilisant un procédé statis- tique qui est basé sur la comparaison entre le résultat de traitement (Y) qui est obtenu à partir de l'algorithme de fonction qui est exécuté au moment présent, et les données introduites de façon externe (X'). 22 Module de traitement de données selon la revendication 20, caractérisé en ce que l'unité de commande de sélection d'algorithme ( 22) commande un changement dans les algorithmes de fonction du proces- seur de fonction ( 21) en utilisant un procédé déter- ministe qui est basé sur la comparaison entre le résultat de traitement (Y) qui est obtenu à partir de l'algorithme de fonction qui est exécuté au moment présent, et les données introduites de façon externe (X'). 23 Module de traitement de données selon la revendication 17, caractérisé en ce qu'il comprend en outre un convertisseur de sortie ( 23) qui est destiné à présenter en sortie le résultat de traitement (Y) qui est obtenu par le processeur de fonction ( 21), après avoir remplacé le résultat de traitement (Y) par une autre valeur (Y'). 24 Module de traitement de données selon la revendication 23, caractérisé en ce qu'il comprend en outre une unité de commande de conversion de sortie ( 24) qui est destinée à commander la conversion qu'effectue le convertisseur de sortie ( 23), en utili- sant une valeur qui est basée sur l'intégralité ou sur une partie d'un historique des algorithmes de fonction qu'exécute le processeur de fonction ( 21). Module de traitement de données selon la revendication 23, caractérisé en ce que le convertis- seur de sortie ( 23) accomplit une conversion de sortie sur la base de données fixées qui sont enregistrées dans ce convertisseur. 26 Module de traitement de données selon la revendication 17, caractérisé en ce que chaque algorithme de fonction qui est enregistré dans le processeur de fonction ( 21) est une combinaison d'une partie d'algorithme fondamental et d'un ensemble de parties de sous-algorithmes.