Brevet FR3094111A1 — publié le 20200925

Description Titre de l'invention : Dispositif de sécurisation de puces élec- troniques, de leurs données, de leurs périphériques de commu- nication, et des objets auxquels ils sont rattachés. Domaine technique 100011 Le domaine technique de l'invention est la sécurité de l'électronique, des données nu- mériques, de l'« Internet des Objets » et de l'and-contrefaçon. Technique antérieure [0002] 11 existe de nombreux types de puces électroniques contenant des données, allant du simple circuit à mémoire non volatile très peu sécurisé, jusqu'à l'« Élément Sécurisé » (dit ES) ou « Smart Card » doté de microprocesseurs cryptographiques, dont la manipulation malveillante des données (espionnage, falsification, etc.) est bien plus ardue, mais comporte encore des faiblesses en rapport aux nouveaux usages. En effet, l'utilisation des ES est de plus en plus rependue, et dépasse aujourd'hui le cadre de son utilisation historique qu'est le paiement par carte bancaire. [0003] Les puces sont souvent solidarisés physiquement et associés informatiquement à des objets (on parle d'« Internet des Objets » ou IoT pour « Internet of Things »), du simple cas historique du support carte plastique pour les carte de paiement, jusqu'au sac de mode en passant par le « bijou connecté ». On les utilise aujourd'hui pour, l'anti-contrefaçon d'objets, la cryptomonnaie (billets ou porte-monnaie sans contact), la gestion de « contrats intelligents » (« smart contracts ») sur « blockchain », le contrôle d'accès aux bâtiments, l'identification des personnes, la gestion et/ou le transport de données confidentielles sensibles, etc. [0004] Les verrous de sécurité proposés pour le cas d'utilisation historique ne répondent pas aux nouvelles problématiques posées par les nouveaux usages. Le paiement par carte bancaire est en effet centralisé et l'ES est assigné à un seul porteur. Un code PIN suffisait pour protéger l'utilisation de la carte par un tiers, les mises à jour de sécurisé étaient centralisées, et. la maîtrise des terminaux de paiement permettaient d'endiguer les tentatives de débits sans contact à l'insu des porteurs. Or, les objets loT ou les billets de cryptomonnaies peuvent être transmis de la main à la main, changeant ainsi de porteur (propriétaire). La décentralisation permise par cette la cryptographie asymétrique engendre des innovations et des nouveaux usages qui remettent en cause les principes de sécurisation actuels. Cette cryptographie asymétrique utilisée dans la technologie blockehain impose une gestion décentralisée du risque et des mises à jour de sécurité, au niveau des puces, et des terminaux avec lesquels elles interagissent. Finalement, les fonctionnalités des ES ne sont pas toujours exploitables en raison de 2 certaines limitations, comme l'impossibilité de solliciter leurs capacités cryptographiques en mode « écriture », notamment via le système d'exploitation iOS (version 12 à ce jour) de Apple. [0005] Lorsque cc n'est pas le composant qui est attaqué, l'intrusion peut de produire au niveau des périphériques de communication (surtout pour les périphériques radio dits « sans contact »), il existe des solutions visant à encadrer les fonctionnalités radio. Comme le délai prolongé de contact pour limiter les attaques furtives, ou les boucliers interceptant les ondes radio (p. ex. portefeuilles faraday pour les cartes de paiement sans contact). [0006] Finalement, le lien physique qui solidarise une ou plusieurs puces avec un ou plusieurs objets (par lots) auxquels elles sont associées est souvent faible. Ce qui implique un risque de dissociation (ou de duplication) malveillante de la puce, mettant ainsi à mal son lien avec l'objet original (p. ex. pour la lutte contre la contrefaçon). Il existe des solutions comme la détection de crochetage physique de la puce ou son autodestruction. Mais elles sont insuffisamment fiables et parfois trop lourdes de conséquences, notamment lors d'un crochetage légitime (p. ex. réparation de l'objet). Exposé de l'invention [0007] En réponse à l'hétérogénéité croissante des cas de figure relatifs à ces problé- matiques, et la multiplication des risques qui en découlent, l'invention propose une panoplie dc solutions de sécurité innovantes, matérielles et informatiques, au sein d'un dispositif innovant, complet et flexible, configurable pour chaque cas de figure. Combinées et paramétrées de manière adéquate au sein du dispositif ces solutions, spécifiques à l'invention ou bien existantes, permettent d'apporter un niveau de sécurité proportionnel aux risques inhérents à chaque cas d'utilisation, sans en freiner l'usage. [0008] L'exposé décrira en premier Heu chaque solution de sécurité innovante, puis leur uti- lisation au sein du dispositif [0009] Scellé de la puce : [0010] L'utilisation de puces électroniques dans le cadre de l'1oT pose un problème majeur quant au scellé qui rattache physiquement chaque puce à l'objet auquel elle est identifiée informatiquernent (par un identifiant unique). D'autant plus lorsque l'usage de la puce est axé sur la traçabilité ou l'anti-contrefaçon d'un objet en particulier. En effet, que la puce soit simple et peu sécurisée (p. ex. circuit à mémoire non volatile contenant l'identifiant) et facile à contrefaire, ou au contraire très sécurisée et difficile à contrefaire (p. ex. ES), faut-il encore être certain, du point de vue de l'utilisateur, que l'objet auquel la puce est rattachée est bien l'objet originel authentique. C'est-à-dire que la puce n'est pas contrefaite, et/ou que l'objet n'a pas été lui-même contrefait ou interchangé avec une autre puce en amont de la chaîne de distribution. Une partie signi- 3 ficativc du dispositif de l'invention se situe donc au niveau de l'intégrité du scellé qui lie physiquement chaque puce à son objet attitré. [0011] Dans un cadre IoT, le scellé solidarisant la puce (2- figure 1) à l'objet (1 - figure 1) auquel elle est associée informatiquement doit être constitué de motifs uniques aléatoires (projections de peinture, fibres ou fils de couleurs, paillettes, broyat, fibres de bois, etc.). Le motif doit être constitué de matières résistantes à l'usure. Le choix des matériaux et leur agencement doit rendre irréversible l'altération du motif, afin de rendre visuellement évidente toute tentative de manipuler, trafiquer ou crocheter le scellé. Dans le cas d'un motif englué dans un matériau (verni, plastique, résine, etc.), celui-ci doit doit être préférablement lui-même l'adhésif, ainsi la dissolution du matériau (en vue de la réutilisation du motif par un faussaire pour certifier un objet factice) entraînera la dissolution du motif lui-même, rendant ainsi impossible sa réutilisation. Le motif peut être appliqué au scellé, à certaines parties de l'objet, ou à la totalité de l'objet. Le scellé (5 - figure 2) peut noyer dans sa masse un fil électrique (6 - figure 2) dont l'interruption de conductivité serait détectée par une puce (7 - figure 2) signalant ainsi une tentative de manipulation du fil électrique. [0012] Une fois cette étape achevée, le ou les scellés sont reproduits en haute résolution multimédia (p. ex. scans, photos, stéréoscopie, scan 3D, vidéos), associés à l'identifiant unique de l'objet dans une base de données, et rendus accessibles via un serveur et un réseau informatique (4 - figure 1) au périphérique de lecture (3 - figure 1) qui permettra d'effectuer la vérification (typiquement un smartphone connecté à Internet). Dans le cas où la puce est un ES, ces données seront préférablement signées cryptographiquement pour certifier l'intégrité des données renvoyées par le serveur, voir chiffrées cryptographiquement pour augmenter la confidentialité (en particulier pour des bases de données publiques). [0013] Ainsi, pour vérifier l'authenticité de la puce, de l'objet et de leur lien originel incarné par l'intégrité du scellé, l'utilisateur récupère l'identifiant unique enregistré sur la puce via un périphérique de lecture (p. ex. smartphone, avec ou sans contact). Ensuite, le périphérique de lecture récupère sur le réseau les reproductions multimédias des motifs originaux prises au moment du scellé, et les présente à l'utilisateur via l'interface (3 - figure 1). L'utilisateur pourm alors s'assurer par comparaison (visuelle et/ou assistée par ordinateur via des algorithmes de « computer vision », pour le repérage dynamique et la comparaison des motifs, calibration des couleurs et « machine lemming ») de l'authenticité du scellé, et donc de l'objet. [0014] Ce scellé peut être accompagné d'autres scellés, garantissant l'intégrité d'autres parties sensibles de l'objet (8 - figure 2) où ne se trouve pas la puce, ou aussi pour protéger les fils électriques (5, 6 - figure 2) de détection d'ouverture de tentatives de crochetage (p. ex. un « pontage » de préservation de la continuité malgré la rupture du fil laisserait une trace visible). La numérisation n'est pas limitée aux scellés, elle peut aussi servir à inspecter le taux d'usure, d'entretien, etc. de l'objet au fil du temps. L'objet peut aussi comporter plusieurs puces, chacune ayant son propre identifiant, niais renvoyant toutes sur le même identifiant unique de l'objet. Ainsi un objet volumineux peut présenter plusieurs puces, comme autant de points d'accès à l'identification. Ou bien pour un objet authentifié/certifié par différents acteurs, chacun apposant sa puce, niais référant chacune au même identifiant unique de l'objet (p. ex. expertise d'oeuvres d'art anciennes). [0015] Le scellé et ses motifs aléatoires uniques peuvent être l'objet lui-même dans son in- tégralité, ou en partie (p. ex. fibres de couleurs ou paillettes injectées dans le plastique constituant l'objet). Cela peut être intentionnel, comme pour le plastique d'une carte à puce, ou naturel (p. ex. les objets en bois ayant chacun des fibres uniques, 9 - figure 2). [0016] Le ou les motifs aléatoires naturels peuvent aussi être ceux du contenu (p. ex. plantes, racines, aromates, minéraux, etc.) de l'objet si celui-ci est un récipient permettant l'inspection extérieure (p. ex. transparent), et que le contenu est suffisamment maintenu en place pour conserver son agencement initial. [0017] Dans le cas d'un récipient (figure 2), le scellé peut ne pas se trouver directement imbriqué avec la puce si celle-ci se trouve à l'intérieur du récipient (7 - figure 2), mais au niveau des fermetures du récipient, dédiées à cet effet (p. ex. couvercle, - figure 2) ou bien dont le contournement peut aboutir à l'ouverture du récipient (p. ex. paroi de verre collée, 10 - figure 2). Ceci, dans le cas où l'accès physique à la puce implique forcément : [0018] - l'altération du ou des scellé(s) apposés aux fermetures du récipient, la création d'ouvertures sur l'objet (p. ex. perçage), il est préférable dans ce cas que les parties de l'objet susceptibles d'être percées soient elles aussi numérisées, afin de pouvoir comparer l'intégrité de l'objet avec son état originel, en cas de suspicions de perçage. [0019] figure 2: le fil électrique de détection d'ouverture (6) court sur l'extérieur du récipient, solidarisé et protégé par son scellé (5), il pénètre l'intérieur du récipient via de petits trous percés dans la paroi au niveau de la puce (7), à laquelle il est connecté. [0020] Antenne(s) auto-interférante(s) : la puce peut disposer d'une antenne qui se trouve sur un support permettant de modifier manuellement sa plastique, par exemple un support plat pliable avec une rainure. La forme de l'antenne est conçue de telle manière que dépliée elle soit en pleine capacité de réception, en rapport à la longueur d'onde radio pour laquelle elle est prévue. En revanche, pliée, certaines de ces parties interfèrent de manière à diminuer la capacité de réception de l'antenne, au point de la rendre inutilisable avec les appareils de lectures disponibles dans le commerce (figure 3). [0021] La partie interférente peut aussi ne pas faire partie intégrante de l'antenne, mais être composée d'un ou plusieurs éléments autonomes radioconducteurs, pouvant interférer avec l'antenne par pliage. L'interférence peut se faire par perturbation de la radioconductivité, mais aussi par obstruction ou absorption des champs électromagnétiques (p. ex. ferrite) de type « bouclier ». [0022] Ceci empêche les attaques radio à distance sans contact lorsque le support est « au repos » (plié), n'exposant le périphérique de communication sans contact uniquement au moment de sa sollicitation active par l'utilisateur, lorsqu'il déplie, et donc maîtrise, le support. [0023] La partie interférente peut elle même être une seconde antenne, disposée de l'autre côté de la rainure, et connectée en parallèle à la première antenne. Ainsi, les zones de réception radio offrent plus de surface et d'options lorsque le support est déplié, et si l'usure de la rainure rompt la connexion, la puce est toujours accessible sans contact via l'antenne se trouvant du même côté que cette dernière (figure 4). [0024] La matière du support pourra être agrémentée d'un motif aléatoire, afin de combiner la méthode du scellé unique à celle de l'antenne auto-interférante au sein du dispositif, augmentant ainsi encore la sécurité. [0025] Antenne amovible : [0026] Plutôt que de laisser l'antenne connectée à la puce, en proie aux attaques à distance, ou bien d'avoir à protéger ce périphérique de communication encombrant, l'invention propose de rendre l'antenne amovible, via une prise dotée d'une paire de bornes reliée à la puce (p. ex. plots La et Lb dans le cas de la norme ISO/IEC 14443). Ainsi, aucune attaque sans contact n'est possible, mais ce mode de communication demeure activable, en branchant une antenne compatible sur la prise prévue à cet effet. L'avantage d'une telle solution par rapport aux périphériques de contact classique (p. ex. norme ISO/1EC 7816) réside dans le fait que les périphériques de lecture sans contact sont beaucoup plus rependus (« smartphones » et tablettes). La puce demeure donc largement plus utilisable que si elle ne présentait qu'une interface contact classique. Cela nécessite toujours un périphérique supplémentaire qu'est l'antenne amovible, mais cette dernière est plus compacte, moins coûteuse à fabrique, et ne nécessite généralement pas de logiciel (ou pilote) supplémentaire ni de connectique. [0027] L'invention propose une prise magnétique afin d'éviter les contraintes mécaniques du branchement (relief disgracieux ou encombrant, emboîtement hasardeux, etc.), les lamelles constituant la prise côté antenne seront stabilisées en deux points par leur forme de fourche, et maintenues en contact avec la prise côté puce par le magnétisme et l'effet ressort des lamelles. [0028] Cette mise en oeuvre nécessite un boîtier (ou « packaging ») spécifique pour la puce (figure 5) : [0029] Les plots de connexion de l'antenne (La et Lb, 12 - figure 5) de la puce 6 (11 - figure 5) sont généralement conçus pour une connexion électrique de type « de puce retournée » (« flip chip ») ou pontage (« wirc bonding »), etc. Nous utiliserons dans cet exemple la méthode de pontage, consistant à souder (15 - figure 6, par laser, ultra-sons, etc.) deux fils électriques (13 - figure 6), un pour chaque plot (12 - figure 6). Le fil au plot Lb sera aussi soudé par son autre extrémité à une borne (14- figure 6) cylindrique, conductrice et ferromagnétique (p. ex. fer, acier inoxydable, nickel, cobalt, etc.). Le tout devra ensuite être emprisonné par moulage dans un isolant protecteur (typiquement de la résine d'époxy) qui constituera le boîtier (15 - figure 7). Le tout laissant dépasser à l'extérieur du boîtier : [0030] - le fil relié en interne au plot antenne La de la puce (13 - figure 7), la borne cylindrique reliée en interne au plot antenne Lb de la puce (14- figure 7). [0031] Une fois le packaging conçu, il pourra être intégré à un objet. Si le support dans lequel sera scellé le boîtier possède lui-même des parties conductrices d'électricité, une d'elles pourra servir de masse connectée au plot antenne La dc la puce, via le fil dépassant du boîtier (13- figure 7). Cc sera le cas dans cet exemple, pour lequel le support sera une bague en or (20 - figure 8). Dans le cas contraire, le rajout d'une bague (ou « rondelle ») conductrice reliée au fil dépassant du boîtier en lieu et place de la plaque (17 - figure 10) sera nécessaire. Une cavité (16- figure 8) devra être prévue ou creusée afin de recevoir le boîtier (15- figure 8). Ce dernier devra être collé au fond de la cavité (15 - figure 9), et le fil externe au boîtier connecté (p. ex. soudure laser, sertissage, etc.) à la masse du support (13 - figure 9). La cavité sera ensuite recouverte d'une plaque métallique (17 - figure 10, de même composition que le support, ici de l'or) percée d'un trou circulaire plus grand que la borne cylindrique du boîtier, avec laquelle elle ne devra en aucun cas entrer en contact. Cette plaque sera ensuite solidarisée au support par soudage (18 - figure 10, dans le domaine présent de la bijouterie au laser, invisible après polissage). En aucun cas une méthode impliquant de trop fortes contraintes thermiques ou mécaniques ne devra être employée, à aucun moment du procédé, afin de ne pas endommager la puce. Ensuite l'espace vide à l'intérieur de la cavité, ainsi que l'espace séparant le trou de la plaque et la borne du boîtier devront être comblés par une matière isolante (p. ex. résine, laque, etc.). Cette matière pourra présenter un motif aléatoire obtenu par mélange de matières ou de teintes hétérogènes, afin de combiner la méthode du scellé unique à celle de l'antenne amovible au sein du dispositif, augmentant ainsi encore la sécurité. L'appendice que constitue la borne cylindrique devra être sectionné au raz du support métallique (14- figure 11), et poli (à tâtons pour protéger la puce des températures lors du polissage) avec les autres éléments constituant la surface que sont le support (20- figure 11), l'isolant (19- figure 11) et la soudure de la plaque (18 - figure 10). 7 Jusqu'à ce que la surface devienne parfaitement lisse, uniforme et sans aspérité (soudure devenue invisible, figure 11). La prise côté support est maintenant opérationnelle, sa masse du support (20- figure 11) offrant une possibilité de connexion électrique vers le plot antenne La de la puce, et respectivement la home cylindrique (14- figure 11) vers le plot antenne Lb de la puce. La forme et le motif de la prise pourront être standardisés en fonction du type d'antenne qu'elle est supposée recevoir (p. ex. pour chacune des six différentes classes d'antennes PICC ou « Proximity TC Card » définies dans les normes ISO/IEC). [0032] La partie antenne (21 - figure 12) reprendra la forme et les matériaux d'une antenne sans contact standard, dotée d'une protection (22- figure 12, moulée ou laminée, transparente ou opaque, etc.). La prise sera composée de lamelles de contact souples, recourbées en bout, et à mémoire de forme (23 - figure 12) : [0033] - une double en fourche (25- figure 13), constituée d'une paire de lamelles, connectée à une extrémité de l'antenne (21 - figure 13), destinée à être connectée au plot antenne La de la puce via la masse du support de la puce, une centrale (26 - figure 13), connectée à l'autre extrémité de l'antenne, légèrement plus haute que les lamelles en fourche, isolée de la lamelle double (24- figure 13), et magnétique afin d'adhérer à la borne a cylindrique du boîtier de la puce, connectée au plot antenne Lb). [0034] En présentant l'embout recourbé de la lamelle centrale magnétique (26 - figure 13) devant la prise du support (figure 11), celle-ci se verra entrer en connexion avec la borne cylindrique par effet magnétique (28 - figure 14). L'effet ressort offert par la mémoire de forme des lamelles entraînera - du fait de la différence de hauteur entre leurs embouts - les lamelles en fourche à entrer en contact avec la masse du support (27 - figure 14). Le contact en deux points offert via la lamelle double par pression (effet ressort des lamelles), combiné au contact par attirance magnétique offert par la lamelle centrale, entraîne la stabilité du contact, sans maintien manuel ni attache mécanique. Les deux extrémités de l'antenne, ainsi connectées par intermédiaire à leurs deux plots antenne respectifs de la puce (La et Lb), permet à l'antenne de remplir normalement son rôle de périphérique de communication radio pour la puce. [0035] De plus, cette antenne amovible peut être rajoutée aux terminaux de lecture existants (p. ex. collée au dos des « smartphones » ou intégrée à leurs boîtiers de protection), pour une plus grande facilité d'utilisation et de diffusion de la technologie sur le parc de terminaux existants. [0036] L'antenne amovible peut être montée sur des glissières (31 - figure 15) destinées à être collées sur le terminal de lecture (figure 16). De façon à ce que les lamelles (35 - figure 15) soient rétractées, et la zone du périphérique de communication radio (38 - figure 16) non obstruée, en mode « inactif » (figure 17). Lorsque l'antenne est 8 déployée en mode « actif », par son déplacement sur les glissières, elle se trouve opérationnelle en face du périphérique de communication radio du terminal, et les lamelles de contact déployées (figure 18), prêtes à entrer en contact avec la prise de la puce. [0037] Détection de continuité : [0038] Certaines puces sont dotées d'une ou plusieurs paires de plots, entre lesquels il est possible de tester la continuité électrique. Au moment de la communication avec la puce si celle-ci n'a pas de source électrique propre (alimentation ad hoc, par contact, ou sans contact, p. ex. grâce à la « Communication en Champ Proche » dit CCP, ou NFC pour « Ncar Field Communication »), ou passée si la puce dispose dune source électrique (p. ex. par pile). Cette détection de continuité électrique est une technique déjà répandue, elle permet notamment de détecter des tentatives d'ouverture sur un produit. Un fil électrique est scellé sur l'ouverture du produit, et connecté par chacune de ses deux extrémités à une paire de plots dédiée à cet usage sur une puce. Si la continuité électrique s'est arrêtée, la puce l'enregistre et indique que le fil a été rompu lors de l'ouverture du produit, et donc que son intégrité a été corrompue. [0039] L'invention propose d'adapter l'usage de cette fonctionnalité à la réouverture et re- fermeture légitime du produit. L'ouverture du produit peut en effet entraîner une autre conclusion que sa corruption, sa valeur peut même se voir augmenter si cette ouverture témoigne de son bon entretien. Dans le domaine des montres de luxe, il est par exemple important que le fond de boîte ne soit ouvert que par des réparateurs légitimes. L'invention permet donc aux acteurs légitimes de valider les détections d'ouvertures ou fermetures enregistrées par la puce, lorsqu'ils en sont à l'origine. [0040] Dans le cadre du dispositif de l'invention, cela peut être mis en oeuvre par une dé- claration de l'acteur légitime. Déclaration contenant l'identifiant unique du produit et le numéro des ouvertures et fermetures dont il prend la responsabilité, dans la chronologie de ces détections enregistrées par la puce. [0041] Dans le cadre spécifique de l'invention, en utilisant le modèle de « firmware » proposé pour orchestrer le dispositif (c.f. « dispositif logiciel embarqué » ci-dessous), le numéro des détections d'ouvertures et fermetures pourra être déduit du paramètre switched_n. La technologie d'authentification des acteurs, des puces et des objets étant - dans ce cadre - la cryptographie asymétrique ECDSA, la déclaration pourrait s'exprimer suivant le format d'une sérialisation de données sous forme de chaîne de caractères. Elle-même signée cryptographiquement par l'acteur. Supposons que l'acteur veuille prendre la responsabilité des ouvertures et fermetures numéro 10 et ii, la sérialisation des données pourrait être formatée comme suivant : [0042] clé publique ECDSA de la puce + caractère séparateur + clé publique ECDSA de l'acteur + caractère séparateur + 10,11 [0043] Cette chaîne serait ensuite signée par la clé privée de l'acteur. Finalement, la chaîne 9 sérialisée accompagnée de sa signature peut être publiée, en privé, ou en public (p. ex. sur blockchain). L'interface utilisateur du terminal de vérification (p. ex. « smartphone ») pourra donc facilement permettre de vérifier avec certitude qui a ouvert ou fermé le produit. [0044] L'invention propose aussi d'utiliser la détection de continuité électrique pour dé- clencher des événements lors de la destruction de l'objet sur lequel se trouve la puce. La destruction de l'objet entraînant la coupure du fil, entraînant elle-même la divulgation d'une information confidentielle, donnant accès à certains services liés à la fin de la vie de l'objet. Cela peut être : [0045] - un porte-monnaie blockchain physique jetable, sur un support plat (type billet ou carte de paiement en plastique), qui se stocke ou s'échange physiquement de la main à la main, et lorsqu'on le découpe (p. ex. aux ciseaux) pour le détruire, on coupe le fil qui divulgue la clé privée du porte-monnaie, un code coupon de récompense pour la personne apportant l'objet pour sa destruction dans un centre de recyclage, etc. [0046] Dans le cadre spécifique de l'invention, en utilisant le modèle de « firmwarc » proposé pour orchestrer le dispositif (cf. « dispositif logiciel embarqué » ci-dessous), la configuration de cet usage se fera via l'appel des fonctions ndef key add retrieve safeguard et ndef data culti retrieve safeguard via le paramètre wire. [0047] Code premier propriétaire : [0048] Dans un cadre IoT, pour les identifiants uniques d'objets ne possédant peu ou pas de capacité logicielle visant à renforcer leur sécurité (simple circuit électronique à mémoire non volatile très peu sécurisé, ou même un simple identifiant imprimé implémentant le scellé à motif unique proposé par l'innovation), le dispositif de l'innovation propose de délocaliser ces contraintes logicielles vers un service distant accessible par réseau. [0049] Ce service ne peut être administré que par le (ou les) propriétaire(s) de l'objet. L'objet nouvellement enregistré n'ayant aucun propriétaire assigné, la primeur de sa propriété est réservée à la personne découvrant un code d'accès livré avec l'objet (caché dans l'emballage, code à gratter, etc.). Ce code ne peut être confondu avec l'identifiant unique, qui peut être dérobé avant que l'objet arrive dans les mains de son premier propriétaire (interrogation radio sans contact de la puce au travers de la boîte, identifiant unique visible de l'extérieur, etc.). [0050] Cette innovation aura pour effet de dissuader les faussaires, car quand bien même ils dupliqueraient le code de l'objet pour faire des faux, seul le nom du vrai propriétaire serait affiché par le service distant. Seul le titulaire du compte propriétaire ayant la pos- sibilité de changer le propriétaire, le faussaire ne pourra pas revendre sa contrefaçon (d'autant plus si l'identifiant ou la puce est scellée avec un scellé à motif unique proposé par l'innovation). Cette innovation est aussi une protection contre le vol, car que l'objet soit faux ou volé, il ne peut être revendu sans l'accord de l'ancien propriétaire. [0051] La fonction minimale du service doit donc être l'assignation de propriété, mais elle n'y est pas limitée, elle peut aussi proposer des services à forte valeur ajoutée : SAV, publicité, recyclage, manuel d'utilisation, forums, revente, etc. [0052] Défi d'authenticité par cryptographie asymétrique déterministe : [0053] La cryptographie asymétrique permet au détenteur d'une paire de clés (dites privée et publique) de prouver qu'il est bien en possession de la clé privée, tout en la gardant secrète, ne divulguant seulement que la clé publique. Il suffit en effet d'envoyer un message généré au hasard au détenteur de la paire de clés, et de lui demander de le signer. Connaissant le résultat de sa signature et la valeur de la clé publique, on peut vérifier algorithmiquement qu'il est bien le seul et unique possesseur de la clé privée. [0054] Le fait d'inclure dans la puce une (ou plusieurs) paire de clés, ainsi que de telles capacités de calcul cryptographiques au sein de la puce, permet à la puce de prouver qu'elle détient la clé privée, et qu'elle est par conséquent la seule et unique puce légitime. Associer une telle puce avec un objet, permet du même coup à l'objet de garantir lui aussi son authenticité. D'autant plus lorsque cette authenticité est renforcée par l'implémentation d'autres innovations permises par le dispositif (p. ex. scellé à motif unique, détection de crochetage, etc.). [0055] Cependant, le défi mathématique envoyé à la puce pour prouver qu'elle possède bien la clé privée repose sur le fait qu'un nouveau message aléatoire (c.-à-d. non déterministe) soit envoyé à la puce pour chaque vérification. En effet, si ce message pouvait être connu à l'avance (c.-à-d. déterministe), un faussaire ayant eu en possession la puce aurait pu enregistrer toutes les signatures valides, et les insérer dans une fausse puce, qui se comporterait apparemment comme la puce originelle authentique. L'aspect non déterministe du message aléatoire est étroitement lié au fait qu'il faille pouvoir l'envoyer à la puce pour chaque défi d'authentification. Malheureusement, certains terminaux n'ont pas la capacité d'envoyer des messages aux puces sans contact (NEC), en particulier les « smartphones » iPhone et tablettes iOS de Apple. [0056] C'est pourquoi l'innovation propose dans le dispositif une méthode déterministe de cryptographie asymétrique, pour l'authentification de la clé privée présente dans la puce. Ce qui dispense ainsi le besoin d'envoyer le message aléatoire à la puce, permettant l'authentification via des terminaux ne disposant pas de cette fonctionnalité. [0057] En pratique, l'invention pallie aux limitations de l'envoi de données par Apple via une émulation déterministe de l'envoi de données. L'ES sait quelles données il doit 11 recevoir, ce qui dispense iOS de les envoyer. Cette approche déterministe pourrait être exploitée par malveillance pour contrefaire l'ES. Mais elle permet aussi à l'ES original de conserver une avance permanente comparé aux possibles contrefaçons de l'ES. Ce qui, avec l'appui des smartphoncs Android composant l'écosystème, rend, de façon dissuasive, virtuellement impossible les tentatives de contrefaçon. [0058] À chaque fois que l'ES est interrogé par le smartphone, celui-ci signe des données qui n'ont jamais été signées auparavant de façon déterministe. Cela se fait par exemple par l'incrémentation d'une variable entière (« integer »). La clé publique, la variable et la signature sont ensuite récupérées par le srnartphone (il n'y a pas de limitation iOS en lecture) et publiées de façon anonyme sur un serveur public (décentralisé en « DHT » pour « Distributcd Flash Table », ou centralisé), afin de comparer l'avance de l'ES original avec ses possibles contrefaçons en circulation. [0059] À chaque défi d'authentification (ou « scan ») en lecture seule, l'ES incrémente la variable interne N. et renvoie un message NDEF Smart Poster sour la forme d'une URI : https://example.com/getapp/#PUBKEY-N-SIG Où PUBKEY est la clé privée ECDSA de l'ES et SIC la signature de la chaîne "PUBKEY-N". [0060] Dans le cadre spécifique de l'invention, en utilisant le modèle de « firmwarc » proposé pour orchestrer le dispositif (cf. « dispositif logiciel embarqué » ci-dessous), la génération de cette URI se fait via la fonction tutti record stnart_postera [0061] L'application Android ou iOS enregistre IPUBKEY: In:N, sig: SIG11 sur une base de données distribuée de type DHT (seuls les enregistrements avec une signature valide sont acceptés ce qui réduit considérablement le risque (l'attaque). [0062] 11 n'est pas possible de copier l'ES car la clé privée est inaccessible, en revanche il est possible de créer un ES qui émulerait son fonctionnement en fournissant les enregistrements générés par l'ES original. Le premier obstacle imposé au faussaire est la création d'un tel ES, qui doit aussi être identique en apparence, si l'implémentation est combinée à la solution du scellé à motif unique. [0063] Si le faussaire ne crée pas d'ES spécifique, mais utilise un modèle de puce standard existant sur le marché, revoyant toujours la même URI par défaut, il suffira au terminal de scanner la puce à deux reprises pour savoir si c'est une puce standard (qui renverra toujours la même URI, et sera donc disqualifiée). [0064] Dans le cas où un ES spécifiquement dédié à la contrefaçon était créé, le faussaire devrait enregistrer une centaine de messages Smart Poster NDEF générés par l'ES original, les enregistrer dans le faux ES, qui renverra un message valide pour les 100 prochains scans, afin que l'objet soit suffisamment éloigné géographiquement lorsque l'ES n'aura plus de messages valides en mémoire. [0065] À chaque scan, l'application Android/i0S interrogera la DHT pour connaître la dernière valeur de N, si celui-ci est supérieur à celui renvoyé par l'ES, cela signifie que 12 l'objet original à été scanné en parallèle, et que celui que l'utilisateur a en main est un faux. Le faussaire doit donc conserver l'objet original suffisamment longtemps pour que le faux circule suffisamment loin de lui, ajouté à cela la difficulté de reproduction du scellé unique, et des options de suivit (« supply chain ») qui permettent de remonter jusqu'à lui. [0066] Dans le cas où l'objet original ne serait pas retiré de la circulation, il suffit d'un scan Android/iOS de l'objet original pour que les faux soient disqualifiés. De plus dans le cas d'Android, l'application envoie un second message aléatoire dynamique (non déterministe) à signer, si l'opération échoue, l'utilisateur est averti que l'ES est corrompu. [0067] L'application iOS préviendra l'utilisateur que seule l'application Android peut fournir une certitude absolue, et que malgré sa fiabilité elle ne convient pas à un usage professionnel. Étant donné qu'il y aura vraisemblablement des semis intermédiaires entre la sortie d'usine et la mise en rayon par des professionnels, les conseils de bonnes pratiques feront que la probabilité qu'un faux soit détecté par un Android avant de pouvoir arriver jusqu'à l'utilisateur lambda possesseur d'iOS soit très haute, ainsi dissuasive pour le faussaire. Ces bonnes pratiques augmenteront la présence d'Android en début de chaîne, afin de protéger les iOS en fin de chaîne. [0068] Il ne sera pas non plus possible pour le faussaire de faire de multiples copies du même objet avec plusieurs ES clonées contenant les mêmes scans, car c'est toujours celle renvoyant le N le plus élevé qui est considéré comme légitime. Un faux ES disqualifie donc ainsi tous les autres faux ES. [0069] Autrement, l'ES peut incorporer une horloge alimentée par une batterie miniature (p. ex. lithium polymère), définitivement initialisée à l'heure universelle UTC lors de la fabrication de l'ES. Cela permet de communiquer au smartphone l'heure interne de l'ES, signée, lorsque celui-ci est interrogé. L'heure de vérification étant imprévisible, cela permet d'effectuer une vérification non déterministe, en complément ou en remplacement des vérifications déterministes précédemment décrites. Ceci au travers de la cohérence entre le délai de plusieurs interrogations ou l'heure locale du smartphone. En effet, si deux interrogations successives sont effectuées à un intervalle de durée aléatoire (p. ex. entre 2 et 10 secondes, en tenant compte des centièmes de secondes), le faussaire n'aurait aucune capacité a avoir préalablement extrait de façon déterministe au même intervalle. Ou plus simplement, avec une seule interrogation de l'horloge interne en comparaison avec l'heure locale du smartphone. Mais en tenant compte d'une possible marge d'erreur de synchronisation des horloges (quelques minutes ou quelques heures selon l'âge de la puce, la fréquence de vérification et le niveau de sécurité souhaité). [0070] Une dernière mesure de sécurité peut-être optionnellement ajoutée pour prévenir la duplication. Lorsque l'ES est interrogé, la date, l'heure et les coordonnées géo- 13 graphiques du smartphone peuvent être rajoutées lors de l'enregistrement de la signature. De cc fait, en cas de tentative de duplication, il sera possible de détecter des incohérences des tracés géographiques sur lesquels les copies de l'ES se déplacent. On peut ainsi identifier les tentatives de duplication, alerter les utilisateurs, et envoyer une demande à l'ES authentique de signer sa position géographique actuelle afin de disqualifier les copies. [0071] Dispositif logiciel embarqué : [0072] Les différentes parties de l'innovation présentées jusqu'ici peuvent être combinées selon les circonstances du cas de figure au sein du dispositif Cependant, leur agencement et leurs fonctionnalités peuvent être décuplés lorsque le dispositif est orchestré au sein de la puce de façon logicielle. Un tel logiciel embarqué (ou « firmwarc ») ne peut cependant être implémenté que sur des puces offrant une certaine capacité de calcul (type ES). Ainsi qu'une accélération matérielle du calcul d'algorithmes de cryptographie asymétrique (RSA, DSA, ECDSA, etc.). [0073] Les spécifications logicielles ci-dessous décrivent une implémentation possible du dispositif via un système d'exploitation embarqué ou « firmware », permettant l'extension et l'orchestration du dispositif au sein d'une puce. Sa flexibilité de configuration peut s'adapter à chaque cas de figure, pour sécuriser aussi bien les parties matérielles (propres à la puce, ou à l'objet IoT auquel elle est associée), que pour sécuriser les données qu'elle contient, qui elles-mêmes peuvent contribuer à la sécurité de l'objet (p. ex. clé privée, code secret, etc.). [0074] La sécurité de la puce (p. ex. via le scellé à motif unique), de l'objet auquel elle est rattachée (p. ex. via le défi d'authentification cryptographique), et des données qu'elle transporte (p. ex. via l'antenne amovible) forment un un trio de sécurité interdépendant au sein du dispositif, chacun pouvant respectivement bénéficier de la sécurité apportée par chacun. [0075] En comparaison aux puces simples (p. ex. stockage de données basique n'effectuant pas ou peu de calculs mathématiques), les ES offrent en effet une capacité bien supérieure à gérer et à sécuriser le stockage, l'utilisation et le transport de données sensibles ou critiques. Dans le cadre de l'IoT ces fonctionnalités peuvent augmenter la sécurité de l'objet, et décupler la possibilité des usages qui lui sont liés. Une autre partie tout aussi importante du dispositif de l'invention vise donc à augmenter la sécurité spécifique aux ES (ou puces similaires). Mais ces inventions ne sont pas limitées au cadre IoT, elle peuvent bénéficier aux ES en tant que tel, hors-IoT, sans objet associé (hormis un support pratique et protecteur de l'ES commune une carte plastique), dans le but d'augmenter la sécurité du stockage, de l'utilisation et du transport physique de données au sein de l'ES. [0076] De par ses capacités logicielles, l'ES n'apporte pas seulement des innovations 14 relatives à la configuration des éléments de sécurisation déjà décrits dans le dispositif, niais aussi pour les données qu'il renferme. [0077] Le dispositif permet aux puces accessibles par plusieurs interfaces (avec et sans contact appelées « dual interface ») de limiter les fonctions selon le degré de sécurité de chaque interface. En effet, l'interface avec contact apparaît plus sécurisée que l'interface sans contact du fait qu'elle requiert une manipulation manuelle, et donc un accès physique à l'objet, afin de le connecter au périphérique de lecture. De cc fait, certaines fonctionnalités peuvent être redues accessibles uniquement via l'interface avec contact. Par exemple, si d'aventure la puce contient une donnée confidentielle critique, la présence de cette information peut être confirmée via les deux interfaces, niais la communication de cette donnée à l'extérieur de la puce ne peut se faire que via l'interface avec contact. [0078] La puce peut comporter une ou plusieurs paires de plots capables de détecter l'état de conductivité d'un ou plusieurs fils électriques reliant chaque paire de plots (ainsi que l'historique de l'état de conductivité : les plots ont-elles déjà été connectés par le fil ou non par le passé, indépendamment de l'état actuel). L'interruption de la conductivité du fil, réversible ou non (coupure du fil ou interrupteur), permet de rajouter des contraintes matérielles quant à l'exécution ou non de fonctionnalités critiques. [0079] Par exemple, un ES transportant une donnée confidentielle critique pourrait être configure de telle manière que le support de l'ES doive être endommagé de manière irréversible pour entraîner la coupure du fil (c.E partie « détection de continuité »). L'absence de conductivité détectée par l'ES active ainsi la possibilité de communiquer la donnée critique à l'extérieur de la puce, et son effacement après communication. Une telle configuration du dispositif ferait de ce type d'ES un support idéal sécurisé pour le transport d'information jetable à usage unique. Ou inversement, le fil scellé sur une partie (ou la totalité) de l'objet peut permettre d'en garantir l'intégrité : si la conductivité passée a été interrompue, cela signifie qu'une tentative de manipulation ou de crochetage du scellé (ou de l'objet) a été opérée. [0080] Les fonctions du logiciel embarqué permettent de : [0081] - Indiquer si les données présentes sur l'ES ont déjà été entre les mains d'un tiers qui aurait pu y avoir accès, afin de connaître le degré de confidentialité de ces données. Par exemple une clé privée de cryptographie asymétrique générée par l'ES aura un degré de confidentialité supérieur à une clé privée générée par un tiers et communiqué à l'ES. Par défaut, lorsque l'ES est interrogé, il fournit la liste des clés des données disponibles (selon le schéma clé/valeur). Lorsque l'utilisateur veut accéder à la valeur d'une de ces données, il doit en indiquer la clé, II est cependant possible de marquer certaines entrées comme « cachées », elles ne seront ainsi pas listées, et seul l'utilisateur connaissant la clé peut y accéder. L'accès à certaines fonctions et données peut être limité par des « garde-fous », l'ajout, la suppression et la mise à jour de ces garde-fous peuvent eux-mêmes être limités par des garde-fous de façon récursive. Les limitations spécifiées par ces garde-fous peuvent porter sur : - un code (correspondant à un mot de passe, identifiant unique biométrique, etc.), - l'interface de communication choisie (avec ou sans contact), - le délais de maintien de l'antenne sans contact avec le périphérique de lecture avant l'exécution de la fonction (contrainte d'accès physique à l'ES sur une certaine durée), - l'état de conductivité (actuel ou passé) d'un ou plusieurs fils, - le nombre de succès ou d'échecs autorisés, - l'identité cryptographique de l'entité appelant les fonctions de la puce, - la taille des données exploitées. La modification de ces garde-fous peut exiger que les données de mise à jour soient signées par une clé privée de cryptographie asymétrique, dont la clé publique aurait été préalablement déclarée à l'ES. Cela permet par exemple au porteur (ou à un tiers) de mettre à jour un mot de passe corrompu ou oublié. Le nombre d'échecs ou de succès de passage d'un grade fou peut être limité, et ainsi bloquer définitivement le garde-fou par mesure de sécurité (par exemple 3 essais pour un code PIN). Ces limitations ainsi que l'historique du succès et des échecs de passage des garde-fous doit être communiqué au porteur de l'ES afin qu'il puisse être informé des tentatives d'attaques - fructueuses ou non. Lorsque la donnée confidentielle est une clé privée cryptographique asymétrique, celle-ci peut être utilisée via l'ES au travers de fonctions spécifiques à la cryptographie. Comme la signature, le chiffrage ou le déchiffrage de données. Dans certains cas, il est préférable de limiter ou d'enregistrer l'utilisation qui a été faite de cette clé cryptographique. Par exemple, pour les signatures permettant une transaction blockchain, un degré de sécurité supplémentaire peut être apporté en limitant par un ou plusieurs garde-fous la signature de données d'une certaine taille. Ainsi la signature de données courtes, telles qu'une chaîne de caractères aléatoire, n'ayant pour objectif que de vérifier la présence de la clé privée, peut être exécutée sans limites. Par contre, la signature de données plus volumineuses ayant des conséquences irréversibles (comme une transaction blockchain) se verrait limitée, donc 16 sécurisée. Les données signées au format d'une transaction b/ockehain peuvent aussi être enregistrées dans l'ES, afin que l'utilisateur sache que de telles signatures ont été générées. Car il ne suffit pas de surveiller l'état actuel de la blockchani pour savoir si une transaction a été appliquée (« broadcastée »), elle peut en effet avoir été générée en amont, pour être appliquée plus tard à l'insu de l'utilisateur. Ce dernier peut se prémunir d'une telle attaque en ayant accès à l'historique des données signées. Si la clé autorise certaines signatures à ne pas être enregistrées dans l'historique, l'utilisateur en sera averti. Si une donnée confidentielle sensible peut-être lue et communiquée à l'extérieur de l'ES, cc dernier peut enregistrer et limiter le nombre de fois où cette action de lecture peut être effectuée. Ainsi, l'utilisateur dispose d'informations cruciales quant au degré de confidentialité de la donnée sensible. Si la donnée n'a jamais été communiquée, sa fiabilité est élevée, si le nombre de communications est dépassé, la donnée est effacée et l'utilisateur a ainsi la certitude que personne d'autre n'y aura jamais plus accès. La lecture de ces données peut de surcroît être protégée par un ou plusieurs garde-fous. Si les clés publiques présentes dans l'ES se voyaient corrompues, il est possible de les mettre à jour en envoyant à l'ES un message de reconfiguration signé par l'ancienne et la nouvelle clé publiques. Un historique des mises à jour est mis à disposition du porteur afin qu'il s'assure de l'intégrité des mises à jour. [0082] Les spécifications suivantes décrivent une implémentation possible d'un tel système d'exploitation embarqué. Elles sont rédigées suivant la syntaxe du langage de programmation Python, pour des raisons de lisibilité. En pratique elles seront écrites dans le langage de programmation propre à la puce (Java Card OpenPlatform, C, C++, assembleur, etc.). Les spécifications sont basées sur les principes de cryptographie asymétrique ECDSA (secp256k1 et keccak-256sum), choix justifié pour l'orientation blockchain de l'usage de la puce dans cette implémentation. Les protocoles de connexion de la puce sont ISO/IEC 7816 (avec contact) et ISO/IEC 14443 (sans contact), et celui de communication NDEF. Les commandes NDEF sont envoyées en binaire (https://developer.android.com/reference/android/nfc/NdetRecord. html#TNF_UNKNO WN), cela s'applique aux fonctions avec le préfixe ndef_*(). Les fonction commençant par sont privées. [0083] der nder key_init(platform, algo, provided, initializer_pubkey=None, re- trievable_n=0, hidden=False, deletable=False, sign_silent=False): [0084] -Initialise une nouvelle clé dans le trousseau. La première clé initialisée est 17 forcément la clé fabricant (de la puce). La deuxième clé initialisée est forcément la clé root.""" def ndef_key_initializer_sign(key, signature): 100851 "Vérifie si la signature ('signature') de la clé sélectionnée par l'initialisateur est valide.""" [0086] clef ndef add add safeguard safeguard(can pass n can fail n, dclay, wirc, interface, code, updatable by root initializer, info): [0087] """Ajoute un garde-fou (safeguard) pour l'ajout d'autres garde-fous (niveau : system, key, data).""" de!' ndef_lock_add_safeguard_safeguards(key): [0088] "Attribue la valeur Truc au champ mémoire du système 'add add safcguard safcguard locked'."" [0089] de!' ndef add key init safeguard(can pass n, can fail n, dclay, wirc, interface, code, updatable by root initial izcr, info): [0090] "Ajoute un garde-fou (safeguard) pour l'initialisation de nouvelles clés.t't" de!' ndef lock_key_init_safeguards(key): 100911 "Attribue la valeur Truc au champ mémoire du système 'add key init safeguard locked'." 100921 de!' ndef update key init safeguard(id, new code, new info, code, signature): 100931 "Met à jour le champ 'code' et/ou 'info' du garde-fou sélectionné (via son 'id')." de!' _safeguard_list(key): 100941 "Renvoie des liste .ISON des garde fous relatif à l'initialisation de nouvelles clés ('init').""" 100951 de!' ndef key add use safeguard(key, use, from length, can pass n, can rail n, delay, wire, interface, code, updatahle by initializer, info): 100961 "Ajoute un garde-fou (safeguard) pour l'utilisation de la clé sélectionnée."' de!' ndef key_lock_use_safeguards(key): 100971 "Attribue la valeur Truc au champ tadd use safeguard locked' de la clé sé- lectionnée.""" 100981 de!' ndef key update use safeguard(id, new code, new info, code, signature): 100991 "Met à jour le champ 'code' et/ou 'info' du garde-fou sélectionné (via son 'id').""" 101001 de!' ndef key add retrieve safeguard(key, can pass n, can fail n, delay, wire, interface, code, updatable by initializer, info): 101011 "Ajoute un garde-fou (safeguard) pour la communication de la clé privée (correspondant à la clé publique sélectionnée) à l'extérieur de la puce." de!' ndef_key_lock_retrieve_safeguards(key): [0102] "Attribue la valeur Truc au champ tadd retrieve safeguard locked' de la clé sé- 18 lectionnée.""" [0103] de!' ndef key update retrieve safeguard(id, nem] code, ncw info, code, signature): [0104] "Met à jour le champ 'code' et/ou 'info' du garde-fou sélectionné (via son 'id').""" [0105] de!' ndef key add delete safeguard(key, can pass n, can fail n, dclay, wirc, interface, code, updatahle by initializer, info): [0106] "Ajoute un garde-fou (safeguard) pour la suppression dc la clé." der ndef key_lock_delete_safeguards(key): [0107] "-Attribue la valeur Truc au champ 'add delete safeguard locked de la clé sé- lectionnée." [0108] de!' ndef key update delete safeguard(id, ncw code, ncw info, code, signature): [0109] "Met à jour le champ 'code' et/ou linfo ' du garde-fou sélectionné (via son 'id').""" der _key_safeguard_list(key): [0110] "Renvoie des listes JSON des garde fous associés à la dé (tkey'), dans un dic- tionnaire correspondant aux trois types d'utilisation des garde-fous 'use', retrieve' et 'deletet.""" [0111] def ndef data add(key, value, mimetypc, suhmitter puhkey=None, suhmitter signature=None, retrievable n=-1, hidden=False, deletable=False): [0112] "Ajoute une nouvelle entrée clé/valeur dans la base de données." [0113] de!' ndef data add retrieve safeguard(kcy, can pass n, can fail n, delay, wirc, interface, code, updatahle by submitter, info): [0114] "Ajoute un garde-fou (safeguard) pour la communication dc 'value' à l'extérieur de la puce.""" der ndef_data_lock_retrieve_sareguards(key): 10115] "Attribue la valeur Truc au champ tadd retrieve safeguard locked' de la clé sé- lectionnée.""" 10116] de!' ndef data update retrieve safeguard(id, new code, new info, code, signature): 10117] "Met à jour le champ 'code' et/ou 'info ' du garde-fou sélectionné (via son 'id').""" 10118] de!' ndef data add delete safeguard(key, can pass n, can fail n, delay, wire, interface, code, updatahle by submitter, info): 10119] "Ajoute un garde-fou (safeguard) pour la suppression de l'entrée.'" der ndef_data_lock_delete_sareguards(key): 10120] '"Attribue la valeur Truc au champ tadd delete safeguard locked de la clé sé- lectionnée.""" 10121] def ndef data update delete safeguard(id, new code, new info, code, signature): 10122] "Met à jour le champ 'code' et/ou 'info ' du garde-fou sélectionné (via son 'id').""" 19 der _data_safeguard_list(key): 101231 """Renvoie des liste JSON des garde fous associés à la clé (tkey'), dans un dic- tionnaire correspondant aux deux types d'utilisation des garde-fous tretrievet et 'deletet." def _key_list(hidden=[]): [0124] "Renvoie une liste JSON des clés enregistrées, avec la clé root en premier. Les clés avec un champs thiddent sont omis, sauf si leurs valeur est présente dans la liste 'hiddent.""" [0125] der oder record summary(sign field=None, sign nonce="): [0126] "Renvoie un NDEF Record contenant un JSON représentant le contenu de la puce."" def _ndef record_smart_poster(): [0127] "À chaque appel la variable 'scan nt stockée dans la mémoire interne du système est incrémentée. Renvoyer une URL suivant la structure https://DOMMN/getapp/#FABPUBKEY-SCAN N-SIG-ROOTPUBKEY" def ndef scan(sign_field=None, sign_nonce="): [0128] "Renvoie un NDEF Message (constitué de deux NDEF Record) : le contenu retourné par _ndef record_smart_poster() et le contenu retourné par ndef_record_summary()." [0129] def ndef key_sign(key, code=None, sign_silent=False, data): 101301 '''Signe 'data' avec la 'key' sélectionnée, si les conditions du/des garde-fou(s) sont remplies, et renvoie la signature."'' 101311 der oder key encode(key, code=None, algo=taest, data): 101321 "Chiffre (AES, 3DES ou RSA) 'data' avec la 'key', et renvoie le contenu chiffré."" 101331 der oder key decode(key, code=None, algo=taest, data): 101341 "Déchiffre (AES, 3DES ou RSA) 'data' avec la 'key', et renvoie le contenu déchiffré." der ndeLkey_retrieve(key, code=None): 101351 "Renvoie la clé privée de la 'key' sélectionnée et incrémente 'retrieved nt." der nder key_delete(key, code): [0136] "Supprimme la 'key' en cascade.'" der nder key_signature_history(key): [0137] "Renvoic l'historique du contenu et des signatures effectuée par la clé via key_sign().""" der _data_list(hidden=[]): [0138] "Renvoie une liste JSON des enregistrements de données en clé/valeur. Les entrées avec un champs 'hidden' différent de None sont omis, sauf si leurs valeur est présente dans la liste 'hidden'.""" der nder_data_retrieve(key, code): 101391 ""Renvoie 'value' de l'enregistrement sélectionné (key') et incrémente 'retrieved n'."'" der nder data_delete(key, code): [0140] "Supprimme l'enregistrement sélectionné ('key') en cascade."" [0141] der nder pubkey replace(old key, new key, old key sienature, new key signature): [0142] "Remplace tous les champs de type clé publique de toutes les bases ayant pour valeur 'old key' par 'new key'." def _pubkey_replace_history(): [0143] "Renvoie une liste JSON des logs de pubkey replace0.""" 21 [Revendication 1] [Revendication 2] [Revendication 3] [Revendication 4] [Revendication 5] REVENDICATIONSDispositif de sécurisation de puces électroniques, de leurs données, de leurs périphériques de communication, et des objets auxquels ils sont rattachés, caractérisé en ce que les composants de sécurisation, matériels et logiciels, puissent être configurés et agencés de façon optimale pour chaque puce, permettant d'adapter le niveau de sécurité et la facilité d'utilisation à chaque cas d'utilisation. Dispositif selon la revendication 1 d'authentification physique une puce électronique, caractérisé en ce que la puce soit emprisonnée dans un scellé présentant des motifs uniques aléatoires difficiles à reproduire (2- figure 1). Puis que la version numérisée de ce scellé, effectuée au moment de sa mise en place, soit mise à disposition à distance via un réseau informatique (4 - figure 1), permettant à l'utilisateur de comparer son intégiité actuelle avec son état originel (3 - figure 1). Dans le cas où la puce est dotée d'un lien physique avec un objet qui lui serait attitré, le scellé doit lui-même constituer ce lien physique entre la puce et l'objet (1 - figure 1). Dispositif selon la revendication 1 de vérification de l'intégrité physique d'un objet, caractérisé en ce qu'un ou plusieurs scellés constitués de motifs uniques aléatoires difficiles à reproduire soient solidarisés aux parties sensibles de l'objet, telles que des ouvertures, des systèmes de détection d'ouverture ou bien des trappes confidentielles (5, 6, 10, 8 - figure 2). Et que la version numérisée de ces scellés, effectuée au moment de leur mise en place, soit mise à disposition à distance via un réseau informatique, permettant à l'utilisateur de comparer leur intégrité actuelle avec son leur état originel. Dans le cas où l'objet présente de par sa nature des motifs uniques aléatoires difficiles à reproduire l'utilisation directe de leur numérisation dispensera l'ajout de scellés (9 - figure 2). Dispositif selon les revendications 2 et 3, caractérisé en ce que l'authentification physique de la puce soit dispensée d'être dotée d'un scellé propre suivant les principes de la revendication 2. Ceci dans le cas où l'objet attitré à la puce fasse office de récipient ou se trouve dans un récipient, que la puce se trouve à l'intérieur, et que les ouvertures du récipient soient scellées suivant, les principes de la revendication 3 (8, 10 - figure 2). Dispositif selon la revendication 1 de contrôle de la communication radio sans contact d'une puce, caractérisé en ce que l'antenne se trouve [Revendication 6] sur un support permettant de modifier manuellement sa plastique (figures 3 et 4). La forme de l'antenne est conçue de telle manière que dépliée elle soit en pleine capacité de réception, en rapport à la longueur d'onde radio pour laquelle elle est prévue. Cependant, pliée, certaines de ces parties interfèrent de manière à diminuer la capacité de réception de l'antenne, au point de la rendre inutilisable. La partie interférente peut aussi ne pas faire partie intégrante de l'antenne, mais être composée d'un ou plusieurs éléments autonomes. [Revendication 7] Dispositif selon la revendication 1 de contrôle de la communication radio sans contact d'une puce, caractérisé en ce que l'antenne soit amovible (figure 13), permettant à l'aide d'une prise d'être branchée uniquement au moment ou la communication radio sans contact est nécessaire (27- figure 14), et maîtrisée par l'utilisateur. [Revendication 8] Dispositif selon la revendication 1 de validation des actions d'ouvertures et de fermetures légitimes d'un objet doté d'un système qui détecte ces actions, incorporé dans une puce, caractérisé en ce que la puce détectant les ouvertures et fermetures enregistre distinctement chacune de ces actions. Et, que l'entité souhaitant valider ces actions public en son nom les données d'identification de l'objet accompagné de l'identifiant de chaque action d'ouverture et de fermeture. Ces informations sont mises à disposition de l'utilisateur afin qu'il identifie l'entité qui a validé ces ouvertures et fermetures. [Revendication 9] Dispositif selon la revendication 1 de déclenchement d'évènements liés à la fin de vie de l'objet par la puce, caractérisé en ce que la détection par la puce d'une interruption de continuité électrique entre une paire de plots reliée à un fil électrique acte la fin de vie de l'objet, et déclenche en conséquence un événement logiciel. [Revendication 10] Dispositif selon la revendication 1 d'authentification une puce capable de prouver sa possession d'une clé privée de cryptographie asymétrique de façon déterministe, caractérisé en ce qu'à chaque défi d'authentification envoyé à la puce celle-ci signe la clé publique correspondante avec une valeur incrémentée à chaque défi. Lorsque cette information et sa signature sont valides, elles sont partagées sur un réseau informatique à chaque défi, disqualifiant ainsi toutes les tentatives de duplication de la puce dont la valeur sera toujours antérieure à la seule puce légitime contenant réellement la clé privée. Dispositif selon la revendication 1 d'authentification d'une puce capable de prouver sa possession d'une clé privée de cryptographie asymétrique 23 [Revendication 11] [Revendication 12] [Revendication 13] [Revendication 14] [Revendication 15] grâce à la date et l'heure à laquelle elle est interrogée, caractérisé en ce que la puce dispose d'une horloge interne réglée à l'heure universelle UTC, et qu'à chaque défi d'authentification elle signe la date et l'heure actuelle. Le périphérique de lecture compare cette date avec son horloge interne, lorsque la signature est valide et le décalage temporel est inexistant ou minime, la possession de la clé privée est validée. Dispositif selon la revendication 1 de stockage et de transport physique une information confidentielle dans une puce au format informatique clé-valeur, caractérisé en ce que la puce ne liste pas la présence de la clé correspondant à cette information cachée, seul le porteur ayant connaissance de la clé de cette information peut accéder à sa valeur. Dispositif selon la revendication 1 de détection de tentatives de duplication d'un objet mobile, caractérisé en ce que l'objet mobile présente un identifiant unique lu par un terminal géolocalisé connecté à un réseau informatique. Cet identifiant peut être fourni par une puce. À chaque fois que l'identifiant est lu, la date, l'heure et les coordonnées géographiques du terminal sont enregistrées sur le réseau. De ce fait, en cas de tentative de duplication, les incohérences des tracés géographiques sur lesquels les copies de l'objet se déplacent seront détectées, et les utilisateurs alertés. Dispositif selon la revendication 1 d'authentification d'une puce capable de prouver sa possession d'une clé privée de cryptographie asymétrique, tout en garantissant que l'utilisation de la clé soit restée limitée, caractérisé en ce que la longueur de chaque donnée signée soit enregistrée et communiquée à l'utilisateur. Si la longueur maximale enregistrée est suffisamment longue pour avoir permis des défis d'authentification par signature, mais suffisamment courte pour ne pas avoir pu être utilisée pour signer des informations sensibles, telle qu'une transaction blockchain, la garantie que l'utilisation de la clé soit restée limitée est atteinte. Dispositif selon la revendication 1 d'authentification d'une puce capable de prouver sa possession d'une clé privée de cryptographie asymétrique, tout en garantissant que l'utilisation de la clé n'a pas été abusée pour signer des données encore non exploitées publiquement, caractérisé en ce que l'intégralité des données signées soit enregistrée par la puce et communiquée à l'utilisateur. Dispositif selon la revendication 1 pour que le système d'exploitation d'une puce puisse sécuriser de façon optimale et interdépendante sa 24 propre intégrité, celle des données qu'elle contient, et éventuellement celle de l'objet auquel elle est rattachée, quelque soit le cas de figure, caractérisé en cc que les éléments de sécurité des revendications 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 ou 14 ainsi que d'autres fonctionnalités inhérentes à leur usage puissent être configurécs, orchestrées et contrôlés par la mise en place de garde-fous. Ces garde-fous peuvent contrôler l'accès, l'utilisation, l'ajout, la suppression et la mise à jour des données enregistrées par la puce. Ces mêmes garde-fous peuvent eux aussi être contrôlés, selon le même procédé, de façon récursive, par d'autres garde-fous. Les paramètres de configuration des garde-fous portent sur le choix de l'interface de communication de la puce, la durée de connexion minimale, la taille des données exploitées, le nombre de succès ou d'échecs autorisés, l'état de conductivité d'un ou plusieurs fils connectés à la puce, la validité d'un code secret ou l'identité cryptographique de l'entité appelant les fonctions de la puce.