Brevet FR3138257A1 — publié le 20240126

Procédé de détermination d’une somme d’intégrité arithmétique d’une première séquence (C) d’au moins une première donnée ), la somme d’intégrité arithmétique étant formée de k bits et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence (A) d’au moins une deuxième donnée ) et une troisième donnée sélectionnée dans une troisième séquence (B) d’au moins une troisième donnée ), ledit procédé comprenant une étape de détermination de la somme d’intégrité arithmétique à partir d’une somme d’intégrité de la deuxième séquence (A) et d’une somme d’intégrité de la troisième séquence (B) en calculant la somme d’intégrité arithmétique comme suit : . Figure pour l’abrégé : fig. 2. Procédé de détermination d’une somme d’intégrité arithmétique d’une séquence de données, dispositif électronique et programme d’ordinateur associés La présente invention concerne un procédé de détermination d’une somme d’intégrité arithmétique, ainsi qu’un programme d’ordinateur et un dispositif électronique associés. Des dispositifs électroniques sécurisés sont conçus pour rendre quasi impossible toute intrusion dans leur fonctionnement mais il est préférable de vérifier que les calculs qu’ils effectuent, notamment des calculs arithmétiques, sont intègres, c’est-à-dire non altérés. Une première solution consiste à vérifier l’absence de faute dans un calcul en répétant le calcul et en comparant les résultats obtenus pour chaque itération. Une deuxième solution consiste à vérifier l’absence de faute dans un calcul, en cherchant à retrouver les données initiales par application d’un algorithme inverse. Cependant, ces solutions doublent le temps de calcul et nécessitent de doubler l’implémentation, notamment pour se prémunir contre les attaques doubles fautes qui injectent la même erreur, ce qui consomme de la mémoire du dispositif l’électronique. Pour remédier à ces inconvénients, la présente invention propose, selon un premier aspect, un procédé de détermination d’une somme d’intégrité arithmétique d’une première séquence d’au moins une première donnée, la somme d’intégrité arithmétique étant formée d’un nombre de bits prédéterminé k et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence d’au moins une deuxième donnée et une troisième donnée sélectionnée dans une troisième séquence d’au moins une troisième donnée, la deuxième donnée sélectionnée et la troisième donnée sélectionnée ayant chacune un même rang dans les deuxième et troisième séquences que la première donnée concernée, ledit procédé étant mis en œuvre au sein d’un dispositif électronique et comprenant l’étape suivante : - détermination de la somme d’intégrité arithmétique à partir d’une somme d’intégrité de la deuxième séquence et d’une somme d’intégrité de la troisième séquence en calculant la somme d’intégrité arithmétique comme suit : , et dans lequel - l’opération arithmétique est une addition ou une soustraction ou une multiplication, - est une donnée d’initialisation, et - est un nombre premier dont la valeur est comprise entre 2 k-1 à 2 k . Le procédé selon le premier aspect peut également comprendre les caractéristiques optionnelles suivantes, prises seules ou en combinaison à chaque fois que cela est techniquement possible. Le nombre de bits prédéterminé k est strictement inférieur à la taille de chaque donnée de la première séquence, de la deuxième séquence et de la troisième séquence. Le nombre de bits prédéterminé k est strictement supérieur à 3. La donnée d’initialisation a une valeur non nulle. Le procédé comprend en outre les étapes suivantes : - détermination d’une nouvelle somme d’intégrité de la première séquence à partir de l’au moins une première donnée de la première séquence, - comparaison de la nouvelle somme d’intégrité de la première séquence à la somme d’intégrité arithmétique de la première séquence, et si la valeur de la nouvelle somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence, mise en œuvre d’un traitement de sécurité. Dans un premier mode de réalisation : - la première séquence, la deuxième séquence et la troisième séquence ont une même longueur strictement supérieure à 1, - la somme d’intégrité de la deuxième séquence est égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre premières sommes d’intégrité corrigées , …, , chaque première somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la deuxième donnée de rang p dans la deuxième séquence et est une donnée d’initialisation de la deuxième donnée de rang p, et - la somme d’intégrité de la troisième séquence est égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre deuxièmes sommes d’intégrité corrigées , …, , chaque deuxième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la troisième donnée de rang p dans la troisième séquence et est une donnée d’initialisation de la troisième donnée de rang p. D’autres caractéristiques avantageuses et non limitatives du procédé conforme à ce premier mode de réalisation, prises individuellement ou selon toutes les combinaisons techniquement possibles, sont les suivantes : le procédé comprend en outre une étape de détermination de la somme d’intégrité de la deuxième séquence par lecture d’une mémoire du dispositif électronique ou par calcul à partir des sommes d’intégrité des deuxièmes données et des données d’initialisation associées auxdites deuxièmes données, typiquement par application de l’opération arithmétique entre les premières sommes d’intégrité corrigées , …, , chaque première somme d’intégrité corrigée étant calculée comme suit : pour tout p allant de 1 à n, ; le procédé comprend en outre une étape de détermination de la somme d’intégrité de la troisième séquence par lecture d’une mémoire du dispositif électronique ou par calcul à partir des sommes d’intégrité des troisièmes données et des données d’initialisation associées auxdites troisièmes données, typiquement par application de l’opération arithmétique entre les deuxièmes sommes d’intégrité corrigées , …, , chaque deuxième somme d’intégrité corrigée étant calculée comme suit : pour tout p allant de 1 à n, ; chaque somme d’intégrité d’une deuxième donnée a une valeur comme suit : pour tout p allant de 1 à , où est la deuxième donnée de rang p dans la deuxième séquence, et chaque somme d’intégrité d’une troisième donnée a une valeur comme suit : pour tout p allant de 1 à , où est la troisième donnée de rang p dans la troisième séquence; le procédé comprend en outre une étape de détermination de chaque somme d’intégrité d’une deuxième donnée, de préférence par lecture d’une mémoire du dispositif électronique, ou par calcul à partir de la deuxième donnée et de la donnée d’initialisation associée comme suit : pour tout p allant de 1 à n, ; le procédé comprend en outre une étape de détermination de chaque somme d’intégrité d’une troisième donnée, de préférence par lecture d’une mémoire du dispositif électronique ou par calcul à partir de la troisième donnée et de la donnée d’initialisation associée comme suit : pour tout p allant de 1 à n, ; le procédé comprend en outre les étapes suivantes : détermination des premières sommes d’intégrité corrigées , …, , détermination d’une première autre somme d’intégrité de la deuxième séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une autre opération arithmétique entre les premières sommes d’intégrité corrigées , …, , puis détermination d’une deuxième autre somme d’intégrité de la deuxième séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les premières sommes d’intégrité corrigées , …, , comparaison de la deuxième autre somme d’intégrité de la deuxième séquence à la somme d’intégrité de la deuxième séquence, et si la valeur de la deuxième autre somme d’intégrité de la deuxième séquence est différente de la valeur de la somme d’intégrité de la deuxième séquence, mise en œuvre d’un traitement de sécurité, et l’autre opération arithmétique est une opération différente de l’opération arithmétique parmi l’ addition, la soustraction et la multiplication ; la deuxième autre somme d’intégrité de la deuxième séquence est formée de k bits et la première autre somme d’intégrité de la deuxième séquence est formée de k’ bits, k’ étant un entier positif non nul qui peut avoir la même valeur que k ; le procédé comprend en outre les étapes suivantes : détermination de troisièmes sommes d’intégrité corrigées , …, , chaque troisième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la première donnée de rang p dans la première séquence et est une donnée d’initialisation de la première donnée de rang p, détermination d’une première autre somme d’intégrité de la première séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une nouvelle opération arithmétique entre les troisièmes sommes d’intégrité corrigées , …, , puis détermination d’une deuxième autre somme d’intégrité de la première séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les troisièmes sommes d’intégrité corrigées , …, , comparaison de la deuxième autre somme d’intégrité de la première séquence à la somme d’intégrité arithmétique de la première séquence, et si la valeur de la deuxième autre somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence, mise en œuvre d’un traitement de sécurité, et la nouvelle opération arithmétique est une opération différente de l’opération arithmétique parmi l’ addition, la soustraction et la multiplication ; la deuxième autre somme d’intégrité de la première séquence est formée de k bits et la première autre somme d’intégrité de la première séquence est formée de k’’ bits, k’’ étant un entier positif non nul qui peut avoir la même valeur que k et/ou k’ ; les premières données sont les coefficients d’un premier polynôme, les deuxièmes données sont les coefficients d’un deuxième polynôme et les troisièmes données sont des coefficients d’un troisième polynôme ; l’étape de détermination d’une nouvelle somme d’intégrité est par calcul de la nouvelle somme d’intégrité en sommant la donnée d’initialisation et un résultat de l’application de l’opération arithmétique entre troisièmes sommes d’intégrité corrigées , …, , chaque troisième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à n, où est une somme d’intégrité de la première donnée de rang p dans la première séquence et est une donnée d’initialisation de la première donnée de rang p ; l’étape de détermination d’une nouvelle somme d’intégrité comprend en outre le calcul de chaque somme d’intégrité d’une première donnée comme suit : pour tout p allant de 1 à n, où est la première donnée de rang p dans la première séquence. Dans un deuxième mode de réalisation : - la première séquence, la deuxième séquence et la troisième séquence ont une même longueur n égale à 1, et - la somme d’intégrité de la deuxième séquence a une valeur comme suit : où est la deuxième donnée dans la deuxième séquence, et - la somme d’intégrité de la troisième séquence a une valeur comme suit : où est la troisième donnée dans la troisième séquence. Une caractéristique avantageuse et non limitative du procédé conforme à ce deuxième mode de réalisation, prise individuellement ou selon toutes les combinaisons techniquement possibles, est la suivante : - l’étape de détermination d’une nouvelle somme d’intégrité calcule la nouvelle somme d’intégrité comme suit : où est la première donnée dans la première séquence. L’invention propose également, selon un deuxième aspect, un programme d’ordinateur comprenant des instructions exécutables par un processeur et adaptées pour la mise en œuvre d’un procédé de détermination d’une somme d’intégrité arithmétique d’une première séquence d’au moins une première donnée tel que défini précédemment, lorsque ces instructions sont exécutées par le processeur. L’invention propose aussi, selon un troisième aspect, un dispositif électronique comprenant des moyens adaptés pour la mise en œuvre d’un procédé de détermination d’une somme d’intégrité arithmétique tel que défini précédemment. Ce dispositif électronique peut être configuré pour la mise en œuvre de chacune des possibilités de réalisation envisagées pour le procédé de détermination d’une somme d’intégrité arithmétique d’une première séquence d’au moins une première donnée tel que défini précédemment. D’autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux figures annexées qui en illustrent des exemples de réalisation dépourvus de tout caractère limitatif. Sur les figures: représente schématiquement les éléments principaux d’une entité électronique au sein de laquelle est mise en œuvre l’invention ; représente des exemples de séquences de données ; représente sous forme de logigramme les étapes principales d’un procédé de détermination d’une somme d’intégrité arithmétique d’une séquence d’au moins une donnée selon un premier mode d’implémentation de l’invention ; représente sous forme de logigramme les étapes principales d’un procédé de détermination d’une somme d’intégrité arithmétique d’une séquence d’au moins une donnée selon un deuxième mode d’implémentation de l’invention. Sauf indications contraires, les éléments communs ou analogues à plusieurs figures portent les mêmes signes de référence et présentent des caractéristiques identiques ou analogues, de sorte que ces éléments communs ne sont généralement pas à nouveau décrits par souci de simplicité. Dans le cadre de la présente description, des qualificatifs « premier », « deuxième », « troisième », « quatrième » ou « cinquième » ne sont qu’à titre indicatif pour distinguer des éléments qu’ils qualifient, mais n’impliquent pas d’ordre entre eux. La représente schématiquement un dispositif électronique 2 comprenant un processeur 4 (par exemple un microprocesseur), un module de mémorisation 6, une mémoire vive 8 et un module de communication 10. La mémoire vive 8 et le module de mémorisation 6 sont chacun liés au processeur 4 de sorte que le processeur 4 peut lire ou écrire des données dans le module de mémorisation 6 et/ou la mémoire vive 8. Le module de mémorisation 6 mémorise des instructions de programme d’ordinateur, dont certaines sont conçues pour mettre en œuvre un procédé de détermination d’une somme d’intégrité arithmétique tel que l’un au moins de ceux décrits en référence aux figures 3 et 4, lorsque ces instructions sont exécutées par le processeur 4. Le module de mémorisation 6 est par exemple un disque dur ou une mémoire non-volatile, éventuellement réinscriptible, par exemple de type EEPROM (pour "Electrically Erasable and Programmable Read-Only Memory" selon l’appellation anglo-saxonne couramment utilisée). La mémoire vive 8 peut quant à elle mémoriser certains au moins des éléments (notamment les sommes d’intégrité, les sommes d’intégrité arithmétiques et/ou les sommes d’intégrité corrigées) manipulés lors des différents traitements effectués au cours d’au moins un des procédés décrits ci-après. On appelle mémoire dans la suite de la description, l’un quelconque parmi le module de mémorisation 6 et la mémoire vive 8. Le dispositif électronique 2 comporte également un, ou plusieurs, bloc (non représenté). Selon un premier exemple, le dispositif électronique 2 comporte un bloc de détermination d’une somme d’intégrité arithmétique. Selon un deuxième exemple, le dispositif comporte en outre un bloc d’initialisation de sommes d’intégrité de deuxièmes données et/ou un bloc d’initialisation de sommes d’intégrité de troisièmes données. Selon un troisième exemple, le dispositif comporte en outre un bloc de détermination d’une somme d’intégrité d’une deuxième séquence et/ou un bloc de détermination d’une somme d’intégrité d’une troisième séquence. Selon un quatrième exemple, le dispositif comporte en outre un bloc de détermination de premières sommes d’intégrité corrigées, un bloc de détermination d’une première autre somme d’intégrité d’une deuxième séquence, un bloc de détermination d’une deuxième autre somme d’intégrité de la deuxième séquence et un bloc de comparaison de la deuxième autre somme d’intégrité de la deuxième séquence. Selon un cinquième exemple, le dispositif comporte en outre un bloc de détermination de troisièmes sommes d’intégrité corrigées, un bloc de détermination d’une première autre somme d’intégrité d’une première séquence, un bloc de détermination d’une deuxième autre somme d’intégrité de la première séquence et un bloc de comparaison de la deuxième autre somme d’intégrité de la première séquence. Selon un sixième exemple, le dispositif électronique 2 comporte un bloc de détermination d’une nouvelle somme d’intégrité et un bloc de comparaison de la nouvelle somme d’intégrité. Ces blocs peuvent en pratique être réalisés par une combinaison d’éléments matériels et d’éléments logiciels. Chaque bloc possède une fonctionnalité décrite dans les procédés conformes à l’invention et exposés ci-après. Ainsi, pour chaque bloc, le dispositif électronique 2 mémorise par exemple des instructions de logiciel exécutables par le processeur 4 du dispositif électronique 2 afin d’utiliser un élément matériel (par exemple une interface de communication ou une mémoire) et de mettre ainsi en œuvre la fonctionnalité offerte par le bloc. Selon une possibilité de réalisation, les instructions de programme d’ordinateur mémorisées dans le module de mémorisation 6 ont par exemple été reçues (typiquement d’un ordinateur distant) lors d’une phase de fonctionnement du dispositif électronique 2 antérieure aux procédés décrits en référence des figures 3 et 4. Le module de communication 10 est relié au processeur 4 de manière à permettre au processeur 4 de recevoir des données en provenance d’un autre dispositif électronique (non représenté) et/ou d’émettre des données à destination d’un autre dispositif électronique (non représenté). Dans certains modes de réalisation, le processeur 4 peut ainsi recevoir une donnée m de l’autre dispositif électronique et /ou émettre d’autres données, par exemple la première séquence d’au moins une première donnée décrite en référence des figures 2 à 4, à destination de l’autre entité électronique. Chaque figure parmi les figures 3 et 4, représente un procédé de détermination d’une somme d’intégrité arithmétique conforme à l’invention. Chacun de ces procédés est ici mis en œuvre par le dispositif électronique 2 (du fait de l’exécution des instructions de programme d’ordinateur mémorisées dans le module de mémorisation 6 comme indiqué ci-dessus) et vise à calculer une somme de contrôle arithmétique, c’est-à-dire une somme d’intégrité arithmétique, résistante aux attaques par faute et permettant de vérifier efficacement l’intégrité d’un calcul arithmétique. La représente des exemples de séquences de données, typiquement des exemples de séquences A, B, C, D et E de données qui peuvent être l’objet et/ou le résultat d’un calcul arithmétique, typiquement du calcul arithmétique dont on veut assurer l’intégrité. Ainsi, chacun des procédés décrits en référence des figures 3 et 4, vise à déterminer une somme d’intégrité arithmétique résistante aux attaques par faute, d’une première séquence C d’au moins une première donnée , la somme d’intégrité arithmétique étant formée d’un nombre de bits prédéterminé k et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence A d’au moins une deuxième donnée et une troisième donnée sélectionnée dans une troisième séquence B d’au moins une troisième donnée , la deuxième donnée sélectionnée et la troisième donnée sélectionnée ayant chacune un même rang dans les deuxième et troisième séquences A, B que la première donnée concernée. Autrement dit, pour tout rang p allant de 1 à n, . Le nombre de bits k est un entier positif non nul. Le nombre de bits k est de préférence strictement supérieur à 3 et strictement inférieur à la taille de chaque donnée des première, deuxième et troisième séquences. En outre, chacun des procédés décrits en référence des figures 3 et 4 permet de déterminer une autre somme d’intégrité arithmétique d’une quatrième séquence de données D d’au moins une quatrième donnée , l’autre somme d’intégrité arithmétique étant formée de u bits. La valeur de chaque quatrième donnée est égale au résultat de l’application de l’opération arithmétique selon un premier exemple, ou d’une autre opération arithmétique selon un deuxième exemple, entre une deuxième donnée sélectionnée de la deuxième séquence A et une cinquième donnée sélectionnée d’une cinquième séquence E d’au moins une cinquième donnée , la deuxième donnée sélectionnée et la cinquième donnée sélectionnée ayant chacune un même rang dans les deuxième et cinquième séquences que la quatrième donnée concernée. Autrement dit, dans le premier exemple pour tout rang p allant de 1 à n, , et dans le deuxième exemple pour tout rang p allant de 1 à n, . La valeur de chaque quatrième donnée est égale au résultat de l’application de l’opération arithmétique selon un troisième exemple, ou d’une nouvelle opération arithmétique selon un quatrième exemple, entre une première donnée sélectionnée de la première séquence C et une cinquième donnée sélectionnée de la cinquième séquence E d’au moins une cinquième donnée , la première donnée sélectionnée et la cinquième donnée sélectionnée ayant chacune un même rang dans les première et cinquième séquences que la quatrième donnée concernée. Autrement dit, dans le troisième exemple pour tout rang p allant de 1 à n, , et dans le quatrième exemple pour tout rang p allant de 1 à n, . Par exemple, le nombre u a la même valeur que le nombre k, typiquement pour les premier et troisième exemples décrits ci-avant. Pour les troisième et quatrième exemples, le nombre u est de préférence strictement supérieur à 3 et strictement inférieur à la taille de chaque donnée des première, quatrième et cinquième séquences. Pour les premier et deuxième exemples, le nombre u est de préférence strictement supérieur à 3 et strictement inférieur à la taille de chaque donnée des deuxième, quatrième et cinquième séquences. Le nombre de données dans une séquence est aussi appelé longueur de ladite séquence. Dans les exemples illustrés , les séquences A, B, C, D et E ont la même longueur n. La longueur n est un entier positif de valeur non nul. L’opération arithmétique est typiquement une addition ou une soustraction ou une multiplication. L’autre opération arithmétique est typiquement une opération différente de l’opération arithmétique parmi l’addition, la soustraction et la multiplication. La nouvelle opération arithmétique est typiquement une opération différente de l’opération arithmétique parmi l’addition, la soustraction et la multiplication. La nouvelle opération arithmétique peut être la même opération que l’autre opération arithmétique . Selon un exemple particulier, la longueur n est un entier strictement supérieur à 1 et les premières données sont des coefficients d’un premier polynôme, les deuxièmes données sont des coefficients d’un deuxième polynôme et les troisièmes données sont des coefficients d’un troisième polynôme. Ainsi, l’opération arithmétique, et/ou l’autre opération arithmétique, et/ou la nouvelle opération arithmétique, du procédé peut être une multiplication et être utilisée pour appliquer une multiplication à des transformations NTT de polynômes (« Number-theoretic transform » selon l’appellation anglo-saxonne couramment utilisée). La montre les étapes principales d’un procédé de détermination d’une somme d’intégrité arithmétique d’une séquence d’au moins une donnée selon un premier mode d’implémentation de l’invention. Plus précisément, le procédé de la figure 3 vise à déterminer une somme d’intégrité arithmétique , résistante aux attaques par faute, de la première séquence C de n premières données , la somme d’intégrité arithmétique étant formée d’un nombre de bits prédéterminé k et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence A de n deuxièmes données et une troisième donnée sélectionnée dans une troisième séquence B de n troisièmes données , la deuxième donnée sélectionnée et la troisième donnée sélectionnée ayant chacune un même rang dans les deuxième et troisième séquences A, B que la première donnée concernée. La longueur n est ici un entier strictement supérieur à 1. Selon une étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2), le processeur 4 détermine pour chaque deuxième donnée de rang p dans la deuxième séquence A, p allant de 1 à n, une somme d’intégrité ayant une valeur comme suit : où est une donnée d’initialisation de la deuxième donnée de rang p et est un nombre premier dont la valeur est comprise entre 2 k-1 et 2 k . Pour rappel, k est le nombre de bits qui forme la somme d’intégrité arithmétique . Selon un premier exemple, le procédé peut déterminer pour chaque deuxième donnée, la somme d’intégrité associée par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer pour chaque deuxième donnée, la somme d’intégrité associée par calcul à partir de la deuxième donnée et de la donnée d’initialisation associée comme suit : pour tout p allant de 1 à n, . Ainsi, le procédé permet une bonne diffusion des erreurs, c’est-à-dire une modification importante de la somme d’intégrité pour une petite modification de la valeur de la deuxième donnée associée. De préférence, les données d’initialisation ont des valeurs non nulles. Les données d’initialisation peuvent être déterminées par le processeur 4, par exemple par lecture d’une mémoire du dispositif électronique 2 ou par tirage aléatoire ou par incrémentation d’un compteur, éventuellement au cours d’une étape du procédé non représentée et antérieure à cette étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2). Une valeur non nulle pour la donnée d’initialisation de la deuxième donnée de rang p, permet d’éviter des attaques par lesquelles l’attaquant met à 0 la somme d’intégrité de la deuxième donnée de rang p et ladite deuxième donnée de rang p. En outre, l’utilisation de valeurs différentes pour les données d’initialisation de deuxièmes données de rangs différents permet de détecter les permutations de ces deuxièmes données. Le procédé comprend également une étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4) pendant laquelle le processeur 4 détermine pour chaque troisième donnée de rang p dans la troisième séquence B, p allant de 1 à n, une somme d’intégrité ayant une valeur comme suit : où est une donnée d’initialisation de la troisième donnée de rang p. Ainsi, le procédé permet une bonne diffusion des erreurs, c’est-à-dire une modification importante, de la somme d’intégrité pour une petite modification de la valeur de la troisième donnée associée. De préférence, les données d’initialisation ont des valeurs non nulles. Les données d’initialisation peuvent être déterminées par le processeur 4, par exemple par lecture d’une mémoire du dispositif électronique 2 ou par tirage aléatoire ou par incrémentation d’un compteur, éventuellement au cours d’une étape non représentée et antérieure à cette étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4). Une valeur non nulle pour la donnée d’initialisation de la troisième donnée de rang p, permet d’éviter des attaques par lesquelles l’attaquant met à 0 la somme d’intégrité de la troisième donnée de rang p et ladite troisième donnée de rang p. En outre, l’utilisation de valeurs différentes pour les données d’initialisation de troisièmes données de rangs différents permet de détecter les permutations de ces troisièmes données. Selon un premier exemple, le procédé peut déterminer pour chaque troisième donnée, la somme d’intégrité associée par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer pour chaque troisième donnée, la somme d’intégrité associée par calcul à partir de la troisième donnée et de la donnée d’initialisation associée comme suit : pour tout p allant de 1 à n, . Le procédé comprend alors une étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E6) ayant une valeur égale à la somme d’une donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre premières sommes d’intégrité corrigées , …, , chaque première somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à n, . Selon un premier exemple, le procédé peut déterminer la somme d’intégrité de la deuxième séquence, par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer la somme d’intégrité de la deuxième séquence par calcul à partir des sommes d’intégrité des deuxièmes données et des données d’initialisation associées auxdites deuxièmes données, typiquement par application de l’opération arithmétique entre les premières sommes d’intégrité corrigées , …, , chaque première somme d’intégrité corrigée étant calculée comme suit : pour tout p allant de 1 à n, . Le procédé comprend alors une étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E8) ayant une valeur égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre deuxièmes sommes d’intégrité corrigées , …, , chaque deuxième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à n, . Selon un premier exemple, le procédé peut déterminer la somme d’intégrité de la troisième séquence, par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer la somme d’intégrité de la troisième séquence par calcul à partir des sommes d’intégrité des troisièmes données et des données d’initialisation associées auxdites troisièmes données, typiquement par application de l’opération arithmétique entre les deuxièmes sommes d’intégrité corrigées , …, , chaque deuxième somme d’intégrité corrigée étant calculée comme suit : pour tout p allant de 1 à n, . Le procédé comprend alors une étape de détermination de la somme d’intégrité arithmétique (étape E10), pendant laquelle le processeur 4 détermine la somme d’intégrité arithmétique à partir de la somme d’intégrité de la deuxième séquence A et de la somme d’intégrité de la troisième séquence B en calculant la somme d’intégrité arithmétique comme suit : . Le nombre premier dont la valeur est comprise entre 2 k-1 et 2 k permet une bonne diffusion des erreurs, c’est-à-dire une modification importante de la somme d’intégrité arithmétique pour une petite modification d’au moins une somme d’intégrité parmi la somme d’intégrité de la deuxième séquence A et la somme d’intégrité de la troisième séquence B. Le procédé calcul ainsi une somme d’intégrité arithmétique qui a une meilleure résistance aux attaques par faute. Selon un exemple, la donnée d’initialisation a une valeur non nulle. La donnée d’initialisation peut être déterminée par le processeur 4, par exemple par lecture d’une mémoire du dispositif électronique 2 ou par tirage aléatoire, éventuellement au cours d’une étape du procédé non représentée et antérieure à cette étape de détermination de la somme d’intégrité arithmétique (étape E10). La valeur non nulle de la donnée d’initialisation permet d’éviter des attaques par lesquelles l’attaquant met à 0 au moins une somme d’intégrité parmi la somme d’intégrité de la deuxième séquence A et la somme d’intégrité de la troisième séquence B, et les données de la séquence de données correspondante. Le procédé comprend alors une étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12), pendant laquelle le processeur 4 détermine une nouvelle somme d’intégrité de la première séquence C à partir de l’au moins une première donnée , de la première séquence C. Selon une implémentation particulière, l’étape de détermination d’une nouvelle somme d’intégrité calcule la nouvelle somme d’intégrité en sommant la donnée d’initialisation et un résultat de l’application de l’opération arithmétique entre troisièmes sommes d’intégrité corrigées , …, , chaque troisième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à n, où est une somme d’intégrité de la première donnée de rang p dans la première séquence C et est une donnée d’initialisation de ladite première donnée de rang p. Dans cette implémentation particulière, l’étape de détermination d’une nouvelle somme d’intégrité peut comprendre en outre le calcul de chaque troisième somme d’intégrité corrigée comme suit : pour tout p allant de 1 à n, Dans cette implémentation particulière, l’étape de détermination d’une nouvelle somme d’intégrité peut comprendre aussi le calcul de chaque somme d’intégrité d’une troisième donnée comme suit : pour tout p allant de 1 à n, . Le procédé comprend alors une étape de comparaison de la nouvelle somme d’intégrité (étape E14), dans laquelle le processeur 4 compare la nouvelle somme d’intégrité de la première séquence C à la somme d’intégrité arithmétique de la première séquence C, et met en œuvre un traitement de sécurité si la valeur de la nouvelle somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence. Le procédé vérifie ainsi efficacement l’intégrité du calcul arithmétique avec une somme de contrôle résistante aux attaques par faute. Dans un premier mode particulier de mise en œuvre, le traitement de sécurité comporte une incrémentation d’un compteur. Dans un deuxième mode particulier de mise en œuvre, le traitement de sécurité comporte un envoi à un autre dispositif électronique, typiquement en utilisant le module de communication 10, d’un indicateur, par exemple le compteur, ledit indicateur étant représentatif de l’occurrence d’une erreur pendant le calcul arithmétique. Dans un troisième mode particulier de mise en œuvre, le traitement de sécurité bloque l’exécution d’une fonctionnalité par le processeur 4, typiquement une nouvelle exécution de calcul arithmétique et/ou une nouvelle exécution du procédé de détermination d’une somme d’intégrité arithmétique et/ou l’exécution des étapes suivantes dudit procédé. Dans un quatrième mode particulier de mise en œuvre, le traitement de sécurité modifie le résultat de l’exécution du calcul arithmétique, typiquement le traitement de sécurité modifie au moins une première donnée , de la première séquence C. Le procédé décrit ici, en référence de la , peut se poursuivre avec les étapes complémentaires suivantes (étapes E110 à E140). Ainsi, le procédé peut alors comprendre une étape de détermination des premières sommes d’intégrité corrigées , …, (étape E110), typiquement en calculant chaque première somme d’intégrité corrigée comme suit : pour tout p allant de 1 à n, . Cette étape de détermination des premières sommes d’intégrité corrigées , …, peut comprendre aussi le calcul pour tout p allant de 1 à n, de la somme d’intégrité de la deuxième donnée de rang p comme suit : . Le procédé comprend alors une étape de détermination d’une première autre somme d’intégrité de la deuxième séquence (étape E120), dans laquelle le processeur 4 détermine une première autre somme d’intégrité de la deuxième séquence A égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une autre opération arithmétique entre les premières sommes d’intégrité corrigées , …, . L’autre opération arithmétique est typiquement une opération différente de l’opération arithmétique parmi l’addition, la soustraction et la multiplication. Le procédé comprend alors une étape de détermination d’une deuxième autre somme d’intégrité de la deuxième séquence (étape E130), dans laquelle le processeur 4 détermine une deuxième autre somme d’intégrité de la deuxième séquence A, égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les premières sommes d’intégrité corrigées , …, . Le procédé comprend alors une étape de comparaison de la deuxième autre somme d’intégrité de la deuxième séquence à la somme d’intégrité de la deuxième séquence (étape E140), pendant laquelle le processeur 4 met en œuvre un traitement de sécurité si la valeur de la deuxième autre somme d’intégrité de la deuxième séquence est différente de la valeur de la somme d’intégrité de la deuxième séquence. Typiquement, la deuxième autre somme d’intégrité de la deuxième séquence est formé de k bits et la première autre somme d’intégrité de la deuxième séquence est formé de k’ bits, le nombre k’ étant un entier positif non nul qui peut avoir la même valeur que le nombre k. Le traitement de sécurité peut être mis en œuvre selon un des modes particuliers décrits dans l’étape de comparaison de la nouvelle somme d’intégrité (étape E14). Le traitement de sécurité mis en œuvre ici peut être selon un mode particulier différent de celui mis en œuvre pour le traitement de sécurité de l’étape de comparaison de la nouvelle somme d’intégrité (étape E14). Le traitement de sécurité peut être mis en œuvre selon un autre mode particulier dans lequel le traitement de sécurité modifie la deuxième séquence A, typiquement au moins une deuxième donnée de la deuxième séquence A. Ces étapes complémentaires (étapes E110 à E140) permettent de poursuivre le procédé de façon sécurisée avec une étape de détermination d’une autre somme d’intégrité arithmétique d’une quatrième séquence de données D de n quatrièmes données, l’autre somme d’intégrité arithmétique étant formée de bits tel que où est l’autre opération arithmétique et la valeur de chaque quatrième donnée est égale au résultat de l’application de l’autre opération arithmétique entre une deuxième donnée sélectionnée de la deuxième séquence (A) de n deuxièmes données et une cinquième donnée sélectionnée d’une cinquième séquence (E) de n cinquièmes données ), la deuxième donnée sélectionnée et la cinquième donnée sélectionnée ayant chacune un même rang dans les deuxième et cinquième séquences que la quatrième donnée concernée. Le nombre k’ de bits est de préférence strictement supérieur à 3 et strictement inférieur à la taille de chaque donnée des deuxième, quatrième et cinquième séquences. Le procédé décrit ici, en référence de la , peut aussi se poursuivre avec les autres étapes complémentaires suivantes (étapes E210 à E240). Ainsi, le procédé peut alors comprendre une étape de détermination des troisième sommes d’intégrité corrigées , …, (étape E210), typiquement en calculant chaque troisième somme d’intégrité corrigée comme suit : pour tout p allant de 1 à n, . Cette étape de détermination des troisième sommes d’intégrité corrigées , …, peut comprendre aussi le calcul pour tout p allant de 1 à n, de la somme d’intégrité de la première donnée de rang p comme suit : . Le procédé comprend alors une étape de détermination d’une première autre somme d’intégrité de la première séquence (étape E220), dans laquelle le processeur 4 détermine une première autre somme d’intégrité de la première séquence C égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une nouvelle opération arithmétique entre les troisièmes sommes d’intégrité corrigées , …, . La nouvelle opération arithmétique est typiquement une opération différente de l’opération arithmétique parmi l’ addition, la soustraction et la multiplication. La nouvelle opération arithmétique peut être la même opération que l’autre opération arithmétique. Le procédé comprend alors une étape de détermination d’une deuxième autre somme d’intégrité de la première séquence (étape E230), dans laquelle le processeur 4 détermine une deuxième autre somme d’intégrité de la première séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les troisèmes sommes d’intégrité corrigées , …, . Le procédé comprend alors une étape de comparaison de la deuxième autre somme d’intégrité de la première séquence à la somme d’intégrité arithmétique de la première séquence (étape E240), pendant laquelle le processeur 4 met en œuvre un traitement de sécurité si la valeur de la deuxième autre somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence. Typiquement, la deuxième autre somme d’intégrité de la première séquence est formé de k bits et la première autre somme d’intégrité de la première séquence est formé de k’’ bits, le nombre k’’ étant un entier positif non nul qui peut avoir la même valeur que le nombre k et/ou le nombre k’. Le traitement de sécurité peut être mis en œuvre selon un des modes particuliers décrits dans l’étape de comparaison de la nouvelle somme d’intégrité (étape E14) et dans l’étape de comparaison de la deuxième autre somme d’intégrité de la deuxième séquence à la somme d’intégrité de la deuxième séquence (étape E140). Le traitement de sécurité mis en œuvre ici peut être selon un mode particulier différent de celui mis en œuvre pour le traitement de sécurité de l’étape de comparaison de la nouvelle somme d’intégrité (étape E14) et/ou de l’étape de comparaison de la deuxième autre somme d’intégrité de la deuxième séquence à la somme d’intégrité de la deuxième séquence (étape E140). Ces autres étapes complémentaires (étapes E210 à E240) permettent de poursuivre le procédé de façon sécurisée avec une étape de détermination d’une autre somme d’intégrité arithmétique d’une quatrième séquence de données D de n quatrièmes données, l’autre somme d’intégrité arithmétique étant formée de bits tel que où est la nouvelle opération arithmétique et la valeur de chaque quatrième donnée est égale au résultat de l’application de la nouvelle opération arithmétique entre une première donnée sélectionnée de la première séquence C de n premières données et une cinquième donnée sélectionnée d’une cinquième séquence E de n cinquièmes données , la première donnée sélectionnée et la cinquième donnée sélectionnée ayant chacune un même rang dans les première et cinquième séquences que la quatrième donnée concernée. Le nombre k’’ est de préférence strictement supérieur à 3 et strictement inférieur à la taille de chaque donnée des première, quatrième et cinquième séquences. Un homme du métier comprendra que les étapes de ce procédé peuvent être exécutées selon d’autres ordres, dans la mesure où chaque étape dispose des éléments (par exemple les sommes d’intégrité, les sommes d’intégrité arithmétiques et/ou les sommes d’intégrité corrigées) nécessaires à son exécution. Selon un premier exemple, l’étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4) peut être exécutée avant l’étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2). Selon un deuxième exemple, l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E8) peut être exécutée avant l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E6). Selon un troisième exemple, l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E6) peut être exécutée après l’étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2) et avant l’étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4). Selon un quatrième exemple, l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E8) peut être exécutée après l’étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4) et avant l’étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2). Selon un cinquième exemple, l’étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) peut être exécutée avant l’étape de détermination de la somme d’intégrité arithmétique (étape E10) ou l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E8) ou l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E6) ou l’étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4) ou l’étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2). Selon un sixième exemple, les autres étapes complémentaires (étapes E210 à E240) peuvent être exécutées avant les étapes complémentaires (étapes E110 à E140). Un homme du métier comprendra aussi que des étapes de ce procédé peuvent être omises dans la mesure où les autres étapes disposent des éléments (par exemple les sommes d’intégrité, les sommes d’intégrité arithmétiques et/ou les sommes d’intégrité corrigées) nécessaires à leur exécution. Selon un premier exemple, l’étape d’initialisation de sommes d’intégrité des deuxièmes données (étape E2) peut être omise quand l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E6) est par lecture d’une mémoire du dispositif électronique 2 de ladite somme d’intégrité de la deuxième séquence A. Selon un deuxième exemple, l’étape d’initialisation de sommes d’intégrité des troisièmes données (étape E4) peut être omise quand l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E8) est par lecture d’une mémoire du dispositif électronique 2 de ladite somme d’intégrité de la troisième séquence B. Selon un troisième exemple, l’étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) et l’étape de comparaison de la nouvelle somme d’intégrité (étape E14) peuvent être omises, notamment quand le procédé comprend les étapes complémentaires (étapes E110 à E140) et/ou les autres étapes complémentaires (étapes E210 à E240). On notera que le procédé décrit ici peut ne pas comprendre les étapes complémentaires (étapes E110 à E140) et/ou les autres étapes complémentaires (étapes E210 à E240). Ainsi, selon un quatrième exemple, le procédé de détermination d’une somme d’intégrité arithmétique se termine à l’ étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) ou à l’étape de comparaison de la nouvelle somme d’intégrité (étape E14). Selon un cinquième exemple, le procédé poursuit avec les autres étapes complémentaires (étapes E210 à E240) après l’étape de détermination de la somme d’intégrité arithmétique (étape E10) ou l’ étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) ou l’étape de comparaison de la nouvelle somme d’intégrité (étape E14), et le procédé ne comprend pas les étapes complémentaires (étapes E110 à E140). Selon un sixième exemple, le procédé poursuit avec les étapes complémentaires (étapes E110 à E140) après l’étape de détermination de la somme d’intégrité arithmétique (étape E10) ou l’ étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) ou l’étape de comparaison de la nouvelle somme d’intégrité (étape E14), et le procédé ne comprend pas les autres étapes complémentaires (étapes E210 à E240). La représente sous forme de logigramme les étapes principales d’un procédé de détermination d’une somme d’intégrité arithmétique d’une séquence d’au moins une donnée selon un deuxième mode d’implémentation de l’invention. Plus précisément, comme le procédé de la figure 3, le procédé de la figure 4 vise à déterminer une somme d’intégrité arithmétique , résistante aux attaques par faute, de la première séquence C de n premières données , la somme d’intégrité arithmétique étant formée d’un nombre de bits prédéterminé k et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence A de n deuxièmes données et une troisième donnée sélectionnée dans une troisième séquence B de n troisièmes données , la deuxième donnée sélectionnée et la troisième donnée sélectionnée ayant chacune un même rang dans les deuxième et troisième séquences A, B que la première donnée concernée. Cependant, la longueur n est ici égale à 1. Selon une étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E502), le processeur 4 détermine une somme d’intégrité de la deuxième séquence A ayant une valeur comme suit : où est un nombre premier dont la valeur est comprise entre 2 k-1 et 2 k , est une donnée d’initialisation et est la deuxième donnée dans la deuxième séquence. Pour rappel, k est le nombre de bits qui forme la somme d’intégrité arithmétique . Selon un premier exemple, le procédé peut déterminer la somme d’intégrité de la deuxième séquence par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer la somme d’intégrité de la deuxième séquence par calcul à partir de la deuxième donnée et de la donnée d’initialisation comme suit : . Le nombre premier dont la valeur est comprise entre 2 k-1 et 2 k permet une bonne diffusion des erreurs, c’est-à-dire une modification importante de la somme d’intégrité de la deuxième séquence pour une petite modification de la valeur de la deuxième donnée associée. De préférence, la donnée d’initialisation a une valeur non nulle. La donnée d’initialisation peut être déterminée par le processeur 4, par exemple par lecture d’une mémoire du dispositif électronique 2 ou par tirage aléatoire, éventuellement au cours d’une étape du procédé non représentée et antérieure à cette étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E502). Une valeur non nulle pour la donnée d’initialisation permet d’éviter des attaques par lesquelles l’attaquant met à 0 la somme d’intégrité de la deuxième séquence et la deuxième donnée. Le procédé comprend alors une étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E504), pendant laquelle le processeur 4 détermine une somme d’intégrité de la troisième séquence B ayant une valeur comme suit : où est la troisième donnée dans la troisième séquence. Selon un premier exemple, le procédé peut déterminer la somme d’intégrité de la troisième séquence par lecture d’une mémoire du dispositif électronique 2. Selon un deuxième exemple, le procédé peut déterminer la somme d’intégrité de la troisième séquence par calcul à partir de la troisième donnée et de la donnée d’initialisation comme suit : . Comme pour l’étape de détermination de la somme d’intégrité de la deuxième séquence A (étape E502), le nombre premier dont la valeur est comprise entre 2 k-1 et 2 k permet une bonne diffusion des erreurs, c’est-à-dire une modification importante de la somme d’intégrité de la troisième séquence pour une petite modification de la valeur de la troisième donnée associée. Une valeur non nulle pour la donnée d’initialisation permet d’éviter des attaques par lesquelles l’attaquant met à 0 la somme d’intégrité de la troisième séquence et ladite troisième donnée. Le procédé réalise alors une étape de détermination de la somme d’intégrité arithmétique (étape E510), une étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E512) et une étape de comparaison de la nouvelle somme d’intégrité (étape E514), de façon identique respectivement à l’étape de détermination de la somme d’intégrité arithmétique (étape E10), l’ étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E12) et l’ étape de comparaison de la nouvelle somme d’intégrité (étape E14) décrites pour le procédé selon le premier mode d’implémentation de l’invention. Un homme du métier comprendra que les étapes de ce procédé peuvent être exécutées selon d’autres ordres dans la mesure où chaque étape dispose des éléments (par exemple les sommes d’intégrité, les sommes d’intégrité arithmétiques et/ou les sommes d’intégrité corrigées) nécessaires à son exécution. Selon un premier exemple, l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E504) peut être exécutée avant l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E502). Selon un deuxième exemple, l’étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E512) peut être exécutée avant l’étape de détermination de la somme d’intégrité arithmétique (étape E510) ou l’étape de détermination d’une somme d’intégrité de la troisième séquence B (étape E504) ou l’étape de détermination d’une somme d’intégrité de la deuxième séquence A (étape E502). Un homme du métier comprendra aussi que des étapes de ce procédé peuvent être omises dans la mesure où les autres étapes disposent des éléments (par exemple les sommes d’intégrité, les sommes d’intégrité arithmétiques et/ou les sommes d’intégrité corrigées) nécessaires à leur exécution. Selon un exemple, l’étape de détermination d’une nouvelle somme d’intégrité de la première séquence C (étape E512) et l’étape de comparaison de la nouvelle somme d’intégrité (étape E514) peuvent être omises. Avec le procédé selon le premier mode d’implémentation (illustré avec la figure 3) ou selon le deuxième mode d’implémentation (illustré avec la figure 4), le dispositif électronique 2 dispose d’une somme d’intégrité arithmétique résistante aux attaques par faute, de la première séquence (C) de n premières données ). Le procédé permet ainsi de vérifier efficacement l’intégrité d’un calcul arithmétique. Cette somme d’intégrité peut être comparée à une nouvelle somme d’intégrité de la première séquence, déterminée à partir de l’au moins une première donnée de la première séquence C (typiquement tel que décrit ci-avant pour l’étape de détermination d’une nouvelle somme d’intégrité de la première séquence C et l’ étape de comparaison de la nouvelle somme d’intégrité ), et/ou être utilisé pour déterminer une autre somme d’intégrité arithmétique d’une quatrième séquence de données D d’au moins une quatrième donnée (typiquement tel que décrit dans les troisième et quatrième exemples en référence à la ). Un homme du métier comprendra que les modes de réalisation, variantes, et différentes caractéristiques, décrits ci-avant peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. Procédé de détermination d’une somme d’intégrité arithmétique d’une première séquence (C) d’au moins une première donnée ), la somme d’intégrité arithmétique étant formée d’un nombre de bits prédéterminé k et la valeur de chaque première donnée étant égale au résultat de l’application d’une opération arithmétique entre une deuxième donnée sélectionnée dans une deuxième séquence (A) d’au moins une deuxième donnée ) et une troisième donnée sélectionnée dans une troisième séquence (B) d’au moins une troisième donnée ), la deuxième donnée sélectionnée et la troisième donnée sélectionnée ayant chacune un même rang dans les deuxième et troisième séquences (A, B) que la première donnée concernée, ledit procédé étant mis en œuvre au sein d’un dispositif électronique et comprenant l’étape suivante : - détermination (E10, E510) de la somme d’intégrité arithmétique , à partir d’une somme d’intégrité de la deuxième séquence (A) et d’une somme d’intégrité de la troisième séquence (B) en calculant la somme d’intégrité arithmétique comme suit : , et dans lequel - l’opération arithmétique est une addition ou une soustraction ou une multiplication, - est une donnée d’initialisation, et - est un nombre premier dont la valeur est comprise entre 2 k-1 à 2 k . Procédé de détermination d’une somme d’intégrité arithmétique selon la revendication 1, dans lequel la donnée d’initialisation a une valeur non nulle. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une quelconque des revendications précédentes, dans lequel - la première séquence (C), la deuxième séquence (A) et la troisième séquence (B) ont une même longueur strictement supérieure à 1, - la somme d’intégrité de la deuxième séquence est égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre premières sommes d’intégrité corrigées , …, , chaque première somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la deuxième donnée de rang p dans la deuxième séquence et est une donnée d’initialisation de la deuxième donnée de rang p, et - la somme d’intégrité de la troisième séquence est égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre deuxièmes sommes d’intégrité corrigées , …, , chaque deuxième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la troisième donnée de rang p dans la troisième séquence et est une donnée d’initialisation de la troisième donnée de rang p. Procédé de détermination d’une somme d’intégrité arithmétique selon la revendication 3, dans lequel - chaque somme d’intégrité d’une deuxième donnée a une valeur comme suit : pour tout p allant de 1 à , où est la deuxième donnée de rang p dans la deuxième séquence, - chaque somme d’intégrité d’une troisième donnée a une valeur comme suit : pour tout p allant de 1 à , où est la troisième donnée de rang p dans la troisième séquence. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une des revendications 3 ou 4, comportant en outre les étapes : - détermination (E110) des premières sommes d’intégrité corrigées , …, , - détermination (E120) d’une première autre somme d’intégrité de la deuxième séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une autre opération arithmétique entre les premières sommes d’intégrité corrigées , …, , puis - détermination (E130) d’une deuxième autre somme d’intégrité de la deuxième séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les premières sommes d’intégrité corrigées , …, , - Comparaison (E140) de la deuxième autre somme d’intégrité de la deuxième séquence à la somme d’intégrité de la deuxième séquence, et si la valeur de la deuxième autre somme d’intégrité de la deuxième séquence est différente de la valeur de la somme d’intégrité de la deuxième séquence, mise en œuvre d’un traitement de sécurité, et dans lequel l’autre opération arithmétique est une opération différente de l’opération arithmétique parmi l’ addition, la soustraction et la multiplication. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une des revendications 3 à 5, comportant en outre les étapes suivantes : - détermination (E210) de troisièmes sommes d’intégrité corrigées , …, , chaque troisième somme d’intégrité corrigée ayant une valeur comme suit : pour tout p allant de 1 à , où est une somme d’intégrité de la première donnée de rang p dans la première séquence et est une donnée d’initialisation de la première donnée de rang p, - détermination (E220) d’une première autre somme d’intégrité de la première séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application d’une nouvelle opération arithmétique entre les troisièmes sommes d’intégrité corrigées , …, , puis - détermination (E230) d’une deuxième autre somme d’intégrité de la première séquence égale à la somme de la donnée d’initialisation et d’un résultat de l’application de l’opération arithmétique entre les troisièmes sommes d’intégrité corrigées , …, , - comparaison (E240) de la deuxième autre somme d’intégrité de la première séquence à la somme d’intégrité arithmétique de la première séquence, et si la valeur de la deuxième autre somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence, mise en œuvre d’un traitement de sécurité, et dans lequel la nouvelle opération arithmétique est une opération différente de l’opération arithmétique parmi l’ addition, la soustraction et la multiplication. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une des revendications 3 à 6, dans lequel les premières données sont les coefficients d’un premier polynôme, les deuxièmes données sont les coefficients d’un deuxième polynôme et les troisièmes données sont des coefficients d’un troisième polynôme. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une quelconque des revendications 1 à 2, dans lequel - la première séquence, la deuxième séquence et la troisième séquence ont une même longueur n égale à 1, et - la somme d’intégrité de la deuxième séquence a une valeur comme suit : où est la deuxième donnée dans la deuxième séquence, et - la somme d’intégrité de la troisième séquence a une valeur comme suit : où est la troisième donnée dans la troisième séquence. Procédé de détermination d’une somme d’intégrité arithmétique selon l’une quelconque des revendications précédentes, le procédé comprenant en outre les étapes suivantes : - détermination (E12, E512) d’une nouvelle somme d’intégrité de la première séquence à partir de l’au moins une première donnée ), de la première séquence, - comparaison (E14, E514) de la nouvelle somme d’intégrité de la première séquence à la somme d’intégrité arithmétique de la première séquence, et si la valeur de la nouvelle somme d’intégrité de la première séquence est différente de la valeur de la somme d’intégrité arithmétique de la première séquence, mise en œuvre d’un traitement de sécurité. Programme d’ordinateur comprenant des instructions exécutables par un processeur (2) et adaptées à mettre en œuvre un procédé selon l’une quelconque des revendications 1 à 9 lorsque ces instructions sont exécutées par le processeur (2). Dispositif électronique comprenant des moyens adaptés pour la mise en œuvre d’un procédé de détermination d’une somme d’intégrité arithmétique selon l’une quelconque des revendications 1 à 9.