Brevet FR3098949A1 — publié le 20210122

Description Titre de l'invention : Fonction à sens unique Domaine technique [0001] La présente description concerne de façon générale les circuits et systèmes élec- troniques, et de façon plus particulière les dispositifs électronique adapté à mettre en oeuvre des fonctions à sens unique, utilisées, par exemple, dans un mécanisme de vérification de l'authenticité d'un produit associé à un consommable. Technique antérieure [0002] La présence de consommables non authentiques d'un produit constitue un problème pour le fabriquant du produit et pour les fournisseurs autorisés des consommables authentiques, notamment lors de retours pour problèmes fonctionnels. Il est important de pouvoir distinguer les produits authentiques des produits non authentiques. [0003] Les procédés d'authentification ont pour rôle de vérifier que le consommable apparié au produit est bien authentique ou autorisé. Pour cela, les consommables et les produits associés sont équipés de circuits électroniques exécutant des protocoles de vérification d'authenticité lors d'une mise en place d'un nouveau consommable, voire périodiquement. [0004] Il serait souhaitable de pouvoir améliorer, au moins en partie, certains aspects des procédés d'authentification de produits et, plus particulièrement, certains aspects des procédés de mise en oeuvre de fonction utilisée dans les procédés d'authentification. Résumé de l'invention 100051 11 existe un besoin pour des procédés d'authentification de produits plus performants et mieux sécurisés. 100061 Un mode de réalisation pallie tout ou partie des inconvénients des procédés d'authentification de produits connus. 100071 Un mode de réalisation prévoit un procédé de mise en oeuvre d'une première fonction à sens unique par un dispositif : dans lequel une deuxième fonction prend en compte des états de noeuds numériques répartis dans des circuits du dispositif mettant en oeuvre des troisièmes fonctions ; lesdits états des noeuds dépendent d'un résultat précédent de la première fonction ; et dans lequel la deuxième fonction et/ou les troisièmes fonctions sont des fonctions à sens unique. 100081 Selon un mode de réalisation, la deuxième fonction est une fonction de signature. 100091 Selon un mode de réalisation, la deuxième fonction est une fonction de hachage. 100101 Selon un mode de réalisation, ledit résultat précédent de la première fonction influe sur les troisièmes fonctions. 100111 Selon un mode de réalisation, ledit résultat est utilisé, en outre, pour modifier des 2 signaux d'horloge du dispositif [0012] Selon un mode de réalisation, ledit résultat est utilisé, en outre, pour modifier des signaux d'horloge influant sur la mise en oeuvre des troisièmes fonctions. [0013] Un autre mode de réalisation prévoit un procédé d'authentification d'un premier dispositif électronique par un deuxième dispositif électronique, utilisant le procédé décrit précédemment. [0014] Un autre mode de réalisation prévoit un procédé de chiffrement utilisant le procédé décrit précédemment. [0015] Un autre mode de réalisation prévoit un procédé de hachage utilisant le procédé décrit précédemment. [0016] Un autre mode de réalisation prévoit un dispositif électronique comprenant un circuit adapté à mettre en oeuvre le procédé décrit précédemment. [0017] Selon un mode de réalisation, le dispositif est un consommable. [0018] Selon un mode de réalisation, le dispositif est adapté à mettre en oeuvre le procédé d'authentification décrit précédemment. [0019] Selon un mode de réalisation, le dispositif est adapté à mettre en oeuvre le procédé de chiffrement décrit précédemment. [0020] Selon un mode de réalisation, le dispositif est adapté à mettre en oeuvre le procédé de hachage décrit précédemment. Brève description des dessins [0021] Ces caractéristiques et avantages, ainsi que d'autres, seront exposés en détail dans la description suivante de modes de réalisation particuliers faite à titre non limitatif en relation avec les figures jointes parmi lesquelles : [0022] [fig.1] la figure 1 représente, de façon très schématique et sous forme de blocs, un mode de réalisation d'un circuit électronique du type équipant un consommable et un produit ; [0023] W8.21 la figure 2 représente, de façon très schématique et sous forme de blocs, un mode de réalisation d'un circuit faisant partie d'un circuit d'authentification ; [0024] [fig.3] la figure 3 représente, de façon très schématique et sous forme de blocs, un autre mode de réalisation du circuit de la figure 2 ; et [0025] [fig.4] la figure 4 représente un organigramme illustrant un mode de réalisation d'un procédé d'authentification. Description des modes de réalisation 100261 De mêmes éléments ont été désignés par de mêmes références dans les différentes figures. En particulier, les éléments structurels et/ou fonctionnels communs aux différents modes de réalisation peuvent présenter les mêmes références et peuvent disposer de propriétés structurelles, dimensionnelles et matérielles identiques. 3 [0027] Par souci de clarté, seuls les étapes et éléments utiles à la compréhension des modes de réalisation décrits ont été représentés et sont détaillés. [0028] Sauf précision contraire, lorsque l'on fait référence à deux éléments connectés entre eux, cela signifie directement connectés sans éléments intermédiaires autres que des conducteurs, et lorsque l'on fait référence à deux éléments reliés ou couplés entre eux, cela signifie que ces deux éléments peuvent être connectés ou être reliés ou couplés par l'intermédiaire d'un ou plusieurs autres éléments. [0029] Dans la description qui suit, lorsque l'on fait référence à des qualificatifs de position absolue, tels que les termes "avant", "arrière", "haut", "bas", "gauche", "droite", etc., ou relative, tels que les termes "dessus", "dessous", "supérieur", "inférieur", etc., ou à des qualificatifs d'orientation, tels que les termes "horizontal", "vertical", etc., il est fait référence sauf précision contraire à l'orientation des figures. [0030] Sauf précision contraire, les expressions "environ", "approximativement", "sen- siblement", et "de l'ordre de" signifient à 10 % près, de préférence à 5 % près. [0031] Dans la suite de la description, on appellera un consommable, un dispositif élec- tronique adapté à être couplé à un produit électronique pour fonctionner. Les consommables sont généralement interchangeables une fois leur utilisation terminée. A titre d'exemple, une carte mémoire est un consommable vis-à-vis d'un appareil photo numérique. Il en est de même pour une cartouche d'encre vis-à-vis d'une imprimante, d'une batterie interchangeable vis-à-vis d'un téléphone portable, une cartouche de liquide vis-à-vis d'une cigarette électronique, une cartouche de jeu vidéo vis-à-vis d'une console. Les modes de réalisation décrits en relation avec les figures 1 à 4 sont applicables à tout couple consommable-produit. [0032] La figure 1 représente, de façon très schématique et sous forme de blocs, un mode de réalisation d'un circuit, ou dispositif, électronique 3 du type de ceux équipant un dispositif et un consommable. [0033] Le circuit 3 comprend : - une entité de calcul 31 (PU), par exemple une machine d'états, un microprocesseur, un circuit logique programmable, etc. ; - une ou plusieurs zones 33 (MEM) de stockage volatile et/ou non volatile pour stocker tout ou partie des données et programmes ; - un ou plusieurs bus 35 de données, d'adresses et/ou de commandes entre les différents éléments internes au circuit 3 ; - une interface d'entrée-sortie 37 (I/O) de communication avec l'extérieur du circuit 3 ; et - divers autres circuits en fonction de l'application, symbolisés en figure 1 par un bloc 39 (FCT). [0034] Selon le mode de réalisation représenté, le circuit 3 comprend en outre un circuit ou une fonction d'authentification 4 (ALGO) mettant en oeuvre un procédé d'authentification. Pour cela, le bloc 4 est un dispositif exécutant des fonctions cryptographiques de façon matérielle (logique câblée) pour, par exemple, mettre en oeuvre un procédé d'authentification. [0035] On prévoit un mécanisme d'authentification basé sur une signature, ou un code, qui a la particularité d'être liée à la topographie du circuit intégré ou de la partie du circuit participant à l'authentification et exécutant cette signature. On fera par la suite référence au circuit d'authentification mais ce qui est décrit peut ne concerner qu'une partie de ce circuit. Par topographie, on entendra ici la disposition des composants formant sur le circuit 3 sur une puce électronique ou sur un substrat. [0036] On prévoit également d'équiper des produits et des consommables de circuits d'authentification identiques, c'est-à-dire présentant des topographies identiques, de façon qu'un traitement exécuté sur un des circuits se traduise, lorsqu'il est exécuté sur l'autre circuit, par un comportement identique de ce dernier. Par comportement, on entend que le comportement électrique du circuit est identique lors de l'exécution d'un calcul, d'un programme ou d'opérations identiques. [0037] La figure 2 représente, très schématiquement et sous forme de blocs, un mode de réa- lisation d'un circuit 5 mettant en oeuvre une fonction utilisée par le circuit d'authentification 4 faisant lui-même partie du circuit 3 de la figure 1. Autrement dit, le circuit 5 fait partie du circuit 4. [0038] Le circuit 5 est adapté à mettre en oeuvre une fonction à sens unique pouvant être utilisés dans un procédé d'authentification. [0039] Le circuit 5 comprend différents circuits logiques 53 mettant en oeuvre des fonctions cryptographiques. Le circuit 5 comprend au moins deux circuits logiques 53 (trois circuits 53 sont représentées en figure 3). Plus le circuit 5 comprend de circuits logiques 53, plus la fonction mise en oeuvre par le circuit 5 est complexe. Des noeuds d'entrée et de sortie de ces circuits logiques 53 sont des points, ou noeuds, numériques 51 du circuit 5, ayant des états haut, "1", ou des états bas, "0". A titre de variante, les noeuds 51 peuvent être aussi des noeuds internes aux circuits logiques 53. La répartition des noeuds numériques 51 dépend de la topographie du circuit 5. Le nombre de noeuds 51 prélevés par le circuit 5 et dont les états électriques sont pris en compte pour la signature conditionne la robustesse de la signature calculée. Par exemple, on prévoit que les circuits 53 fournissent chacun 64 noeuds internes pour obtenir une fonction complexe. [0040] Les circuits 53 sont, en outre, utilisé par le circuit 4 pour d'autres opérations, par exemple, des opérations de chiffrement, des opérations de hachage, etc. La répartition des noeuds 51 des circuits 53 pris en compte dans le calcul de signature dépend de l'application de la fonction du circuit 5. Plus les noeuds sont répartis dans une surface importante du circuit 3, plus la fonction à sens unique mise en oeuvre par le circuit 5 est complexe. [0041] Le circuit 5 comprend, en outre, un dispositif principal représenté par un bloc 55 (ID). Le dispositif 55 comprend plus particulièrement : - un bloc 551 (ONE-WAY) représentant une fonction cryptographique ; - un bloc 553 (CYCLE) représentant une fonction de gestion d'un compte de cycles, ou d'itérations ; et - un bloc 555 (ID MODE) représentant une fonction d'activation d'un procédé d'authentification. [0042] La fonction cryptographique du bloc 551 est une fonction adaptée à fournir un résultat appelé code R à partir d'états des noeuds 51. Cette fonction peut être utilisée sur plusieurs itérations, dont le nombre est géré par la fonction du bloc 553. Selon un mode de réalisation, à chaque nouvelle itération, le code R ou des portions du code R calculées à l'itération précédente sont injectées dans les circuits 53 pour modifier leurs états internes et donc leur fonctionnement. Plus particulièrement, l'injection du code R ou de portions du code R ajoute des arguments aux fonctions mises en oeuvre par les circuits 53 ce qui en modifie donc le fonctionnement desdites fonctions. L'état des points numériques 51 en est donc modifier. Cela a pour but de complexifier le calcul du code R. Une fois les itérations terminées, la fonction du circuit 5 fournit une signature finale Rf. [0043] Lorsque la fonction du circuit 5 est utilisée pour un procédé d'authentification, la fonction de calcul de signature exécutée par le bloc 551 n'a pas besoin d'être complexe. En effet, l'important est que la signature finale Rf soit produite par deux circuits d'authentification identiques. Ainsi, n'importe quel calcul convient, par exemple une fonction de hachage, voire même une comparaison directe d'un mot représentant l'ensemble des états prélevés. Toutefois, prévoir une combinaison ou un traitement cryptographique ou une fonction à sens unique pour calculer une signature accroit la robustesse de l'authentification. Plus particulièrement, la fonction du bloc 551 est par exemple une fonction à sens unique de préférence une fonction de hachage. Si la fonction du bloc 551 n'est pas une fonction à sens unique, alors au moins une fonction des blocs 53 est une fonction à sens unique. [0044] La fonction d'activation d'un procédé d'authentification du bloc 555 est une fonction permettant de démarrer un procédé d'activation du circuit 3 de la figure 1. [0045] Dans cet exemple, un procédé d'authentification du circuit consiste à générer une signature, ou un code, avec la fonction mise en oeuvre par le circuit 5. Lors d'une phase initiale, ou première itération, les circuits 53 sont initialisés par le processeur 31, ou alors sont laissés dans leur état initial. Ainsi, les états des noeuds 51 sont à un état initial, et un premier code R est chargé par la fonction du bloc 551 à partir de ces états. 6 Pendant les itérations suivantes, le code R de l'itération précédente est utilisé pour modifier les fonctions mises en oeuvre par les blocs 53. Ainsi, à chaque itération, les états des noeuds 51 sont modifiés, et un nouveau code R est généré à partir de ces états et du code R de l'itération précédente. [0046] La figure 3 représente, très schématiquement et sous forme de blocs, un autre mode de réalisation d'un circuit d'authentification 5'. [0047] Le circuit 5' de la figure 5 comprends des éléments communs avec le circuit 5 de la figure 3. Ces éléments ne seront pas détaillés à nouveau ci-après. [0048] Le circuit 5' comprend, en outre, un bloc 557 (CLK CTRL) représentant une fonction de gestion de différents signaux d'horloges utilisés par les circuits 53 de la figure 2. [0049] Le bloc 557 peut recevoir des informations du bloc 551, par exemple le code R ou des portions du code R. Ces informations peuvent permettre, par exemple, de modifier les signaux d'horloge, par exemple en déclenchant ou non un nouveau cycle, ou en modifiant les fréquences des signaux d'horloge. Plus particulièrement, le code R peut être utilisé ralentir ou accélérer les exécutions des fonctions mises en oeuvre par les circuits 53, et ainsi modifier le code R de l'itération suivante en modifiant les états des noeuds 51. [0050] Un avantage de cc mode de réalisation, est que l'utilisation du code R pour modifier les signaux d'horloge permet de complexifier encore l'obtention de la signature finale Rf. [0051] La figure 4 est un organigramme illustrant un mode de mise en oeuvre d'un exemple de procédé d'authentification utilisant l'un des circuits 5 ou 5' décrits en relation avec les figures 2 ou 3. A titre d'exemple, ce procédé d'authentification peut être mise en oeuvre par un produit et un consommable. [0052] A une étape 61 (INITIAL STATE), le circuit 5 est mis en contact, filaire ou sans fil, avec un autre circuit qui lui est identique, ou qui comprend des parties d'un circuit d'authentification identiques. Le procédé d'authentification est alors démarré par les fonctions d'activation du procédé d'authentification (bloc 555) de chaque circuit 3, par exemple par un échange d'une première donnée. Une première étape est l'initialisation des circuits logiques des blocs 53. [0053] A une étape 62 (INITIAL STATE ID), les fonctions composant le dispositif d'authentification 55 sont initialisées. [0054] A une étape 63 (ID ENABLE), un signal de commande demande l'activation du mode d'authentification du circuit 3. [0055] A une étape 64 (ID RDY), il est vérifié si le mode d'authentification est prêt à être utilisé. Si l'activation de ce mode n'est pas possible (sortie N du bloc 64) alors l'étape suivante est à nouveau l'étape 62, sinon (sortie Y du bloc 64) l'étape suivante est l'étape 65. 7 [0056] A l'étape 65 (START ID), le procédé d'authentification commence. [0057] A une étape 66 (R DET), le premier code R est généré par la fonction de signature du bloc 551, à partir des états des points numériques 51. Les itérations commencent alors et le code est modifié au fil de celles-ci, pour fournir finalement la signature finale Rf. [0058] A une étape 67 (Cycle End ?), la fonction du bloc 553 vérifie si le nombre d'itérations défini par la fonction du bloc 553 est atteint. Si c'est le cas (sortie Y du bloc 67) l'étape suivante est unc étape 68 (COMP). Si ce n'est pas le cas (sortie N du bloc 67) alors l'étape suivante est à nouveau l'étape 66, et la fonction de signature continue les itérations. [0059] A l'étape 68, la signature finale Rf du circuit 3 est obtenue, et elle peut être comparée à la signature obtenue parallèlement par le circuit auprès duquel le circuit 3 souhaite s'authentifier. Si les deux signatures sont identiques alors l'authentification a réussi, sinon elle a échoué. [0060] Selon une variante de réalisation, l'étape 68 peut être unc étape de liaison vers d'autres calculs prenant en entrée la signature finale Rf. [0061] Divers modes de réalisation et variantes ont été décrits. L'homme de l'art comprendra que certaines caractéristiques de ces divers modes de réalisation et variantes pourraient être combinées, et d'autres variantes apparaitront à l'homme de l'art. [0062] Les modes de réalisation décrits sont des modes de réalisation simplifiés pour exposer les principes de l'authentification réalisée. Les calculs et les échanges pourront s'accompagner de toute mesure de protection par ailleurs usuelle, par exemple un chiffrement symétrique ou asymétrique des transmissions entre les circuits à authentifier. [0063] De plus, la fonction à sens unique du circuit 5 peut être utilisé de la même façon qu'une fonction à sens unique, c'est-à-dire, par exemple, pour un procédé d'authentification de circuit, pour un procédé de chiffrement de données, ou pour un procédé de hachage de données. 8 [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] [Revendication 5] [Revendication 6] [Revendication 7] [Revendication 8] [Revendication 9] [Revendication 10] [Revendication 11] [Revendication 12] [Revendication 13] REVENDICATIONSProcédé de mise en oeuvre d'une première fonction à sens unique par un dispositif (3) dans lequel : - une deuxième fonction (551) prend en compte des états de noeuds numériques (51) répartis dans des circuits (53) du dispositif (3) mettant en oeuvre des troisièmes fonctions ; - lesdits états des noeuds (51) dépendent d'un résultat (R) précédent de la deuxième fonction ; et - dans lequel la deuxième fonction (551) et/ou les troisième fonctions sont des fonctions à sens unique. Procédé selon la revendication 1, dans lequel la deuxième fonction (551) est une fonction de signature. Procédé selon la revendication 1 ou 2, dans lequel la deuxième fonction (551) est une fonction de hachage. Procédé selon l'une quelconque des revendications 1 à 3, dans lequel ledit résultat (R) précédent de la première fonction influe sur les troisièmes fonctions. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel ledit résultat (R) est utilisé, en outre, pour modifier des signaux d'horloge du dispositif (3). Procédé selon la revendication 5, dans lequel ledit résultat (R) est utilisé, en outre, pour modifier des signaux d'horloge influant sur les troisièmes fonctions. Procédé d'authentification d'un premier dispositif électronique par un deuxième dispositif électronique, utilisant le procédé selon l'une quelconque des revendications 1 à 6. Procédé de chiffrement utilisant le procédé selon l'une quelconque des revendications 1 à 6. Procédé de hachage utilisant le procédé selon l'une quelconque des revendications 1 à 6. Dispositif électronique (3) comprenant. un circuit adapté à mettre en oeuvre le procédé selon l'une quelconque des revendications 1 à 6. Dispositif selon la revendication 10, étant un consommable. Dispositif selon la revendication 10 ou 11, étant adapté à mettre en oeuvre le procédé selon la revendication 7. Dispositif selon la revendication 10 ou 11, étant adapté à mettre en oeuvre le procédé selon la revendication 8. 9 [Revendication 14] Dispositif selon la revendication 10 ou 11, étant adapté à mettre en oeuvre le procédé selon la revendication 9.