INPI-France/Brevets-Francais-2024-Chunked huggingface dataset:
Lors d’une succession d’opérations élémentaires, en particulier dans un algorithme de chiffrement ou de déchiffrement, à une opération encodée succède une autre opération fusionnée avec l’encodage inverse. De cette façon, les opérations élémentaires se succèdent comme prévu dans l’algorithme sans que les encodages ne les perturbent. Dans le code exécutable, un attaquant peut parvenir à identifier une table obfusquée correspondant à une opération élémentaire et à un premier encodage, les deux opérations étant fusionnées. Puis, il peut identifier la table obfusquée suivante, correspondant à l’encodage inverse, à une nouvelle opération élémentaire et à un deuxième encodage, les trois opérations étant également fusionnées. Cependant, et c’est là l’intérêt des encodages, l’attaquant ne peut pas identifier les opérations élémentaires effectuées puisqu’elles sont fusionnées avec les encodages. Il ne peut donc pas retrouver la clé de chiffrement et les données chiffrées.
On fera la distinction entre chiffrement/déchiffrement d’un côté, et encodage de l’autre. Le chiffrement ou le déchiffrement correspond à une succession d’opérations réalisées au moyen d’un algorithme cryptographique et d’une clé. Un encodage consiste à encoder l’une de ces opérations ou des données de sortie de ces opérations. Ainsi, par « algorithme cryptographique », on désignera un algorithme de chiffrement ou de déchiffrement basé sur un type d’algorithme connu, par exemple « DES » ou « AES », utilisant une clé spécifique, et on le distinguera des opérations d’encodages qui y sont fusionnées.
Enfin, par « périphérique », on désigne tout terminal comprenant des moyens pour mettre en œuvre le procédé décrit. Dans la suite, il s’agira en particulier de tout terminal de communication doté de moyens de calcul informatique, tel qu’un smarpthone.
Mode de réalisation Dans le mode de réalisation illustré, l’invention est mise en œuvre au sein d’un smartphone 1. Ce dernier inclut, sous forme logicielle, une application finale dont le code exécutable 2 est schématiquement illustré. Cette application reçoit en entrée des données chiffrées, tel que des données émises par un serveur bancaire 9 situé à distance, et permet en sortie de générer un paiement par smartphone. Il pourrait s’agir d’un tout autre type d’application et d’un tout autre type de données. Dans tous les cas, elle se présente sous la forme d’un code 2 exécutable via le smartphone 1, code 2 que l’on peut schématiquement diviser en deux parties.
Ainsi, la partie 3 est directement issue du code source développé par le développeur, ou société de développement, en charge de l’application 2. Elle n’est pas propre à l’invention mais c’est le cœur de l’application 2 dans le sens où elle reçoit en entrée les données déchiffrées et met en œuvre le rôle attribué à l’application, ici un paiement conformément à des procédés qui ne sont pas spécifique de l’invention et ne seront pas décrits.
La partie 4 du code 2 comprend un algorithme cryptographique de type « AES » (pour « Advanced Encryption Standard ») opérant avec une clé privée et des encodages internes à l’algorithme qui seront décrits en détails plus bas. Cet ensemble d’opérations forme un procédé de déchiffrement 43, qui permet de déchiffrer les données reçues du serveur 9 avant de les communiquer à la partie 3 qui va les utiliser. Cette portion 4 permettrait également de chiffrer des données à envoyer au serveur, on parlerait alors de chiffrement. La partie 4 forme une « boite blanche ». En effet, un attaquant disposant du smartphone 1 peut lire l’ensemble du code de l’application 2, le manipuler, l’exécuter d’une manière fine, pour essayer d’identifier dans cette partie 4 les données chiffrées, et/ou les opérations élémentaires formant l’algorithme de chiffrement ou de déchiffrement 42 pour en déduire en particulier la clé utilisée. Il peut également tenter d’exporter cette boite blanche 4 sur un autre dispositif.
Cette boite blanche 4 comprend également en son sein deux encodages 41 et 42, distincts des encodages internes à l’algorithme 43 qui seront décrits plus bas. A ces encodages 41 et 42 correspondent des encodages dits « externes » 92 et 31. L’encodage 42 permet d’encoder les données en sortie des opérations de déchiffrement de l’algorithme 43. Ainsi, bien que les données soient déchiffrées par l’algorithme 43, elles ne circulent pas « en clair » entre la boite blanche 4 et le cœur 3. Le cœur 3 de l’application comprend au niveau de son entrée un encodage 31 qui est l’encodage inverse de l’encodage 42, permettant de décoder les données reçues de la boite blanche 4. Cet encodage inverse 31 est fusionné avec la première opération programmée par le cœur 3 de manière à ce que cet encodage 31 ne soit pas compréhensible. On considère que l’encodage 31 est « externe » car il est extérieur à la boite blanche. Il ne peut toutefois décoder que les données encodées via l’encodage 42 de la boite blanche, et vice versa. Similairement, l’encodage 41 à l’entrée de la boite blanche 4 est l’encodage inverse de l’encodage 92 placé en sortie de l’algorithme 91 au sein du serveur 9. Ainsi, les données en sorties du serveur 9 sont à la fois chiffrées et encodées, avant d’être décodées par l’encodage 41 puis déchiffrées par l’algorithme 43. Il est à noter que l’encodage 92 est le seul encodage associé à l’algorithme 91. En particulier, cet algorithme 91 n’inclut pas d’encodages internes, associés à des opérations élémentaires.
La partie 4, englobant l’algorithme 43 et les encodages internes 41 et 42, n’est pas directement issue du développeur de l’application 2. En effet, elle a été développée par une autre société de façon indépendante à la partie 3, et a été acquise par le développeur de l’application 2 pour être implémentée sous la forme de bibliothèques logicielles. Ainsi, pour contrôler cette boite blanche 4 indépendante, il est prévu dans le code de la partie 3 des appels à une API (pour « Application Programming Interface ») fournie par le vendeur de la boite blanche 4, l’API permettant par exemple d’initialiser l’algorithme, de chiffrer ou déchiffrer des données au moyen de cet algorithme 43. Le développeur a donc utilisé l’API pour programmer les appels à la boite blanche 4 permettant d’obtenir les données déchiffrées ou au contraire de fournir à la boite blanche 4 des données à chiffrer.
Enfin, à distance du smartphone, le serveur bancaire 9 inclut lui aussi sous forme logicielle un algorithme « AES » et une clé privée associée. L’algorithme permet de chiffrer des données au moyen de la clé avant de les communiquer au smartphone 1. L’ensemble de ces opérations de chiffrement forment l’algorithme de chiffrement 91. Il peut également permettre de déchiffrer des données reçues. En revanche et contrairement à l’algorithme 43, cet algorithme 91 ne comprend pas d’encodages internes.
On va maintenant détailler les opérations de l’algorithme cryptographique 43 placé dans la boite blanche 4 et exécuté au sein du smartphone 1, en référence à la . On ne décrira pas dans quelle mesure et à quels moment la clé privée est changée, ni comment elle est communiquée au serveur 9, ces éléments n’étant pas propres à l’invention.
En combinant un algorithme de type AES et une clé privée, on obtient l’algorithme cryptographique 43 qui sert dans le mode de réalisation illustré à déchiffrer des données chiffrées par l’algorithme 91. Il est donc formé d’une succession d’opérations élémentaires résultant de la combinaison entre l’algorithme AES tel qu’il est connu et la clé privée choisie ou déterminée. Ces opérations sont encodées, c’est-à-dire qu’à chaque opération est associée un encodage.
Les encodages 432 et 435 ne dépendent pas des caractéristiques du smartphone 1, ils sont générés à l’installation de l’application 2 sur le smartphone indépendamment de ce dernier, ou avant même son installation. Les encodages 41 et 42 ne dépendent également pas du smartphone 1. En revanche, ils sont choisis de manière à correspondre aux inverses des encodages respectifs externes 92 et 31, ou inversement.
Ces encodages 432, 435, 41, 42, 92 et 31 sont donc générés de façon conventionnelle.
En revanche, l’encodage 433, généré à l’installation de l’application 2 sur le smartphone 1, dépend directement du smartphone 1, tandis que l’encodage 434 n’est généré qu’à chaque exécution de l’algorithme 43 et dépend également du smartphone 1, comme décrit ci-après.
Par exemple, l'enrichissement de l'uranium peut permettre d'atteindre différents niveaux, allant d’un enrichissement bas (moins de 1 % en masse d’ 235 U) à très haut (plus de 90 % en masse d’ 235 U), destiné à différentes applications. Or le processus d’enrichissement de l’uranium naturel modifie les proportions d’ 238 U, 235 U et 234 U, ce qui implique des variations sur leurs pourcentages d’activité selon le niveau d’enrichissement.
Ces activités induisent non seulement les émissions α propres à ces isotopes de l’uranium mais aussi les émissions γ et β de leurs descendants, issus des chaînes de filiation, comme le montre la figure publiée dans l’article https://fr.wikipedia.org/wiki/Uranium_238.
Si on considère maintenant une contamination en uranium artificiel plus ou moins enrichi présente sur ou dans un objet contenant de l’uranium naturel, on comprend que les différentes contributions (γ, α et β) de cette contamination se superposent à un bruit de fond ambiant (BDF) produit par les chaînes de filiation de l’uranium, du thorium et par le potassium, naturellement présents, par exemple, dans le béton des parois et sols de l’installation. On cherche à caractériser ce bruit de fond et à le prendre en compte dans les mesures du signal net de la tache de contamination en uranium. Parmi les objets concernés, on peut citer par exemple un tapis roulant, ou des échantillons ou des sacs de gravas (« big bag ») après décroutage d’une paroi contaminée, ou encore à des colis de déchets radioactifs uranifères (fûts, caissons, etc.).
Par exemple, dans le cadre de la détection et de la caractérisation de taches de contamination en uranium, l’invention permet de répondre à trois objectifs principaux :
- la vérification des seuils de déclassement imposés par les autorités de sûreté nucléaire, qui sont par exemple de l’ordre du Bq/cm²,
- le contrôle rapide des surfaces ; par exemple, la surface totale à contrôler peut atteindre plusieurs centaines de milliers de m 2 , ce qui impose la mise en place de techniques de mesure rapides de façon à contrôler la totalité des surfaces en un temps raisonnable ;
- l’estimation du niveau d’enrichissement en 235 U de la tache de contamination, ce qui donne des informations supplémentaires utiles, par exemple, pour la décontamination, la caractérisation et la gestion des déchets qu’elle engendre, comme leur orientation vers une filière de stockage appropriée.
Différentes techniques de mesure sont connues pour le contrôle de contamination, allant du comptage alpha et béta à la spectrométrie gamma haute et basse résolution.
Une première technique de détection peut être réalisée par comptage alpha, par exemple à l’aide de contaminamètres de type scintillateur ZnS(Ag).
Les avantages de ce type de technique sont les suivants :
- le nombre de particules alpha émises par une contamination en uranium est généralement plus important que le nombre de particules beta et encore plus important que le nombre de particules gamma. De ce fait, les temps de mesure nécessaires pour la détection d’une contamination par comptage alpha sont très courts ;
- le bruit de fond associé à un comptage de particules alpha émergeant du béton est faible, car seules les émissions en surface peuvent atteindre le détecteur en raison du faible parcours des particules alpha dans le béton, environ 20 µm ; ceci facilite l’identification d’une contamination surfacique en uranium ; selon une estimation expérimentale avec une source alpha surfacique posée sur un sol non contaminé, il contribue à moins de 1 % du comptage alpha d’une tache de contamination de quelques Bq/cm² ;
- il est possible de réaliser des détecteurs de grande surface (par exemple 1000 cm²) à très faible coût.
Mais cette technique a des inconvénients :
- les particules alpha sont facilement arrêtées par la matière. En moyenne le parcours des particules alpha est d’environ 3 cm dans l’air et 20 µm dans le béton pour une énergie de 4,5 MeV (calcul SRIM). Le détecteur doit donc se trouver au plus proche de la surface contaminée pour détecter ces particules ;
- cette méthode dépend fortement de l’état de surface de l’objet. Par exemple, dans le cadre de la détection d’une contamination sur le sol d’une installation, la présence d’éventuelles poussières et aspérités du sol peuvent atténuer fortement ces rayonnements.
Dans cet exemple, les sous-réseaux obtenus par découpage du réseau original VGG16 qui traitent ou produisent des données considérées comme les plus sensibles peuvent être distribués sur les dispositifs les plus sécurisés, les dispositifs moins sécurisés étant utilisés pour ne traiter que des données intermédiaires et partielles difficilement interprétables puisqu’ayant subi des transformations non connues.
La solution d’exécution permet ainsi à l’industriel de tirer parti de son infrastructure en protégeant ses secrets y compris sur des dispositifs dont les politiques de sécurité sont moins fortes.
Dans un mode particulier de réalisation, le module de routage utilisé est MQTT.
On rappelle que le protocole MQTT est un protocole de communication adapté pour traverser différents réseaux et bâti autour d’une logique d’adressage.
Dans le mode de réalisation décrit ici, l’orchestrateur peut adresser les dispositifs soit en point-à-point soit selon un mode de diffusion (en anglais broadcast).
Dans un mode de réalisation, l’orchestrateur peut confier l’exécution d’une même tâche à plusieurs dispositifs et comparer les résultats produits par ces dispositifs afin de détecter le comportement anormal d’un dispositif, causé par une panne ou par un acte malveillant par exemple.
Ce mode de réalisation permet de fiabiliser le procédé.
Utiliser MQTT pour distribuer l’exécution d’un réseau de neurones est original.
Dans le mode de réalisation décrit ici, une politique d’optimisation peut être mise en place pour répartir les sous-réseaux sur les différents dispositifs de sorte à limiter une fonction de coût prenant en compte : i/ un coût de communication prenant en compte le volume de données envoyé par l’orchestrateur ORC à chacun des dispositifs, le volume de données reçu par l’orchestrateur ORC reçu de chacun des dispositifs, une distance (distance physique, nombre de sauts dans le réseau, latence, …) entre l’orchestrateur ORC et chacun des dispositifs, ii/ un coût de synchronisation pour fusionner les résultats produits par les différents sous-réseaux issus d’un même découpage horizontal.
De façon avantageuse, la politique d’optimisation peut limiter les chargements/déchargements en mémoire de sous-modèles, en attribuant à chaque dispositif une tâche (autrement dit un sous-réseau) qui n’évolue pas dans le temps. Cette politique présente un double intérêt puisqu’elle permet à la fois d’économiser des temps non négligeables de chargement de sous-modèles, mais aussi car elle permet de cartographier spécifiquement la connaissance de chaque dispositif. Cette politique présente un intérêt pour le traitement de tâches par lots (batch).
Un orchestrateur ORCD de distribution conforme à un mode de réalisation de l’invention va maintenant être décrit en relation avec la . Cet orchestrateur est un équipement informatique, tel un ordinateur.
- une unité de traitement ou processeur 801, ou CPU, destinée à charger des instructions en mémoire, à les exécuter, à effectuer des opérations ;
- un ensemble de mémoires, dont une mémoire volatile 802, ou RAM utilisée pour exécuter des instructions de code, stocker des variables, etc., et une mémoire de stockage 803 de type EEPROM. En particulier, la mémoire de stockage 803 est agencée pour mémoriser un module logiciel de distribution de paramètres qui comprend des instructions de code pour mettre en œuvre les étapes du procédé de distribution tel que décrit précédemment.
L’orchestrateur de distribution comprend également : - un module MPD de partitionnement d’un réseau de neurones en un ensemble de sous-réseaux, ledit module étant configuré pour : (i) effectuer au moins un découpage dit vertical du réseau de neurones entre deux couches pour obtenir au moins un sous-réseau dit vertical, un sous-réseau vertical étant constitué d’une ou plusieurs couches consécutives dudit réseau ; et (ii) effectuer au moins une étape dite de découpage horizontal d’un ensemble d’au moins une couche du réseau pour obtenir au moins un sous-réseau dit horizontal comportant une partie seulement des neurones de l’ensemble, le résultat d’une inférence d’un sous-réseau horizontal étant uniquement fonction des paramètres des neurones de ce sous-réseau ; - un module MED d’envoi des paramètres d’au moins un dit sous-réseau pour qu’il soient distribués à au moins un dispositif d’exécution (W) configuré pour réaliser une inférence du sous-réseau, le résultat de l’inférence du sous-réseau contribuant au résultat d’une inférence dudit réseau de neurones.
Un orchestrateur ORCI d’inférence conforme à un mode de réalisation de l’invention va maintenant être décrit en relation avec la . Cet orchestrateur est un équipement informatique, tel un ordinateur.
La membrane 50 est adaptée pour émettre des ondes sonores. Ladite membrane 50 est sensiblement plane et disposée du côté avant du moteur magnétique 12. La membrane 50 comporte notamment une face avant 60 et une face arrière 62, ladite face arrière étant orientée vers le moteur magnétique 12.
La membrane est formée d’une pièce centrale 64 et d’une pièce périphérique 66, assemblées l’une à l’autre.
La pièce centrale 64 a sensiblement la forme d’un disque disposé coaxialement à l’axe principal X, en vis-à-vis d’un espace défini par la paroi interne 30 de la première pièce polaire 22 du moteur magnétique 12. La pièce centrale 64 est définie par un contour 68.
La pièce périphérique 66 a sensiblement la forme d’une couronne définie par un troisième bord interne 70 et par un troisième bord externe 72. La pièce périphérique 66 s’étend sensiblement en vis-à-vis de la première pièce polaire 22 du moteur magnétique 12. Le troisième bord interne 70 est assemblé au contour 68 de la pièce centrale 64.
De préférence, chacune des pièces centrale 64 et périphérique 66 de la membrane 50 est constituée d’un matériau électriquement isolant. Par « électriquement isolant », on entend notamment que la résistivité du matériau est supérieure à 10 10 Ω.m.
La pièce centrale 64 est par exemple réalisée en métal, par exemple en aluminium usiné, ou encore en matériau polymère, notamment injectable, par exemple de type polycarbonate/acrylonitrile butadiène styrène.
La pièce périphérique 66 est formée d’une plaque de résine thermodurcissable renforcée de fibres céramiques. De préférence, la résine thermodurcissable est une résine époxyde et les fibres céramiques comprennent des fibres de verre. La constitution de la pièce périphérique 66 sera détaillée ci-après.
Chacun des premier 56 et deuxième 58 porte-bobines a une forme sensiblement cylindrique de révolution autour de l’axe principal X. Une première extrémité axiale de chacun des premier 56 et deuxième 58 porte-bobines est fixée à la face arrière 62 de la membrane 50, de sorte qu’une seconde extrémité axiale des premier 56 et deuxième 58 porte-bobines soit disposée respectivement dans le premier 42 et dans le deuxième 44 entrefers.
Dans le mode de réalisation représenté, chacun des premier 56 et deuxième 58 porte-bobines est fixé à la pièce périphérique 66 de la membrane. Le premier porte-bobine 56 est fixé au troisième bord interne 70. Un porte-bobine 56, 58 est par exemple un support en fibre de verre imprégné de résine et recouvert d’un papier isolant en polyimide.
Chacune des première 52 et deuxième 54 bobines est formée d’un fil électriquement conducteur, ledit fil étant enroulé, respectivement autour du premier 56 et du deuxième 58 porte-bobine. La première bobine 52 est disposée dans le premier entrefer 42 et la deuxième bobine 54 est disposée dans le deuxième entrefer 44, entre les première 22 et deuxième 24 pièces polaires du moteur magnétique 12.
Le dispositif 16 électrique est notamment destiné à alimenter en électricité les première 52 et deuxième 54 bobines durant le fonctionnement du haut-parleur 10.
Le dispositif 16 électrique comprend : au moins une première 74 et une deuxième 76 bandes conductrices ; et un premier 78 et un deuxième 80 câbles de connexion.
Chacune des première 74 et deuxième 76 bandes conductrices est formée d’une couche de matériau électriquement conducteur déposée sur la pièce périphérique 66. Dans le mode de réalisation représenté, les première 74 et deuxième 76 bandes conductrices sont disposées au niveau de la face arrière 62 de la membrane 50, comme visible sur la .
Par « électriquement conducteur », on entend notamment que la conductivité du matériau est supérieure à 30 S.m -1 . De préférence, chacune des première 74 et deuxième 76 bandes conductrices est formée d’une couche de métal, par exemple de cuivre, comme détaillé ci-après.
Les première 74 et deuxième 76 bandes conductrices sont disposées à distance l’une de l’autre sur la pièce périphérique 66. Dans le mode de réalisation représenté, les première 74 et deuxième 76 bandes conductrices sont symétriques l’une de l’autre par rapport à un plan de symétrie de la pièce périphérique 66, ledit plan de symétrie comprenant l’axe principal X. Chacune des première 74 et deuxième 76 bandes conductrices s’étend entre le troisième bord interne 70 et le troisième bord externe 72 de la pièce périphérique.
Dans le mode de réalisation représenté, chacune des première 74 et deuxième 76 bandes conductrices comporte une partie principale 82 oblongue et une extension externe 84. L’extension externe 84, de forme par exemple carrée, est disposée proche du troisième bord externe 72. La partie principale 82 prolonge l’extension externe 84 de manière continue, en direction du troisième bord interne 70.
La présence K 2 O est nécessaire pour avoir un rapport (K 2 O/1,52) / (Na 2 O + K 2 O/1,52) supérieur à 0,30, voire supérieur à 0,40, voire supérieur à 0,50, voire supérieur à 0,60, voire supérieur à 0,65, et améliorer la résistivité électrique.
Na 2 O a un effet un effet défavorable sur la résistivité électrique. La teneur massique en oxyde de sodium Na 2 O doit donc rester limitée.
Y 2 O 3 peut avoir un effet un effet défavorable sur la faisabilité et la résistivité électrique. La teneur massique en Y 2 O 3 doit donc rester limitée.
Alternativement et en tout état de cause, on pourra noter que prévoir une plaque inférieure plane permet de limiter l’accumulation des jus de cuisson dans des creux (aussi bien sur la première plaque de cuisson inférieure 411 que sur la deuxième plaque de cuisson inférieure 421). Même si la première plaque de cuisson inférieure 411 et la deuxième plaque de cuisson inférieure 421 sont planes ou plates, on peut prévoir d’avoir des structures différentes pour des besoins par exemple de reconnaissance par l’appareil ou pour garantir que la première plaque de cuisson supérieure 412 ou la deuxième plaque de cuisson supérieure 422 sont bien montées en même temps que la première plaque de cuisson inférieure 411 et la deuxième plaque de cuisson inférieure 421 respectivement. Alternativement, on peut prévoir de ne changer que la première plaque de cuisson supérieure 412 ou la deuxième plaque de cuisson supérieure 422, une seule plaque inférieure étant prévue et commune aux deux types de plaques de cuisson.
L’appareil représenté comprend un socle 11 et un couvercle 12 articulé, mais on peut prévoir de manière générale tout type d’articulation ou de cinématique.
Accessoire de nettoyage par diffusion de vapeur Le présent exposé concerne le domaine électroménager. Plus précisément, le présent exposé porte sur un appareil électroménager de diffusion de vapeur.