MIGNOT, A. ET AL.: "MPEG-4 Towards Solid Representation", IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, vol. 14, no. 7, July 2004 (2004-07-01), pages 967 - 974, XP011114301, DOI: 10.1109/TCSVT.2004.830668
K.S. KAVYA: "IMAGE ENCRYPTION USING HILBERT SPACE FILLING CURVE AND HENON MAP", INTERNATIONAL JOURNAL OF INNOVATIVE RESEARCH IN COMPUTER SCIENCE & TECHNOLOGY (IJIRCST), vol. 3, no. 3, 1 May 2015 (2015-05-01), XP093166819, ISSN: 2347-5552
REVENDICATIONS : 1. Une méthode mise en œuvre par ordinateur pour encoder de l’information au moyen d’un stencil topologique unicellulaire, la méthode comprenant : obtenir de l’information à encoder; générer une partition dans un carré, la partition étant générée au moyen d’au moins un générateur de polygones de Jordan, un générateur de SFC et un générateur de chemin Hamiltonien fermé; convertir la partition générée en une série de triplets représentant la partition, dans laquelle chaque triplet est définit par un point et ses deux voisins; déterminer une densité associée à chaque point du carré en utilisant la série de triplets; coloriser chaque point du carré en utilisant au moins la densité associée pour générer le stencil topologique unicellulaire; et fournir le stencil topologique unicellulaire; caractérisée en ce que l’information à encoder est utilisée dans au moins une de la génération de la partition dans un carré, de la détermination de la densité associée à chaque point du carré et de la colorisation de chaque point du carré. 2. La méthode revendiquée à la revendication 1, dans laquelle la colorisation de chaque point du carré comprend associer à chaque densité déterminée une couleur donnée. 3. La méthode revendiquée à la revendication 1, dans laquelle la colorisation de chaque point du carré comprend pour un point donné: associer à chaque densité une table de couleurs donnée, et sélectionner une couleur dans la table de couleurs donnée en utilisant une position du point donné dans le carré. 4. La méthode revendiquée à une des revendications 1 à 3, comprenant de plus : obtenir une SFC ou une MCG de codage parcourant le carré, et réordonnancer chaque point du stencil topologique unicellulaire au moyen de la SFC ou de la MCG de codage afin de fournir un stencil topologique unicellulaire brouillé, le réordonnancement modifiant les coordonnées de chaque point du stencil topologique unicellulaire tel que pour chaque point donné ayant des coordonnées correspondantes données initiales dans un balayage donné, des nouvelles coordonnées sont attribuées à ce point, ces nouvelles coordonnées correspondants à un indice identique dans la SFC ou dans la MCG de codage qu’un indice dans le balayage donné; caractérisée en ce que l’information à encoder est utilisée dans au moins une de la génération de la partition dans le carré, de la détermination de la densité associée à chaque point du carré, de la colorisation de chaque point du carré, et de l’obtention de la SFC ou de la MCG de codage. 5. Une méthode mise en œuvre par ordinateur pour encoder de l’information au moyen d’un pavage généré dans un carré, la méthode comprenant : obtenir de l’information à encoder; générer une SFC dans un carré; générer un pavage dans le carré en utilisant la SFC générée; le pavage étant généré en remplaçant chaque portion élémentaire de la SFC par un pavage correspondant; et fournir une indication du pavage généré; caractérisée en ce que l’information à encoder est utilisée lors de la génération de la SFC. 6. La méthode revendiquée à la revendication 5, dans laquelle la SFC est définit par 8 portions élémentaires en « S » et dans laquelle le pavage correspondant correspond à un pavage donné identique et fixe pour chacune des 8 portions élémentaires. 7. La méthode revendiquée à la revendication 5, comprenant de plus : obtenir une chaine ASCII à coder, convertir la chaine ASCII en une séquence de codes correspondants dans une base numérique donnée remplissant un tableau carré, générer une SFC au moyen d’une courbe directrice SFC de Gray donnée dans laquelle chaque point de la courbe directrice SFC de Gray est remplacé par un motif correspondant à un code donné de la séquence de codes. 8. Une méthode mise en œuvre par ordinateur pour encoder de l’information au moyen d’une image, comprenant : obtenir une première image ayant un nombre donné de pixels; obtenir une seconde image ayant un nombre donné de pixels identique au nombre donné de pixels de la première image; intriquer la première image avec la seconde image pour fournir une image intriquée, l’image intriquée comprenant un nombre donné de métapixels identique au nombre donné de pixels de la première image, chaque métapixel comprenant : une portion centrale comprenant au moins un pixel ayant une valeur associée égale à celle d’un pixel correspondant dans une de la première image et de la seconde image, une portion périphérique entourant la portion centrale, la portion périphérique comprenant une pluralité de pixels ayant chacun une valeur associée égale à celle du pixel correspondant à l’autre de la première image et de la second image; et fournir l’image intriquée, caractérisée en ce que la première image est sélectionnée dans un groupe d’images comprenant au moins: un stencil topologique unicellulaire généré au moyen de la méthode revendiquée dans une des revendications 1 à 4. 9. La méthode revendiquée à la revendication 8, dans laquelle le groupe d’images comprend de plus un pavage généré au moyen d’une des revendications 5 à 7. 10. La méthode revendiquée à une des revendications 8 à 9, dans laquelle le groupe d’images comprend de plus une image donnée. 11. La méthode revendiquée à une des revendications 8 à 9, dans laquelle le groupe d’images comprend de plus un code QR. 12. La méthode revendiquée à une des revendications 8 à 11, dans laquelle le groupe d’images comprend de plus au moins une d’une table de couleurs statique et d’une table de couleurs dynamique. 13. La méthode revendiquée à la revendication 12, dans laquelle la table de couleurs dynamique est générée selon une méthode comprenant : générer une SFC en deux dimensions parcourant le carré; et utiliser une fonction de hachage permettant d’associer dynamiquement des couleurs d’un cube RGB de couleurs à chaque pixel du carré, dans laquelle l’association est contrôlée par la fonction de hachage au moyen d’au moins un paramètre et de la SFC générée. 14. La méthode revendiquée à la revendication 8 dans laquelle le schéma d’intrication est sélectionné parmi un groupe comprenant quatre modes typographiques. 15. La méthode revendiquée à une des revendications 8 à 14, comprenant de plus obtenir une SFC ou une MCG de codage parcourant l’image intriquée, et réordonnancer chaque point de l’image intriquée au moyen de la SFC ou de la MCG de codage afin de fournir un stencil topologique unicellulaire brouillé, le réordonnancement modifiant les coordonnées de chaque point de l’image intriquée tel que pour chaque point donné ayant des coordonnées correspondantes données initiales dans un balayage donné, des nouvelles coordonnées sont attribuées à ce point, ces nouvelles coordonnées correspondants à un indice identique dans la SFC ou dans la MCG de codage qu’un indice dans le balayage donné; le réordonnancement permettant de fournir une image intriquée brouillée. 16. L’utilisation de la méthode revendiquée à une des revendications 1 à 15 pour chiffrer de l’information. 17. Un stencil topologique unicellulaire généré au moyen de la méthode revendiquée dans une des revendications 1 à 4. 18. Une image générée au moyen de la méthode revendiquée dans une des revendications 8 à 15. 19. Utilisation de l’image revendiquée à la revendication 18 pour identifier ou authentifier un élément. 20. L’utilisation de l’image revendiquée à la revendication 19, dans laquelle l’élément est un objet. 21. Une méthode mise en œuvre par ordinateur pour effectuer une identification ou une authentification au moyen d’une table de couleurs dynamique dans un carré, la méthode comprenant : générer une SFC en deux dimensions parcourant un carré comprenant une pluralité de pixels; utiliser une fonction de hachage permettant d’associer dynamiquement des couleurs d’un cube RGB de couleurs à chaque pixel du carré, dans laquelle l’association est contrôlée par la fonction de hachage au moyen d’au moins un paramètre et de la SFC générée; et fournir la table de couleurs générée, la table de couleurs générée permettant d’effectuer une identification ou une authentification 22. La méthode revendiquée à la revendication 21, comprenant de plus la modification de la valeur de chaque pixel de la table de couleurs générée. |
La fonction tabDYN de la Figure 71a commentée à la Figure 71b reçoit en entrée <ind> l’indice du point à colorier, la résolution <a> de la table générée et la liste <lsDYN> des paramètres de sa signature cryptographique. La fonction retourne le couple <v2v3> représentant le point colorisé, constitué de ses coordonnées et de son code couleur. La fonction opère selon trois modes décrits précédemment. Selon un aspect de l’invention, il est donc divulgué une méthode mise en œuvre par ordinateur pour effectuer une identification ou une authentification au moyen d’une table de couleurs dynamique dans un carré, la méthode comprenant générer une SFC en deux dimensions parcourant un carré comprenant une pluralité de pixels; utiliser une fonction de hachage permettant d’associer dynamiquement des couleurs d’un cube RGB de couleurs à chaque pixel du carré, dans laquelle l’association est contrôlée par la fonction de hachage au moyen d’au moins un paramètre et de la SFC générée et fournir la table de couleurs générée, la table de couleurs générée permettant d’effectuer une identification ou une authentification. Selon une ou plusieurs réalisations, la méthode comprend de plus la modification de la valeur de chaque pixel de la table de couleurs générée. Exemples L’augmentation de la complexité visuelle des tables de couleurs dynamiques est illustrée par les Figures 12 et 13. La formation de tables de couleurs en forme d’empreintes digitales se combine visuellement à des effets moirés géométriques. La Figure 12 illustre le résultat des calculs effectués à partir de l’équation Eq.11 tandis que la Figure 13 illustre le résultat des calculs effectués à partir de l’équation Eq.12. Encodage d’une palette de couleurs Il sera apprécié que l’encodage d’une palette de couleurs c’est à dire d’une liste séquentielle de codes RGB sans ordonnancement vise à communiquer cette liste de manière sécuritaire et confidentielle. Le principe de chiffrement développé revient à opérer dans un espace de dimension <3n> où <n> est le nombre de couleurs de la liste. La liste des codes RGB donnés sous forme de triplets est simplement transformée en une liste concaténée de <3n> valeurs entières. La nouvelle liste formée est alors considérée comme la liste des coordonnées d’un point appartenant à une SFC multidimensionnelle d’un type prédéterminé. Ce type est choisi parmi la liste des SFC multidimensionnelles disponibles. Le code de chiffrement de la liste initiale de codes RGB sera donc l’indice du point appartenant à la SFC choisie, dont la liste des coordonnées est connue. La clé de chiffrement de la liste sera donc constituée du code lui-même sous un format grand entier (Bignum) de la dimension de l’espace de chiffrement et de la clé de chiffrement de la SFC multidimensionnelle. La fonction rgbCODE de la Figure 72a commentée à la Figure 72b encode une liste de codes RGB en un entier positif à précision multiple (Bignum). La fonction reçoit en entrée la liste des codes RGB <lsRGB>. Elle retourne le code calculé. La fonction codeRGB de la Figure 73a commentée à la Figure 73b calcule le code RGB d’une liste de codes RGB encodée à partir d’une SFC multidimensionnelle. La fonction reçoit en entrée le code <code>, <nbr> le nombre de codes RGB dans la liste, et <ind> l’indice du code RGB dans la liste. La fonction retourne <v3> le code RGB recherché. Colorisation des régions topologiques Il sera apprécié que la colorisation des régions topologiques s’effectue dans une ou plusieurs réalisations par des règles de colorisation associées aux densités. Le processus de colorisation est par conséquent associé au partitionnement topologique réalisé à partir de polygones de Jordan dans une ou plusieurs réalisations. Les densités sont des indicateurs arithmétiques calculés algorithmiquement qui caractérisent les régions combinatoires issues du partitionnement. Pour chaque région, la densité varie selon l’orientation dans le plan de chaque polygone de Jordan constitutif de l’ensemble de partitionnement. Les valeurs des densités obtenues fluctuent en fonction du nombre de polygones de Jordan élémentaires constitutifs et les modifications des orientations de ces polygones conduisent à l’obtention de densités négatives. Il sera apprécié que la colorisation des densités revient donc, soit à associer un code RGB à chaque densité issue du partitionnement ou alors à associer un code RGB à un ensemble de densités regroupées pour des raisons topologiques, logiques ou autres. Regrouper les densités dont les moitiés sont impaires est par exemple une stratégie qui permet de dissocier la couleur des bords des polygones de Jordan par rapport aux couleurs des régions intérieures et extérieures. Pour ce faire, en dehors de la méthode de création d’une table de correspondances densité-couleur, une méthode permettant de créer dynamiquement une palette de couleur déterminée par un nombre restreint de paramètres et qui s’adapte automatiquement aux plages de densités rencontrées est divulguée. Plages de densités Il sera apprécié par la personne versée dans le domaine que les plages de densités sont l’ensemble des densités différentes obtenues lors du partitionnement topologique. Ces plages sont connues a posteriori par un tri de la liste finale des densités obtenues et par conservation d’un seul élément parmi les éléments répétés. Les huit plages de la séquence Eq.13 sont issues du partitionnement de la Figure 14 avec des modifications successives des orientations des polygones de Jordan constitutifs. Dans ce cas le partitionnement est réalisé à partir de trois polygones de Jordan constitutifs élémentaires : deux carrés et un rectangle. Il y a donc 2 3 combinaisons différentes d’orientations des trois polygones qui permettent d’obtenir 8 occurrences colorisées différentes du même partitionnement. Ces combinaisons sont notées par un n-uplet de valeurs binaire représentant les orientations des polygones de Jordan. Dans le cas de la Figure 14 en haut à gauche, les colorisations correspondent aux combinaisons [0,0,0], [0,0,1], … ,[1,1,1] successives.
Post-correspondance densités-couleurs La post-correspondance entre les densités et les couleurs s’effectue lorsque la plage des densités est connue à l’avance soit par un prétraitement discret réalisé en calculant préalablement l’ensemble des densités relatives à un partitionnement topologique dans une fenêtre d’affichage déterminée, soit par une méthode permettant à l’avance de connaître cette plage par déduction combinatoire. Dans ce cas l’origine de la plage des densités peut être ramenée à zéro par une translation connue de toutes les densités. La fonction colMIRE de la Figure 74a commentée à la Figure 75b calcule une liste de points colorisés dans une fenêtre de dimensions connues et pour un partitionnement topologique donné. La fonction reçoit en entrée les points diagonaux de la fenêtre de balayage, <v2O> le point bas à gauche, <v2E> le point haut à droite, <Q> la liste des sommets quadratiques formant le partitionnement, <tr> la valeur de translation permettant de ramener en particulier la plage des densités à une origine nulle et un ensemble de valeurs positives, <nbrDENS> le nombre de densités de la plage et <code> le nombre entier encodant la liste des codes RGB. Pré-correspondance densités-couleurs Il sera apprécié que la pré-correspondance entre les densités et les couleurs s’effectue à la volée sans connaissance préalable de la plage des densités. Les propriétés de la fonction tabCODE déjà présentée (Figure 66a, Figure 66b) sont utilisées. Le principe est de générer une table de couleurs dont le nombre d’entrées sera au minimum le double de la valeur absolue de la densité maximale. La couleur associée à la densité fournie sera alors simplement la couleur de la table d’indice égal à la moitié du nombre de couleurs ajoutée à la valeur de la densité. Cette approche permet d’éviter des techniques de hachages de séquences de nombres entiers avec des valeurs négatives. La fonction lsv2v3DENS de la Figure 75a commentée à la Figure 75b calcule la liste des points colorisés associés à un ensemble de polygones de Jordan représenté de manière quadratique. La fonction reçoit en entrée, <Q> la liste des triplets de points représentant l’ensemble, <v2O> le coin inférieur gauche du rectangle de balayage, <v2E> le coin supérieur droit du rectangle de balayage, <v2C> les paramètres de combinaison linéaire de la fonction tabCODE (Figure 66a, Figure 66a), <plg> le nombre de couleurs de la palette définie, <per> l’indicateur de permutation des codes RGB, <v3T>, le vecteur de translation du code RGB calculé et <v3N> , le vecteur des indicateurs de complémentarité des couleurs (négatifs). La fonction retourne la liste des points colorisés de la fenêtre de balayage. Exemples Les principes de colorisation précédents sont illustrés par les Figures 15 et 16. L’objectif est d’obtenir une colorisation homogène du partitionnement topologique réalisant le lettrage vectoriel AB. La lettre A possède deux composantes connexes avec un code des orientations de type [{0,1}, {0,1}] et la lettre B trois composantes avec un code des orientations de type [{0,1}, {0,1}, {0,1}] Pour obtenir un coloriage homogène on devra identifier une bonne combinaison associant les deux codes. Dans le cas de la Figure 16 une bonne colorisation sera réalisée à partir du code général [1,1], [1,0,0] ou complémentaire [0,0], [0,1,1]. Le code [0 1], [1,0,1] sera associé à la colorisation non homogène de cette même figure. Selon l’étape 108 de la Figure 47, le stencil topologique unicellulaire est fourni. Il sera apprécié par la personne versée dans le domaine que le stencil topologique unicellulaire généré peut être fourni selon plusieurs réalisations. En particulier, il sera apprécié par la personne versée dans le domaine que la réalisation peut dépendre de l’application. Selon une ou plusieurs réalisations, le stencil topologique unicellulaire généré est stocké dans une unité de mémoire du dispositif de traitement. Selon une ou plusieurs autres réalisations, le stencil topologique unicellulaire généré est transmis à un autre dispositif de traitement qui est relié de façon fonctionnelle au dispositif de traitement utilisé pour implémenter la méthode au moyen d’au moins un réseau de données. La personne versée dans le domaine appréciera que le réseau de données puisse être de divers types. Par exemple et dans le cadre d’une ou de plusieurs réalisations, le réseau de données peut être un réseau local (LAN). Dans une ou plusieurs autres réalisations, le réseau de données est l’Internet. Il sera apprécié par la personne versée dans le domaine que l’étape de fournir le stencil topologique unicellulaire comprend de plus dans une ou plusieurs réalisations obtenir une SFC ou une MCG de codage parcourant le carré et réordonnancer chaque point du stencil topologique unicellulaire au moyen de la SFC ou de la MCG de codage afin de fournir un stencil topologique unicellulaire brouillé, le réordonnancement modifiant les coordonnées de chaque point du stencil topologique unicellulaire tel que pour chaque point donné ayant des coordonnées correspondantes données initiales dans un balayage donné, des nouvelles coordonnées sont attribuées à ce point, ces nouvelles coordonnées correspondants à un indice identique dans la SFC ou dans la MCG de codage qu’un indice dans le balayage donné. Il sera apprécié que dans la méthode divulguée à la figure 47, l’information à encoder est utilisée dans au moins une de la génération de la partition dans un carré, de la détermination de la densité associée à chaque point du carré et de la colorisation de chaque point du carré. La personne versée dans le domaine appréciera que cette utilisation peut se faire de diverses façons car de nombreux paramètres sont disponibles pour chacune des étapes mentionnées ci-avant. Brouillage des stencils En fait, il sera apprécié par la personne versée dans le domaine que le brouillage optionnel des stencils topologiques augmente la robustesse du chiffrement par rapport à des attaques ultérieures. Il permet en particulier de déstructurer la cohérence visuelle des listes de points colorisés au niveau spatial des coordonnées comme au niveau colorimétrique des codes RGB. Ce brouillage utilise une approche de réordonnancement du plan par des SFC ou des MCG. Contrairement aux méthodes conventionnelles où les réordonnancements s’effectuent à partir d’un nombre limité de SFC connues, le transcodage de nombres entiers s’effectue à partir de MCG de même résolution appartenant à des familles quelconques. Les signatures des MCG vont fournir les clés de chiffrement. Le schéma fonctionnel suivant (Eq.14) est alors obtenu: Il sera apprécié par la personne versée dans le domaine que les fonctions <F> et <G> de décodage et codage de l’équation 3 pourront être choisies manuellement ou automatiquement. Pour les choisir automatiquement il est possible de représenter les <n 2> combinaisons de fonctions de transcodage réalisées à partir de tables de codage et décodage à <n> éléments par l’indice dans une SFC de résolution <n−1> du point ayant comme couple de coordonnées l’indice de la fonction de décodage dans sa table et l’indice de la fonction de codage dans sa table. Cet indice pourra être utilisé pour effectuer un choix par hachage modulaire. La Figure 48 illustre une méthode mise en œuvre par ordinateur pour encoder de l’information au moyen d’une image comprenant des métapixels. En fait, il sera apprécié que des identifiants graphiques universels doivent pouvoir être visualisés sur des supports physiques différents et par des techniques d’affichages numériques variées. La personne versée dans le domaine sait qu’il y a deux méthodes principales d’affichage en deux dimensions qui sont la méthode vectorielle et la méthode bitmap. La méthode vectorielle est orientée vers la colorisation de primitives graphiques ou géométriques prédéterminées : carrés, triangles, cercles ... de taille paramétrée alors que la méthode bitmap est orientée vers la colorisation de points élémentaires dits pixels. Contrairement à la méthode vectorielle plus souple d’utilisation, la méthode bitmap a une précision d’affichage parfaite. Il sera apprécié que dans ce qui suit les deux approches seront utilisés mais une surcouche est ajoutée à la méthode bitmap conventionnelle en introduisant une méthode développée autour du concept de métapixel. Il sera apprécié par la personne versée dans le domaine que cette approche permet de mieux contrôler les unités d’impression physique de type dpi (dots per inch) mais surtout d’enrichir les possibilités de chiffrement visuel restreintes du pixel. Les métapixels permettent en particulier de réaliser des intrications visuelles de bitmap conventionnels de type images photographiques et codes QR. Selon l’étape 200 de la Figure 48, une première image ayant un nombre donné de pixels est obtenue. Il sera apprécié par la personne versée dans le domaine que la première image peut être obtenue selon plusieurs réalisations. Dans une ou plusieurs réalisations, la première image est obtenue de la mémoire du dispositif de traitement. Selon une ou plusieurs autres réalisations, la première image est générée par le dispositif de traitement. Selon une ou plusieurs autres réalisations, la première image est reçue d’un autre dispositif de traitement par l’intermédiaire, par exemple, d’un réseau de données. La personne versée dans le domaine appréciera que le réseau de données peut être de divers types. Par exemple et dans le cadre d’une ou de plusieurs réalisations, le réseau de données est un réseau local (LAN). Dans une ou plusieurs autres réalisations, le réseau de données est l’Internet. Il sera apprécié que la première image est sélectionnée dans un groupe d’images comprenant au moins un stencil topologique unicellulaire généré au moyen de la méthode décrite ci-avant. Il sera apprécié que dans une ou plusieurs réalisations, le groupe d’images comprend de plus un pavage généré au moyen d’une méthode décrite dans la demande de brevet. Il sera apprécié que dans une ou plusieurs réalisations, le groupe d’images comprend de plus au moins une d’une table de couleurs statique et d’une table de couleurs dynamiques. Il sera apprécié que dans une ou plusieurs réalisations, le groupe d’images comprend de plus un code QR. Il sera apprécié que dans une ou plusieurs réalisations, le groupe d’images comprend de plus une image donnée, par exemple toute image importée (par exemple une photo). Il sera apprécié que dans une ou plusieurs réalisations la table de couleurs dynamique est générée selon une méthode comprenant générer une SFC en deux dimensions parcourant le carré et utiliser une fonction de hachage permettant d’associer dynamiquement des couleurs d’un cube RGB de couleurs à chaque pixel du carré, dans laquelle l’association est contrôlée par la fonction de hachage au moyen d’au moins un paramètre et de la SFC générée.Selon l’étape 202 de la Figure 48, une seconde image ayant un nombre donné de pixels identique au nombre donné de pixels de la première image est obtenue. Il sera apprécié par la personne versée dans le domaine que la seconde image peut être obtenue selon plusieurs réalisations. Dans une ou plusieurs réalisations, la seconde image est obtenue de la mémoire du dispositif de traitement. Selon une ou plusieurs autres réalisations, la seconde image est générée par le dispositif de traitement.Selon une ou plusieurs autres réalisations, la seconde image est reçue d’un autre dispositif de traitement par l’intermédiaire, par exemple, d’un réseau de données. La personne versée dans le domaine appréciera que le réseau de données peut être de divers types. Par exemple et dans le cadre d’une ou de plusieurs réalisations, le réseau de données peut être un réseau local (LAN). Dans une ou plusieurs autres réalisations, le réseau de données est l’Internet. Il sera apprécié par la personne versée dans le domaine que la seconde image peut être de divers types. En fait, la seconde image pourrait être une des images mentionnées ci-avant (e.g. une table de couleurs statique, une table de couleurs dynamique, une image donnée, un code QR, un pavage généré, un stencil topologique unicellulaire, etc). Selon l’étape 204 de la Figure 48, la première image est intriquée avec la seconde image pour fournir une image intriquée. Il sera apprécié que l’image intriquée comprend un nombre donné de métapixels identique au nombre donné de pixels de la première image. Chaque métapixel comprend une portion centrale et une portion périphérique. La portion centrale comprend au moins un pixel ayant une valeur associée égale à celle d’un pixel correspondant dans une de la première image et de la seconde image. La portion périphérique entoure la portion centrale et comprend une pluralité de pixels ayant chacun une valeur associée égale à celle du pixel correspondant à l’autre de la première image et de la seconde image. Système typographique et métapixels Il sera apprécié que les listes de points colorisés permettent d’associer dans le plan cartésien un couple de coordonnées et sa couleur associée. Cette représentation permet de décrire un fichier bitmap sans ordonnancement préalable des pixels. Pour permettre de magnifier la taille des pixels, la notion de métapixel est introduite qui permet de transformer un pixel unitaire en un carré de n 2 pixels, ce carré étant lui-même décomposé en un carré intérieur et un carré extérieur. Le principe de métapixel est essentiel pour changer la définition d’impression physique exprimée en pixels par centimètre mais également pour permettre de créer une zone supplémentaire de codage de l’information colorimétrique. La Figure 17 illustre le passage d’une représentation pixels à une représentation métapixels pour une simple courbe de Péano en forme de S. Les couleurs de la liste des points colorisés vont-être utilisées pour coloriser soit le carré intérieur soit les bords du carré en fonction d’un mode préalablement choisi. La Figure 18 illustre quatre modes typographiques disponibles associés aux métapixels. Le premier mode s’applique pour les métapixels sans bord. Le carré principal est colorisé à partir d’une table des couleurs dynamiques. Le mode suivant (fd=0) permet d’affecter une épaisseur au bord et une certaine couleur qui sera constante. Dans ce cas le carré intérieur est colorisé avec la table dynamique de couleurs. Le mode suivant (fd=1) inverse l’affectation des couleurs par rapport au mode précédent. Enfin le dernier mode (fd=2) affecte la couleur d’une table de couleurs statique pour le carré intérieur et la couleur de la table dynamique pour le reste du métapixel. Le processus typographique Les algorithmes présentés ont pour objectif de produire des images bitmap à une certaine résolution exprimée par exemple en pixels par centimètre ou en dots per inch (DPI) La première phase algorithmique consiste à transformer la liste des points colorisés en une liste de codes couleurs RGB ordonnée dans un ordre de lecture type machine à écrire de haut en bas et de gauche à droite. Ce type de lecture se retrouve dans de nombreux formats bitmap en particulier le format Ascii PPM. L’algorithme SFC utilisé pour ordonnancer la liste des points colorisés en la liste de couleurs ordonnée est la fonction de codage CD0uwLIG. La seconde phase algorithmique consiste à transformer la liste des couleurs pixel en une liste de couleurs métapixels. La fonction modPPM de la Figure 76a commentée à la Figure 76b reçoit en entrée <nom> le nom du fichier bitmap à générer, <nbrx> le nombre de pixels du côté du carré d’impression, <lsv2v3>, la liste des points colorisés soit les couples constitués chacun des coordonnées cartésiennes du point et du triplet représentant son code RGB, <dpi> le facteur d’échelle d’un métapixel, <bd>, la largeur du bord d’un métapixel, <v3B>, la couleur RGB du bord, <v3T> , le vecteur de translation des couleurs R, G, B, <v3N> le vecteur indiquant le calcul de l’image en négatif pour les trois canaux de couleur, <fd>, le mode d’utilisation des bords et des carrés intérieurs aux métapixels et finalement <posTAB> la table des couleurs destinée à coloriser les carrés intérieurs des métapixels. La fonction retourne le fichier généré en format PPM grâce à l’appel de la fonction TABg2ppm (Figure 101). La fonction TABg2lis de la Figure 100a commentée à la Figure 100b fournit une liste de couleurs ordonnée selon une lecture haut-bas et gauche droite. C’est la fonction DC0uwLIG de la Figure 99 fonction de décodage SFC qui réalise un tel ordonnancement. La fonction reçoit en entrée <a> la résolution du tableau de points colorisés et <ls> la liste des points colorisés. La fonction retourne la liste ordonnée des codes couleurs RGB. Cet ordonnancement est similaire à celui des fichiers Ascii PPM. La fonction TAB2dpi de la Figure 77a commentée à la Figure 77b calcule la couleur d’un métapixel colorisé. La fonction attend en entrée <d> la taille du métapixel, <lsRGB> la table des couleurs, <sca> le facteur de changement d’échelle du métapixel, <bd> l’épaisseur du bord, <v3B>, le code couleur du bord, <fd> le mode de colorisation du métapixel et <tabMAP> la table des couleurs statiques destinée à remplir les carrés intérieurs des métapixels. La fonction retourne la liste des couleurs des métapixels. La fonction CAS2dpi de la Figure 78a commentée à la Figure 78b calcule le code couleur RGB associé à un point donné. La fonction attend en entrée les indices <i> et <j> du point dans le plan cartésien : ses coordonnées, la liste des couleurs <lsRGB>, une liste de paramètres <ls> et une liste de codes couleurs <tabMAP> destinée à remplir les carrés intérieurs des métapixels. La fonction retourne le code couleur RGB déterminé. L’organigramme de la fonction suit le traitement des modes typographiques de la Figure 18. Les coordonnées du point à coloriser sont données en entrée. Si le bord du métapixel est nul alors la couleur du point est prise dans la table des couleurs fournie en argument. Si le bord est différent de zéro, le statut du point, c’est à dire sa position par rapport au carré intérieur du métapixel, est alors testée. À partir de cet embranchement les tests sont conditionnés aux modes fd = {0, 1, 2}. En mode 2 la couleur attribuée au point en fonction de sa position est soit la couleur déterminée dans la table des couleurs principale (table dynamique), soit la couleur déterminée dans l’image fournie en argument (table statique). La fonction intMPIX de la Figure 79a commentée à la Figure 79b calcule la position d’un point par rapport au carré intérieur d’un métapixel. La fonction attend en entrée <i>, <sc>, <lign>, <bd> et <sca>. La fonction retourne la valeur 0 ou 1 en fonction de la position du point dans le carré. Intrication de tables de couleurs dynamiques et statiques Il sera apprécié par la personne versée dans le domaine que l’intrication des tables dynamiques est valable pour les quatre modes typographiques présentés ci-avant. La fonction SCRIPT003 de la figure 80 présente les trois premiers modes typographiques appliqués à une table dynamique illustrée en Figure 19 à gauche. Dans ce cas, le métapixel n’a pas de bord, puis un bord d’épaisseur 2 pixels pour un carré intérieur de 20 pixels pour la figure en haut à droite (fd=0) et finalement un bord de 5 pixels pour un carré intérieur de 14 pixels pour la figure de droite en bas (fd=1). Il sera apprécié par la personne versée dans le domaine que les tables statiques intriquées sont des images bitmap précalculées d’origine quelconque mais de résolution équivalente à la table dynamique des couleurs. Elles peuvent être intriquées cryptées (brouillées) ou non, par l’intermédiaire de SFC élémentaires ou composites provenant des tables de fonctions (les bibliothèques) Dans le cas des photos, le rapport de proportions entre le bord du métapixel et le carré intérieur conditionne la lecture visuelle de l’image bitmap intriquée. La Figure 20 correspond au résultat de la fonction de script SCRIPT004 de la Figure 81. L’image finale à droite de la figure intrique la table dynamique des couleurs en haut à gauche et une image photo en très basse résolution en bas à gauche. La Figure 21 illustre un second exemple d’intrication d’une table dynamique et d’une image photographique. La fonction SCRIPT007 de la Figure 82 est le script de production. Les altérations des couleurs initiales de l’image du buste de Néfertiti sont encryptées avec les autres paramètres dans les clés de chiffrement de l’image bitmap résultante. Il sera apprécié par la personne versée dans le domaine que les QR-codes conventionnels peuvent-être également intriqués dans les stencils topologiques grâce aux métapixels en utilisant le mode fd = 2. La fonction SCRIPT008 de la Figure 83 illustre une opération de cette nature. Le texte associé au QR-code est dans cet exemple « Masahiro Hara, inventeur du code QR ». Dans l’absolu la table des couleurs dynamiques pourrait être également remplacée par un second code QR de manière à imbriquer deux codes différents. La Figure 22 présente le résultat graphique de l’intrication d’une table dynamique en haut à gauche et du QR-code en question en bas à gauche. Le résultat de l’intrication est illustré par l’image de droite. Chiffrement par brouillage SFC Il sera apprécié que l’utilisation combinée des tables de couleurs statiques et dynamiques peut être notamment destinée à l’identification et à l’authentification. Le brouillage des tables statiques permet d’ajouter la composante chiffrement visuel aux bitmaps générés. La Figure 23 illustre le brouillage des tables statiques photographiques et code QR de deux des exemples précédents. La combinaison simultanée des images photographiques et images code QR brouillées ou non est abordée dans le cadre des stencils topologiques multicellulaires. Effet MAJUS L’utilisation des deux zones carrées définies par les métapixels permet d’utiliser un ensemble de métapixels pour coder deux types d’informations colorisées sur une même région du plan. La cohérence de colorisation entre les régions intérieures et extérieures des métapixels est avantageusement perceptible par le système de vision humain qui est capable de discriminer deux images intriquées. Selon l’étape 206 de la Figure 48, l’image intriquée est fournie. Il sera apprécié par la personne versée dans le domaine que l’image intriquée générée peut être fournie selon plusieurs réalisations. En particulier il sera apprécié par la personne versée dans le domaine que la réalisation peut dépendre de l’application. Selon une ou plusieurs réalisations, l’image intriquée générée est stockée dans une unité de mémoire du dispositif de traitement. Selon une ou plusieurs autres réalisations, l’image intriquée est transmise à un autre dispositif de traitement qui est reliée de façon fonctionnelle au dispositif de traitement utilisé pour implémenter la méthode au moyen d’au moins un réseau de données. La personne versée dans le domaine appréciera que le réseau de données peut être de divers types. Par exemple et dans le cadre d’une ou de plusieurs réalisations, le réseau de données peut être un réseau local (LAN). Dans une ou plusieurs autres réalisations, le réseau de données est l’Internet. Dans une ou plusieurs réalisations, non illustrées à la Figure 48, la méthode comprend de plus une étape d’obtenir une SFC ou une MCG de codage parcourant l’image intriquée. La méthode comprend de plus réordonnancer chaque point de l’image intriquée au moyen de la SFC ou de la MCG de codage afin de fournir un stencil topologique unicellulaire brouillé, le réordonnancement modifiant les coordonnées de chaque point de l’image intriquée tel que pour chaque point donné ayant des coordonnées correspondantes données initiales dans un balayage donné, des nouvelles coordonnées sont attribuées à ce point, ces nouvelles coordonnées correspondants à un indice identique dans la SFC ou dans la MCG de codage qu’un indice dans le balayage donné; le réordonnancement permettant de fournir une image intriquée brouillée. La personne versée dans le domaine appréciera que fournir une image intriquée brouillée peut avoir un grand intérêt pour certaines applications reliées au chiffrement. Chiffrement de stencils topologiques unicellulaires Tel que mentionné ci-avant, les stencils topologiques unicellulaires sont des identifiants graphiques construits à partir de SFC qui partitionnent des carrés dans le plan et des tables de couleurs dynamiques qui permettent de coloriser les régions partitionnées par les SFC. Le partitionnement est réalisé à partir d’une ou de plusieurs SFC combinées de manière topologique. Il sera apprécié par la personne versée dans le domaine que les SFC peuvent aussi être utilisées pour chiffrer les tables de couleurs. Un stencil topologique unicellulaire est par conséquent décrit à partir d’une série de paramètres fournissant sa signature cryptographique. Celle-ci est composée en particulier des clés de chiffrement de chaque SFC intervenant dans le partitionnement topologique et des clés de chiffrement associées aux tables de couleurs dans une ou plusieurs réalisations. Signature cryptographique Dans de telles réalisations, la signature cryptographique d’un stencil topologique unicellulaire (Eq.15) est donc l’ensemble des signatures cryptographiques des SFC de partitionnement et de celles associées aux tables de couleurs. La Figure 25 illustre un stencil topologique constitué à partir d’une SFC unique : une courbe de Hilbert, de deux tables de couleurs dynamiques pour l’intérieur et l’extérieur de la courbe et d’une table de couleurs pour les bords, initialisée dans ce cas pour produire une couleur constante noire. Partitionnement de Jordan multiple La représentation quadratique des polygones de Jordan permet de fusionner des polygones simples en polygones multiplement connexes puis ces derniers avec d’autres polygones à connexité quelconque. Cette propriété permet des partitionnements combinatoires qui augmentent en complexité avec chaque ajout de nouveaux polygones. Le nombre de valeurs différentes de densités augmente également et par conséquent associer une table de couleur par valeur de densité peut s’effectuer en définissant une table par valeur ou alors en utilisant des tables de hachage. La Figure 26 illustre un partitionnement topologique multiple à trois courbes de Jordan. Étapes algorithmiques de construction Il sera apprécié par la personne versée dans le domaine que pour construire le stencil, il faut commencer par une étape de détermination des tables de couleurs, c’est à dire de leurs SFC directrice respective et du choix des paramètres de colorisation formant la signature cryptographique de chaque table. Dans l’exemple de la Figure 27, il y a deux tables de couleurs qui sont générées correspondant à la colorisation de deux régions topologiques différentes induites par deux SFC différentes. Compte tenu du choix des paramètres de chiffrement la SFC de la figure à gauche est discernable contrairement à la SFC directrice de la figure à droite. La correspondance entre les points colorisés des tables et les points positionnés par rapport à la SFC de partitionnement s’effectue par le biais des densités calculés pour tous les points du carré contenant la SFC. Dans l’exemple de la Figure 28, le tableau des densités à gauche de la figure fait état de points de densités de valeurs 0, 1, 2, 3, 4. Les densités des bords c’est à dire des points situés sur les côtés et les sommets convexes et concaves ont pour valeurs respectives 2, 1, 3, les densités de valeurs 0 et 4 sont associés aux points des régions intérieures et extérieures à la courbe de Hilbert fermée en polygone de Jordan. La correspondance entre les densités et les couleurs s’effectue par l’intermédiaire de tables de hachages possédant un nombre variable d’entrées. La fonction celUNI de la Figure 84a commentée à la Figure 84b calcule une liste de points colorisés dans un carré donné. La fonction attend en entrée la représentation quadratique <Q> de l’ensemble des sommets de toutes les SFC utilisées pour la partition du carré, le point bas gauche du carré dit de balayage <v2O> et le point haut droit <v2E>. La fonction retourne la liste <ms> des points colorisés. Hachage des tables dynamiques Les tables dynamiques de couleurs sont regroupées en tables de hachage. La correspondance entre une densité se fait de manière modulaire dans la fonction celUNI (Figure 84a, Figure 84b) en fonction du nombre d’entrées dans la table de hachage et des valeurs des densités. La fonction de script SCRIPTaab de la Figure 85 produit l’image de droite de la Figure 28. L’initialisation de trois tables de hachage est illustrée par la Figure 30. Deux exemples de tables à cinq entrées et un exemple de table à treize entrées sont illustrés. Il sera apprécié par la personne versée dans le domaine que des tables de hachage différentes peuvent être finalement associées à des régions de densité différentes ou alors regroupées en fonction de valeurs de densités particulières. La Figure 29 illustre une association des valeurs différentes de densités avec des tables dynamiques différentes. Dans ce cas, les bords sont plus difficilement discriminés par l’œil que lorsqu’une table dynamique est utilisée de manière à générer une couleur constante comme la couleur noire. Stencil topologique unicellulaire à effet Majus Il sera apprécié par la personne versée dans le domaine que l’effet Majus associé à la colorisation des carrés intérieurs des métapixels et présenté ci-après peut être utilisé avec toute table des couleurs statique ou dynamique. Un des intérêts de cette opération est de pouvoir séparer les processus d’identification et d’authentification visuelles. Comme dans les exemples précédents l’ensemble des tables utilisées peut-être brouillé avec des substitutions des SFC directrices entraînant des permutations des points colorisés. La Figure 31 illustre un effet Majus réalisé à partir d’une photo numérique. La lisibilité visuelle de la photo dépend des proportions entre les bords des métapixels et les carrés intérieurs. La Figure 32 illustre un effet Majus réalisé à partir d’une table dynamique précalculée ou publique. L’ajout de symboles ou formes graphiques (cercle, triangle, polygone) peut permettre de réaliser un alphabet de codes graphiques associé à une base numérique donnée et dans ce cas d’encoder du texte à partir de la définition d’une SFC directrice. Toutefois, si l’affichage vectoriel à partir des langages graphiques usuels s’adapte automatiquement à la résolution pixels disponible : les pixels remplissent les zones vectorielles, l’affichage bitmap équivalent : les pixels forment les zones colorisées, est complexe à implémenter et doit passer par le principe de mire graphique défini ci- après. Partitionnement multicellulaire octal Il sera apprécié qu’il est décrit une méthode mise en œuvre par ordinateur pour encoder de l’information au moyen d’un pavage généré dans un carré à la Figure 49. Selon l’étape 280 de la Figure 49, de l’information à encoder est obtenue. Il sera apprécié par la personne versée dans le domaine que la nature de l’information à encoder peut être diverse. De plus, il sera aussi apprécié par la personne versée dans le domaine que l’information à encoder peut être obtenue de diverses façons. Dans une ou plusieurs réalisations, l’information est obtenue de l’ordinateur effectuant le traitement. Dans une ou plusieurs autres réalisations, l’information est obtenue via un autre ordinateur connecté opérativement avec l’ordinateur effectuant le traitement. La personne versée dans le domaine appréciera qu’il y a de nombreuses façons alternatives pour obtenir l’information. Selon l’étape 300 de la méthode pour générer un pavage illustré à la Figure 49, une SFC est générée dans un carré. Il sera apprécié que la SFC peut être générée selon plusieurs réalisations. Selon l’étape 302 de la méthode pour générer un pavage illustré à la Figure 49, un pavage est généré. Le pavage est généré en remplaçant chaque portion élémentaire de la SFC par un pavage correspondant. Selon l’étape 304 de la méthode pour générer un pavage illustré à la Figure 49, une indication du pavage généré est fournie. Il sera apprécié que la méthode est caractérisée en ce que l’information à encoder est utilisée lors de la génération de la SFC à l’étape 300. En fait l’information peut être utilisée pour générer des paramètres permettant de générer la SFC. La personne versée dans le domaine appréciera que ladite information à encoder peut être utilisée de diverses façons. En fait, il sera apprécié que dans une ou plusieurs réalisations la SFC est définie par 8 portions élémentaires en « S ». Dans cette ou ces réalisations, le pavage correspondant correspond à un pavage donné identique et fixe pour chacune des 8 portions élémentaires. Dans une ou plusieurs réalisations de la méthode pour générer un pavage dans un carré, la méthode comprend de plus l’obtention d’une chaine ASCII à coder. La méthode comprend de plus la conversion de la chaine ASCII obtenue en une séquence de codes correspondants dans une base numérique donnée remplissant un tableau carré et la génération d’une SFC au moyen d’une courbe directrice SFC de Gray donnée dans laquelle chaque point de la courbe directrice SFC de Gray est remplacé par un motif correspondant à un code donné de la séquence de codes. Il sera apprécié par la personne versée dans le domaine que le partitionnement multicellulaire vise à accroître la complexité du chiffrement visuel des stencils topologiques en partitionnant chaque cellule du plan. Il sera apprécié qu’une cellule est une sous-division carrée du plan, formant avec les autres cellules identiques un carré parfait. Dans ce cas, l’ordonnancement des cellules suit une courbe directrice SFC prédéterminée. La possibilité d’associer généralement un partitionnement topologique par cellule du plan nécessite de multiplier les clés de chiffrements : en ensemble par cellule, processus relativement lourd à mettre en place. La solution décrite consiste à mettre en place un partitionnement multicellulaire automatique dépendant des sommets de la SFC directrice des cellules. Principes généraux Tel que mentionné ci-avant, le principe de stencil topologique passe, dans une ou plusieurs réalisations, par un partitionnement du plan par des polygones de Jordan incluant comme cas particulier des SFC après leur fermeture topologique. Les stencils topologiques présentés précédemment sont de nature unicellulaire c’est à dire qu’un seul carré du plan est colorisé à partir de paramètres (la signature cryptographique) qui lui sont associés. Dans ce qui suit, la notion de partitionnement multicellulaire qui permet de réaliser un chiffrement à partir d’un ensemble de carrés dits cellules remplissant un carré principal du plan est décrite. Cet ensemble de cellules est déterminé par une SFC directrice déterminée à partir des librairies de SFC élémentaires ou composées MCG disponibles. Un exemple de partitionnement topologique à base d’un ensemble de deux trapèzes et d’un carré par cellule en base octale et de deux triangles en base quaternaire (pavage de Truchet) est ensuite divulgué. Cet ensemble de polygones est centré sur chaque sommet de la SFC directrice qui est dans ce cas une courbe SFC ou MCG composite basée sur des courbes élémentaires de Péano. L’ensemble des polygones est orienté selon l’orientation des courbes élémentaires associées aux cellules. La Figure 33 illustre la construction itérative d’une SFC en spirale contrôlant pour chacun de ses sommets une cellule composé de deux trapèzes et d’un carré (base 8). L’orientation des polygones est dépendante de la courbe de Péano élémentaire en forme de S remplissant la cellule (Figure gauche). Les relations géométriques existantes entre les polygones et les courbes des cellules forment la base d’un nouveau système du pavage et de partitionnement topologique du plan détaillé ci-dessous. Pavages de Péano-Truchet Il sera apprécié que le pavage de Truchet est un pavage du plan réalisé à partir d’un jeu de carrés élémentaires découpés en deux triangles de couleurs différentes. Il y a donc quatre combinaisons possibles de carrés colorisés ce qui constitue un codage quaternaire du plan. Un système de codage algorithmique hybride basé sur l’extension MCG des fonctions de couplage de Péano et la théorie du pavage de Truchet est décrit. Le principe est d’associer huit matrices graphiques élémentaires aux huit configurations de la courbe élémentaire en S et orientée de Péano. Cette approche revient à définir un nouveau type de pavage dans le plan qui sera nommé pavage de Péano-Truchet. Les huit matrices graphiques sont donc nommées motifs de Péano-Truchet et sont illustrées à la Figure 34. Tel que mentionné ci-avant, il sera apprécié que dans une ou plusieurs réalisations la SFC est définie par 8 portions élémentaires en « S ». Dans cette ou ces réalisations, le pavage correspondant correspond à un pavage donné identique et fixe pour chacune des 8 portions élémentaires. La fonction casTPZ de la Figure 86a commentée à la Figure 86b a pour objectif de classifier les huit motifs type possibles de Péano-Truchet. La fonction attend en entrée <v2a>, <v2b>, <v2c> les trois points de référence de chaque courbe élémentaire de Péano. La fonction retourne le numéro du cas associé parmi les huit présentés en Figure 34, les cas étant respectivement 0,2,4,6 pour les configurations de la première ligne et 1,3,5,7 pour la seconde ligne. Construction algorithmique du pavage La génération algorithmique de la métacourbe de Gray formée de morceaux élémentaires de courbes en S s’effectue à partir des métacourbes de Gray de niveau 2 qui introduisent la symétrie pour l’ensemble des rotors. Des pavages réguliers ou remarquables peuvent être générés en activant les symétries ou non. La Figure 35 illustre la génération directe d’un pavage octal régulier à partir d’une métacourbe de Gray génératrice de type wS.(Spirale de classe W). Il sera apprécié par la personne versée dans le domaine que d’autres types de pavages réguliers ou remarquables peuvent-être générés en activant cette fois ci les symétries soit sur les rotors pairs soit sur les rotors impairs par séquence ou de manière isolée. La Figure 36 illustre la génération d’un pavage régulier après modification algorithmique des symétries de chaque courbe S. L’appel de la fonction DC2(i,2,[6,2],[11],[[],[seq(2*i,i=1..24)]]) permet ainsi de changer la symétrie des rotors pairs d’ordre 1 de la métacourbe de Gray illustrée à gauche de la Figure 36. La métacourbe qui en résulte après l’application des symétries est illustrée au milieu de la Figure 36 et permet de générer le pavage octal de Péano-Truchet régulier illustré à droite de la Figure. La Figure 37 est obtenue à partir d’une MCG de type DC2(i,2,[6,2],[11]). La Figure 38 illustre le choix des symétries des courbes S élémentaires de la MCG en spirale à gauche de la Figure de manière à obtenir la structure combinatoire octale en forme de spirale à droite de la Figure. Typographies vectorielles et bitmap Il sera apprécié que les illustrations précédentes sont réalisées à partir de packages graphiques vectoriels utilisant des primitives graphiques de type polygones colorisés. Cette approche doit-être complétée par une approche bitmap exigeant des calculs précis et sans approximations au niveau du pixel. Les sorties de type bitmap sont en particulier nécessaires pour les éditions typographiques sur des supports physiques. Par ailleurs le décodage physique par analyse d’images des stencils topologiques multicellulaires nécessite des points de repérage dans le stencil qui vont être associées à une mire polygonale. Les proportions et mensurations de ce type de mire sont illustrées en Figure 39 et répondent donc à la double exigence de précision pixel pour l’édition des stencils et pour la reconnaissance des motifs polygonaux par cellule. Cette mire est calculée à partir d’un canevas paramétré de points de contrôle qui permettent de générer la mire en base 8 formé de deux trapèzes et d’un carré et la mire en base 4 formé de deux triangles. Ce principe de mire pourra être étendu de manière à encoder de manière polygonale discrète les symboles et formes graphiques de la Figure 32 ou tout autre motif graphique s’appuyant sur les points de contrôle. La fonction mireOCT de la Figure 90a commentée à la Figure 90b calcule l’ensemble des coordonnées de la mire polygonale dans une cellule carrée. Des paramètres de contrôle permettent de modifier les proportions en base 8 des trois polygones concernés : les deux trapèzes et le carré et en base 4 des deux triangles. La fonction attend en entrée la liste <lsP> des coordonnées des points de contrôle de chaque courbe en S, <sca> un paramètre de changement d’échelle global de la courbe directrice SFC principale, <ep>, l’épaisseur en pixels entre les polygones, <sc> le changement d’échelle local des polygones dans la cellule et <base> la base de génération de la mire. La fonction retourne les listes <TPZ0>, <TPZ1> et <CR> de coordonnées des points des deux trapèzes et du carré ou les listes <TR0>, <TR1> de coordonnées des points des deux triangles. Cette fonction utilise une première fonction auxiliaire rapPTS de la Figure 87a commentée à la Figure 87b qui fournit les coordonnées d’un point linéairement dépendant de deux points donnés. L’ensemble des dépendances linéaires de la mire est calculé de cette manière à partir de deux paramètres de contrôle. La fonction reçoit en entrée les paramètres <sca> et <ep> définis précédemment dans la fonction mireOCT (Figure 90a, Figure 90b) et retourne en sortie une liste contenant le point ayant pour couple de coordonnées <v2> et les paramètres de calcul des dépendances linéaires <lam>, <mu> et <den>. Cette fonction utilise deux autres fonctions auxiliaires ptsBS8 de la Figure 88a commentée à la Figure 88b et ptsBS4 de la Figure 89a commentée à la Figure 89b qui calculent les points des polygones respectifs de la mire en base 8 ou en base 4 à partir des points de contrôle. Ces fonctions font appel à leur tour à deux fonctions auxiliaires supplémentaires (nommées trLS et scLS) qui effectuent respectivement des translations et des changements d’échelle sur les couples de coordonnées de listes. La fonction ptsBS8 (Figure 88a, Figure 88b) positionne les trapèzes et le carré dans le repère de la cellule de traitement. La fonction attend en entrée la liste des listes des coordonnées des trois polygones <v3v4>, le facteur d’échelle <sc>, le point central de la courbe de Péano <P4> et le point ayant le couple de coordonnées <v2>. La fonction ptsBS4 (Figure 89a, Figure 89b) positionne les deux triangles dans le repère de la cellule de traitement. La fonction attend en entrée la liste des listes des coordonnées des deux polygones <v3v3>, le facteur d’échelle <sc>, le point central de la courbe de Péano <P4> et le point ayant comme couple de coordonnées <v2>. La fonction mireOCT (Figure 90a, Figure 90b) utilise une dernière fonction auxiliaire (nommée ptINT) qui calcule le point d’intersection de deux droites définies chacune par deux points. Chiffrement multicellulaire octal Il sera apprécié que l’intégration du texte dans des identificateurs visuels de type barcode, code QR ou data matrix donne des résultats lisibles par des décodeurs matériel ou logiciel. Il sera apprécié que la problématique de combiner une triple réponse à la fois technologique et visuelle au problème : identification, authentification, chiffrement n’est pas résolue dans ce cas. L’œil n’étant pas en mesure de discriminer et d’interpréter l’information visuelle, le codage graphique des technologies barcode n’a pour utilité que de permettre une localisation visuelle rapide du code en question pour un décodage matériel ultérieur adéquat. Le chiffrement multicellulaire octal vise à combiner patterns, motifs et signatures visuelles à encodage de texte. Si le décodage du texte est toujours confié à des décodeurs matériel ou logiciel, la partie identification et authentification relève en partie de la vision humaine. Principes généraux Il sera apprécié que le chiffrement multicellulaire octal vise à transformer les pavages octaux géométriques en identifiants visuels colorisés. Deux approches sont divulguées. Une première approche totalement graphique jouant sur les intrications de couleurs appliquées à l’ensemble des cellules octales et une seconde approche alphanumérique utilisant les cellules octales pour encoder du texte. Le chiffrement octal permet de réaliser un chiffrement multicellulaire quaternaire à partir de quelques modifications algorithmiques. Signature cryptographique La signature cryptographique d’un stencil topologique à chiffrement multicellulaire octal ou quaternaire est constituée d’un ensemble de paramètres numériques entiers, d’une liste de sommets quadratiques et de clés de chiffrement de tables de couleurs. Elle prend la forme suivante :
Intrication de tables de couleurs La mire de la Figure 39 possède en base 8, 3 composantes connexes et en base 4, 2 composantes connexes permettant différentes combinaisons d’orientations dans le plan des polygones qui la constituent et par conséquent la génération de plages de densités différentes. Dans la suite des filtres sur les densités obtenues après le partitionnement topologique sont utilisés. Ces filtres reviennent à regrouper certaines densités à partir de prédicats arithmétiques ≤ de manière à établir une stratégie de colorisation des régions délimitées par la mire. La fonction motMIRE (Figure 91a, Figure 91b) qui suit utilise trois fonctions de filtre différentes associées à la valeur de certains paramètres directeurs de la mire. Ces fonctions sont successivement la fonctions colMIRE (Figure 74a, Figure 74b), la fonction tabMIRE10 (Figure 92a, Figure 92b), et la fonction tabMIRE12 (Figure 93a, Figure 93b). La fonction motMIRE de la Figure 91a commentée à la Figure 91b calcule la liste des points colorisés pour une courbe SFC donnée à base de courbes élémentaires de Péano en forme de S. La fonction attend en entrée <base>, la base de génération de la mire de valeur 8 ou 4, <ls> la liste des points de la SFC en nombre multiple de 9, <a> le nombre de courbes élémentaires moins un des courbes S en largeur ou hauteur du carré, les tables de couleurs <TAB0>, <TAB1>, et <DYN0>, les paramètres typographiques <sca>, <epsi>, <sc> et le code optionnel <code> encodant les couleurs. La fonction retourne la liste des points colorisés calculés. Les pavages de Péano-Truchet sont nativement bicolores mais selon les caractéristiques des métacourbes génératrices ils peuvent être générés avec d’avantage de couleurs. Un exemple quadrichromique peut être facilement réalisé en utilisant les propriétés de parité des courbes S de la métacourbe pour coloriser le pavage avec 4 couleurs. De manière générale en associant une table dynamique des couleurs au pavage il est donc possible de coloriser le pavage avec autant de couleurs différentes que le nombre de cases du pavage et en rajoutant par exemple une autre couleur pour les trapèzes. La réalisation d’un pavage à table de couleurs chaotique passera alors par le calcul d’une table des couleurs cinétique qui sera associée à la métacourbe directrice du pavage. La fonction tabMIRE10 de la Figure 92a commentée à la Figure 92b filtre les densités par rapport à la densité 8 et partitionne le plan en deux régions topologiques. Chacune des régions est associée à une table de couleurs prédéterminée. La fonction attend en entrée <atab> la résolution du carré représentant une cellule, <TAB0> et <TAB1> deux tables de couleurs associées respectivement aux deux régions, <sca>, le facteur d’échelle de la mire qui contrôle la résolution de la mire en pixels, <v2O> et <v2E>, les coins diagonaux de la fenêtre de coloriage et <Q> l’ensemble des sommets quadratiques du partitionnement. La fonction retourne la liste des points colorisés appartenant à la fenêtre de coloriage. La fonction tabMIRE12 de la Figure 93a commentée à la Figure 93b filtre les densités par rapport à trois plages de densités et partitionne le plan en trois régions topologiques. La fonction attend en entrée <atab> la résolution du carré représentant une cellule, <TAB0> et <TAB1> deux tables de couleurs associées respectivement à deux régions, <DYN0> les paramètres d’une table dynamique associée à la troisième région, <sca>, le facteur d’échelle de la mire qui contrôle la résolution de la mire en pixels, <v2O> et <v2E>, les coins diagonaux de la fenêtre de coloriage et <Q> l’ensemble des sommets quadratiques du partitionnement. La fonction retourne la liste des points colorisés appartenant à la fenêtre de coloriage. Calibration de la mire octale Il sera apprécié par la personne versée dans le domaine que la calibration de la mire octale vise à ajuster les paramètres de la mire à l’image finale recherchée. Ces paramètres conditionnent la lecture visuelle du stencil topologique final de même que sa lecture par un appareil à décodage optique (matériel et logiciel). La Figure 40 illustre la génération d’un stencil topologique pour plusieurs résolutions d’images utilisées comme tables de couleurs. Chiffrement octal alphanumérique Il sera apprécié par la personne versée dans le domaine que le chiffrement octal alphanumérique est une variante du chiffrement octal géométrique destiné à contrôler le pavage géométrique par du texte. La Figure 41 illustre la différence à partir de mêmes tables de couleurs entre un pavage géométrique et sa SFC de Gray associée et un pavage alphanumérique et sa SFC non-Gray associée. Dans ce dernier cas les orientations des polygones des mires s’adaptent automatiquement à un codage de texte réalisé en base 8 ou 4 à partir d’une SFC directrice. Le chiffrement octal alphanumérique transforme donc un texte en une séquence de motifs type octaux encodant le texte le long d’une SFC prédéterminée. Cette opération par laquelle les motifs vont-être orientés non plus par les courbes élémentaires en S de leur cellule mais par le codage octal du texte va généralement détruire la structure de Gray de la courbe. Cette perte du codage de Gray est illustrée par la Figure 42 qui présente le codage du message Leonardo da Vinci en liste de caractères ascii (A), puis en un tableau de caractères octaux (O α ) ordonnancé comme du texte conventionnel de haut en bas puis en un tableau de caractères octaux (O α ) ordonnancé selon une SFC en spirale. La fonction textOCT de la Figure 94a commentée à la Figure 94b transforme un texte initial en une séquence de codes dans une base numérique donnée remplissant un tableau carré. L’algorithme encode le texte et rajoute si nécessaire une série de caractères permettant de remplir l’ensemble des cases du tableau carré. La fonction attend en entrée le texte à encoder <texte> et la base d’encodage <base>. La fonction retourne en sortie la séquence des codes dont le nombre d’éléments est un carré parfait. Directrice SFC pour le texte La fonction sfcBS84 de la Figure 95a commentée à la Figure 95b génère la SFC non-Gray résultant de l’encodage du texte. Cette SFC composée d’éléments de courbes de Péano en S, a elle-même une courbe directrice SFC de Gray. Cette courbe est une partie de la clé de chiffrement du texte octal ou quaternaire. La fonction reçoit en entrée le type <type> de la SFC directrice, la résolution <a> de la SFC, <lsOCT> la liste des caractères octaux ou quaternaires selon le cas associé à chaque point de la SFC. La fonction retourne la liste des points de la SFC non-Gray générée. Système de chiffrement Chimère Le système de chiffrement intitulé Chimère et divulgué ci-après combine un chiffrement alphanumérique octal ou quaternaire avec un chiffrement 2 n -aire utilisant les carrés intérieurs des métapixels pour encoder un message. Le message sera donc encodé sous la forme de séquences de n pixels avec par exemple n = 1 pour un message en binaire. La Figure 43 illustre un identifiant graphique codé avec un protocole chimère, utilisant deux images photographiques comme tables de couleurs et une matrice bitmap binaire comme troisième table de couleur. La fonction posTAB de la Figure 96a commentée à la Figure 96b reçoit en entrée <d> le nombre de pixels du côté du carré contenant le message, <lsPOS>, la liste des positions séquentielles des bits allumés, <type> le type d’ordonnancement SFC des bits dans le plan, <v3RGB0> et <v3RGB1>, les codes couleurs RGB des points binaires. La fonction retourne en sortie <ms> la liste des points colorisés. Adaptation au chiffrement quaternaire Il sera apprécié par la personne versée dans le domaine qu’il est possible de substituer un chiffrement quaternaire au chiffrement octal. Le principe est de spécialiser la mire octale pour opérer en mode quaternaire. Les fonctions de calcul des deux triangles de la mire ont été décrites au niveau de la fonction ptsBS4 (Figure 89a, Figure 89b). Le reste du processus d’un stencil topologique quaternaire est par ailleurs totalement semblable à celui du processus concernant le stencil octal. La Figure 44 illustre la génération d’un stencil quaternaire composé de trois tables de couleurs correspondant aux trois images en haut de la figure. Les images sont de résolution 199x199. Le message quaternaire « https//www.cote-basque.com » est ordonnancé par la même SFC spiralée qu’en Figure 42. L’image du bas à gauche donne un résultat visuel qui peut être ajusté en fonction des paramètres associés aux métapixels. La lisibilité des trois composantes photographiques peut ainsi être modulée. L’image du bas à droite permet de visualiser un grossissement des métapixels sur une portion de l’image du bas gauche. Exemple récapitulatif Un exemple récapitulatif du système de chiffrement chimère est présenté. L’exemple de l’intrication des images de la Figure 44 pour passer dans un mode de chiffrement octal est repris. Le texte suivant « https//www.cote- basque.com/NFT/Images/Chimere » est encodé. L’ensemble des paramètres et la séquence des opérations pour générer le stencil topologique final est décrite dans la fonction SCRIPT199j de la Figure 97. Le résultat visuel est illustré par la Figure 45. L’image de gauche représente les caractères octaux du texte positionnés sur leur SFC directrice tandis que l’image de droite illustre le résultat final du stencil. Ordonnancements dans le plan L’utilisation de listes de points colorisés, spécifiant la position de chaque point par ses coordonnées cartésiennes et son code RGB permettent de communiquer toute image numérique de manière explicite. Avec cette approche, l’ordonnancement relatif des points les uns par rapport aux autres n’a pas besoin d’être spécifié. La contrepartie de cette approche est la taille mémoire prohibitive de l’image qui doit-être communiquée. Pour cette raison, les approches de communication implicites sont favorisées. Dans ce cas un ordonnancement prédéterminé des points colorisés est appliqué à la fois au stockage de la liste des couleurs et réappliqué lors de l’utilisation des couleurs par exemple leur affichage. Le processus algorithmique d’ordonnancement choisi fréquemment pour les normes graphiques numériques utilise la lecture de type machine à écrire, de haut en bas et de gauche à droite. Ce processus est équivalent au choix implicite, pour la lecture des données et leur restitution, d’une SFC directrice de l’ordonnancement. La problématique rencontrée revient donc et ce dans l’ensemble des travaux présentés, à spécifier et communiquer explicitement au travers des clés de chiffrement les SFC utilisées dans l’ordonnancement du plan. Principes généraux Il sera apprécié que le principe d’ordonnancement du plan est celui de l’utilisation systématique des SFC fournies dans les tables et librairies de couplage et transmises dans les clés de chiffrement. Dans ce cas la clé de chiffrement de la SFC elle-même sera les paramètres permettant de la générer et donc de la coder, décoder. Cette approche présentera un autre avantage car toute substitution d’une SFC de stockage par une SFC de lecture qui lui sera différente reviendra à brouiller l’image. Cette stratégie sera utilisée pour complexifier les attaques cryptographiques sur les images communiquées ou alors pour permettre leur lecture par des ayants droits particuliers. La Figure 46 illustre la convention de stockage et lecture d’une image couleur au format ascii de type PPM. L’ordonnancement du plan est alors OXY− au lieu de l’ordonnancement classique OXY. Les tables de couleurs permettant de coloriser la lettre B ayant été générées à partir de SFC directrices quelconques différentes de la SFC directrice du format PPM, il faut ramener par conversion entre les SFC tout couple de coordonnées dans son espace d’ordonnancement dans l’espace d’ordonnancement discret cartésien. Ordonnancement du plan OXY− L’impression des pixels et métapixels colorisés dans un plan OXY− est souvent nécessaire pour respecter en particulier certaines normes graphiques. C’est le cas du format PPM qui est défini par un ordonnancement des couleurs à partir d’une origine située en haut à gauche, avec un axe des Y inversé. Le principe est donc de réordonner une liste de couleurs associées à des couples de coordonnées dans un plan OXY classique en une liste de couleurs affichable dans le plan OXY−. Les fonctions CD0uwLIG et DC0uwLIG des Figures 98 et 99 sont des SFC de base appartenant aux tables et librairies de couplage spécialisées qui assurent en particulier la conversion entre les points colorisés positionnés dans le plan et l’ordonnancement des codes RGB de ces points pour leur affichage ou impression des un plan OXY−. La fonction de décodage DC0uwLIG (Figure 99) attend en entrée, l’indice <ind> d’un point donné, <lg> et <ht> les largeurs et hauteurs du rectangle d’indexation. La fonction retourne le couple de coordonnées du point d’indice donné. La fonction de codage associée CD0uwLIG (Figure 98) attend en entrée les coordonnées positives ou nulles d’un point dans le plan OXY pour le rectangle de largeurs et hauteurs <lg> et <ht> et retourne l’indice du point en question dans le plan OXY−. La fonction TABg2lis de la Figure 100a commentée à la Figure 100b réalise un réordonnancement d’une liste de couleurs affichable dans un plan OXY pour permettre son affichage dans un plan OXY−. La fonction attend en entrée <a> et <b> les résolutions du rectangle d’affichage et <ls> la liste constituée d’une suite de paires, chaque paire étant formée d’un couple de coordonnées et de la couleur associée. La fonction TABg2ppm de la Figure 101 écrit un fichier bitmap en format ascii PPM. La fonction attend en entrée les nombre de pixels en largeur et en hauteur <nbrPixL> et <nbrPixH> du rectangle bitmap, <ls> la liste de triplets de couleurs RGB, le répertoire <path> de localisation du fichier de sortie et son nom <nf> . La fonction retourne le fichier <nf.ppm> généré. Opérations colorimétriques de base La génération des palettes ou des tables de couleurs donnant lieu à des listes de codes RGB distincts sans répétitions, le choix des couleurs est donc réalisé de manière automatique sans aucune relation entre les couleurs et leur possible symbolique. Cette approche ne règle pas en particulier les problèmes potentiels de manque de contraste entre des couleurs adjacentes ou l’utilisation de codes couleurs réservées pour permettre une identification visuelle rapide. Par exemple, les couleurs rouge et blanc permettent d’associer l’identifiant graphique à la Suisse. Un simple post-traitement des couleurs permet par exemple de changer cette colorisation par translation des codes RGB et inversion ou complémentarité des codes couleurs par canaux (négatifs). Il est donc utile de rajouter ces paramètres de manipulation de couleurs dans les clés de chiffrement et de pouvoir ainsi modifier les codes RGB à la volée. L’opération de translation des codes RGB peut servir également à briser l’unicité des codes RGB par l’effet d’écrasement des codes dû au dépassement des limites d’encodage mémoire des codes qui une fois la translation réalisée seront ramenés dans une plage comprise entre 0 et 255. Principes généraux On ramène les opérations classiques de post-traitement des codes RGB couleur, en opérations réalisées à la volée, les paramètres des opérations étant intégrés dans les clés de chiffrement. Seuls les opérateurs de translation, de complémentarité des codes RGB et de permutation de leurs canaux ont été intégrés à des fins pratiques. Il est également possible d’étendre le codage RGB à tout autre codage normalisé de la couleur. Dans ce cas, des SFC de dimensions supérieures seront substituées aux SFC tridimensionnelles associées aux cubes RGB en les remplaçant par des SFC associées à des hypercubes contenant les hypercodes du modèle de couleur retenu. Opérations sur les codes RGB Deux types d’opérations classiques sur les couleurs permettent de complexifier la structure des histogrammes. La fonction perRGB de la Figure 102a commentée à la Figure 102b reçoit en entrée un code <RGB> et <comb> l’indicateur concernant l’une des six permutations choisies à partir des trois couleurs. La fonction retourne le code RGB après permutation de ses canaux. La fonction rgbTRNG de la Figure 103a commentée à la Figure 103b réalise les opérations de translation et de complémentarité sur les codes RGB. La fonction attend en entrée le code RGB <v3>, le vecteur de translation <v3T> et le vecteur de complémentarité <v3N> du code couleur RGB. La fonction retourne le code couleur RGB transformé. Extension des modèles de couleurs Le système de chiffrement proposé peut-être facilement étendu à un encodage RGBA ou autre modèle de couleur. Dans ce cas des SFC à quatre dimensions provenant des tables et bibliothèques de couplage pourront être utilisées. De manière générale en ce qui concerne les modèles de couleurs utilisant des nombres flottants, une première transformation de ces nombres en nombres rationnels (espace affine) sera utilisée puis on passera dans un espace projectif de manière à retomber sur un codage en nombres entiers. Par cette méthode tout nombre flottant pourra être représenté par un couple de nombres entiers. Il sera apprécié que selon une ou plusieurs réalisations, une des méthodes décrites ci-avant peut être utilisée pour coder et chiffrer de l’information. Dans le cadre du chiffrement, les signatures ne sont pas initialement communiquées. Il sera de plus apprécié par la personne versée dans le domaine qu’une des méthodes décrites ci-avant peut être utilisée pour identifier ou authentifier un élément. La personne versée dans le domaine appréciera que l’élément peut être de diverse nature. Selon une ou plusieurs réalisations, l’élément est un objet. Il sera apprécié qu’au moins une ou plusieurs réalisations des méthodes décrites solutionnent une ou plusieurs problématiques et présentent donc de nombreux avantages. Concernant la problématique de génération d’une image chiffrée, il sera apprécié qu’il est divulgué un système de fonctions pseudo-aléatoire permettant de générer des images statistiquement indistinguables d’images aléatoires pures. Cela permet la génération itérative et adaptative d’images pseudo-aléatoires à comportement statistique aléatoire. Il est aussi décrit dans une ou plusieurs réalisations un système de fonctions pseudo-aléatoire à permutations basées sur les métacourbes de Gray qui permet la génération sans perte des images dans un temps proche du temps réel. Concernant la problématique de la complexité, il sera apprécié qu’il est divulgué dans une ou plusieurs réalisations une solution adaptative entre l’ordre organisé et le désordre pseudo-aléatoire. La problématique est aussi solutionnée dans une ou plusieurs réalisations par l’optimisation de la complexité de Kolgomorov d’un fichier qui est la longueur du programme informatique le plus court capable de reproduire le fichier image. L’avantage est que le programme informatique de génération de l’image est la clé de chiffrement de l’image. Concernant la problématique du CODEC d’indexation, il est à noter que cette dernière est solutionnée dans une ou plusieurs réalisations au moyen de l’indexation à partir de métacourbes de Gray 2D, 3D, nD. Cela permet avantageusement un codage et décodage par fonction anonyme à complexité polynomiale. La problématique est aussi solutionnée dans une ou plusieurs réalisations en utilisant une indexation à partir de courbes de Cantor étendues 2D, 3D, nD. Cela permet avantageusement un codage à complexité polynomiale simple et décodage à complexité factorielle. Concernant la problématique de recours aux librairies de permutations, cette dernière est solutionnée dans une ou plusieurs réalisations en utilisant une librairie de courbes et métacourbes de Gray ce qui permet avantageusement d’avoir aucun recours à la génération des nombres purement aléatoires et possibilité de permutations 2D (pixels), 3D (voxels) et nD (hypervoxels). Concernant la problématique de la précision numérique évoquée ci-avant, cette dernière est solutionnée dans une ou plusieurs réalisations au moyen de l’utilisation de nombres entiers multi-précisions. Cela permet avantageusement d’avoir une programmation géométrique et topologique inconditionnelles (pas de if, ni de cas particuliers). Cette problématique est aussi solutionnée dans une ou plusieurs réalisations en utilisant un jeu d’opérateurs réduits : +, -, *, irem, iquo, isqrt, ˆ, mod 2 (test de parité). Cela permet d’avoir avantageusement des fonctions bijectives de codage et décodage sans perte. Cette problématique est aussi solutionnée dans une ou plusieurs réalisations en évitant le recours aux fonctions trigonométriques ce qui permet avantageusement l’usage des expressions mathématiques rationnelles du cercle. Concernant la problématique de la gestion de la mémoire, cette dernière est solutionnée dans une ou plusieurs réalisations au moyen de l’utilisation de tables dynamiques de couleurs générées à la volée. Cela permet avantageusement un traitement séquentiel ou parallèle de listes de pixels colorisés. Cette problématique est aussi solutionnée dans une ou plusieurs réalisations au moyen de l’utilisation de polygones de Jordan procéduraux ce qui permet avantageusement un traitement séquentiel ou parallèle (pipeline GPU) des sommets des polygones. Cette problématique est aussi solutionnée dans une ou plusieurs réalisations au moyen du traitement des images statiques par blocs ce qui permet avantageusement un traitement distribué des blocs par ordonnancement SFC approprié. Concernant la problématique de la programmation du matériel, cette dernière est solutionnée dans une ou plusieurs réalisations au moyen d’une architecture parallèle hybride à processeurs spécialisés (GPU, MPPA, FPGA) ce qui permet avantageusement l’optimisation des temps de calcul orientés temps réel. Cette problématique est aussi solutionnée dans une ou plusieurs réalisations au moyen de l’utilisation de langages parallèles dédiés aux processeurs ce qui permet avantageusement l’optimisation de la granularité du parallélisme. Cette problématique est aussi solutionnée dans une ou plusieurs réalisations au moyen de l’utilisation de langages de programmation algorithmique à écosystème parallèle de type JULIA ce qui permet avantageusement la facilité d’extensions des librairies de programmation parallèle des nouvelles fonctions de métacourbes de Gray.
RÉFÉRENCES [1] Francisco Gualpuyohualcal. Codex Mendoza. https://codicemendoza.inah.gob.mx/index.php?lang=english , 1541. [2] Jean Truchet and Sebastien Truchet. Methode pour faire une infinité de desseins differens, avec des carreaux mi-partis de deux couleurs par une ligne diagonale : ou observations du pere dominique douat... sur un memoire inseré dans l’histoire de l’academie royale des sciences de paris l’année 1704 présenté par... sebastien truchet... Chez Florentin de Laulne, 1722. [3] Kikuo Tanaka. Irohabiki moncho. 1881. [4] Édouard Lucas. Récréations mathématiques. Gauthier-Villars et fils, 1883. [5] G. Peano. Sur une courbe, qui remplit toute une aire plane. Mathematische Annalen, 36 :157–160, 1890. [6] David Hilbert. Ueber die stetige abbildung einer linie auf ein flächenstück. Mathematische Annalen, 38 :459–460, 1891. [7] G. Peano. Formulario mathematico. https://books.google.ca/books?id=mcW1MgEACAAJ , 1908. [8] De Stijl. De stijl nl 1921. https://magazines.iaddb.org/issue/DS/1921-09- 01/edition/4-9/page/3?query= , 1921. [9] Claude E Shannon. A mathematical theory of cryptography. Mathematical Theory of Cryptography, 1945. [10] W Wunderlich. Über peano-kurven. Elemente der Mathematik, 28 :1–10, 1973. [11] Mark Levoy. Area flooding algorithms. Two-Dimensional Computer Animation, Course Notes 9 for SIGGRAPH, 82, 1981. [12] Vinzenz Brinkmann. Die aufgemalten namensbeischriften an nord-und ostfries des siphnierschatzhauses. Bulletin de correspondance hellénique, 109(1) :77–130, 1985. [13] Robert Fisch, Janko Gravner, and David Griffeath. Cyclic cellular automata in two dimensions. In Spatial stochastic processes, pages 171–185. Springer, 1991. [14] Heinz-Otto Peitgen, Hartmut Jürgens, Dietmar Saupe, and Mitchell J Feigenbaum. Chaos and fractals : new frontiers of science. Springer, 1992. [15] Donald Eastlake, Steve Crocker, and Jeff Schiller. Randomness recommendations for security. Technical report, RFc 1750, December, 1994. [16] Hans Sagan. Space-filling curves. Springer-Verlag, 1994. [17] Jean-François Rotgé. L’arithmétique des Formes : une introduction à la logique de l’espace. PhD thesis, Université de Montréal, 1997. [18] Jim Reeds. John dee and the magic tables in the book of soyga. https://archive.org/details/jimreedssoyga , 1998. [19] Revital Dafner, Daniel Cohen-Or, and Yossi Matias. Context-based space filling curves. In Computer Graphics Forum, volume 19, pages 209–218. Wiley Online Library, 2000. [20] Anne-Marie Décaillot. Géométrie des tissus. Mosaïques, Echiquiers. Mathématiques curieuses et utiles. Revue d’histoire des mathématiques, 8(2) :145–206, 2002. [21] Jean-Paul Delahaye. La complexité mesurée. Pour la science, 314 :34–8, 2003. [22] Vicky Liu, William Caelli, Ernest Foo, and Selwyn Russell. Visually sealed and digitally signed documents. In Computer Science 2004. Proceedings of the Twenty- Seventh Australasian Computer Science Conference (ACSC2004), pages 287–294. Australian Computer Society, 2004. [23] Nithin Nagaraj, Vivek Vaidya, and Prabhakar G Vaidya. Re-visiting the one-time pad. arXiv preprint cs/0508079, 2005. [24] Levi Valgaerts. Space-filling curves an introduction. Technical University Munich, 2005. [25] Aldo Cortesi. Generating colour maps with space-filling curves. 2010. [26] Ljiljana Radovic and Slavik Jablan. Vasarely’s work—invitation to mathematical and combinatorial visual games. In Proceedings of Bridges 2010 : Mathematics, Music, Art, Architecture, Culture, pages 127–134, 2010. [27] MN Vahia and Nisha Yadav. Harappan geometry and symmetry : A study of geometrical patterns on indus objects. Indian Journal of History of Science, 45(3) :343– 368, 2010. [28] S. Kamata. A common key encryption algorithm using n-dimensional hilbert curves. In 20117th International Conference on Information Assurance and Security (IAS), pages 275–279, Dec.2011. [29] Hamed Sheidaeian, Mohammad Reza Abbasifard, and Behrouz Zolfaghari. Visual Cryptography and Image Steganography Using Space Filling Hilbert Curves. In International Conference on Advanced Computer Theory and Engineering, 4th (ICACTE 2011). ASME Press, 012011. [30] Yue Wu, Joseph P Noonan, Sos Agaian, et al. Npcr and uaci randomness tests for image encryption. Cyber journals: multidisciplinary journals in science and technology, Journal of Selected Areas in Telecommunications (JSAT), 1(2) :31–38, 2011. [31] Ebrahim Zarei Zefreh, Sara Rajaee, and Meysam Farivary. Image security system using recursive cellular automata substitution and its parallelization. In 2011 CSI International Symposium on Computer Science and Software Engineering (CSSE), pages 77–86. IEEE, 2011. [32] Michael Bader. Space-filling curves : an introduction with applications in scientific computing. Springer Science & Business Media, 2012. [33] Peter Grassberger. Randomness, information, and complexity. arXiv preprint arXiv :1208.3459, 2012. [34] Hüseyin Koçak. Differential and difference equations through computer experiments : with diskettes containing phaser : an animator/simulator for dynamical systems for ibm personal computers. Springer Science & Business Media, 2012. [35] Jean-François Rotgé. De l’indexation des hypertreillis pyramidaux au codage combinatoire des listes de nombres entiers. hal preprint 00717421, 2012. [36] V Suresh and CE Veni Madhavan. Image encryption with space-filling curves. Defence Science Journal, 62(1) :46, 2012. [37] M Ephin, Judy Ann Joy, and NA Vasanthi. Survey of chaos based image encryption and decryption techniques. In Amrita International Conference of Women in Computing (AICWIC’13) Proceedings published by International Journal of Computer Applications (IJCA), 2013. [38] Toufik Mansour. Combinatorics of set partitions. CRC Press Boca Raton, 2013 [39] Musheer Ahmad, Hamed D Alsharari, and Munazza Nizam. Security improvement of an image encryption based on mpixel-chaotic-shuffle and pixel-chaotic- diffusion. arXiv preprint arXiv :1403.6626, 2014. [40] Anne-Marie Décaillot. Les Récréations Mathématiques d’Édouard Lucas : quelques éclairages. Historia Mathematica, 41(4) :506–517, 2014. [41] YuanYuan Sun, Lina Chen, Rudan Xu, and Ruiqing Kong. An image encryption algorithm utilizing julia sets and hilbert curves. PloS one, 9 :e84655, 012014. [42] Possibly Wrong. allrgb : Hilbert curves and random spanning trees. https://possiblywrong.wordpress.com/2014/04/18/allrgb-hilber t-curves-and-random- spanning-trees/ , 2014. [43] David Griffeath. The cyclic cellular automaton. 2015. [44] Sohn JiAe. A glimpse at joseon royal seals. , 2015. [45] KS Kavya and Mrs Prabavathi. Image encryption using hilbert space filling curve and henon map. Int. J. Innov. Res. Comput. Sci. Technol., 3(3) :56–60, 2015. [46] Jay Eastman. Brief history of barcode scanning. OSA Century of Optics, page 128, 2016. [47] Li Li, Jinxia Qiu, Jianfeng Lu, and Chin-Chen Chang. An aesthetic qr code solution based on error correction mechanism. Journal of Systems and Software, 116 :85–94, 2016. [48] Assa Naveh and Eran Tromer. Photoproof : Cryptographic image authentication for any set of permissible transformations. In 2016 IEEE Symposium on Security and Privacy (SP), pages 255–271. IEEE, 2016. [49] Gary Santoro. Victor vasarely’s alphabet plastique. 2016. [50] Pauvithraa K.T. Siva Kumar T, Gayathri S. Text message encryption method using hilbert curve based permutation and circular shift operation. IJATES (ISSN : 2348- 7550), 04(10) :394–401, 2016. [51] Michael Buchanan. U.S. returns lost treasures of Korea. https://share.america.gov/u-s-returns-lost-royal-treasures-o f-korea/ , 062017. [52] Ji Woo Lee, Hyung Gil Hong, Ki Wan Kim, and Kang Ryoung Park. A survey on banknote recognition methods by various sensors. Sensors, 17(2) :313, 2017. [53] Omar Farook Mohammad, Mohd Shafry Mohd Rahim, Subhi Rafeeq Mohammed Zeebaree, and FY Ahmed. A survey and analysis of the image encryption methods. International Journal of Applied Engineering Research, 12(23) :13265–13280, 2017. [54] Fatih Özkaynak. Role of npcr and uaci tests in security problems of chaos based image encryption algorithms and possible solution proposals. In 2017 International conference on computer science and engineering (UBMK), pages 621–624. IEEE, 2017. [55] Nazim Uddin Sheikh, Tapan Kumar Hazra, Hasina Rahman, Kanyasree Mustafi, and Ajoy Kumar Chakraborty. Multi-variable bijective mapping for secure encryption and decryption. In 20178th Annual Industrial Automation and Electromechanical Engineering Conference (IEMECON), pages 338–345. IEEE, 2017. [56] Bhaskar Mondal. Cryptographic image scrambling techniques, 2018. [57] Jdd Nkapkop, Yves Effa, and Laurent Bitjoka. Design et implémentation d’un crypto-système d’images basé sur le chaos : Chiffrement d’images par chaos et applications, 082018. [58] Mohit Jain Puneet Kaushik. Study and analysis of image encryption algorithm based on arnold transformation. International Journal of Computer Engineering Technology (IJCET), 9(5) :59–63, 2018. [59] Jean-François Rotgé. Method and system for coding information, February 2018. 9900024-14357468-USPTO. [60] Gayathri Vijayaraghavan. A survey on security and efficiency issues in chaotic image encryption.042018. [61] Vishal Devireddy. Allrgb. , 2019. [62] A. Flores-Vergara, E. E. García-Guerrero, E. Inzunza-González, O. López- Bonilla, E. Rodríguez-Orozco, J. R. Cárdenas-Valdez, and E. Tlelo-Cuautle. Implementing a chaotic cryptosystem in a 64-bit embedded system by using multiple- precision arithmetic. Nonlinear Dynamics, 96 :497–516, 2019. [63] Rongjun Ge, Guanyu Yang, Jiasong Wu, Yang Chen, Gouenou Coatrieux, and Limin Luo. A novel chaos-based symmetric image encryption using bit-pair level process. IEEE Access, 7 :99470–99480, 2019. [64] Xingbin Liu, Di Xiao, Wei Huang, and Cong Liu. Quantum block image encryption based on arnold transform and sine chaotification model. IEEE Access, 7 :57188-57199, 2019. [65] Manal A. Mizher, Riza Sulaiman, Ayman M. Abdalla, and Manar A. Mizher. An improved simple flexible cryptosystem for 3d objects with texture maps and 2d images. Journal of Information Security and Applications, 47 :390 – 409, 2019. [66] Yoon-Sung Park and Ji-Su Kim. A study on the typeface of font, the shape royal seal of the ex-emperor sugang in the joseon dynasty. Journal of Digital Convergence, 17(11) :493–499, 2019. [67] Zhenjun Tang, Ye Yang, Shijie Xu, Chunqiang Yu, and Xianquan Zhang. Image encryption with double spiral scans and chaotic maps. Security and Communication Networks, 2019, 2019. [68] Waldemar Berchtold, Huajian Liu, Martin Steinebach, Dominik Klein, Tobias Senger, and Nicolas Thenee. Jab code-a versatile polychrome 2d barcode. Electronic Imaging, 2020(3) :207–1, 2020. [69] Kathryn Devereaux. Twisted gourd (xicalcoliuhqui) : The symbolic language of the pre-columbian rainmakers, a cosmovision of divine rule of a triadic universe. https://thetinkuy.wordpress.com/ , 052020. [70] Wen-Wen Hu, Ri-Gui Zhou, Jia Luo, She-Xiang Jiang, and Gao-Feng Luo. Quantum image encryption algorithm based on arnold scrambling and wavelet transforms. Quantum Information Processing, 19(3) :1–29, 2020. [71] Sohn JiAe. Historical seals from Joseon Dynasty returned to Korea. 2020. [72] Bhawnesh Kumar, Umesh Kumar Tiwari, Santosh Kumar, Vikas Tomer, and Jasmeet Kalra. Comparison and performance evaluation of boundary fill and flood fill algorithm. Int. J. Innov. Technol. Explor. Eng, 8 :9–13, 2020. [73] Willy Scheibel, Matthias Trapp, Daniel Limberger, and Jürgen Döllner. A taxonomy of treemap visualization techniques.022020. [74] Jai Ganesh Sekar and C Arun. Comparative performance analysis of chaos based image encryption techniques. Journal of critical reviews, 7(9) :1138–1143, 2020. [75] Zen Juen Lau, Tam Pham, SH Annabel, and Dominique Makowski. Brain entropy, fractal dimensions and predictability : A review of complexity measures for eeg in healthy and neuropsychiatric populations.2021. [76] Dirk Rijmenants. Cipher machines and cryptology one-time pad. 2021. [77] Françoise Bahoken. Le charme d’Herbin. 2022. [78] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques à centre. @August 2022. [79] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques à noyaux. August 2022. working paper or preprint. [80] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques à réflexions. , August 2022. working paper or preprint. [81] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques en forme de lacets. https://hal.archives-ouvertes.fr/hal- , July 2022. working paper or preprint. [82] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques en forme de méandres. https://hal.archives- 03737998/file/Article11.pdf , July 2022. working paper or preprint. [83] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques en forme de spirales. https://hal.archives-ouvertes.fr/hal- , July 2022. working paper or preprint. [84] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes de Gray surfaciques en forme d’escaliers. https://hal.archives-ouvertes.fr/hal- 03745141/file/Article16.pdf , August 2022. working paper or preprint. [85] Jean-François Rotgé. Fonctions de couplage et chaînage des courbes et métacourbes de Gray généralisant les courbes de Hilbert. https://hal.archives- , September 2022. working paper or preprint. [86] Jean-François Rotgé. Fonctions de couplage et chaînage des métacourbes de Gray surfaciques à rotors. https://hal.archives-ouvertes.fr/hal- , September 2022. working paper or preprint. [87] Jean-François Rotgé. Principes de chaînage des courbes de Gray. August 2022. working paper or preprint. [88] Fondation Vasarely. Alvéole 5. https://www.fondationvasarely.org/alveole-5/ , 2022. [89] Wikipedia. Self-avoiding walk. , 2022. [90] Landesmuseum Württemberg. Federschild : Meander und sonne. https://www.leo-bw.de/detail/- r+und+Sonne%22+aztekisch+um+1520 , 2022. [91] Bhaskar Mondal. Cryptographic Image Scrambling Techniques, pages 37–65.12 2018.
Next Patent: APPARATUS FOR PASSIVE MIXING OF MULTIPHASE FLOW THROUGH SPLITTING