FR3008812A1 - SYSTEM FOR USING AN INFORMATION CODE AND READER READING AN INFORMATION CODE - Google Patents

SYSTEM FOR USING AN INFORMATION CODE AND READER READING AN INFORMATION CODE Download PDF

Info

Publication number
FR3008812A1
FR3008812A1 FR1456808A FR1456808A FR3008812A1 FR 3008812 A1 FR3008812 A1 FR 3008812A1 FR 1456808 A FR1456808 A FR 1456808A FR 1456808 A FR1456808 A FR 1456808A FR 3008812 A1 FR3008812 A1 FR 3008812A1
Authority
FR
France
Prior art keywords
code
data
information
confidential data
codes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR1456808A
Other languages
French (fr)
Other versions
FR3008812B1 (en
Inventor
Masahiro Hara
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Publication of FR3008812A1 publication Critical patent/FR3008812A1/en
Application granted granted Critical
Publication of FR3008812B1 publication Critical patent/FR3008812B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C5/00Ciphering apparatus or methods not provided for in the preceding groups, e.g. involving the concealment or deformation of graphic data such as designs, written or printed messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/36Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols with means for detecting characters not meant for transmission
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1408Methods for optical code recognition the method being specifically adapted for the type of code
    • G06K7/1434Barcodes with supplemental or add-on codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

L'invention propose un système (100) équipé d'un lecteur de code d'information (20) capable de lire un code d'information (SQ). Le lecteur de code d'information (20) comprend une unité de décision qui détermine si un code de données confidentielles est ou non placé après un code d'identification de fin ou une position de fin, une deuxième unité de décodage dont la fonction est de décoder le code de données confidentielles dont l'unité de décision aura détecté la présence, ainsi qu'une unité de traitement qui, s'il y a eu déchiffrement d'un code de données confidentielles par la deuxième unité de décodage, effectue un traitement de mise en correspondance consistant au moins à présenter les résultats de déchiffrement du code de données confidentielles, à mémoriser ces résultats ou à les soumettre à un traitement qui leur est adapté, et qui délivre une information d'identification prédéfinie ou bien la mémorise.The invention proposes a system (100) equipped with an information code reader (20) capable of reading an information code (SQ). The information code reader (20) comprises a decision unit which determines whether or not a confidential data code is placed after an end identification code or an end position, a second decoding unit whose function is to decode the confidential data code which the decision unit has detected the presence, and a processing unit which, if there has been decryption of a confidential data code by the second decoding unit, performs a mapping process consisting of at least presenting the decryption results of the confidential data code, storing these results or subjecting them to a processing which is adapted to them, and which delivers a predefined identification information or stores it.

Description

SYSTÈME D'UTILISATION D'UN CODE D'INFORMATION ET LECTEUR LISANT UN CODE D'INFORMATION La présente invention concerne un système d'utilisation d'un code d'information ainsi qu'un lecteur lisant un tel code d'information. [Technique antérieure] La méthode de transmission d'information et son terminal portable que décrit le Document de brevet 1 référencé ci-après constitue un bon exemple de technique propre à générer et lire des codes bidimensionnels comportant des données confidentielles. Dans cette technique antérieure, un terminal portable situé côté émetteur affiche à l'écran d'un afficheur le QR code (marque déposée) généré par conversion en ce QR code des données transmises chiffrées par l'application d'une clé de cryptage fournie par un dispositif d'entrée de clé (Document de brevet 1 : paragraphe 0020, ligne 21, Figure 4). En réception, un terminal portable sollicite une clé de cryptage dès lors qu'un 20 chiffrement a été détecté par lecture au moyen d'une caméra notamment de l'image du QR code affichée à l'écran du terminal portable émetteur (Document de brevet 1 : paragraphe 22, Figure 5). [Documents de la technique antérieure] 25 [Documents de brevet] [Document de brevet 1] Demande de brevet japonais n°2004-147006. 30 Or, les données chiffrées par la méthode de transmission d'information et terminal portable dévoilés par ce Document de brevet 1 n'ont généralement aucun sens en soi en tant qu'information textuelle quand l'information chiffrée est reconvertie en QR code ; il n'est donc pas rare que les informations qui s'affichent à l'écran du terminal portable ou autre soient incohérentes ou correspondent à des 35 codes de contrôle susceptibles d'influer sur le contrôle de l'affichage à l'écran.The present invention relates to a system for using an information code and to a reader reading such an information code. BACKGROUND OF THE INVENTION [Prior art] The method of transmitting information and its portable terminal described in the Patent Document 1 referenced below is a good example of a technique for generating and reading two-dimensional codes containing confidential data. In this prior art, a portable terminal located on the transmitter side displays on the screen of a display the QR code generated by converting to this QR code transmitted data encrypted by the application of an encryption key provided by a key entry device (Patent Document 1: paragraph 0020, line 21, Figure 4). In reception, a portable terminal requests an encryption key as soon as an encryption has been detected by reading by means of a camera, in particular the QR code image displayed on the screen of the transmitting portable terminal (Patent document 1: paragraph 22, Figure 5). [Prior Art Documents] [Patent Documents] [Patent Document 1] Japanese Patent Application No. 2004-147006. However, the data encrypted by the information transmission method and portable terminal disclosed by this Patent Document 1 generally have no meaning in themselves as textual information when the encrypted information is reconverted into QR code; it is therefore not uncommon for the information displayed on the screen of the portable terminal or the like to be inconsistent or to correspond to control codes which may affect the control of the on-screen display.

De ce fait, toute information incohérente peut induire chez l'utilisateur d'un tel terminal portable une certaine suspicion voire soulever un problème de sécurité par la possibilité qui en découle d'inciter ceux qui peuvent s'apercevoir qu'il s'agit 5 d'informations chiffrées à se comporter de façon malveillante en tentant de les déchiffrer de manière frauduleuse. Soucieux de résoudre ces problèmes, les inventeurs de la présente Demande sont parvenus dans cette optique à concevoir un code d'information tel que, lorsque 10 le nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques est inférieur à la capacité de la zone de codes où ces mots de code doivent être rangés, le code d'identification de fin de la chaîne de codes ainsi formée par ces codes de données publiques disposés dans cette zone de codes est placé à la fin de cette chaîne, ou qu'une information 15 d'identification de fin propre à spécifier la position de fin de la chaîne de codes formée par les codes de données publiques l'est en une position prédéfinie de cette chaîne de codes, tandis que les codes de données confidentielles codées comme mots de code représentant des données à tenir secrètes le sont après ce code d'identification de fin ou après cette position de fin spécifiée par l'information 20 d'identification de fin. Dans cette configuration de code d'information où les résultats de déchiffrement des codes de données publiques lues par un appareil de lecture conventionnel sont obtenus sans que le soient ceux de déchiffrement des codes de données 25 confidentielles, l'utilisateur qui se sert uniquement d'un tel appareil de lecture sera difficilement à même de se rendre compte que des codes de données confidentielles ont été enregistrés. D'autre part, seuls les appareils de lecture spéciaux qui donc livrent les résultats de déchiffrement de codes de données confidentielles permettent de faciliter le traitement des données déchiffrées à partir de tels codes de données 30 confidentielles. Toutefois, cette seule configuration reste problématique car elle ne permet pas de discerner si les données postérieures à la lecture traitées par l'appareil de lecture spécial sont ou non des données qui ont été originellement rendues confidentielles. 35 [Résumé de l'invention' Dédiée à la résolution des problèmes précédents, la présente invention a pour objet de proposer un lecteur capable de lire un code d'information constitué de sorte 5 que la présence de données confidentielles soit difficilement discernable en cas de lecture par un appareil de lecture conventionnel, ainsi que le système mettant en oeuvre un tel lecteur. De plus, elle a aussi pour but de proposer une configuration qui permet de discerner avec plus de précision si les données postérieures à la lecture traitées dans ce lecteur sont ou non des données qui ont été originellement rendues 10 confidentielles. Afin d'atteindre ces objectifs, selon un premier aspect, l'invention propose un système d'utilisation d'un code d'information, remarquable en ce qu'il comprend : - un générateur de codes d'information qui génère un code d'information, et 15 - un lecteur de code d'information qui lit le code d'information généré par le générateur de codes d'information, dans lequel le générateur de codes d'information est configuré pour générer un code d'information de telle sorte que, A) lorsqu'un nombre total de codes de données publiques codées comme mots 20 de code représentant des données à rendre publiques est inférieur à une capacité maximale de la zone de codes où ces mots de code doivent être rangés, i) un code d'identification de fin est ajouté immédiatement après une chaîne de codes composée des codes de données publiques rangés dans la zone de codes, le code d'identification de fin indiquant une fin de la chaîne de code, ou ii) une information 25 d'identification de fin est disposée à une position donnée dans la chaîne de codes dans la zone de codes, l'information d'identification de fin qui permet d'identifier une position de fin de la chaîne de codes composée des codes de données publiques dans la zone de codes, et B) où les codes de données confidentielles codées comme mots de code 30 représentant des données à tenir secrètes sont disposés après le code d'identification de fin ou après la position de fin identifiée par l'information d'identification de fin, et le lecteur de code d'information comprend, une première unité de décodage qui tente de déchiffrer soit tous les mots de 35 code rangés avant le code d'identification de fin dans la chaîne de codes soit tous les mots de code rangés avant la position de fin dans la chaîne de codes, la position de fin étant identifiée par l'information d'identification de fin une unité de décision qui détermine si un code de données confidentielles est ou non rangé soit après le code d'identification de fin soit après la position de fin dans 5 la chaîne de codes, une deuxième unité de décodage qui décode les codes de données confidentielles quand l'unité de décision détermine que les codes de données confidentielles sont rangés dans la chaîne de codes, et une unité de traitement qui, quand la deuxième unité de décodage a décodé les 10 code de données confidentielles, i) effectue un premier traitement consistant au moins à délivrer les résultats de déchiffrement du code de données confidentielles, à mémoriser les résultats de déchiffrement du code de données confidentielles ou réaliser selon les résultats de déchiffrement du code de données confidentielles, et ii) effectue un deuxième traitement consistant soit à délivrer soit à mémoriser une 15 information d'identification prédéterminée. Selon un deuxième aspect, l'invention propose un lecteur de code d'information capable de lire un code d'information dans lequel, A) lorsqu'un nombre total de codes de données publiques codées comme mots de code représentant des 20 données à rendre publiques est inférieur à une capacité maximale de la zone de codes où ces mots de code doivent être rangés, i) un code d'identification de fin est ajouté immédiatement après une chaîne de codes composée des codes de données publiques rangés dans la zone de codes, le code d'identification de fin indiquant une fin de la chaîne de code, ou ii) une information d'identification de fin est disposée à 25 une position donnée dans la chaîne de codes dans la zone de codes, l'information d'identification de fin qui permet d'identifier une position de fin de la chaîne de codes composée des codes de données publiques dans la zone de codes, et B) les codes de données confidentielles codées comme mots de code représentant des données à tenir secrètes sont disposés immédiatement après le code d'identification de fin ou 30 immédiatement après la position de fin identifiée par l'information d'identification de fin, remarquable en ce que le lecteur de code d'information comprend une première unité de décodage qui tente de déchiffrer soit tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes soit tous les mots de code rangés avant la position de fin dans la chaîne de codes, la position de fin étant identifiée par l'information d'identification de fin une unité de décision qui détermine si un code de données confidentielles est ou non rangé soit après le code d'identification de fin soit après la position de fin dans 5 la chaîne de codes, une deuxième unité de décodage qui décode les codes de données confidentielles quand l'unité de décision détermine que les codes de données confidentielles sont rangés dans la chaîne de codes, et une unité de traitement qui, quand la deuxième unité de décodage a décodé les 10 code de données confidentielles, i) effectue un premier traitement consistant au moins à délivrer les résultats de déchiffrement du code de données confidentielles, à mémoriser les résultats de déchiffrement du code de données confidentielles ou réaliser selon les résultats de déchiffrement du code de données confidentielles, et ii) effectue un deuxième traitement consistant soit à délivrer soit à mémoriser une 15 information d'identification prédéterminée. Dans le code d'information traité par l'invention selon le premier aspect, le code de données confidentielles codées comme mots de code représentant des données à tenir secrètes est placé après un code d'identification de fin ou après une position 20 de fin spécifiée par une information d'identification de fin. Les appareils de lecture conventionnels qui déchiffrent les données existantes jusqu'à ce qu'ils rencontrent ce code d'identification de fin ou cette position de fin, et ne tentent donc pas de déchiffrer les codes de données confidentielles, en rendent donc difficilement discernable la présence en soi. En revanche, le lecteur de code d'information au 25 coeur de la présente invention dont la deuxième unité de décodage décode les codes de données confidentielles quand l'unité de décision a reconnu la présence d'un code de données confidentielles, permet ainsi de déchiffrer les données confidentielles codées et enregistrées comme telles. 30 De plus, le lecteur de code d'information est conçu de telle sorte qu'en cas de déchiffrement d'un code de données confidentielles par la deuxième unité de décodage, l'unité de traitement réalise au moins un traitement de mise en correspondance tel que la présentation des résultats déchiffrés de ce code de données confidentielles, leur mémorisation ou bien un traitement qui leur est adapté, 35 et présente une information d'identification prédéfinie ou la mémorise. Ainsi, le fait que la mise en correspondance soit complétée par la présentation d'une information d'identification prédéfinie ou sa mémorisation permet plus facilement, selon qu'une telle présentation ou mémorisation a lieu ou non, de discerner avec une plus grande précision si les données traitées par ce traitement de mise en correspondance sont ou non des données confidentielles valides. Dans des modes de réalisation préférés de l'invention, selon le premier ou le deuxième aspect, on peut avoir recours en outre à l'une et/ou à l'autre des dispositions suivantes : - l'unité de traitement est configurée pour : mémoriser dans une portion de mémoire prédéterminée ou délivrer à la fois les données déchiffrées des codes de données confidentielles and l'information d'identification qui sont mis en correspondance quand la deuxième unité de décodage a décodé les codes de données confidentielles, et mémoriser dans la portion de mémoire ou délivrer, sans l'information d'identification, les résultats déchiffrés de tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes ou les résultats déchiffrés de tous les mots de code rangés avant la position de fin identifiée par l'information d'identification de fin dans la chaîne de codes quand la deuxième unité de décodage n'a pas décodé les codes de données confidentielles. Cette configuration dans laquelle l'information d'identification mise en correspondance avec les données déchiffrées du code de données confidentielles est présentée ou mémorisée quand la deuxième unité de décodage a déchiffré un code de données confidentielles permet aisément de discerner plus rapidement et avec une plus grande certitude si les données présentées ou les données mémorisées sont ou non des données confidentielles valides. - l'unité de traitement est configurée pour mémoriser dans la portion de mémoire ou délivrer des données combinées dans lesquelles une information d'identification amont est ajoutée en amont des données rangées composant les données déchiffrées et une information d'identification aval est ajoutée en aval des données rangées composant les données déchiffrées quand la deuxième unité de décodage a décodé les codes de données confidentielles, les informations d'identification amont et aval étant l'information d'identification.Therefore, any incoherent information can induce the user of such a portable terminal a certain suspicion or raise a security problem by the possibility that ensues to encourage those who can see that it is 5 encrypted information to behave in a malicious way by attempting to decipher fraudulently. In order to solve these problems, the inventors of the present Application have arrived at this point of view in designing an information code such as when the total number of public data codes coded as code words representing data to be made public is less than to the capacity of the code area where these code words are to be stored, the end code code of the code string thus formed by these public data codes arranged in this code area is placed at the end of this chain, or that an end identification information specific to the end position of the code string formed by the public data codes is at a predefined position of that code string, whereas confidential data encoded as codewords representing data to be held secret are after this end identification code or after this end position specified by the end identification ormation. In this information code configuration where the decryption results of the public data codes read by a conventional reading apparatus are obtained without the decryption of the confidential data codes, the user who only uses the such a reading device will hardly be able to realize that confidential data codes have been recorded. On the other hand, only the special reading devices that deliver the results of decryption of confidential data codes makes it easier to process the decrypted data from such confidential data codes. However, this configuration alone remains problematic because it does not make it possible to discern whether the post-reading data processed by the special reading device are or are not data that were originally made confidential. SUMMARY OF THE INVENTION Dedicated to the resolution of the foregoing problems, the object of the present invention is to provide a reader capable of reading an information code constituted so that the presence of confidential data is hardly discernible in the case of reading by a conventional reading device, as well as the system implementing such a reader. In addition, it is also intended to provide a configuration that makes it possible to discern more precisely whether the post-reading data processed in this reader is or is not data that was originally made confidential. In order to achieve these objectives, according to a first aspect, the invention proposes a system for using an information code, remarkable in that it comprises: an information code generator which generates a code of information information, and an information code reader which reads the information code generated by the information code generator, wherein the information code generator is configured to generate an information code of such so that, A) when a total number of public data codes encoded as code words representing data to be made public is less than a maximum capacity of the code area where these codewords are to be stored, i) a end identification code is added immediately after a code string composed of the public data codes stored in the code area, the end identification code indicating an end of the code string, or ii) a piece of information 25 'identific end identification is arranged at a given position in the code string in the code area, the end identification information which identifies an end position of the code string composed of the public data codes in the code field. code area, and B) where the confidential data codes encoded as code words representing data to be held secret are disposed after the end identification code or after the end position identified by the identification information of end, and the information code reader comprises, a first decoding unit which attempts to decipher either all the code words arranged before the end identification code in the code string or all the codewords arranged before the end position in the code string, the end position being identified by the end identification information a decision unit which determines whether a confidential data code is stored or not after the end identification code is after the end position in the code string, a second decoding unit decodes the confidential data codes when the decision unit determines that the confidential data codes are stored in the code string. the code string, and a processing unit which, when the second decoding unit has decoded the confidential data code, i) performs a first processing consisting at least of delivering the decryption results of the confidential data code, to be memorized the decryption results of the confidential data code or realize according to the decryption results of the confidential data code, and ii) performs a second processing consisting either of delivering or memorizing a predetermined identification information. According to a second aspect, the invention provides an information code reader capable of reading an information code in which, A) when a total number of public data codes encoded as code words representing data to be rendered. is less than a maximum capacity of the code area where these codewords are to be stored, i) an end identification code is added immediately after a code string composed of the public data codes stored in the code area , the end identification code indicating an end of the code string, or ii) end identification information is disposed at a given position in the code string in the code area, the information of end identification which identifies an end position of the code string composed of the public data codes in the code area, and B) the confidential data codes coded as code words representing data to be held secret are disposed immediately after the end identification code or immediately after the end position identified by the end identification information, characterized in that the information code reader comprises a first unit of identification. decoding which attempts to decipher either all the codewords arranged before the end identification code in the code string or all the codewords arranged before the end position in the code string, the end position being identified by the end identification information a decision unit which determines whether or not a confidential data code is stored either after the end identification code or after the end position in the code string, a second unit of decoding which decodes the confidential data codes when the decision unit determines that the confidential data codes are stored in the code string, and a unified processing unit which, when the second decoding unit has decoded the confidential data code, i) performs a first processing consisting at least of delivering the decryption results of the confidential data code, storing the decryption code results of confidential data or realize according to the decryption results of the confidential data code, and ii) performs a second processing consisting of either delivering or storing a predetermined identification information. In the information code processed by the invention according to the first aspect, the confidential data code encoded as code words representing data to be held secret is placed after an end identification code or after a specified end position. by end identification information. Conventional reading devices that decipher the existing data until they meet this end identification code or this end position, and therefore do not attempt to decrypt the confidential data codes, thus make it difficult to discern the presence in itself. On the other hand, the information code reader at the heart of the present invention whose second decoding unit decodes the confidential data codes when the decision unit has recognized the presence of a confidential data code, thus allows decrypt the confidential data encoded and stored as such. In addition, the information code reader is designed such that in case of decryption of a confidential data code by the second decoding unit, the processing unit performs at least one mapping process. such as presenting the decrypted results of this confidential data code, storing them, or a processing adapted to them, and presenting or memorizing predefined identification information. Thus, the fact that the mapping is completed by the presentation of a predefined identification information or its storage makes it easier, depending on whether such presentation or storage takes place or not, to discern with greater precision whether the data processed by this mapping process are valid confidential data or not. In preferred embodiments of the invention, according to the first aspect or the second aspect, one or more of the following arrangements may be used: the processing unit is configured to: storing in a predetermined memory portion or delivering both the decrypted data of the confidential data codes and the identification information that are matched when the second decoding unit has decoded the confidential data codes, and storing in the portion of memory or issue, without the identification information, the decrypted results of all code words arranged before the end identification code in the code string or the decrypted results of all code words stored before the end position identified by the end identification information in the code string when the second decoding unit has not decoded the data codes co nfidentielles. This configuration in which the identification information mapped to the decrypted data of the confidential data code is presented or stored when the second decoding unit has deciphered a confidential data code makes it easy to discern more quickly and with greater certainty whether the presented data or the stored data are valid confidential data or not. the processing unit is configured to memorize in the memory portion or to deliver combined data in which an upstream identification information is added upstream of the stored data constituting the decrypted data and downstream identification information is added downstream stored data composing the decrypted data when the second decoding unit has decoded the confidential data codes, the upstream and downstream identification information being the identification information.

Cette configuration donne la possibilité tout en permettant de discerner avec plus de précision si les données présentées ou mémorisées sont ou non des données confidentielles valides, de spécifier de manière plus fine l'étendue que la chaîne des 5 données où se trouvent les données confidentielles valides occupe dans les données présentées ou mémorisées. - le système comprend une portion de connexion se connectant aux différents sites d'un réseau prédéfini, 10 le générateur de codes d'information est configuré pour générer le code de données confidentielles qui comprend une information d'adresse spécifiant une adresse au sein du réseau, l'unité de traitement est configurée pour mémoriser dans la portion de mémoire ou pour délivrer au moins l'information d'adresse et l'information d'identification qui 15 sont mises en correspondance quand la deuxième unité de décodage a décodé le code de données confidentielles ; et la portion de connexion est configurée pour se connecter au site spécifié par l'information d'adresse quand l'information d'adresse et l'information d'identification qui sont mises en correspondance sont délivrées ou mémorisée dans la portion de 20 mémoire. Dans cette configuration, la portion de connexion accède au site spécifié par l'information d'adresse pour autant que l'unité de traitement l'ait mise en correspondance avec l'information d'identification dans les données qu'elle présente 25 ou mémorise. À l'inverse, l'accès au site spécifié par des données invalides peut, être restreint dès lors que les données présentées ou mémorisées ne sont pas des données confidentielles valides. En ayant recours à cette technique, même si par exemple un autre code 30 bidimensionnel dans lequel est enregistrée l'adresse d'un autre site est apposé sur un code d'information où sont enregistrées des données confidentielles et qu'un acte illicite comme une dérivation vers un autre site est commis, l'accès à cet autre site par la portion de connexion ne pourra se faire tant qu'il n'y aura pas eu mise en correspondance avec l'information d'identification. Il est donc possible de prévenir 35 plus efficacement tout accès qui découlerait d'une telle dérivation illicite.This configuration gives the possibility while allowing to discern more precisely whether the presented or stored data is valid confidential data or not, to specify more precisely the extent that the data string where the valid confidential data is located. occupies in the presented or stored data. the system comprises a connection portion connecting to the different sites of a predefined network, the information code generator is configured to generate the confidential data code which comprises address information specifying an address within the network the processing unit is configured to store in the memory portion or to output at least the address information and identification information that is matched when the second decoding unit has decoded the code of confidential data; and the connection portion is configured to connect to the site specified by the address information when the address information and the identification information that are mapped are delivered or stored in the memory portion. In this configuration, the connection portion accesses the site specified by the address information as long as the processing unit has matched it with the identification information in the data it presents or stores. . Conversely, access to the site specified by invalid data may be restricted if the data presented or stored is not valid confidential data. By using this technique, even if, for example, another two-dimensional code in which the address of another site is recorded is affixed to an information code where confidential data is recorded and an illegal act such as a diversion to another site is committed, access to this other site by the connection portion can not be done until there is no matching with the identification information. It is therefore possible to more effectively prevent any access that would result from such unlawful diversion.

Selon une disposition avantageuse de l'invention selon le premier aspect : le générateur de codes d'information est configuré pour générer les codes de données confidentielles en encryptant les données à tenir secrètes sur la base d'une 5 clé de chiffrement prédéterminée, et en codant les données encryptées à tenir secrètes ; le lecteur de code d'information comprend une unité de stockage de clé de décryptage dans laquelle est une clé de décryptage est mémorisée ; et la deuxième unité de décodage est configurée pour : 10 tenter de décoder les données à tenir secrètes en utilisant la clé de décryptage mémorisée dans l'unité de stockage de clé de décryptage quand l'unité de décision détermine que les codes de données confidentielles sont rangés, effectuer le premier traitement et le deuxième traitement quand les codes de données confidentielles ont été décryptées avec succès selon la clé de décryptage, 15 et effectuer un traitement d'alerte prédéterminé quand les codes de données confidentielles ont été décryptées sans succès. Selon une disposition avantageuse de l'invention selon le deuxième aspect : 20 les codes de données confidentielles sont des codes produits par encryptage des données à tenir secrètes, sur la base d'une clé d'encryptage prédéterminée, et par codage des données à tenir secrètes encryptées ; le lecteur de code d'information comprend une unité de stockage de clé de décryptage dans laquelle est une clé de décryptage est mémorisée ; et 25 la deuxième unité de décodage est configurée pour : tenter de décoder les données à tenir secrètes en utilisant la clé de décryptage mémorisée dans l'unité de stockage de clé de décryptage quand l'unité de décision détermine que les codes de données confidentielles sont rangés, effectuer le premier traitement et le deuxième traitement quand les codes de 30 données confidentielles ont été décryptées avec succès selon la clé de décryptage, et effectuer un traitement d'alerte prédéterminé quand les codes de données confidentielles ont été décryptées sans succès.According to an advantageous arrangement of the invention according to the first aspect: the information code generator is configured to generate the confidential data codes by encrypting the data to be kept secret on the basis of a predetermined encryption key, and encoding the encrypted data to be kept secret; the information code reader comprises a decryption key storage unit in which is a decryption key is stored; and the second decoding unit is configured to: attempt to decode the secret data by using the decryption key stored in the decryption key storage unit when the decision unit determines that the confidential data codes are stored, performing the first processing and the second processing when the confidential data codes have been decrypted successfully according to the decryption key, and performing a predetermined alert processing when the confidential data codes have been decrypted without success. According to an advantageous arrangement of the invention according to the second aspect: the confidential data codes are codes produced by encrypting the data to be kept secret, on the basis of a predetermined encryption key, and by coding the data to be held secret encrypted; the information code reader comprises a decryption key storage unit in which is a decryption key is stored; and the second decoding unit is configured to: attempt to decode the secret data by using the decryption key stored in the decryption key storage unit when the decision unit determines that the confidential data codes are stored, perform the first processing and the second processing when the confidential data codes have been decrypted successfully according to the decryption key, and perform a predetermined alert processing when the confidential data codes have been decrypted without success.

Dans cette configuration qui fait intervenir un traitement visant à donner l'alerte en cas de déchiffrement infructueux par exemple, notamment quand la clé de déchiffrement mémorisée par le lecteur n'est pas valide, l'utilisateur peut par ce biais ais ément savoir que le traitement de mise en correspondance ne s'est pas déroulé normalement et en identifier la cause. BREVE DESCRIPTION DES FIGURES Dans les figures annexées, La figure 1 est un schéma explicatif décrivant de manière conceptuelle le système d'utilisation de code d'information d'un premier mode de réalisation.In this configuration which involves a treatment to give an alert in case of unsuccessful decryption for example, especially when the decryption key stored by the reader is not valid, the user can thereby easily know that the matching process did not proceed normally and identify the cause. BRIEF DESCRIPTION OF THE FIGURES In the accompanying figures, Fig. 1 is an explanatory diagram conceptually describing the information code usage system of a first embodiment.

La figure 2 est un schéma explicatif décrivant de manière conceptuelle un exemple d'application du système d'utilisation de code d'information de la figure 1. La figure 3(A) est un schéma explicatif décrivant de manière conceptuelle un exemple constitutif du générateur de codes d'information utilisé dans le système d'utilisation de code d'information de la figure 1, la figure 3(B) étant un schéma de principe représentant un exemple de configuration matérielle de l'imprimante utilisée par le générateur de codes d'information de la figure 3(A). La figure 4 est un ordinogramme illustrant un exemple de déroulement des 25 opérations de génération de codes d'information effectuées par le générateur de codes d'information de la figure 3. La figure 5 est un schéma explicatif représentant un exemple de structure des données et des codes auxquels s'applique le traitement de génération de code de la 30 figure 4, la figure 5(A) représentant un exemple d'enregistrement de données d'impression, la figure 5(B) un exemple de structure après le tri de l'étape S115, la figure 5(C) un exemple de structure après l'addition des divers codes aux étapes S121 à S137, les figures 5(D), 5(E) et 5(F) illustrant respectivement des exemples de configuration 1, 2 et 3 du code confidentiel représenté sur la figure 5(C). 35 La figure 6 est un schéma explicatif illustrant un exemple de configuration de QR code de type 1. La figure 7 est un schéma de principe illustrant un exemple de configuration matérielle du lecteur de code d'information utilisé par le système d'utilisation de code d'information de la figure 1. La figure 8 est un ordinogramme illustrant un exemple de déroulement des opérations de décodage effectuées par le lecteur de code d'information de la figure 10 7. La figure 9 est un ordinogramme illustrant un exemple de déroulement des opérations de décryptage associées au traitement de décodage de la figure 8. 15 La figure 10 est un ordinogramme illustrant un exemple de déroulement des opérations de transfert de données effectuées dans le traitement de décodage de la figure 8. La figure 11 est un ordinogramme illustrant un exemple de déroulement des 20 opérations de connexion effectuées par le terminal informatique de la figure 1. La figure 12 est un schéma explicatif représentant un exemple concret de code d'information SQ généré par le générateur de codes d'information représenté sur la figure 3 notamment. 25 La figure 13 est un schéma explicatif illustrant un exemple de structure de QR code courant. La figure 14 est un schéma explicatif où sont précisées les relations de 30 correspondance entre identificateurs de mode et modes. DESCRIPTION DÉTAILLÉE DE MODES DE RÉALISATION PRÉFÉRÉS [Premier mode de réalisation] 35 Un premier mode de réalisation de l'invention est décrit ci-après en référence aux figures annexées. Le système d'utilisation de code d'information 100 schématisé sur la figure 1 (parfois désigné ci-après plus simplement « système 100 »), équipé d'un générateur de codes d'information 1 capable de générer de tels codes (parfois désigné ci-après plus simplement « générateur 1 ») et d'un lecteur de code d'information 20 capable de lire les codes d'information SQ générés par le générateur de codes d'information 1 (parfois désigné ci-après plus simplement « lecteur 20 »), forme ainsi un ensemble propre à exploiter via son lecteur de code d'information 20 les codes d'information SQ générés par le générateur de codes d'information 1. Par ailleurs, le système 100 est aussi pourvu d'un terminal informatique 60 constitué par un équipement informatique capable de communiquer sans fil ou par voie filaire avec le lecteur 20, ainsi que d'une unité de gestion 80 connectée à l'Internet, dans laquelle ont été enregistrées des informations de site notamment. Le choix de prendre le QR code (marque déposée) comme exemple de code d'information SQ traité par le système d'utilisation de code d'information 100 n'est pas limitatif puisque l'invention est applicable aux formats Datamatrix, MaxiCode, CP Code, PDF417 et RSS Composite notamment, au même titre qu'à ce QR code. Dans tous les cas, le code d'information SQ revêt une structure dans laquelle, lôrsque le nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques est inférieur à la capacité de la zone de codes où ces mots de code doivent être rangés, le code d'identification de fin qui indique la fin de la chaîne de codes ainsi formée par ces codes de données publiques disposés dans cette zone de codes est placé à la fin de cette chaîne, ou bien l'information d'identification de fin qui permet de spécifier la position de fin de la chaîne de codes formée par ces codes de données publiques l'est en une position prédéfinie de cette chaîne. De plus, ce code d'information SQ est ainsi configuré que les codes de données confidentielles codées comme mots de code représentant des données à tenir secrètes sont disposés après ce code d'identification de fin ou après cette position de fin spécifiée par l'information d'identification de fin. Le système 100 schématisé sur la figure 1 est applicable dans les conditions illustrées par la figure 2 par exemple. La description suivante sera conduite en prenant comme exemple représentatif ce système 100 appliqué dans la configuration de la figure 2, sans pour autant que ses exemples d'application s'en trouvent limités.Fig. 2 is an explanatory diagram conceptually describing an exemplary application of the information code usage system of Fig. 1. Fig. 3 (A) is an explanatory diagram conceptually describing a constituent example of the generator. of information codes used in the information code utilization system of Fig. 1, Fig. 3 (B) being a block diagram showing an example of hardware configuration of the printer used by the code generator. information in Figure 3 (A). FIG. 4 is a flowchart illustrating an exemplary flow of the information code generation operations performed by the information code generator of FIG. 3. FIG. 5 is an explanatory diagram showing an example of data structure and codes to which the code generation process of FIG. 4 applies, FIG. 5 (A) showing an example of a print data record, FIG. 5 (B) an example of a structure after the sorting of the print code. step S115, Fig. 5 (C) an exemplary structure after adding the various codes to steps S121 to S137, Figs. 5 (D), 5 (E) and 5 (F) respectively illustrating configuration examples 1, 2 and 3 of the confidential code shown in Figure 5 (C). Fig. 6 is an explanatory diagram illustrating an example of a QR code configuration of type 1. Fig. 7 is a block diagram illustrating an example hardware configuration of the information code reader used by the code usage system. FIG. 8 is a flowchart illustrating an example of a decoding operation carried out by the information code reader of FIG. 7. FIG. 9 is a flowchart illustrating an example of the flow of information. Decryption operations associated with the decoding process of FIG. 8. FIG. 10 is a flowchart illustrating an example of the data transfer operations carried out in the decoding process of FIG. 8. FIG. 11 is a flowchart illustrating a example of the connection operations carried out by the computer terminal of FIG. 1. FIG. 12 is an explanatory diagram of FIG. presenting a concrete example of information code SQ generated by the information code generator shown in FIG. 3 in particular. Figure 13 is an explanatory diagram illustrating an example of a common QR code structure. Fig. 14 is an explanatory diagram in which the mapping relationships between mode identifiers and modes are specified. DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS [First Embodiment] A first embodiment of the invention is hereinafter described with reference to the accompanying figures. The information code utilization system 100 schematized in FIG. 1 (sometimes hereinafter simply referred to as "system 100"), equipped with an information code generator 1 capable of generating such codes (sometimes referred to as "system 100"). hereinafter more simply "generator 1") and an information code reader 20 capable of reading the information codes SQ generated by the information code generator 1 (sometimes referred to hereinafter simply as "reader 20 "), thus forms a set adapted to use, via its information code reader 20, the information codes SQ generated by the information code generator 1. Moreover, the system 100 is also provided with a terminal computer 60 consisting of computer equipment capable of communicating wirelessly or wired with the reader 20, as well as a management unit 80 connected to the Internet, in which site information has been recorded notammen t. The choice to take the QR code as an example of the information code SQ processed by the information code utilization system 100 is not limiting since the invention is applicable to the formats Datamatrix, MaxiCode, CP Code, PDF417 and RSS Composite including the same as this QR code. In any case, the SQ information code has a structure in which, when the total number of public data codes encoded as code words representing data to be made public is less than the capacity of the code area where these words The end identification code that indicates the end of the code string thus formed by these public data codes arranged in this code area is placed at the end of this string, or the information end identification which makes it possible to specify the end position of the code string formed by these public data codes is at a predefined position of this string. Moreover, this SQ information code is thus configured that the confidential data codes coded as codewords representing data to be kept secret are placed after this end identification code or after this end position specified by the information. end identification. The system 100 shown diagrammatically in FIG. 1 is applicable under the conditions illustrated in FIG. 2 for example. The following description will be made by taking as a representative example this system 100 applied in the configuration of Figure 2, without its application examples are limited.

Dans l'exemple de la figure 2, l'information d'adresse d'un site donné est enregistrée sous forme chiffrée dans le code d'information SQ généré par le générateur 1. Le déchiffrement par le lecteur 20 du code secret de ce code d'information SQ donne accès à l'information d'adresse du site donné. Le code d'information SQ est associé à la structure de données illustrée sur la figure 12 par exemple, ce point particulier faisant l'objet d'une description ultérieure. D'autre part, le lecteur 20 permet de déchiffrer les QR codes bidimensionnels qui correspondent à des QR codes usuels. Si une information d'adresse de site est enregistrée dans un tel QR code bidimensionnel, il est fait en sorte que cette information d'adresse puisse être acquise. À cet égard, la structure de données d'un tel QR code bidimensionnel est celle représentée sur la figure 13 par exemple. Sur cette base, le lecteur 20 permet de transmettre l'information d'adresse acquise à partir du code d'information SQ ou d'un QR code bidimensionnel à ce terminal informatique 60, lequel est conçu pour tenter de se connecter au site auquel renvoie l'adresse spécifiée par cette information d'adresse fournie par le lecteur 20. Toutefois, le terminal informatique 60 qui détermine sur la base d'une information d'identification ajoutée aux données transmises (symbole qui identifie les données confidentielles dans l'exemple de la figure 2) si les données acquises l'ont été par déchiffrement d'un code d'information SQ ou si elles ont été obtenues par déchiffrement d'un QR code bidimensionnel, se connectera au site de l'adresse issue du déchiffrement du code d'information SQ, mais ne se connectera pas à celui correspondant à l'adresse obtenue par déchiffrement du QR code bidimensionnel. La description suivante portera sur ce système pris comme exemple représentatif.In the example of FIG. 2, the address information of a given site is recorded in encrypted form in the information code SQ generated by the generator 1. The decryption by the reader 20 of the secret code of this code SQ information provides access to the address information of the given site. The information code SQ is associated with the data structure illustrated in FIG. 12 for example, this particular point being the subject of a subsequent description. On the other hand, the reader 20 makes it possible to decipher the two-dimensional QR codes which correspond to usual QR codes. If site address information is stored in such a two-dimensional QR code, it is arranged that this address information can be acquired. In this regard, the data structure of such a two-dimensional QR code is that shown in Figure 13 for example. On this basis, the reader 20 makes it possible to transmit the address information acquired from the SQ information code or a two-dimensional QR code to this computer terminal 60, which is designed to attempt to connect to the site to which it refers. the address specified by this address information provided by the reader 20. However, the computer terminal 60 which determines on the basis of identification information added to the transmitted data (symbol which identifies the confidential data in the example of FIG. 2) if the data acquired has been obtained by decryption of an SQ information code or if they have been obtained by decryption of a two-dimensional QR code, will connect to the address site resulting from the decryption of the code SQ information, but will not connect to the one corresponding to the address obtained by decrypting the two-dimensional QR code. The following description will deal with this system taken as a representative example.

En premier lieu, le générateur de codes d'information 1 est décrit en référence aux schémas de la figure 3 notamment. La figure 3(A) représente un schéma descriptif de l'imprimante 10 et de l'ordinateur personnel 1 qui lui est connecté, et la figure 3(B) est un schéma de principe illustrant un exemple de configuration matérielle de l'imprimante 10.35 Comme le montrent les figures 1 et 3(A), le générateur de codes d'information 1 s'organise autour d'un équipement informatique 2 et d'une imprimante 10, dans une configuration où cet équipement informatique 2 et cette imprimante 10 se trouvent reliés par un câble 5. L'imprimante 10 a pour fonction d'imprimer sur une étiquette P 5 notamment un OR code généré sur la base de données de caractères (désignées ci-après génériquement « données d'impression ») telles que caractères alphanumériques, kanji ou symboles fournis par l'équipement informatique 2 et appliqués à cette imprimante 10. Par [QR code], on entend au sens de l'invention tout code conforme à la spécification fondamentale des symboles de QR codes 10 bidimensionnels (JIS X 0510 : 2004) des Japanese Industrial Standards (JIS). Constitué par exemple par un ordinateur personnel de type connu, l'équipement informatique 2 se partage entre une console d'ordinateur 4 et un moniteur 3. La console d'ordinateur 4 est équipée d'un microprocesseur, d'une mémoire principale, 15 d'un disque dur (périphérique d'enregistrement), d'une interface d'entrée/sortie, d'une interface de communication, d'un clavier et d'un périphérique de pointage notamment, non représentés. Le moniteur 3 est un dispositif qui permet d'afficher sur écran les informations que lui délivre la console d'ordinateur 4 à laquelle il est relié. 20 Un pilote d'imprimante installé (intégré) dans cette console d'ordinateur 4 permet d'en extraire à volonté vers l'imprimante 10 les données d'impression contenant des caractères notamment que l'utilisateur de l'équipement informatique 2 désire imprimer sur l'étiquette P sous la forme d'un QR code. 25 En référence à la figure 3(B), l'imprimante 10 est principalement constituée par un microprocesseur 11, une mémoire 12, une interface 13, un contrôleur de rouleau d'entraînement 14, un contrôleur de tête d'impression 15, un rouleau d'entraînement 17 et une tête d'impression 18 notamment. Il convient de préciser que ces éléments 30 sont soit montés sur circuits imprimés non représentés, soit mis sous un boîtier non représenté. Le microprocesseur 11 est un micro-ordinateur (désigné ci-après en abrégé « micro ») capable de piloter l'imprimante 10 dans son ensemble, et susceptible de 35 constituer avec la mémoire 12 qui lui est raccordée par l'intermédiaire d'un bus mémoire un équipement informatique assurant une fonction de traitement de l'information. En plus de la mémoire 12, ce microprocesseur 11 est aussi relié à l'interface 13, au contrôleur de rouleau d'entraînement 14 et au contrôleur de tête d'impression 15.In the first place, the information code generator 1 is described with reference to the diagrams of FIG. 3 in particular. Fig. 3 (A) is a schematic diagram of the printer 10 and the personal computer 1 connected to it, and Fig. 3 (B) is a block diagram illustrating an example of hardware configuration of the printer 10.35. As shown in FIGS. 1 and 3 (A), the information code generator 1 is organized around a computer equipment 2 and a printer 10, in a configuration where this computer equipment 2 and this printer 10 are located. 5. The function of the printer 10 is to print on a label P 5 in particular an OR code generated on the basis of character data (hereinafter referred to generically as "printing data") such as characters. alphanumeric, kanji or symbols provided by the computer equipment 2 and applied to this printer 10. For the purpose of the invention, the term "QR code" means any code that complies with the fundamental specification of the two-dimensional QR code symbols. (JIS X 0510: 2004) Japanese Industrial Standards (JIS). For example, constituted by a personal computer of known type, the computer equipment 2 is shared between a computer console 4 and a monitor 3. The computer console 4 is equipped with a microprocessor, a main memory, a computer and a computer. a hard disk (recording device), an input / output interface, a communication interface, a keyboard and a pointing device in particular, not shown. The monitor 3 is a device that displays on screen the information that it delivers to the computer console 4 to which it is connected. 20 A printer driver installed (integrated) in this computer console 4 can extract at will to the printer 10 the print data containing characters such that the user of the computer equipment 2 wishes to print on the label P in the form of a QR code. With reference to FIG. 3 (B), the printer 10 is mainly constituted by a microprocessor 11, a memory 12, an interface 13, a drive roller controller 14, a print head controller 15, driving roller 17 and a print head 18 in particular. It should be noted that these elements 30 are either mounted on unrepresented printed circuits, or placed under a not shown housing. The microprocessor 11 is a microcomputer (hereinafter abbreviated as "micro") capable of driving the printer 10 as a whole, and capable of constituting with the memory 12 connected thereto via a memory bus computer equipment providing an information processing function. In addition to the memory 12, this microprocessor 11 is also connected to the interface 13, the drive roller controller 14 and the print head controller 15.

La mémoire 12 est un dispositif de mémoire à semi-conducteurs qui inclut par exemple une mémoire vive (mémoire RAM dynamique, mémoire RAM statique, etc.) et une mémoire morte (mémoire EPROM, mémoire EEPROM, etc.). La mémoire vive de cette mémoire 12 est constituée outre par une zone tampon où sont stockées les données de caractères transmises par l'équipement informatique 2, par une zone de travail que le microprocesseur 11 utilise lors de divers traitements tels que les opérations arithmétiques et les opérations théoriques. Dans sa mémoire morte ont préalablement été implantés des programmes dédiés à l'exécution du traitement de génération de code décrit ultérieurement ainsi que les programmes système qui en gèrent les différents composants matériels comme le contrôleur de rouleau d'entraînement 14 et le contrôleur de tête d'impression 15. L'interface 13 est une interface d'entrée/sortie qui assure la réception des données d'impression et autres transmises par la console d'ordinateur 4 de l'équipement informatique 2 précité. Elle est reliée au microprocesseur 11 par un bus série notamment. Les données d'impression entrées dans le microprocesseur 11 via cette interface 13 sont codées en application du traitement de génération de code décrit ci-après.The memory 12 is a semiconductor memory device which includes for example a random access memory (dynamic RAM memory, static RAM memory, etc.) and a read only memory (EPROM memory, EEPROM memory, etc.). The random access memory of this memory 12 is furthermore constituted by a buffer zone where the character data transmitted by the computer equipment 2 is stored by a work zone that the microprocessor 11 uses during various processes such as arithmetic operations and theoretical operations. In its read-only memory have previously been implemented programs dedicated to the execution of the code generation process described later as well as the system programs which manage the various hardware components such as the drive roller controller 14 and the head controller. 15. The interface 13 is an input / output interface which receives the print data and other data transmitted by the computer console 4 of the aforementioned computer equipment 2. It is connected to the microprocessor 11 by a serial bus in particular. The print data inputted to the microprocessor 11 via this interface 13 is coded according to the code generation process described hereinafter.

Dispositif de commande assurant le contrôle du mécanisme d'entraînement du rouleau 17 (non représenté), le contrôleur de rouleau d'entraînement 14 est relié au microprocesseur 11 par l'intermédiaire d'un bus série notamment. En fonction des signaux de contrôle que lui délivre ce microprocesseur 11, il commande la mise en rotation du rouleau d'entraînement 17, son arrêt ainsi que le sens de sa rotation notamment. Le contrôleur de tête d'impression 15 correspond par exemple à une tête thermique permettant d'imprimer des motifs quelconques sur des étiquettes en papier thermosensible. Sa liaison avec le microprocesseur 11 se fait par bus série 35 notamment. Dans ce mode de réalisation où le QR code généré par le générateur de codes décrit ultérieurement peut être imprimé sur une étiquette thermosensible, les motifs de repérage, les motifs gradués et les codes de données notamment qui structurent le QR code sont imprimés sur l'étiquette thermosensible en synchronisation avec son avance pilotée par le contrôleur de rouleau d'entraînement 14. La description suivante illustre l'exemple d'un contrôleur de tête d'impression 15 à tête thermique. Dès lors qu'elle permettra d'imprimer un QR code, il pourra très bien s'agir d'une tête pour impression à jet d'encre ou impression matricielle à impact, le matériel d'impression pouvant correspondre à une imprimante laser ou une imprimante LED. Dans cette architecture d'imprimante 10, les données d'impression qui lui sont appliquées en entrée par l'équipement informatique 2 sont stockées un temps dans la zone tampon de la mémoire 12 via l'interface 13 avant d'être livrées au traitement de génération de code dont la description suit. Ici, le traitement de génération de code est décrit en référence aux figures 4 à 6. L'ordinogramme de la figure 4 illustre le déroulement de ses opérations. La figure 5 est un exemple de structures de données et de codes auxquels s'applique le traitement de génération de codes de la figure 4, la figure 6 illustrant un exemple de configuration de QR code de type 1. Comme le montre la figure 4, le traitement de génération de code lancé par le microprocesseur 11 et la mémoire 12 activés à la mise sous tension de l'imprimante 10 débute par une opération d'initialisation à l'étape S101. Dans ce traitement, la zone de travail de la mémoire 12 èt sa zone tampon où sont stockées les données d'impression sont remises à zéro, de même que les drapeaux et compteurs prédéfinis notamment.A control device controlling the drive mechanism of the roller 17 (not shown), the drive roller controller 14 is connected to the microprocessor 11 via a serial bus in particular. Depending on the control signals delivered by this microprocessor 11, it controls the rotation of the drive roller 17, its stop and the direction of its rotation in particular. The print head controller 15 corresponds for example to a thermal head for printing any patterns on labels of heat-sensitive paper. Its connection with the microprocessor 11 is by serial bus 35 in particular. In this embodiment where the QR code generated by the code generator described later can be printed on a thermosensitive label, the registration patterns, the graduated patterns and the particular data codes which structure the QR code are printed on the label. thermosensitive in synchronism with its lead driven by the drive roller controller 14. The following description illustrates the example of a thermal head print head controller 15. Since it will print a QR code, it may very well be a head for inkjet printing or impact matrix printing, the printing equipment may correspond to a laser printer or a printer. LED printer. In this printer architecture 10, the print data inputted to it by the computer equipment 2 is stored for a time in the buffer zone of the memory 12 via the interface 13 before being delivered to the processing of the printer. code generation whose description follows. Here, the code generation process is described with reference to FIGS. 4 to 6. The flow chart of FIG. 4 illustrates the progress of its operations. FIG. 5 is an example of data and code structures to which the code generation process of FIG. 4 applies, FIG. 6 illustrating an exemplary configuration of type 1 QR code. As shown in FIG. 4, FIG. the code generation process initiated by the microprocessor 11 and the memory 12 activated when the printer 10 is turned on begins with an initialization operation in step S101. In this process, the working area of the memory 12 and its buffer zone where the print data are stored are reset, as are the predefined flags and counters in particular.

Le traitement de l'étape S103 qui consiste à scruter la présence de données d'impression reçues est réitéré tant qu'il n'y a pas eu réception de données d'impression (Non à l'étape S103). Sur détection d'une réception de telles données (Oui à l'étape S103), la valeur de comptage du rythmeur est remise à zéro à l'étape S105 qui suit. Le rythmeur dont la valeur de comptage est remise à zéro à cette étape S105 mesure alors un temps prédéfini à l'étape S107 qui suit. Le traitement opéré à l'étape S107 détermine si le temps imparti par le rythmeur précité est ou non écoulé. En d'autres termes, de par la nécessité de déterminer à l'étape S111 ultérieure si les données d'impression envoyées par l'équipement informatique 2 contiennent ou non des données relatives au chiffrement notamment, le programme passe à l'étape S109 à l'écoulement du temps prédéfini (Oui à l'étape S107) si des données relatives au chiffrement n'ont pas été envoyées par l'équipement informatique 2 avant qu'un délai correspondant à un temps prédéfini d'une deuxième par exemple ne soit écoulé. En revanche, si ce temps prédéfini n'est pas révolu (Non à l'étape S107), le traitement opéré à l'étape S111 ultérieure détermine si une information de position de données confidentielles indiquant la relation positionnelle dans l'enregistrement des données qui doivent être tenues secrètes (désignées ci-après « données confidentielles ») et une clé de cryptage servant à les crypter ont été reçues ou non en tant que données relatives au chiffrement. Si leur réception a été validée (Oui à l'étape S111), le programme passe au traitement de l'étape S113 qui suit, alors qu'il y a retour au traitement de l'étape S107 quand elle n'a pu l'être (Non à l'étape S111) pour à nouveau mesurer le temps écoulé. Ainsi, quand l'écoulement du laps de temps prescrit a été validé à l'étape S107 (Oui à l'étape S107), un drapeau prédéfini spécifiant si les données d'impression contiennent ou non des données confidentielles est mis à [0] à l'étape S109. Mis à [0], ce drapeau indique qu'elles n'en contiennent pas ; elles en contiennent s'il est mis à [1]. De ce fait, un traitement de mise à [1] de ce drapeau est opéré à l'étape S113 qui suit quand il a été déterminé à l'étape S111 que des données relatives au chiffrement notamment ont été reçues (Oui à l'étape S111).Processing of step S103 of scanning for the presence of received print data is repeated until there is receipt of print data (No at step S103). Upon detecting reception of such data (Yes at step S103), the count value of the timer is reset at step S105 that follows. The timer whose count value is reset at this step S105 then measures a predefined time in step S107 which follows. The processing performed in step S107 determines whether the time set by the aforementioned timer is elapsed. In other words, because of the need to determine in the subsequent step S111 whether or not the printing data sent by the computer equipment 2 contains encryption data, the program proceeds to step S109 to the predefined time flow (Yes at step S107) if data relating to the encryption was not sent by the computer equipment 2 before a delay corresponding to a predefined time of a second for example is expired. On the other hand, if this predefined time is not elapsed (No in step S107), the processing performed in the subsequent step S111 determines whether a position information of confidential data indicating the positional relation in the data record which must be kept secret (hereinafter referred to as "confidential data") and an encryption key used to encrypt them have been received or not as encryption data. If their reception has been validated (Yes in step S111), the program proceeds to the processing of the following step S113, while there is a return to the processing of the step S107 when it has not been able to be (No in step S111) to again measure the elapsed time. Thus, when the lapse of the prescribed period of time has been validated in step S107 (Yes in step S107), a predefined flag specifying whether or not the print data contains confidential data is set to [0] at step S109. Set to [0], this flag indicates that they do not contain one; they contain it if it is set to [1]. As a result, a processing of setting [1] of this flag is carried out in the following step S113 when it has been determined in step S111 that data relating to the particular encryption has been received (Yes to the step S111).

Quand le drapeau prédéfini est mis à [1] à l'étape S113, un traitement de réorganisation des données publiques et des données confidentielles a lieu à l'étape S115 qui suit. En effet, quand les données d'impression contiennent des données à rendre publiques aux tiers (données publiques) et des données qu'il est souhaitable de tenir secrètes en les leur cachant (données confidentielles) et que ces données sont placées pêle-mêle dans l'enregistrement, un traitement de partage entre groupe de données publiques et groupe de données confidentielles est réalisé par permutation de l'ordre dans lequel sont rangées les données sur la base de l'[information de position indiquant les relations positionnelles des données confidentielles dans l'enregistrement] acquise à l'étape S111. Soit par exemple, comme l'illustre la figure 5(A), un enregistrement de données d'impression transmis par l'équipement informatique 2 contenant dans cet ordre des données publiques A, des données confidentielles a, des données publiques B et des données confidentielles (3, la permutation opérée à l'étape S115 de l'ordre dans lequel ces données sont rangées conduit, comme l'illustre la figure 5(B), à les réorganiser dans l'ordre données publiques A, données publiques B, données confidentielles a et données confidentielles R. Ce regroupement entre données publiques et données confidentielles a pour effet de faciliter les traitements d'addition d'un code d'identification de fin et d'un code d'identification de confidentialité aux étapes S121 et S125 respectivement. À l'étape S117 suivante, un traitement de codage est exécuté conformément à la spécification fondamentale JIS (JIS X 0510 : 2004) sur chacune des données publiques et des données confidentielles. Ce traitement génère d'une part les codes de données publiques codées comme mots de code représentant les données à rendre publiques et, d'autre part, les codes de données confidentielles codées comme mots de code qui représentent des données à tenir secrètes. À l'étape S121 a lieu le traitement d'addition d'un code d'identification de fin après le code de données publiques. Le code d'identification de fin est constitué par exemple par la séquence [0000] en codage sur 4 bits et, comme l'illustre la figure 5(C), se trouve positionné juste après le code de données ,publiques B qui suit le code de données publiques A. Par souci de commodité, les codes de données publiques sont rendus sur la figure 5(C) par l'expression [codes publics] et le code d'identification de fin par celle de [caractère de fin] respectivement. Le traitement qui intervient à l'étape S123 suivante détermine si le drapeau prédéfini précité est mis à j1] ou s'il ne l'est pas, c'est-à-dire si des données 35 confidentielles sont présentes ou non. En présence de données confidentielles (cas où le drapeau est mis à [1] : Oui à l'étape S123), le programme passe au traitement de l'étape S125. En l'absence de données confidentielles (cas où le drapeau est mis à [0] : Non à l'étape S123), le programme passe à l'étape S135 en occultant la série de traitements de confidentialité (étapes S125 à S133). Les étapes S125 à S133 portent sur une série de traitements de confidentialité qui sont exécutés lorsque les données d'impression contiennent des données confidentielles. Tout d'abord, le traitement de l'étape S125 ajoute un code d'identification de confidentialité juste après le code d'identification de fin. 10 Le traitement réalisé à cette étape S125 consiste à placer un code d'identification de confidentialité juste après le code d'identification de fin, de manière à indiquer explicitement que les codes de données immédiatement postérieures [ont été codés comme mots de code représentant des données 15 confidentielles]. En rendant tangible la présence d'un code de données confidentielles dans le code d'information SQ (code de données placé après le code d'identification de fin) lorsque le QR code généré par ce traitement de génération de code (code d'information SQ) est décodé par un lecteur de QR codes notamment (lecteur de code d'information 20 par exemple), cette opération permet d'empêcher 20 toute lecture de données indésirables ou déformées qu'on aurait indûment prises pour des données confidentielles, mais aussi d'éviter tout incident qui pourrait en découler. L'étape S127 suivante détermine par le calcul la longueur de texte du code de 25 données confidentielles, dont elle ajoute le code juste après le code d'identification de confidentialité. Cette opération qui identifie la zone dans laquelle est placé le code de données confidentielles et sa portée permet lors du décodage du code d'information SQ issu de ce traitement de génération de code par un lecteur de QR codes notamment (lecteur de code d'information 20 par exemple), de savoir jusqu'où 30 s'étend le code de données confidentielles et s'il s'agit d'un code de données cryptées. Dans l'exemple de la figure 5(C), la somme de la longueur de texte du code de données confidentielles a et de la longueur de texte du code de données 35 confidentielles 13, calculée comme longueur de texte, est ajoutée juste après le code d'identification de confidentialité. Sur cette même figure 5(C), par souci de commodité, les codes de données confidentielles sont notés [codes confidentiels] et le code d'identification de confidentialité [identificateur de confidentialité], respectivement. À l'étape S129 qui suit, la nécessité ou non de chiffrer les codes de données confidentielles est déterminée selon qu'une clé de cryptage (clé de chiffrement) est présente ou non. En d'autres termes, lorsqu'une clé de cryptage est reçue en provenance de l'équipement informatique 2 à l'étape S111, le traitement de chiffrement s'opère à l'étape S131 puisqu'il existe une clé de cryptage (clé de chiffrement) (Oui à l'étape S129). En revanche, en l'absence de clé de cryptage s'il n'y en a pas eu réception en provenance de l'équipement informatique 2 à l'étape S111 (Non à l'étape S129), le programme passe le traitement de chiffrement de l'étape S131 et accède à l'étape S133.When the predefined flag is set to [1] in step S113, a reorganization processing of the public data and confidential data takes place in the following step S115. Indeed, when the print data contains data to be made public to third parties (public data) and data that it is desirable to keep secret by hiding them (confidential data) and that these data are placed pell-mell in the registration, a sharing processing between public data group and confidential data group is performed by permutation of the order in which the data are stored on the basis of the [position information indicating the positional relationships of the confidential data in the recording] acquired in step S111. For example, as shown in FIG. 5 (A), a print data record transmitted by the computer equipment 2 containing in this order public data A, confidential data a, public data B and data 3, the permutation effected in step S115 of the order in which these data are stored leads, as illustrated in FIG. 5 (B), to rearranging them in the order of public data A, public data B, confidential data a and confidential data R. This grouping between public data and confidential data has the effect of facilitating the addition processing of an end identification code and a confidential identification code in steps S121 and S125 In the following step S117, an encoding process is performed in accordance with the JIS basic specification (JIS X 0510: 2004) on each of the public data and confidential data. This process generates, on the one hand, the public data codes coded as code words representing the data to be made public and, on the other hand, the confidential data codes coded as code words that represent data to be kept secret. In step S121 the addition processing of an end identification code after the public data code takes place. The end identification code is constituted for example by the sequence [0000] in 4-bit coding and, as illustrated in FIG. 5 (C), is positioned just after the public data code B which follows the public data code A. For the sake of convenience, the public data codes are rendered in Figure 5 (C) by the expression [public codes] and the end identification code by that of [end character] respectively . Processing in the next step S123 determines whether or not the aforementioned predefined flag is set, i.e. whether confidential data is present or not. In the presence of confidential data (case where the flag is set to [1]: Yes in step S123), the program proceeds to the processing of step S125. In the absence of confidential data (case where the flag is set to [0]: No in step S123), the program goes to step S135 by disregarding the series of confidentiality treatments (steps S125 to S133). Steps S125 to S133 relate to a series of confidentiality processes that are executed when the print data contains confidential data. First, the processing of step S125 adds a confidentiality identification code just after the end identification code. The processing performed at this step S125 consists in placing a confidentiality identification code immediately after the end identification code, so as to indicate explicitly that the immediately subsequent data codes [have been coded as codewords representing confidential data]. By making tangible the presence of a confidential data code in the SQ information code (data code placed after the end identification code) when the QR code generated by this code generation process (information code SQ) is decoded by a reader of QR codes in particular (information code reader 20 for example), this operation makes it possible to prevent any reading of unwanted or distorted data which would have been unduly taken for confidential data, but also to avoid any incident that may result. The next step S127 determines by calculation the text length of the confidential data code, of which it adds the code just after the confidentiality identification code. This operation, which identifies the zone in which the confidential data code is placed and its range, makes it possible, during the decoding of the SQ information code resulting from this code generation process, by a reader of QR codes in particular (information code reader). For example), to know how far the confidential data code extends and whether it is an encrypted data code. In the example of Fig. 5 (C), the sum of the text length of the confidential data code a and the text length of the confidential data code 13, calculated as text length, is added just after the confidentiality identification code. In this same FIG. 5 (C), for the sake of convenience, the confidential data codes are noted [confidential codes] and the confidentiality identification code [confidentiality identifier], respectively. In the following step S129, the need or not to encrypt the confidential data codes is determined according to whether an encryption key (encryption key) is present or not. In other words, when an encryption key is received from the computer equipment 2 in the step S111, the encryption processing takes place in the step S131 since there is an encryption key (key encryption) (Yes at step S129). On the other hand, in the absence of an encryption key if it has not been received from the computer equipment 2 at step S111 (No at step S129), the program passes the processing of enciphering step S131 and accessing step S133.

Même si aucune clé de cryptage n'a été reçue à l'étape S111, il s'en trouve cependant lorsque l'équipement informatique 2 en a préalablement stocké une sur un support de stockage d'informations comme la mémoire 12 ou un disque dur (Oui à l'étape S129), auquel cas le traitement de chiffrement de l'étape S131 a bien lieu.Even if no encryption key has been received in step S111, however, it is found when the computer equipment 2 has previously stored one on an information storage medium such as the memory 12 or a hard disk (Yes at step S129), in which case the encryption process of step S131 takes place.

L'étape S131 s'acquitte du traitement de chiffrement des codes de données confidentielles. Ce traitement consiste par exemple à chiffrer les codes de données confidentielles à l'aide d'une technique cryptographique visuelle connue (schémas de partage de secret visuel). Il permet ainsi d'augmenter le niveau de sécurité comparativement à l'addition de données de texte en clair non chiffrées. Dans l'exemple de la figure 5(D), la partie [données chiffrées] qui constitue le code de données confidentielles a est chiffrée, et sont générés conjointement une [colonne de début], un [nombre de caractères] et une [donnée de contrôle de clé de décryptage]. La [colonne de début] positionnée en tête est une information de position des données confidentielles chiffrées à laquelle correspond la valeur de l'adresse exprimable pour l'adresse zéro affectée au début des données d'impression. Le [nombre de caractères] qui suit est le nombre de caractères des données confidentielles cryptées. Sur la base de cette information de position, les données décodées par un lecteur de QR code notamment à partir du code d'information SQ généré par ce traitement de génération de code peuvent être placées dans le respect des relations positionnelles qu'elles occupaient dans l'enregistrement avant leur codage comme mots de code, même si celles-ci n'étaient pas ordonnées. La [donnée de contrôle de clé de décryptage] ajoutée à la fin est une information d'identification de clé qui permet de spécifier ta clé de décryptage utilisée pour déchiffrer le code secret en question ; dans le cas d'un système cryptographique à clé commune où la clé de cryptage et la clé de décryptage sont identiques (appelé 10 aussi « système cryptographique à clé secrète »), la donnée de contrôle de clé de décryptage permet aussi de spécifier la clé de cryptage ; d'où la possibilité de spécifier facilement la clé de décryptage du code de données confidentielles (clé permettant de décrypter) lors du décodage par un lecteur de QR code notamment du code d'information SQ généré par ce traitement de génération de code, mais 15 aussi de déterminer s'il s'agit ou non d'une clé de décryptage. À ce sujet, le code de données confidentielles R a la même structure que le code de données confidentielles a ; ainsi peut-il s'agir d'ajouter comme [donnée de contrôle de clé de décryptage] la même information que la clé de décryptage qui 20 décrypte le code de données confidentielles a ou, si les données confidentielles du code de données confidentielles [3 sont chiffrées avec une autre clé de cryptage différente de celle du code de données confidentielles a, à ajouter une [donnée de contrôle de clé de décryptage] qui spécifie cette autre clé de décryptage. Dans ces conditions, il devient possible de spécifier facilement les clés qui permettent de 25 décrypter chaque code de données confidentielles lors du décodage par un lecteur de QR code notamment du code d'information SQ généré par ce traitement de génération de code, ainsi que de déterminer s'il s'agit ou non de clés autorisant le décryptage. 30 Le traitement opéré à l'étape S133 ajoute le code de données confidentielles immédiatement après la longueur de texte. Dans l'exemple illustré sur la figure 5(D), le code de données confidentielles a et le code de données confidentielles [3 sont ajoutés après la longueur de texte. Les lecteurs de codes bidimensionnels conventionnels ne lisant pas les codes de remplissage placés après le code d'identification de fin en décodage de codes bidimensionnels, les codes de données confidentielles ainsi placés après le code d'identification de fin ne peuvent donc être lus. Ainsi, l'existence de codes de données confidentielles n'étant pas connue même en lecture par un lecteur conventionnel de codes bidimensionnels en contenant, les conditions pour que l'utilisateur de ce lecteur n'ait pas conscience de la présence de données confidentielles s'en trouvent réunies. Le traitement réalisé à l'étape S135 qui suit ajoute un code de remplissage (données de remplissage) après le code de données confidentielles, conformément à l'algorithme de traitement décrit dans la spécification fondamentale JIS (JIS X 0510: 2004). Consécutivement, le traitement de l'étape S137 ajoute un code de correction d'erreur. Le code de correction d'erreur ainsi ajouté à l'étape S137 est obtenu en générant un symbole de correction d'erreur pour les données à déchiffrer (codes de données publiques, codes de données confidentielles, etc.) suivant une méthode connue (algorithme de génération de codes de correction d'erreur décrit dans la spécification fondamentale JIS (JIS X 0510 : 2004 par exemple)), puis le codant sous la forme d'un code de correction d'erreur. Ces traitements génèrent des codes de données ayant la structure indiquée sur la figure 5(C). À l'étape S139, différentes cellules sont créées sur la base des codes de données générés à l'étape S137, qui sont agencées dans le bloc de données illustré sur la figure 6. S'agissant du QR code de type 1 représenté sur la figure 6 et formant un carré de 21 cellules (modules) de côté, 26 blocs de données (AO à A25) constitués de 8 cellules disposées sur 2 colonnes de 4 lignes y sont placés dans la zone de codes à l'exclusion des informations de format (zones hachurées de la figure 6), des motifs gradués et des motifs de repérage placés aux trois coins. En référence à l'exemple de la figure 5(C), le code de données publiques A est placé en AO à A2, le code de données publiques B en A3 à A6, et le code d'identification de fin en A7. À la suite de ce code d'identification de fin, le code d'identification de confidentialité, la longueur de texte et les codes de données confidentielles occupent les cellules A8 à Al 7 qui correspondent normalement aux positions où sont insérés des codes de remplissage.Step S131 performs the encryption processing of the confidential data codes. This treatment consists, for example, in encrypting the confidential data codes using a known visual cryptographic technique (visual secret sharing schemes). It thus increases the level of security compared to the addition of unencrypted plaintext data. In the example of FIG. 5 (D), the part [encrypted data] that constitutes the confidential data code a is encrypted, and is jointly generated a [start column], a [number of characters] and a [data item]. decryption key control]. The [start column] positioned at the top is a position information of the encrypted confidential data to which the value of the address expressible for the zero address assigned at the beginning of the print data corresponds. The [number of characters] that follows is the number of characters of the encrypted confidential data. On the basis of this position information, the data decoded by a QR code reader, in particular from the SQ information code generated by this code generation process, can be placed in respect of the positional relations that they occupied in the process. before encoding them as code words, even if they were not ordered. The [decryption key control data] added at the end is key identification information that allows you to specify your decryption key used to decrypt the secret code in question; in the case of a common key cryptosystem where the encryption key and the decryption key are identical (also called "secret key cryptosystem"), the decryption key control data also allows the key to be specified. encryption; hence the possibility of easily specifying the decryption key of the confidential data code (decryption key) during decoding by a QR code reader including the SQ information code generated by this code generation process, but also to determine whether or not it is a decryption key. In this regard, the confidential data code R has the same structure as the confidential data code a; thus, it may be to add as the decryption key control data the same information as the decryption key which decrypts the confidential data code a or, if the confidential data of the confidential data code [3 are encrypted with another encryption key different from that of the confidential data code a, to add a [decryption key control data] which specifies this other decryption key. Under these conditions, it becomes possible to easily specify the keys that make it possible to decrypt each confidential data code during the decoding by a QR code reader, in particular of the SQ information code generated by this code generation process, as well as determine whether or not keys are keys to decryption. The process performed in step S133 adds the confidential data code immediately after the text length. In the example shown in Fig. 5 (D), the confidential data code a and the confidential data code [3 are added after the text length. Since conventional two-dimensional code readers do not read the fill codes placed after the end identification code in two-dimensional code decoding, the confidential data codes thus placed after the end identification code can not be read. Thus, the existence of confidential data codes not being known even in reading by a conventional reader of two-dimensional codes containing them, the conditions for the user of this reader is not aware of the presence of confidential data s find some of them together. The processing performed in the following step S135 adds a fill code (fill data) after the confidential data code, in accordance with the processing algorithm described in the JIS fundamental specification (JIS X 0510: 2004). Subsequently, the processing of step S137 adds an error correction code. The error correction code thus added in step S137 is obtained by generating an error correction symbol for the data to be decrypted (public data codes, confidential data codes, etc.) according to a known method (algorithm generating error correction codes described in the JIS fundamental specification (JIS X 0510: 2004 for example)), and then encoding it as an error correction code. These processes generate data codes having the structure shown in Figure 5 (C). In step S139, different cells are created on the basis of the data codes generated in step S137, which are arranged in the data block illustrated in FIG. 6. With respect to the type 1 QR code shown in FIG. 6 and forming a square of 21 cells (modules) side, 26 blocks of data (AO to A25) consisting of 8 cells arranged on 2 columns of 4 lines are placed in the code area excluding the information of format (hatched areas of Figure 6), graduated patterns and registration patterns placed at the three corners. Referring to the example of Fig. 5 (C), the public data code A is placed at AO to A2, the public data code B at A3 to A6, and the end identification code at A7. Following this end identification code, the confidentiality identification code, the text length and the confidential data codes occupy the cells A8 to A1 7 which normally correspond to the positions where fill codes are inserted.

Sont ainsi placés en A8 le code d'identification de confidentialité, en A9 qui suit la longueur de texte, puis dans les cellules suivantes A10 à Al 3 le code de données confidentielles a, enfin en Al 4 à Al 7 le code de données confidentielles 13. Comme pour un QR code usuel, le code de correction d'erreur se trouve à la fin en A20 à A25, et des codes de remplissage occupent les cellules A18 à A19 qui correspondent à des zones vides. Par ailleurs, les cellules A15 et A18 étant positionnées de part et d'autre d'un motif gradué, elles sont scindées en A15 et A15', et en Al 8 et A18' respectivement. À l'étape S131, une clé de décryptage proprement dite peut être ajoutée à la place de la [donnée de contrôle de clé de décryptage], comme le montre la figure 5(E). Cela permet, même si un lecteur de QR codes notamment décodant le code d'information SQ généré par le présent traitement de génération de code ne possède par exemple pas de clé de décryptage du code de données confidentielles a, de décrypter le code de données confidentielles a et d'en restituer le texte en clair d'origine s'il est fait en sorte qu'il soit tenté de déchiffrer les codes de données postérieurs au code d'identification de confidentialité quand la présence d'un tel code aura été reconnue.Is thus placed in A8 the confidentiality identification code, in A9 following the text length, then in the following cells A10 to A1 3 the confidential data code has, finally in Al 4 to Al 7 the confidential data code 13. As for a usual QR code, the error correction code is at the end in A20 to A25, and fill codes occupy cells A18 to A19 which correspond to empty areas. Furthermore, the cells A15 and A18 being positioned on either side of a graduated pattern, they are split into A15 and A15 ', and Al 8 and A18' respectively. In step S131, a decryption key proper can be added in place of the [decryption key control data], as shown in Fig. 5 (E). This makes it possible, even if a particular QR code reader decoding the SQ information code generated by the present code generation process does not have, for example, a decryption key of the confidential data code a, of decrypting the confidential data code. a and return the original plaintext if it is made that it is tempted to decipher the data codes subsequent to the confidential identification code when the presence of such a code has been recognized .

Il en va de même pour le code de données confidentielles 13 auquel une clé de décryptage proprement dite peut être ajoutée de la même manière à la place de la [donnée de contrôle de clé de décryptage]. La clé de décryptage à ajouter peut être la même que celle qui décrypte le code de données confidentielles a ou quand les données confidentielles du code de données confidentielles [3 ont été chiffrées avec une autre clé de cryptage différente de celle du code de données confidentielles a, mais aussi ne pas l'être et correspondre en ce cas à cette autre clé de cryptage. Cette disposition permet, lorsqu'un lecteur de QR codes notamment décode le code d'information SQ généré par ce traitement de génération de code, de décrypter les codes de données confidentielles respectifs et d'en restituer le texte en clair d'origine s'il est fait en sorte de tenter de déchiffrer les codes de données postérieurs au code d'identification de confidentialité dès lors que la présence d'un tel code aura été reconnue, même si ce lecteur de QR codes par exemple ne possède pas les clés de décryptage respectives correspondant à chaque code de données confidentielles.The same applies to the confidential data code 13 to which a decryption key itself can be added in the same way in place of the [decryption key control data]. The decryption key to be added may be the same as that decrypting the confidential data code a or when the confidential data of the confidential data code [3 have been encrypted with another encryption key different from that of the confidential data code a , but also not to be and in this case correspond to this other encryption key. This arrangement makes it possible, in particular when a QR code reader decodes the SQ information code generated by this code generation process, to decrypt the respective confidential data codes and to restore the original plaintext. it is made sure to try to decipher the data codes subsequent to the confidential identification code once the presence of such a code has been recognized, even if this QR code reader for example does not have the keys of respective decryption corresponding to each confidential data code.

De plus, même lorsqu'il a été conclu à l'étape S123 à l'absence de données confidentielles (cas où le drapeau est mis à [0] : Non à l'étape S123), il est possible d'insérer entre l'étape S123 et l'étape S135 une étape de traitement d'addition avant les données en texte en clair non chiffrées de la [colonne de début] et du [nombre de caractères] ajoutés à l'étape S131, ainsi que l'illustre la figure 5(F). Ce faisant, les données décodées par un lecteur de QR code notamment à partir du code d'information SQ généré par ce traitement de génération de code peuvent être placées dans le respect des relations positionnelles qu'elles occupaient dans l'enregistrement avant leur codage comme mots de code, même si celles-ci n'étaient pas ordonnées. Ainsi qu'il ressort de la description précédente, les codes de données confidentielles du code d'information SQ généré par le traitement de génération de code exécuté par le microprocesseur 11 du générateur de codes d'information 1 sont placés à l'étape S133 après le code d'identification de fin en se substituant partiellement ou en totalité aux codes de remplissage. Dans ces conditions où les codes de données confidentielles placés après le code de données d'identification de fin ne peuvent être lus par un lecteur conventionnel, la présence de données à tenir secrètes n'est pas connue même en lecture par un lecteur conventionnel d'un code bidimensionnel contenant de tels codes de données confidentielles. Il est donc possible de faire en sorte que l'utilisateur d'un tel lecteur conventionnel n'ait pas conscience de la présence de données confidentielles.Moreover, even when it has been concluded in step S123 that there is no confidential data (case where the flag is set to [0]: No in step S123), it is possible to insert between step S123 and step S135 an addition processing step before the unencrypted plaintext data of the [start column] and [number of characters] added in step S131, as illustrated Figure 5 (F). In doing so, the data decoded by a QR code reader, in particular from the SQ information code generated by this code generation process, can be placed in respect of the positional relations that they occupied in the recording before their coding as codewords, even if they were not ordered. As is apparent from the preceding description, the confidential data codes of the SQ information code generated by the code generation process executed by the microprocessor 11 of the information code generator 1 are placed in step S133 after the end identification code by partially or totally replacing the filling codes. Under these conditions, where the confidential data codes placed after the end identification data code can not be read by a conventional reader, the presence of data to be kept secret is not known even when read by a conventional reader. a two-dimensional code containing such confidential data codes. It is therefore possible to ensure that the user of such a conventional reader is not aware of the presence of confidential data.

Aucune information correspondant aux données décodées de ces codes de données confidentielles ne s'affichant à l'écran d'un lecteur conventionnel même si de tels codes de données confidentielles sont présents, l'utilisateur qui n'a donc pas conscience de l'existence de données confidentielles n'a pas lieu de se montrer méfiant ni d'être incité à des comportements illicites comme chercher à de casser le code. Même si, par ailleurs, l'information correspondant aux données décodées d'un code de données confidentielles est une donnée de commande notamment, l'affichage à l'écran ne risquera pas d'être perturbé car elle ne s'y affichera pas. Dans l'exemple précité, la description a porté à titre d'illustration sur l'impression du code d'information SQ sur une étiquette P par l'imprimante 10. Cet exemple n'est cependant pas limitatif puisque ce code d'information SQ peut être représenté visuellement, par exemple dans une configuration où l'exécution par la console d'ordinateur personnel 4 du traitement de génération de code de la figure 4 conduit à afficher le code d'information SQ au moniteur 3. En ce cas, le traitement de génération de code de la figure 4 peut être conceptualisé comme un programme informatique. Ainsi, l'ordinateur qui fonctionne comme générateur de codes bidimensionnels sous le contrôle de ce programme de génération de codes bidimensionnels a les mêmes fonctions et effets que le microprocesseur 11 notamment de l'imprimante 10 précitée.No information corresponding to the decoded data of these confidential data codes being displayed on the screen of a conventional reader even if such confidential data codes are present, the user who is therefore not aware of the existence confidential data does not have to be suspicious or incited to illicit behavior such as breaking the code. Even if, moreover, the information corresponding to the decoded data of a confidential data code is a control data in particular, the display on the screen will not be likely to be disturbed because it will not be displayed there. In the aforementioned example, the description is illustrative of the printing of the SQ information code on a label P by the printer 10. This example is not limiting, however, since this information code SQ can be represented visually, for example in a configuration where the execution by the personal computer console 4 of the code generation process of FIG. 4 leads to displaying the information code SQ to the monitor 3. In this case, the Code generation processing of Figure 4 can be conceptualized as a computer program. Thus, the computer which functions as a two-dimensional code generator under the control of this two-dimensional code generation program has the same functions and effects as the microprocessor 11, in particular of the aforementioned printer 10.

Dans l'exemple précité, la description a en outre porté pour l'illustrer sur la transmission des données d'impression par l'équipement informatique 2 relié à l'imprimante 10, mais il reste possible avec un équipement informatique capable de sortir des données textuelles comme des caractères, des kanji et des symboles, d'obtenir les fonctions et les effets précités par l'adoption d'une architecture dans laquelle un appareil doté d'une telle fonction comme une caméra numérique, un téléphone portable, un ordinateur portatif ou un terminal portatif se trouve relié à l'imprimante 10.In the aforementioned example, the description has also been made to illustrate it on the transmission of the printing data by the computer equipment 2 connected to the printer 10, but it remains possible with computer equipment capable of outputting data. textual like characters, kanji and symbols, to obtain the aforementioned functions and effects by adopting an architecture in which a device with such a function as a digital camera, a mobile phone, a laptop computer or a portable terminal is connected to the printer 10.

L'architecture du lecteur de code d'information 20 fait l'objet de la description suivante. Le lecteur de code d'information 20 est un appareil qui permet de décoder les codes d'information SQ générés par le générateur de codes d'information 1, puis de les afficher sur un support (codes d'information SQ imprimés par le dispositif d'impression 10 par exemple). Les structures des codes d'information SQ décodables par le lecteur de code d'information 20 ayant déjà été décrites en référence aux figures 5 et 6, leur description sera donc omise. En outre, ce lecteur de code d'information 20 peut aussi lire les QR codes bidimensionnels usuels (QR codes courants dénués de données confidentielles après le code d'identification de fin notamment). Les codes destinés à être lus par le lecteur de code d'information 20 y compris ces codes d'information SQ et ces QR codes bidimensionnels usuels sont désignés par codes d'information C.The architecture of the information code reader 20 is the subject of the following description. The information code reader 20 is a device which makes it possible to decode the SQ information codes generated by the information code generator 1, and then to display them on a support (SQ information codes printed by the device). printing 10 for example). Since the structures of the SQ information codes decodable by the information code reader 20 have already been described with reference to FIGS. 5 and 6, their description will therefore be omitted. In addition, this information code reader 20 can also read the usual two-dimensional QR codes (common QR codes devoid of confidential data after the end identification code in particular). The codes intended to be read by the information code reader 20 including these usual SQ information codes and these QR two-dimensional codes are designated by information codes C.

La figure 7 montre que le lecteur de code d'information 20 est principalement constitué par un système optique comprenant une source lumineuse d'éclairage 21, un photocapteur 23 et une lentille d'imagerie 27 notamment, par un système micro comprenant une mémoire 35, un circuit de commande 40, un interrupteur de service 42 et un afficheur à cristaux liquides 46 notamment, et par un circuit électrique qui comprend notamment un interrupteur d'alimentation 41 et une batterie 49. Ces équipements montés sur cartes de circuits imprimés non représentées ou mis sous boîtiers non représentés offrent une architecture matérielle similaire à celle d'un lecteur de QR codes conventionnel.FIG. 7 shows that the information code reader 20 consists mainly of an optical system comprising a lighting light source 21, a photosensor 23 and an imaging lens 27 in particular, by a micro system comprising a memory 35, a control circuit 40, a service switch 42 and a liquid crystal display 46 in particular, and by an electrical circuit which comprises in particular a power switch 41 and a battery 49. These equipment mounted on unrepresented printed circuit boards or put under housings not shown offer a hardware architecture similar to that of a conventional QR codes reader.

Le système optique s'organise ainsi autour d'une source lumineuse d'éclairage 21, d'un photocapteur 23 et d'une lentille d'imagerie 27 notamment. La source lumineuse d'éclairage 21 dont la fonction est d'émettre une lumière d'éclairage Lf, peut être constituée par exemple par une diode LED rouge et une lentille de diffusion ou une lentille convergente placée côté émission de cette diode LED. Dans la présente configuration, deux sources lumineuses 21 sont installées de part et d'autre du capteur photorécepteur 23 dans un montage qui permet d'illuminer l'étiquette P par la lumière d'éclairage Lf délivrée à travers l'orifice de lecture d'un boîtier non représenté. Le code d'information C précité est imprimé sur cette étiquette P. Le photocapteur 23 est conçu pour recevoir la lumière Lr réfléchie par l'étiquette P et le code d'information C. Y correspondent, à titre d'exemple, les capteurs de zone à réseau bidimensionnel d'éléments photorécepteurs constitués par des dispositifs détecteurs d'image à semi-conducteurs comme les capteurs C-MOS et les capteurs CCD notamment. Le photocapteur 23 est monté sur une carte de circuits imprimés non représentée de sorte que sa face photoréceptrice 23a puisse recevoir la lumière incidente qui vient le frapper par l'intermédiaire de la lentille d'imagerie 27.The optical system is thus organized around a lighting light source 21, a photosensor 23 and an imaging lens 27 in particular. The illumination light source 21 whose function is to emit a lighting light Lf, may be constituted for example by a red LED diode and a diffusion lens or a convergent lens placed on the emission side of this LED. In the present configuration, two light sources 21 are installed on either side of the photoreceptor sensor 23 in a mounting which makes it possible to illuminate the label P by the illumination light Lf delivered through the reading orifice of FIG. a housing not shown. The aforementioned information code C is printed on this label P. The photosensor 23 is designed to receive the light Lr reflected by the label P and the information code C. Y correspond, by way of example, to the sensors of FIG. a two-dimensional array of photoreceptor elements constituted by semiconductor image detector devices such as C-MOS sensors and CCD sensors in particular. The photosensor 23 is mounted on a printed circuit board (not shown) so that its photoreceptive face 23a can receive the incident light which hits it via the imaging lens 27.

La lentille d'imagerie 27 agit comme un système optique d'imagerie permettant de former une image sur la face photoréceptrice 23a du photocapteur 23 en faisant converger la lumière incidente qui vient la frapper à travers l'orifice de lecture. Elle est constituée par exemple par un tube et par une pluralité de lentilles convergentes logées à l'intérieur de ce tube.The imaging lens 27 acts as an imaging optical system for forming an image on the photoreceptor face 23a of the photosensor 23 by converging the incident light striking it through the reading port. It is constituted for example by a tube and by a plurality of convergent lenses housed inside this tube.

La description suivante a trait à l'architecture globale du circuit micro. Ce circuit micro comprend notamment un circuit amplificateur 31, un circuit convertisseur analogique-numérique 33, une mémoire 35, un circuit générateur d'adresses 36, un circuit générateur de signal de synchronisation 38, un circuit de commande 40, un interrupteur de service 42, une diode LED 43, un avertisseur sonore 44, un afficheur à cristaux liquides 46 et une interface de communication 48. Comme son nom l'indique, il s'articule autour du circuit de commande 40 et de la mémoire 35 qui peuvent fonctionner en micro-ordinateur.The following description relates to the overall architecture of the micro circuit. This micro circuit notably comprises an amplifier circuit 31, an analog-digital converter circuit 33, a memory 35, an address generator circuit 36, a synchronization signal generator circuit 38, a control circuit 40, a service switch 42 , an LED 43, a buzzer 44, a liquid crystal display 46 and a communication interface 48. As its name indicates, it is articulated around the control circuit 40 and the memory 35, which can operate in accordance with FIG. microcomputer.

Amplifié par un gain prédéfini en accédant au circuit amplificateur 31, le signal d'image délivré en sortie par le photocapteur 23 du système optique est appliqué en entrée dans le circuit convertisseur analogique-numérique 33 pour y être converti de signal analogique en signal numérique. Ceci fait, le signal d'image numérisé résultant, c'est-à-dire les données d'image, est entré dans la mémoire 35 pour y être stocké dans la zone de stockage de données d'image. De son côté, le circuit générateur de signal de synchronisation 38 est conçu pour pouvoir générer un signal de synchronisation à destination du photocapteur 23 et du circuit générateur d'adresses 36, lequel circuit 36 génère les adresses de rangement des données d'image à stocker dans la mémoire 35 sur la base du signal de synchronisation que lui a ainsi délivré ce circuit générateur de signal de synchronisation 38. La mémoire 35 est un dispositif de mémoire à semi-conducteurs tel qu'une mémoire vive (mémoire DRAM, mémoire SRAM, etc.) et une mémoire morte (mémoire EPROM, mémoire EEPROM, etc.) par exemple. La mémoire vive de cette mémoire 35 est conçue pour ménager à la fois une zone de stockage des données d'image précitées et une zone de travail dont se sert le circuit de commande 40 pour les opérations arithmétiques et les opérations théoriques associées aux différents traitements. Dans sa mémoire morte ont été préalablement implantés les programmes spécifiques qui permettent notamment d'exécuter les traitements de décodage décrits ci-après, mais aussi les programmes système qui pilotent les différents matériels comme la source lumineuse d'éclairage 21 et le photocapteur 23 notamment.Amplified by a predefined gain by accessing the amplifier circuit 31, the image signal output by the photosensor 23 of the optical system is input into the analog-to-digital converter circuit 33 to be converted from analog to digital signal. With this done, the resulting digitized image signal, i.e. the image data, is entered into the memory 35 for storage in the image data storage area. For its part, the synchronization signal generating circuit 38 is designed to be able to generate a synchronization signal intended for the photosensor 23 and the address generating circuit 36, which circuit 36 generates the storage addresses of the image data to be stored. in the memory 35 on the basis of the synchronization signal thus delivered to it this synchronizing signal generator circuit 38. The memory 35 is a semiconductor memory device such as a random access memory (DRAM memory, SRAM memory, etc.) and a read-only memory (EPROM memory, EEPROM memory, etc.) for example. The RAM of this memory 35 is designed to provide both a storage area of the aforementioned image data and a working area used by the control circuit 40 for the arithmetic operations and the theoretical operations associated with the different processes. In its read-only memory were previously implemented specific programs that allow in particular to perform the decoding processes described below, but also the system programs that control the various equipment such as the lighting light source 21 and the photosensor 23 in particular.

Microprocesseur à l'échelle du lecteur de code d'information 20, le circuit de commande 40 constitué par une unité centrale, un bus système et une interface d'entrée-sortie notamment, forme avec la mémoire 35 un équipement informatique doté de fonctions de traitement de l'information. Ce circuit de commande 40 est conçu pour se connecter à divers périphériques d'entrée-sortie par l'intermédiaire d'une interface d'entrée-sortie incorporée et, dans un second mode de réalisation, se trouve connecté à un interrupteur d'alimentation 41, un interrupteur de service 42, une diode LED 43, un avertisseur sonore 44, un afficheur à cristaux liquides 46 et une interface de communication 48 notamment.Microprocessor on the scale of the information code reader 20, the control circuit 40 consisting of a central unit, a system bus and an input-output interface in particular, forms with the memory 35 a computer equipment having functions of data processing. This control circuit 40 is adapted to connect to various I / O devices via an embedded I / O interface and, in a second embodiment, is connected to a power switch. 41, a service switch 42, an LED 43, a buzzer 44, a liquid crystal display 46 and a communication interface 48 in particular.

Cette configuration permet de surveiller et de gérer l'interrupteur d'alimentation 41 et l'interrupteur de service 42, d'allumer et d'éteindre la diode LED 43 faisant office de voyant de signalisation, de commuter en marche-arrêt le retentissement de l'alarme sonore 44 qui peut émettre un bip sonore ou une alarme, de commander l'écran de l'afficheur à cristaux liquides 46 pour y afficher le contenu des codes du code d'information C lu, ainsi que de superviser la communication de l'interface de communication 48 pour communiquer en série avec les dispositifs externes. Les périphériques reliés à l'interface de communication 48 incluent notamment un ordinateur principal HST, lequel constitue un système hiérarchiquement supérieur au lecteur de code d'information 20. Par ailleurs, l'interface de communication 48 fonctionne aussi comme interface capable de prendre en charge les communications avec le terminal informatique 60 (figure 1 notamment) ci-après via un système de communication sans fil tel qu'un réseau local sans fil ou par infrarouge ou via un système de communication filaire connu.This configuration makes it possible to monitor and manage the power switch 41 and the service switch 42, to turn on and turn off the LED 43 serving as a signaling light, to switch on and off the sound of the audible alarm 44 which can emit a beep or an alarm, to control the screen of the liquid crystal display 46 to display the contents of the codes of the information code C lu, as well as to supervise the communication of the the communication interface 48 for communicating in series with the external devices. The peripherals connected to the communication interface 48 include in particular a main computer HST, which constitutes a hierarchically superior system to the information code reader 20. Moreover, the communication interface 48 also functions as an interface capable of handling communications with the computer terminal 60 (FIG. 1 in particular) below via a wireless communication system such as a wireless or infrared local area network or via a known wired communication system.

Le circuit d'alimentation est constitué par l'interrupteur d'alimentation 41 et par la batterie 49 notamment. La commutation marche-arrêt de l'interrupteur d'alimentation 41 gérée par le circuit de commande 40 commande le passage ou la coupure de la tension d'attaque alimentée par la batterie 49 aux différents dispositifs et circuits. La batterie 49 est une batterie secondaire qui fournit une tension en courant continu de niveau déterminé ; les batteries au lithium par exemple peuvent y pourvoir. Cette batterie 49 ne s'impose pas aux architectures dans lesquelles l'alimentation électrique est assurée par un dispositif externe tel que l'ordinateur principal HST (unité de gestion 80) connecté par l'intermédiaire de l'interface de communication 48 par exemple.The supply circuit is constituted by the power switch 41 and the battery 49 in particular. The on-off switching of the power switch 41 managed by the control circuit 40 controls the passage or the breaking of the drive voltage supplied by the battery 49 to the various devices and circuits. The battery 49 is a secondary battery which supplies a DC voltage of determined level; for example, lithium batteries can provide this. This battery 49 is not required for architectures in which the power supply is provided by an external device such as the main computer HST (management unit 80) connected via the communication interface 48 for example.

Lorsque, dans cette configuration adoptée pour le lecteur de code d'information 20, un autodiagnostic prédéfini lancé à la mise sous tension à l'interrupteur d'alimentation 41 se termine normalement et autorise la lecture d'un code d'information C, l'entrée appliquée par l'interrupteur de service 42 (bascule électronique par exemple) active l'émission de la lumière d'éclairage Lf. L'activation par la bascule électronique commandée par l'utilisateur amène le circuit de commande 40 à délivrer sur la base du signal de synchronisation un signal d'émission lumineuse à la source lumineuse d'éclairage 21 ; sur réception de ce signal d'émission lumineuse, la source lumineuse d'éclairage 21 éclaire la diode LED qui fournit la lumière d'éclairage Lf. La lumière d'éclairage Lf qui illumine le code d'information C est alors réfléchie ; cette lumière réfléchie Lr venant frapper la lentille d'imagerie 27 à travers l'orifice du lecteur, il se forme une image du code d'information C sur la face photoréceptrice 23a du photocapteur 23. Les données d'image du photocapteur 23 exposé par l'image du code d'information C sont soumises à un traitement d'image par le système micro décrit ci-dessus et sont transmises au traitement de décodage décrit ultérieurement, via la zone de stockage de données d'image de la mémoire 35.When, in this configuration adopted for the information code reader 20, a predefined autodiagnosis initiated at power up to the power switch 41 is terminated normally and allows the reading of a C code information. input applied by the service switch 42 (electronic flip-flop for example) activates the emission of the lighting light Lf. Activation by the user-controlled electronic flip-flop causes the control circuit 40 to output on the basis of the synchronization signal a light-emitting signal to the illuminating light source 21; upon receipt of this light emission signal, the illumination light source 21 illuminates the LED that provides the illumination light Lf. The illumination light Lf which illuminates the information code C is then reflected; this reflected light Lr striking the imaging lens 27 through the orifice of the reader forms an image of the information code C on the photoreceptor face 23a of the photosensor 23. The image data of the photosensor 23 exposed by the image of the information code C are subjected to image processing by the micro system described above and are transmitted to the decoding process described later via the image data storage area of the memory 35.

Le terminal informatique 60 se présente comme un ordinateur fixe ou un ordinateur portatif. Dans sa configuration matérielle, il pourra s'agir d'un ordinateur personnel tel qu'un ordinateur de bureau, un ordinateur bloc-notes ou une tablette électronique, mais aussi d'un terminal informatique tel qu'un téléphone intelligent ou un téléphone portable. Il peut être configuré pour pouvoir communiquer avec le lecteur 20 et, s'il a été conçu pour donner accès à l'Internet, il pourra aussi s'agir d'autres types de dispositifs de traitement de l'information. Ce terminal informatique 60 est au moins équipé d'une unité centrale, d'une unité de mémoire structurée autour d'une mémoire vive, d'une mémoire morte, d'une mémoire non volatile et d'autres dispositifs de mémoire, d'une zone de travail constituée par des dispositifs d'entrée comme des touches et un panneau tactile, d'une unité d'affichage constituée par un dispositif d'affichage connu tel qu'un afficheur à cristaux liquides, ainsi que d'une unité de communication prenant en charge les communications via un système de communication sans fil tel qu'un réseau local sans fil ou par infrarouge ou via un système de communication filaire connu.The computer terminal 60 is presented as a desktop computer or a laptop. In its hardware configuration, it may be a personal computer such as a desktop computer, a notebook computer or an electronic tablet, but also a computer terminal such as a smartphone or a mobile phone . It can be configured to communicate with the reader 20 and, if it has been designed to provide access to the Internet, it may also be other types of information processing devices. This computer terminal 60 is at least equipped with a central unit, a memory unit structured around a random access memory, a read only memory, a non-volatile memory and other memory devices. a work area consisting of input devices such as keys and a touch panel, a display unit consisting of a known display device such as a liquid crystal display, and a display unit. communication supporting communications via a wireless communication system such as a wireless or infrared local area network or via a known wired communication system.

L'unité de gestion 80 (dans le présent mémoire descriptif, l'unité de gestion 80 est aussi dénommée « ordinateur principal HST ») est constituée par exemple par un ordinateur connu. Cette unité de gestion 80 est au moins équipée d'une unité centrale, d'une unité de mémoire structurée autour d'une mémoire vive, d'une mémoire morte, d'une mémoire non volatile et d'autres dispositifs de mémoire, d'une zone de travail constituée par des dispositifs d'entrée comme des touches et un panneau tactile, d'une unité d'affichage constituée par un dispositif d'affichage connu tel qu'un afficheur à cristaux liquides, ainsi que d'une unité de communication 10 prenant en charge les communications par un système de communication sans fil tel qu'un réseau local sans fil ou par infrarouge ou par un système de communication filaire connu. Cette architecture peut avoir été conçue pour que l'unité de gestion 80 (ordinateur principal HST) délivre au générateur de codes d'information 1 une clé de chiffrement utilisée pour chiffrer les données confidentielles et qu'une clé de 15 décryptage identique à cette clé de chiffrement le soit au lecteur 20 par l'unité de gestion 80. Le traitement de décodage est décrit ici en référence aux figures 8, 9 et' 10. La figure 8 représente un ordinogramme précisant l'enchaînement des opérations de 20 décodage réalisées par l'unité de gestion 80. La figure 9 est un ordinogramme précisant le déroulement des opérations de traitement de déchiffrement correspondant à l'étape S23 de la figure 8. Enfin, la figure 10 illustre un ordinogramme montrant le déroulement des opérations du traitement de transfert de données indiqué à l'étape S24 de la figure 8. 25 Comme l'indique la figure 8, le traitement de décodage initié par exemple par l'activation du circuit de commande 40 et de la mémoire 35 à la mise sous tension du lecteur de code d'informatioh 20 consiste tout d'abord à exécuter un traitement d'initialisation à l'étape S11. Ce traitement a pour effet de remettre à zéro la zone de 30 travail de la mémoire 35 et sa zone de stockage de données d'image où sont stockées les données d'image, mais aussi les drapeaux et les compteurs prédéfinis. Le lecteur de code d'information 20 décrit ici est relié à l'ordinateur principal HST (unité de gestion 80), auprès duquel il acquiert les données de clé de décryptage en tant données de réglage. 35 L'étape S12 remet à zéro les valeurs de comptage du rythmeur. Le rythmeur dont les valeurs de comptage sont mises à zéro à cette étape S12 mesure le temps imparti à l'étape S13.The management unit 80 (in this specification, the management unit 80 is also referred to as the "HST main computer") is constituted for example by a known computer. This management unit 80 is at least equipped with a central unit, a memory unit structured around a random access memory, a read-only memory, a non-volatile memory and other memory devices, and a work area consisting of input devices such as keys and a touch panel, a display unit consisting of a known display device such as a liquid crystal display, and a unit communication system 10 supporting communications by a wireless communication system such as a wireless or infrared local area network or a known wired communication system. This architecture may have been designed so that the management unit 80 (main computer HST) delivers to the information code generator 1 an encryption key used to encrypt the confidential data and a decryption key identical to this key The decoding process is described here with reference to FIGS. 8, 9 and 10. FIG. 8 represents a flowchart detailing the sequence of decoding operations carried out by the controller 20. the management unit 80. FIG. 9 is a flowchart detailing the progress of the decryption processing operations corresponding to the step S23 of FIG. 8. Finally, FIG. 10 illustrates a flow chart showing the progress of the operations of the transfer processing. indicated in step S24 of FIG. 8. As indicated in FIG. 8, the decoding process initiated for example by the activation of the circuit 40 and the memory 35 on powering the information code reader 20 firstly performs an initialization process in step S11. This processing has the effect of resetting the work area of the memory 35 and its image data storage area where the image data, but also the predefined flags and counters are stored. The information code reader 20 described herein is connected to the main computer HST (management unit 80), from which it acquires the decryption key data as adjustment data. Step S12 resets the count values of the timer. The timer whose count values are set to zero at this step S12 measures the time allotted in step S13.

Le traitement effectué à l'étape S13 détermine si le temps imparti a été mesuré par ce rythmeur. En effet, pour les besoins de déterminer à l'étape suivante S14 si les données de réglage transmises par l'ordinateur principal HST contiennent ou non des données de clé de décryptage (clé de déchiffrement), le programme passe au traitement de l'étape S16 à l'écoulement du temps imparti, cinq secondes par exemple, dans le cas où il n'y a pas eu transmission par l'ordinateur principal HST de données relatives au chiffrement avant que ce temps ne soit écoulé (Oui à l'étape S205). En revanche, lorsque le temps imparti n'est pas révolu (Non à l'étape S13), le traitement opéré à l'étape S14 va déterminer s'il a y a eu ou non réception d'une clé de décryptage. Dans l'affirmative (Oui à l'étape S14), le programme passe à l'étape S15 qui suit, mais renvoie à l'étape S13 si cette réception n'a pu être confirmée (Non à l'étape S14), où de nouveau le temps imparti est mesuré. La clé de décryptage (clé de déchiffrement) transmise par l'ordinateur principal HST peut être préalablement mémorisée dans la mémoire 35 par exemple. En ce cas, la mémoire 35 correspond à un exemple d'unité de stockage de clés de déchiffrement où sont mémorisées des clés de déchiffrement. S'il s'avère à l'étape S13 que le temps imparti est écoulé (Oui à l'étape S13), la valeur du drapeau [Key] prédéfini est mis à [0] à l'étape S16. Ce drapeau [Key] indique si les codes de données confidentielles du code d'information SQ sont ou non décryptées par une clé de décryptage, la valeur [0] (cas de Key = 0) indiquant qu'il n'y a pas décryptage par une clé de décryptage et la valeur [1] (cas de Key = 1) qu'il y a décryptage par une clé de décryptage. De ce fait, s'il a été déterminé à l'étape S14 qu'une clé de décryptage a été reçue (Oui à l'étape S14), le traitement opéré à l'étape S15 qui suit met à [1] la valeur de ce drapeau [Key]. Après que la valeur du drapeau [Key] prédéfini a été mise à [1] à l'étape S15 ou à l'étape S16, l'étape S17 qui suit procède à l'acquisition des données d'image. À 35 cet effet, un traitement d'extraction des données d'image stockées dans la zone de stockage de données d'image de la mémoire 35 a lieu, qui permet par exemple d'obtenir l'image codée du code d'information C telle que l'illustre conceptuellement la figure 6. À l'étape S18 qui suit est réalisé un traitement de détection des motifs de repérage. La détection des motifs de repérage présents dans les trois coins du code d'information C tel que l'illustre la figure 6 conduit à détecter le profil du code d'information C à l'étape S19 suivante. La détection de ces motifs de repérage placés aux trois coins et celle du profil de code peuvent être réalisées par une méthode connue mis en oeuvre pour le QR code (marque déposée). Ensuite, le traitement de calcul des coordonnées centrales de chaque cellule opéré à l'étape S20 permet de déterminer à l'étape S21 suivante la couleur, noir ou blanc, de chaque cellule. Cette opération donnant accès aux informations de format indiquées sur la figure 6 (zones hachurées de la figure 6) et les blocs de données, l'étape S22 qui suit détermine, en présence d'un bloc de données manquantes ou autre, s'il est ou non possible de le corriger. Lorsqu'il a été déterminé à l'étape S22 qu'une telle correction d'erreur était possible (Oui à l'étape S22), l'erreur est corrigée, puis un traitement de décryptage est réalisé à l'étape S23 qui suit. En revanche, l'erreur ne pouvant être corrigée quand la possibilité de la corriger n'a pu être validée à l'étape S22 (Non à l'étape S22), le programme passe à l'étape S17 et chacun des traitements des étapes S17 à S22 est effectué sur la base d'une nouvelle acquisition de données d'image. Ces traitements des étapes S20 à S22 peuvent aussi être réalisés suivant une méthode connue appliquée avec le QR code (marque déposée). Les détails de l'étape S23 s'y trouvant précisés, la description suivante du traitement de déchiffrement sera faite en référence à la figure 9. Comme le montre cette figure 9, le traitement de déchiffrement consiste tout d'abord à mettre à zéro (0) les valeurs des drapeaux [Encryption] et [KeyError] à l'étape S31. Les valeurs respectives de [n], [Lent ], [Len2] sont ensuite mises à 0 (zéro) à l'étape S32. L'étape S33 réalise un traitement d'acquisition du énième code de données indiqué par le compteur n. L'étape S34 qui suit détermine si cet énième code de données acquis à l'étape S33 est ou non un code d'identification de fin. S'il s'avère que ce code de données acquis à l'étape S33 est un code d'identification de fin (Oui à l'étape S34 ), le programme passe au traitement de l'étape 40 puisque les codes de données usuels placés avant le code d'identification de fin sont donc au complet et le code d'information C en question n'en contient plus d'autres. S'il s'avère en revanche que le code de données acquis à l'étape S33 n'est pas un code d'identification de fin (Non à l'étape S34), signifiant par là qu'il existe encore des codes de données usuels avant que le code d'identification de fin ne soit atteint, le programme passe au traitement de l'étape S35 qui suit où a lieu l'acquisition du code de données suivant, à savoir le nombre de codes (nombre de caractères) i du (n+1)-ième code de données. Comme il a été décrit en référence à la figure 5(D), cette opération se fonde sur le fait que le nombre de caractères est stocké à la position correspondant au second caractère du code de données, les détails figurant au paragraphe [8.4 Codage des données] de la spécification fondamentale JIS (JIS - X 0510 : 2004). L'acquisition du nombre de codes (nombre de caractères) i à l'étape S35 donne accès à l'étape S36 qui suit où s'opère un traitement d'acquisition du nombre de données j pour ce seul nombre de caractères (i), puis à l'étape S37 par l'exécution d'un traitement de décryptage (décodage) du code de données en question, c'est-à-dire du code de données publiques (code de données codées comme mots de code représentant des données à rendre publiques).The processing performed in step S13 determines whether the time allowed has been measured by this timer. In fact, for the purpose of determining in the next step S14 whether or not the setting data transmitted by the main computer HST contains decryption key data (decryption key), the program proceeds to the processing of the step S16 when the time runs out, five seconds for example, in the case where there has been no transmission by the HST main computer of encryption data before this time has elapsed (Yes to step S205). On the other hand, when the time allowed is not past (No in step S13), the processing performed in step S14 will determine whether or not a decryption key has been received. If yes (Yes at step S14), the program proceeds to step S15 which follows, but returns to step S13 if this reception could not be confirmed (No to step S14), where again the time is measured. The decryption key (decryption key) transmitted by the main computer HST may be previously stored in the memory 35 for example. In this case, the memory 35 corresponds to an example of a decryption key storage unit where decryption keys are stored. If it is found in step S13 that the time has elapsed (Yes in step S13), the value of the predefined [Key] flag is set to [0] in step S16. This flag [Key] indicates whether or not the confidential data codes of the SQ information code are decrypted by a decryption key, the value [0] (case of Key = 0) indicating that there is no decryption by a decryption key and the value [1] (case of Key = 1) that there is decryption by a decryption key. Therefore, if it has been determined in step S14 that a decryption key has been received (Yes in step S14), the processing performed in step S15 which follows sets [1] to the value of this flag [Key]. After the value of the predefined [Key] flag has been set to [1] in step S15 or step S16, the next step S17 acquires the image data. For this purpose, an extraction processing of the image data stored in the image data storage area of the memory 35 takes place, which allows for example to obtain the coded image of the information code C as shown in Fig. 6. In step S18 which follows, detection processing of the locating patterns is performed. The detection of the identification patterns present in the three corners of the information code C as illustrated in FIG. 6 leads to detecting the profile of the information code C in the following step S19. The detection of these locating patterns placed at the three corners and that of the code profile can be achieved by a known method implemented for the QR code (registered trademark). Next, the calculation processing of the central coordinates of each cell operated in step S20 makes it possible to determine in step S21 the color, black or white, of each cell. This operation giving access to the format information indicated in FIG. 6 (hatched areas of FIG. 6) and the data blocks, the following step S22 determines, in the presence of a block of missing or other data, whether is possible to correct it. When it has been determined in step S22 that such an error correction was possible (Yes in step S22), the error is corrected, then a decryption process is performed in step S23 which follows . On the other hand, since the error can not be corrected when the possibility of correcting it could not be validated in step S22 (No in step S22), the program proceeds to step S17 and each of the processing steps S17 to S22 is performed on the basis of a new image data acquisition. These treatments of steps S20 to S22 can also be carried out according to a known method applied with the QR code (registered trademark). The details of the step S23 are specified therein, the following description of the decryption process will be made with reference to FIG. 9. As shown in FIG. 9, the decryption process consists first of all in setting to zero ( 0) the values of the [Encryption] and [KeyError] flags in step S31. The respective values of [n], [Slow], [Len2] are then set to 0 (zero) in step S32. Step S33 performs acquisition processing of the nth data code indicated by the counter n. The following step S34 determines whether this nth data code acquired in step S33 is or not an end identification code. If it turns out that this data code acquired in step S33 is an end identification code (Yes in step S34), the program proceeds to the processing of step 40 since the usual data codes placed before the end identification code are therefore complete and the information code C in question no longer contains others. If, on the other hand, it turns out that the data code acquired in step S33 is not an end identification code (No in step S34), thereby indicating that there still exist usual data before the end identification code is reached, the program proceeds to the processing of the next step S35 where the acquisition of the following data code, ie the number of codes (number of characters) takes place i of the (n + 1) -th data code. As described with reference to Fig. 5 (D), this operation is based on the fact that the number of characters is stored at the position corresponding to the second character of the data code, the details in paragraph [8.4 Coding data] of the JIS fundamental specification (JIS - X 0510: 2004). The acquisition of the number of codes (number of characters) i in step S35 gives access to the step S36 which follows where a data number acquisition processing takes place for this single number of characters (i) , then in step S37 by performing a decryption (decoding) process of the data code in question, i.e., the public data code (code of data encoded as codewords representing data to be made public).

Une fois achevé le traitement de décryptage des codes de données à l'étape S37, l'étape S38 règle à [n + j + 1] le compteur n pour qu'il indique le code de données suivant. Puis à l'étape S39, il y a addition de la valeur du nombre de caractères i acquis en S35 à la valeur actuelle de [Lent ]. De la sorte, [Lent ] représente le nombre total de caractères comptés jusqu'au code d'identification de fin. Lorsque l'étape S34 s'établit à Oui, il est fait en sorte d'obtenir le nombre total de caractères présents jusqu'au code d'identification de fin. Après l'étape S39, il est de nouveau procédé à un traitement d'acquisition du énième code de données par retour au traitement de l'étape S33.After completion of the decryption processing of the data codes in step S37, step S38 sets the counter n to [n + j + 1] to indicate the next data code. Then in step S39, there is addition of the value of the number of characters i acquired in S35 to the current value of [Slow]. In this way, [Slow] represents the total number of characters counted up to the end identification code. When step S34 is set to Yes, it is arranged to obtain the total number of characters present up to the end identification code. After step S39, an acquisition process of the nth data code is again carried out by returning to the processing of step S33.

Les étapes S33 à S39 concernent ainsi un traitement de décodage par acquisition des codes de données usuelles (premier code de données, codes de données publiques) qui sont intrinsèquement placés devant le code d'identification de fin (côté début des données par rapport au code d'identification de fin dans la chaîne de données de la figure 5(C)) et décodés. Le circuit de commande 40 notamment qui exécute ces différentes étapes correspond à un exemple de [première unité de décodage], dont la fonction est de déchiffrer le contenu placé en amont du code d'identification de fin dans une chaîne de codes.The steps S33 to S39 thus relate to a decoding process by acquisition of the usual data codes (first data code, public data codes) which are intrinsically placed in front of the end identification code (the start side of the data with respect to the code end identification in the data chain of Fig. 5 (C)) and decoded. The control circuit 40 in particular which executes these different steps corresponds to an example of [first decoding unit], whose function is to decipher the content placed upstream of the end identification code in a code string.

Le traitement opéré à l'étape S40 détermine si le drapeau [Key] prédéfini a ou non été mis à [1], c'est-à-dire s'il y a décryptage par une clé de décryptage du code de données confidentielles du code d'information C. S'il est établi que ce drapeau n'est pas mis à [1] (Non à l'étape S40), il est mis fin à ce traitement de déchiffrement car aucun décryptage avec une clé de décryptage ne s'impose alors.The processing carried out in step S40 determines whether or not the predefined [Key] flag has been set to [1], that is to say if decryption by a decryption key of the confidential data code of the information code C. If it is established that this flag is not set to [1] (No in step S40), this decryption process is terminated because no decryption with a decryption key then imposes itself.

En revanche, quand le drapeau [Key] prédéfini a bien été mis à [1] (Oui à l'étape S40), la nécessité de décrypter avec une clé de décryptage fait passer le traitement à l'étape S41 qui suit, où le compteur n est mis à n + 1, puis à l'étape S42 où s'effectue un traitement d'acquisition du énième code de données indiqué par le compteur n. Ensuite, à l'étape S43 qui suit, le énième code de données acquis à l'étape S42 fait l'objet d'un traitement qui détermine s'il s'agit ou non d'un code d'identification de confidentialité. Le circuit de commande 40 notamment qui exécute cette étape S43 correspond à un exemple d'[unité de décision] dont la fonction est de déterminer si des codes de données confidentielles se trouvent placés après le code d'identification de fin. En effet, l'étape S43 détermine essentiellement que des codes de données confidentielles sont présents après le code d'identification de fin s'il s'agit d'un code d'identification de confidentialité et, si tel n'est pas le cas, qu'aucun code de données confidentielles n'apparaît après le code d'identification de fin. La présence d'un code de données confidentielles en aval du code de données identifié comme code d'identification de confidentialité (Oui à l'étape S43) fait passer le programme au traitement de l'étape S44 successive d'acquisition du code de 35 données suivant, c'est-à-dire du nombre de caractères i (nombre de codes secrets) du (n + 1) ième code de données. Comme pour l'étape S35, cette opération se fonde sur le fait que le nombre de caractères est stocké à la position correspondant au second caractère du code de données.On the other hand, when the predefined flag [Key] has been set to [1] (Yes to step S40), the need to decrypt with a decryption key makes the processing in step S41 which follows, where the counter n is set to n + 1, then to step S42 where an acquisition process of the nth data code indicated by the counter n is performed. Then, in the following step S43, the nth data code acquired in step S42 is processed to determine whether or not it is a confidentiality identification code. In particular, the control circuit 40 executing this step S43 corresponds to an example of a [decision unit] whose function is to determine whether confidential data codes are placed after the end identification code. Indeed, the step S43 essentially determines that confidential data codes are present after the end identification code if it is a confidential identification code and, if this is not the case , that no confidential data code appears after the end identification code. The presence of a confidential data code downstream of the data code identified as the confidentiality identification code (Yes in step S43) causes the program to proceed to the processing of the successive step S44 of acquiring the code of 35. next data, i.e. the number of characters i (number of secret codes) of the (n + 1) th data code. As for step S35, this operation is based on the fact that the number of characters is stored at the position corresponding to the second character of the data code.

Quand l'étape S43 a validé la présence d'un code d'identification de confidentialité, il peut être fait en sorte d'avertir l'ordinateur principal HST de sa présence dans le code d'information C en question. Cette disposition permet de savoir au niveau de l'ordinateur principal HST que les codes de données venant après le code d'identification de fin sont des codes de données confidentielles. Par ailleurs, dans le cas où une information autre qu'un code de remplissage mais sans être un code de données confidentielles (par exemple une information qui ne correspond plus à un code de remplissage du fait de données incohérentes) se trouverait placée dans la zone de codes située après le code d'identification de fin censée ne pouvoir accueillir que de tels codes de remplissage (partie vide de la zone de codes), le fait qu'aucune information de nature à indiquer qu'il s'agit d'un code de données confidentielles ne soit délivrée à l'ordinateur principal permet d'empêcher toute fausse manoeuvre susceptible d'être induite par le décodage d'une telle information autre qu'un code de données confidentielles.When step S43 has validated the presence of a confidential identification code, it can be made to notify the main computer HST of its presence in the information code C in question. This arrangement makes it possible to know at the main computer level HST that the data codes coming after the end identification code are confidential data codes. Furthermore, in the case where information other than a filling code but without being a confidential data code (for example information that no longer corresponds to a filling code due to inconsistent data) would be placed in the zone. number of codes after the end identification code intended to accommodate only such filling codes (empty part of the code area), the fact that no information indicating that it is a confidential data code is delivered to the main computer to prevent any false maneuver may be induced by the decoding of such information other than a confidential data code.

En revanche, s'il n'a pu être déterminé que le code de données considéré était un code d'identification de confidentialité (Non à l'étape S43), il est mis fin au présent traitement de décryptage, aucun code de données confidentielles n'étant donc inclus dans le code d'information C en question au-delà du code d'identification de confidentialité.On the other hand, if it could not be determined that the data code in question was a confidentiality identification code (No at step S43), the present decryption process is terminated, no confidential data code therefore not included in the information code C in question beyond the confidentiality identification code.

S'il y a acquisition à l'étape S44 du nombre de caractères i (nombre de codes secrets, appelé aussi « nombre de colonnes de codes secrets »), l'étape S45 qui suit donne lieu à l'acquisition des codes de données confidentielles notamment à partir de la zone de données vide (zone de données située après le code d'identification de confidentialité), qui font l'objet d'un traitement d'acquisition des données confidentielles pour le seul nombre de données j de ce nombre de codes secrets (i). De plus, l'étape S47 établit le compteur n à la donnée suivante, c'est-à-dire le positionne à [n + 1 + j] pour indiquer la donnée de contrôle de clé de décryptage, puis procède à l'acquisition de cette énième donnée de contrôle de clé de décryptage (information d'identification de clé).If there is acquisition in step S44 of the number of characters i (number of secret codes, also called "number of columns of secret codes"), step S45 which follows gives rise to the acquisition of the data codes confidential, in particular from the empty data area (data area after the confidentiality identification code), which are subject to a confidential data acquisition processing for the only number of data j of this number secret codes (i). In addition, step S47 sets the counter n to the next data item, i.e., sets it to [n + 1 + j] to indicate the decryption key control data item, and then acquires of this umpteenth decryption key control data (key identification information).

Sur la base de la donnée de contrôle de clé de décryptage acquise à cette étape S47, l'étape S48 détermine si la clé de décryptage reçue en provenance de l'ordinateur principal HST à l'étape S14 précédente convient comme clé de déchiffrement des données chiffrées de ce énième code de données confidentielles (en d'autres termes, si la clé de cryptage utilisée lors du chiffrement du énième code de données confidentielles est compatible avec la clé de décryptage qui aura été préparée). Si la compatibilité de cette clé de décryptage est établie à l'étape S48 (Oui à l'étape S48), il y a déchiffrement des données chiffrées (données confidentielles) à l'étape S49 qui suit. À ce sujet, ce chiffrement fait appel à une technique cryptographique visuelle connue (schémas de partage de secret visuel), qui permet par décryptage de revenir au texte en clair d'origine même dans le cas où les données chiffrées de code de données confidentielles l'ont été par une telle technique cryptographique visuelle. En revanche, si la compatibilité de la clé de décryptage n'a pu être établie à l'étape S48 (Non à l'étape S48), la valeur de [KeyError] est mise à [1] à l'étape S52. De la sorte, la valeur prise par [KeyError] est une information qui spécifie si la clé de déchiffrement (clé de décryptage) mémorisée dans le lecteur 20 est ou non compatible avec la clé de chiffrement (clé de cryptage) utilisée pour crypter le code de données confidentielles. [KeyError] = 1 signifie que la clé de déchiffrement (clé de décryptage) mémorisée dans le lecteur 20 n'est pas compatible avec la clé de chiffrement (clé de cryptage) utilisée pour crypter le code de données confidentielles. Le traitement de l'étape S50 décrypte le code de données confidentielles. En d'autres termes, comme les données chiffrées (données confidentielles) ont pu être déchiffrées à l'étape S49 antérieure, le code de données confidentielles est décrypté (décodé) sur la base des données chiffrées ainsi déchiffrées à cette étape S49. Il y a alors aussi acquisition du nombre de caractères décryptés k. À la fin du traitement de décryptage de l'étape S50, la valeur de [Encryption] est mise à 1 à l'étape S51. Ainsi, la valeur de [Encryption] est une information qui spécifie si un code de données confidentielles a ou non été déchiffré, 1 indiquant que le code de données confidentielles a été déchiffré, 0 qu'il ne l'a pas été. De plus, la valeur de [Len2] est mise à la valeur [Lent +k] à l'étape S51. De la sorte, les traitements postérieurs aux étapes S34, S40 de la figure 9 vont acquérir et décoder les codes de données placés après le code d'identification de fin, originellement non décodés (codes de données confidentielles). Le circuit de commande 40 notamment qui exécute ces différentes étapes correspond à un exemple de [deuxième unité de décodage], dont la fonction est de décoder les codes de données confidentielles dont la présence a été établie par l'unité de décision. Les traitements de la figure 9 illustrent à titre d'exemple le processus qui conduit à déchiffrer le code d'information SQ dans lequel, comme l'indique la figure 12, un type de données confidentielles (données chiffrées) est placé après un code d'identification de confidentialité (identificateur de confidentialité), un nombre de colonnes de codes secrets (nombre de caractères) l'est avant ces données confidentielles et une donnée de contrôle de clé de décodage l'est après (c'est-à-dire une configuration dans laquelle un type de données confidentielles a est enregistré conformément à la structure de données de la figure 5(C)) ; toutefois, dans l'hypothèse d'un code d'information SQ au sein duquel ont été enregistrées plusieurs types de données confidentielles comme l'illustre la figure 5(C), il suffit d'appliquer les traitements des étapes S42 à S50 à la pluralité de codes de confidentialité pour que chaque code de confidentialité soit déchiffré.Based on the decryption key control data acquired in this step S47, step S48 determines whether the decryption key received from the main computer HST at the previous step S14 is suitable as a key for decrypting the data. encrypted this nth confidential data code (in other words, if the encryption key used for the encryption of the nth confidential data code is compatible with the decryption key that has been prepared). If the compatibility of this decryption key is established in step S48 (Yes in step S48), decryption of the encrypted data (confidential data) in step S49 that follows. In this regard, this encryption uses a known visual cryptographic technique (visual secret sharing schemes), which allows decryption to return to the original plaintext even in the case where the encrypted data of confidential data code l have been through such a visual cryptographic technique. On the other hand, if the compatibility of the decryption key could not be established in step S48 (No in step S48), the value of [KeyError] is set to [1] in step S52. In this way, the value taken by [KeyError] is information that specifies whether the decryption key (decryption key) stored in the reader 20 is compatible or not with the encryption key (encryption key) used to encrypt the code confidential data. [KeyError] = 1 means that the decryption key (decryption key) stored in the reader 20 is not compatible with the encryption key (encryption key) used to encrypt the confidential data code. The processing of step S50 decrypts the confidential data code. In other words, since the encrypted data (confidential data) could be decrypted in the previous step S49, the confidential data code is decrypted (decoded) on the basis of the encrypted data thus decrypted at this step S49. Then there is also acquisition of the number of characters decrypted k. At the end of the decryption processing of step S50, the value of [Encryption] is set to step S51. Thus, the value of [Encryption] is information that specifies whether or not a confidential data code has been decrypted, 1 indicating that the confidential data code has been decrypted, 0 that it has not been decrypted. In addition, the value of [Len2] is set to [Slow + k] in step S51. In this way, the post-processing steps S34, S40 of FIG. 9 will acquire and decode the data codes placed after the end identification code, originally not decoded (confidential data codes). The control circuit 40 in particular which executes these different steps corresponds to an example of [second decoding unit], the function of which is to decode the confidential data codes whose presence has been established by the decision unit. The processes of FIG. 9 illustrate by way of example the process which leads to deciphering the SQ information code in which, as indicated in FIG. 12, a type of confidential data (encrypted data) is placed after a code of confidentiality identifier (confidentiality identifier), a number of secret code columns (number of characters) is it before these confidential data and a decoding key control data is after it (that is to say a configuration in which a type of confidential data is recorded in accordance with the data structure of Fig. 5 (C)); however, in the case of an SQ information code in which several types of confidential data have been recorded as illustrated in FIG. 5 (C), it suffices to apply the treatments of steps S42 to S50 to the plurality of privacy codes for each privacy code to be decrypted.

Comme il ressort de la description précédente, le lecteur de code d'information 20 ainsi constitué permet de décoder un code de données confidentielles même si ce code de données confidentielles (second code de données) se trouve placé dans la zone de codes après le code d'identification de fin où il n'y a originellement que des codes de remplissage (partie vide de la zone de codes). Il est donc possible de décoder des codes de données qui se trouvent dans la partie vide de la zone de codes où doivent être placés des mots de code. Ainsi le lecteur de code d'information 20 permet-il de décoder le code d'information SQ généré par le générateur de codes d'information 1 précité.As is apparent from the preceding description, the information code reader 20 thus constituted makes it possible to decode a confidential data code even if this confidential data code (second data code) is placed in the code area after the code end identification where there are originally only fill codes (empty part of the code area). It is therefore possible to decode data codes which are in the empty part of the code area where code words are to be placed. Thus, the information code reader 20 makes it possible to decode the information code SQ generated by the aforementioned information code generator 1.

La configuration retenue dans le traitement de décodage précédent est celle de l'acquisition de données de contrôle de clé de décodage, mais il peut très bien s'agir par exemple d'acquérir une clé de décryptage à la place du traitement de l'étape S47 lorsqu'une clé de décryptage proprement dite telle que décrite en référence à la figure 5(E) est ajoutée au code de données confidentielles. Même en présence de codes de données confidentielles chiffrés avec des clés de cryptage différentes, il est encore possible en faisant en sorte d'acquérir chaque clé de décryptage à la place de l'étape S47 lorsque chacune des clés de décryptage est ajoutée à chacun des codes de données confidentielles, de revenir au texte en clair d'origine par décryptage des codes de données confidentielles respectifs et ce, même si le lecteur de code d'information 20 en question n'en possède pas les clés de décryptage.The configuration retained in the previous decoding process is that of the acquisition of decoding key control data, but it may very well be for example to acquire a decryption key in place of the processing of the step S47 when a decryption key proper as described with reference to Figure 5 (E) is added to the confidential data code. Even in the presence of confidential data codes encrypted with different encryption keys, it is still possible by making sure to acquire each decryption key in place of step S47 when each decryption key is added to each of the decryption keys. confidential data codes, to return to the original plaintext by decryption of the respective confidential data codes, even if the information code reader 20 in question does not have the decryption keys.

La description suivante concerne le traitement de transfert de données opéré à l'étape S24 de la figure 8. Ce traitement est réalisé par exemple conformément à l'ordinogramme représenté sur la figure 10, selon un processus consistant à transférer les données du lecteur 20 vers un autre terminal informatique 60 par exemple. Ce terminal informatique 60 auquel sont transférées les données peut être un dispositif particulier prédéfini dans le lecteur 20, mais aussi correspondre au dispositif qui établit la communication avec le lecteur 20 lors du traitement de la figure 10. Ce traitement détermine en premier lieu si la valeur de [KeyError] correspond ou non à 1. Si [KeyError] vaut 1, indiquant par là que la clé de déchiffrement (clé de décryptage) mémorisée dans le lecteur 20 n'est pas compatible avec la clé de chiffrement utilisée lors du cryptage du code de données confidentielles, le code de données confidentielles n'est donc pas déchiffré. En ce cas, l'étape S61 valide l'option Oui et un traitement d'erreur est effectué à l'étape S72. Ce traitement d'erreur peut par exemple consister à faire retentir une alarme au moyen de l'avertisseur sonore 44, mais aussi à afficher un message d'erreur à l'unité d'affichage de l'afficheur à cristaux liquides 46 notamment. Il peut aussi s'agir d'un signal prédéfini fourni par la diode LED 43 (clignotement par exemple).The following description relates to the data transfer processing performed in step S24 of FIG. 8. This processing is carried out for example according to the flow chart shown in FIG. 10, according to a process of transferring data from the reader 20 to another computer terminal 60 for example. This computer terminal 60 to which the data is transferred can be a particular device predefined in the reader 20, but also correspond to the device which establishes the communication with the reader 20 during the processing of FIG. 10. This treatment determines firstly whether the value of [KeyError] is not 1. If [KeyError] is 1, indicating that the decryption key (decryption key) stored in the reader 20 is not compatible with the encryption key used when encrypting the encryption key. confidential data code, the confidential data code is therefore not decrypted. In this case, step S61 validates the Yes option and error processing is performed in step S72. This error processing may for example consist of sounding an alarm by means of the buzzer 44, but also to display an error message to the display unit of the liquid crystal display 46 in particular. It can also be a predefined signal provided by the LED 43 (flashing for example).

En revanche, quand la valeur de [KeyError] est 0, l'étape S61 s'établit à Non et la valeur de n est initialisée à 0. Ensuite, la valeur de [cp] est appliquée à l'adresse de début des données déchiffrées (résultats de lecture) obtenues à l'issue du traitement de déchiffrement de la figure 9.On the other hand, when the value of [KeyError] is 0, step S61 is set to No and the value of n is initialized to 0. Then, the value of [cp] is applied to the start address of the data. decrypted (read results) obtained at the end of the decryption process of FIG. 9.

L'étape S63 détermine ensuite si la valeur de [Encryption] est ou n'est pas 0. L'option validée à l'étape S62 étant Non pour [Encryption] valant 1, les caractères [SC)] sont transférés comme marque de code. En d'autres termes, le code d'information que le programme tente de lire sur la figure 8 est un code d'information SQ généré par le générateur 1 précité et, [Encryption] prenant la valeur 1 à l'étape S51 de la figure 9 quand il y a déchiffrement de codes de données confidentielles par le traitement de la figure 9, les caractères [SQ] sont transférés à l'étape S64 en tant qu'information d'identification.Step S63 then determines whether the value of [Encryption] is or is not 0. The option validated in step S62 being No for [Encryption] equaling 1, the characters [SC]] are transferred as a mark of code. In other words, the information code that the program tries to read in FIG. 8 is an SQ information code generated by the aforementioned generator 1, and [Encryption] taking the value 1 in step S51 of FIG. Fig. 9 When there is decryption of confidential data codes by the processing of Fig. 9, the characters [SQ] are transferred to step S64 as identification information.

Dans cette configuration, le circuit de commande 40 qui exécute les traitements des étapes S63, S64 notamment correspond à un exemple d'[unité de traitement] ; si, dans cet exemple, le code de données confidentielles a été déchiffré par la [deuxième unité de décodage] précitée, le traitement de mise en correspondance consiste à en présenter les résultats de déchiffrement, tandis qu'une information d'identification prédéfinie (marque [SQ]) l'est par mise en correspondance avec les résultats de déchiffrement de code de données confidentielles ainsi présentés. D'autre part, quand la valeur de [Encryption] est 0, l'option Oui de l'étape S62 est validée et le programme transfère au terminal informatique 60 les caractères [OR] comme marque de code. Ainsi, lorsque le code d'information C que le programme cherche à lire sur la figure 8 est un QR code usuel ne contenant pas de codes de données confidentielles, les étapes S40 ou S43 du traitement de la figure 9 s'établissent à Non et le traitement de l'étape S51 n'est pas exécuté ; en ce cas, [Encryption] reste inchangé à sa valeur initiale de 0 et s'ensuit à l'étape S65 le transfert des caractères [OR] au terminal informatique 60. En effet, dans cette configuration, les caractères [SQ] sont transférés comme première information d'identification en cas de déchiffrement de codes de données confidentielles par le traitement de la figure 9 ; en l'absence d'un tel déchiffrement par ce traitement, les caractères [OR] sont transférés en tant que deuxième information d'identification distincte de cette première information d'identification.In this configuration, the control circuit 40 which executes the processing of steps S63, S64 in particular corresponds to an example of [processing unit]; if, in this example, the confidential data code has been decrypted by the [second decoding unit] above, the matching process consists in presenting the decryption results, whereas a predefined identification information (mark [SQ]) is mapped to the confidential data code decryption results thus presented. On the other hand, when the value of [Encryption] is 0, the Yes option of step S62 is enabled and the program transfers to the computer terminal 60 the [OR] characters as a code mark. Thus, when the information code C that the program seeks to read in FIG. 8 is a usual QR code that does not contain confidential data codes, steps S40 or S43 of the processing of FIG. 9 are set to No and the processing of step S51 is not executed; in this case, [Encryption] remains unchanged at its initial value of 0 and follows at step S65 the transfer of the characters [OR] to the computer terminal 60. Indeed, in this configuration, the [SQ] characters are transferred as first identification information in case of decryption of confidential data codes by the processing of Figure 9; in the absence of such decryption by this processing, the characters [OR] are transferred as the second identification information distinct from this first identification information.

Après les étapes S64 ou S65, le traitement opéré à l'étape S66 détermine si n est ou n'est pas la valeur de [Lent]. Avec Non à l'étape S66, le traitement de l'étape S67 détermine si n est la valeur de [Len2] ou non. Avec Non à l'étape S67, les données de l'adresse cp sont transférées au terminal informatique 60 à l'étape S70, puis les valeurs de n et de cp sont incrémentées. Si, dans ce traitement, l'adresse spécifiée par cp se situe dans le champ des résultats de lecture des codes de données publiques, les étapes S66 et S67 s'établissent à Non, le traitement de l'étape S70 est réitéré, et les résultats de lecture des codes de données publiques sont transférés dans l'ordre. Lorsque par ailleurs n s'est établi à [Lent ], c'est-à-dire quand les résultats de lecture des codes de données publiques ont tous finis d'être transférés, le programme valide l'option Oui à l'étape S66 et la marque [«] qui constitue l'identificateur de début de données confidentielles est transférée. Ainsi, dans le traitement de transfert de l'étape S70 réitéré après l'étape S68, les résultats de lecture des codes de données confidentielles se trouvent-ils transférés à tour de rôle. Si, dans ce traitement, l'adresse spécifiée par cp se situe après l'étape S68 dans le champ des résultats de lecture des codes de données confidentielles, le programme valide l'option Non aux étapes S66 et S67, le traitement de l'étape S70 est réitéré et les résultats de lecture des codes de données confidentielles sont transférés dans l'ordre. Quand n s'établit à [Len2], c'est-à-dire quand les résultats de lecture des codes de données confidentielles ont tous finis d'être transférés, l'option Oui de l'étape S67 est validée et la marque [»] constituant l'identificateur de fin de données confidentielles est transférée.After steps S64 or S65, the processing performed in step S66 determines whether n is or is not the value of [Slow]. With No in step S66, the processing of step S67 determines whether n is the value of [Len2] or not. With No in step S67, the data of the address cp is transferred to the computer terminal 60 in step S70, then the values of n and cp are incremented. If, in this processing, the address specified by cp is in the read result field of the public data codes, steps S66 and S67 set to No, the processing of step S70 is reiterated, and the Reading results of the public data codes are transferred in order. When otherwise n is set to [Slow], i.e. when the read results of the public data codes have all been finished, the program enables the Yes option at step S66. and the mark ["] which is the start identifier of confidential data is transferred. Thus, in the transfer processing of the repetitive step S70 after the step S68, the read results of the confidential data codes are transferred in turn. If, in this processing, the address specified by cp is located after step S68 in the read results field of the confidential data codes, the program validates the No option at steps S66 and S67, the processing of the Step S70 is reiterated and the read results of the confidential data codes are transferred in order. When n is set to [Len2], i.e. when the read results of the confidential data codes have all been transferred, the Yes option of step S67 is validated and the mark [ Constituting the end-of-confidential data identifier is transferred.

Dans cette configuration, le terminal informatique 60 acquiert les résultats de lecture des codes de données publiques (données publiques enregistrées comme codes de données publiques) et ceux de lecture des codes de données confidentielles, insérés entre un identificateur de début de données confidentielles et un identificateur de fin de données confidentielles (données confidentielles enregistrées comme codes de données confidentielles). Dans l'exemple illustré par la figure 12, les données du code d'information SQ sont agencées sous une forme dans laquelle l'[information de site de présentation de QR codes], traitée comme donnée publique, est enregistrée dans le code 35 d'information SQ comme code de données publiques. L'adresse du site libellée [http://www.abcdef.com], traitée comme donnée confidentielle, l'est en mode chiffré dans le code d'information SQ comme code de données confidentielles. Quand le lecteur 20 déchiffre ce code d'information SQ suivant le traitement de la figure 8 et le transfère conformément à celui de la figure 10, le terminal informatique 60, sur 5 réception de ces données transférées, procède d'abord à l'acquisition de l'information d'identification [SQ], puis à celle des résultats de lecture des codes de données publiques, c'est-à-dire de l'[information de site de présentation de QR codes]. Il y a ensuite acquisition de l'information [«http://www.abcdef.com»] qui constitue la donnée confidentielle. L'analyse faite par le terminal informatique 60 de 10 la série de données ainsi reçues lui permet en détectant l'information d'identification [SQ] de mettre en évidence la présence de données confidentielles dans les données reçues. La détection des symboles [«] et [»] permet de spécifier que les données qu'ils enserrent sont des données confidentielles, d'où la possibilité de spécifier [http://www.abcdef.com] comme constituant par nature une donnée 15 confidentielle valide. D'autre part, lorsque le code d'information C lu par le lecteur 20 suivant le traitement de la figure 8 revêt l'agencement usuel d'un QR code (marque déposée) illustré par la figure 13, le terminal informatique 60, sur réception de ces résultats de lecture, procède d'abord à l'acquisition de l'information [OR], puis à celle des résultats de lecture des codes de données publiques (donnée d'adresse 20 [http://www.abcdef.cm] dans l'exemple de la figure 13). La figure 14 illustre un exemple d'identificateur (indicateur de mode) commun au code d'information SQ et au QR code courant. Dans cette configuration, l'identificateur de mode [0000] est traité comme code d'identification de fin par 25 exemple. Qu'il s'agisse d'un code d'information SQ ou d'un QR code usuel, la même structure peut être attribuée aux données publiques et au code d'identification de fin ; par exemple, comme le montre la figure 13, l'identificateur de mode est affecté au début de chacune des données qui constituent les données publiques, ce qui permet de spécifier le mode auquel appartient chaque donnée. 30 La description suivante porte sur le traitement de connexion réalisé par le terminal informatique 60. Dans le traitement de connexion illustré sur la figure 11, les différentes initialisations s'effectuent d'abord à l'étape S81, puis le processus détermine s'il y a eu ou non réception de données en provenance du lecteur 20 35 (S82). En l'absence de données reçues à partir du lecteur 20 une fois l'initialisation achevée, le programme passe à Non à l'étape S82 et un état d'attente s'établit durablement (état d'attente de réception de données en provenance du lecteur 20). S'il y a eu réception de données à partir du lecteur 20 au terme du processus d'initialisation, le programme passe à Oui à l'étape S82, et il est déterminé s'il y a eu 5 ou non réception d'un caractère d'arrêt indiquant la fin des données. Avec Non à l'étape S83, un traitement de stockage à l'étape 84 est réitéré jusqu'à réception d'un caractère d'arrêt. La réception d'un caractère d'arrêt (c'est-à-dire quand la série de données envoyées par le lecteur 20 a été entièrement reçue) valide l'option Oui à l'étape S83. 10 L'option Oui à l'étape S83 enchaîne sur la détection de la marque de code à partir des données fournies par le lecteur 20 (c'est-à-dire les données issues du traitement de transfert de la figure 9). Lorsque la marque de code contenue dans les données reçues en provenance du lecteur 20 n'est pas [SQ] mais [QR], le 15 programme valide Non à l'étape S86 car les données en question ne résultent pas du déchiffrement d'un code de données confidentielles, et il est mis fin à ce traitement de connexion. En d'autres termes, lorsque les données envoyées par le lecteur 20 ne résultent pas du déchiffrement d'un code d'information SQ contenant des données confidentielles, mais de données pour lesquelles a été déchiffré un 20 code bidimensionnel QR usuel, aucun traitement de connexion à un site web n'a lieu même si ces données contiennent une URL en indiquant l'adresse (adresse Internet). D'autre part, les données reçues en provenance du lecteur 20 qui contiennent la 25 marque de code [SQ] sont tenues pour résulter du déchiffrement d'un code de données confidentielles. En ce cas, l'étape S86 s'établit à Oui et il est déterminé (étape S87) si les caractères [«] [»] identificateurs de données confidentielles ont été détectés dans les données reçues. Si ces identificateurs de données confidentielles ont pu l'être, l'étape S87 passe à Oui et il y a extraction (étape S88) 30 de l'information d'adresse (URL) du site web sur l'Internet qui est spécifiée par les données de ce champ. S'il n'a pu être détecté d'identificateurs de données confidentielles, l'étape S87 s'établit à Non et il est mis fin au traitement de la figure 11. Ensuite, il y a connexion au site web à destination d'Internet que spécifie l'information d'adresse extraite à l'étape S88, dont les résultats sont affichés sur un 35 écran d'affichage notamment (étape S89). À titre d'exemple, lorsque l'adresse insérée entre les identificateurs de données confidentielles [«] et [»] est un site web proposé par un prestataire spécifique (entreprise, boutique, organisme public, particulier, autres agents par exemple), il y a acquisition auprès de ce site web d'une image proposée par ce dernier, qui s'affiche à l'unité d'affichage du terminal informatique 60. Ainsi, aucune connexion au site n'a lieu en l'absence d'information d'adresse obtenue à partir d'un code de données confidentielles dans le traitement de la figure 11 (adresse associée à des identificateurs de données confidentielles). Lorsqu'un code de données confidentielles a été déchiffré par le circuit de commande 40 correspondant à la deuxième unité de décodage du lecteur de code d'information 20 précité, un traitement de mise en correspondance est réalisé par ce circuit de commande 40 faisant office d'unité de traitement, qui présente à la fois les résultats déchiffrés du code de données confidentielles en question et les informations d'identification prédéfinies (marque [SQ], marques [«], [»]) . De la sorte, la présentation des résultats de déchiffrement de codes de données confidentielles mis en correspondance avec l'information d'identification permet au dispositif externe que constitue le terminal informatique 60 de décider plus facilement et avec plus de précision si les données présentées sont ou non des données confidentielles valides.In this configuration, the computer terminal 60 acquires the reading results of the public data codes (public data recorded as public data codes) and those of reading the confidential data codes, inserted between a confidential data start identifier and an identifier. end of confidential data (confidential data recorded as confidential data codes). In the example illustrated in FIG. 12, the data of the information code SQ is arranged in a form in which the [QR code presentation site information], treated as public data, is recorded in the code 35 SQ information as public data code. The address of the site labeled [http://www.abcdef.com], treated as confidential data, is encrypted in the SQ information code as a confidential data code. When the reader 20 decrypts this information code SQ following the processing of FIG. 8 and transfers it according to that of FIG. 10, the computer terminal 60, on receiving this transferred data, proceeds first to the acquisition identification information [SQ], then to that of the reading results of the public data codes, that is, [QR code presentation site information]. Then there is the acquisition of information ["http://www.abcdef.com"] which constitutes the confidential data. The analysis made by the computer terminal 60 of the series of data thus received enables it by detecting the identification information [SQ] to highlight the presence of confidential data in the received data. The detection of symbols ["] and ["] makes it possible to specify that the data they enclose are confidential data, hence the possibility of specifying [http://www.abcdef.com] as constituting by nature a given data 15 confidential. On the other hand, when the information code C read by the reader 20 following the processing of FIG. 8 takes the usual layout of a QR code (registered trademark) illustrated by FIG. 13, the computer terminal 60, on receiving these read results, proceeds first to the acquisition of the information [OR], then to that of the reading results of the public data codes (address data 20 [http: //www.abcdef. cm] in the example of Figure 13). Figure 14 illustrates an exemplary identifier (mode indicator) common to the SQ information code and the current QR code. In this configuration, the mode identifier [0000] is treated as an end identification code for example. Whether it is an SQ information code or a custom QR code, the same structure can be attributed to the public data and the end identification code; for example, as shown in Figure 13, the mode identifier is assigned at the beginning of each of the data that constitutes the public data, which allows to specify the mode to which each data belongs. The following description relates to the connection processing performed by the computer terminal 60. In the connection process illustrated in FIG. 11, the different initializations are first carried out in the step S81, and then the process determines whether whether or not data was received from the reader 20 (S82). In the absence of data received from the reader 20 after the initialization has been completed, the program goes to No in step S82 and a waiting state is established durably (waiting state for receiving data from of the reader 20). If there has been reception of data from the reader 20 at the end of the initialization process, the program proceeds to Yes at step S82, and it is determined whether or not there has been reception of a stop character indicating the end of the data. With No in step S83, a storage process in step 84 is repeated until a stop character is received. Receiving a stop character (i.e., when the series of data sent by the reader 20 has been fully received) validates the Yes option in step S83. The Yes option in step S83 links to the detection of the code mark from the data provided by the reader 20 (i.e. data from the transfer processing of FIG. 9). When the code mark contained in the data received from the reader 20 is not [SQ] but [QR], the valid program No at step S86 because the data in question does not result from the decryption of a confidential data code, and this connection process is terminated. In other words, when the data sent by the reader 20 does not result from the decryption of an SQ information code containing confidential data, but from data for which a custom two-dimensional QR code has been decrypted, no processing of connection to a website does not take place even if this data contains a URL indicating the address (Internet address). On the other hand, the data received from the reader 20 which contains the code mark [SQ] is held to result from the decryption of a confidential data code. In this case, step S86 is set to Yes and it is determined (step S87) whether the characters ["] ["] confidential data identifiers have been detected in the received data. If these confidential data identifiers could be, step S87 goes to Yes and there is extraction (step S88) of the address information (URL) of the website on the Internet that is specified by the data in this field. If it has not been possible to detect confidential data identifiers, step S87 is set to No and the processing of figure 11 is terminated. Then, there is connection to the website destined for Internet specified by the address information retrieved in step S88, the results of which are displayed on a particular display screen (step S89). For example, where the address inserted between the confidential data identifiers ["] and ["] is a website offered by a specific service provider (company, shop, public body, individual, other agents, for example), there is acquired from this website an image proposed by the latter, which is displayed on the display unit of the computer terminal 60. Thus, no connection to the site takes place in the absence of information address obtained from a confidential data code in the processing of Figure 11 (address associated with confidential data identifiers). When a confidential data code has been decrypted by the control circuit 40 corresponding to the second decoding unit of the aforementioned information code reader 20, a matching process is performed by this control circuit 40 acting as processing unit, which presents both the decrypted results of the confidential data code in question and the predefined identification information (mark [SQ], marks ["], ["])). In this way, the presentation of the results of decryption of confidential data codes mapped to the identification information makes it possible for the external device constituted by the computer terminal 60 to decide more easily and more precisely whether the data presented are not valid confidential data.

S'il y a eu déchiffrement d'un code de données confidentielles, le circuit de commande 40 correspondant à l'unité de traitement présente des données combinées dont la structure résulte du placement de l'information d'identification amont (marque [«]) comme information d'identification placée devant la chaîne des données déchiffrées obtenues par déchiffrement de ce code de données confidentielles, et du placement de l'information d'identification aval (marque [»]) comme information d'identification placée derrière la chaîne de données de ces données déchiffrées (données comprenant la structure de données «http://abcdef.cm» par exemple). Une telle configuration permet de savoir avec davantage de précision si les données présentées sont ou non des données confidentielles valides, tout en facilitant la connaissance plus détaillée du domaine occupé dans la chaîne de données par ces données confidentielles valides présentes au sein des données ainsi présentées.If there has been decryption of a confidential data code, the control circuit 40 corresponding to the processing unit has combined data whose structure results from the placement of the upstream identification information (mark ["] ) as identification information placed in front of the chain of decrypted data obtained by decryption of that confidential data code, and the placement of the downstream identification information (mark ["]) as identification information placed behind the chain of data of these decrypted data (data including data structure "http://abcdef.cm" for example). Such a configuration makes it possible to know more precisely whether the data presented is valid confidential data or not, while facilitating the more detailed knowledge of the domain occupied in the data string by these valid confidential data present within the data thus presented.

S'il n'y a pas eu déchiffrement d'un code de données confidentielles et qu'un code de données publiques a été déchiffré, le circuit de commande 40 correspondant à l'unité de traitement présente les résultats de déchiffrement de ce code de données publiques en leur mettant en correspondance non plus la marque 5 [SQ] comme information d'identification, mais la marque [QR] comme autre information (c'est-à-dire les résultats déchiffrés du contenu placé en amont du code d'identification de fin dans la chaîne de codes). Une telle configuration permet, s'il n'a pas été mis en correspondance de marque [SQ] dans les données présentées ou si la marque [OR] l'a été, de spécifier que ces données présentées ne 10 contiennent pas de données confidentielles valides. Par ailleurs, il peut être fait en sorte pour les traitements des figures 8 et 9 qu'en cas de déchiffrement d'un code de données confidentielles, le circuit de commande 40 agissant comme unité de traitement mette les données déchiffrées qui résultent 15 d'un tel déchiffrement de code de données confidentielles en correspondance avec les informations d'identification (marque [SQ], marques [«], [»]) et les mémorise dans la mémoire 35 (unité de mémoire) ou dans un dispositif de mémoire externe connecté au lecteur 20. En d'autres termes, il peut être fait en sorte dans l'exemple précité que soient mémorisées dans la mémoire 35 des données semblables à 20 celles envoyées à l'étape S24 en cas de déchiffrement de codes de données confidentielles. Il est dès lors plus facile de distinguer rapidement et avec précision si les données déchiffrées d'un code de données confidentielles et mémorisées en les mettant en correspondance avec les informations d'identification sont ou non des données confidentielles valides. 25 Par ailleurs, il peut être fait en sorte pour les traitements des figures 8 et 9, lorsqu'il n'a pas été déchiffré de code de données confidentielles, mais qu'un code de données publiques l'a été, que le circuit de commande 40, c'est-à-dire l'unité de traitement, mette le résultat du déchiffrement de ce code de données publiques en 30 correspondance non pas avec la marque [SQ] comme information d'identification, mais avec la marque [QR] comme autre information (c'est-à-dire le résultat du déchiffrement du contenu placé en amont du code d'identification de fin dans la chaîne de codes) et le mémorise dans la mémoire 35 (unité de mémoire) ou dans un dispositif de mémoire externe connecté au lecteur 20. En procédant de la sorte, il est 35 possible de spécifier que des données confidentielles valides ne sont pas contenues dans les données mémorisées si elles n'ont pas été mises en correspondance avec la marque [SQ] ou si elles l'ont été avec la marque [QR]. L'exemple précité a illustré la présentation des résultats de déchiffrement de codes de données confidentielles ou leur mémorisation pour le traitement de mise en correspondance en cas de déchiffrement de tels codes de données confidentielles, mais il peut très bien s'agir d'effectuer un traitement adapté au résultat de déchiffrement des codes de données confidentielles. Un tel [traitement adapté au résultat de déchiffrement de codes de données confidentielles] peut notamment consister à exécuter une commande contenue dans le code de données confidentielles déchiffré. Par exemple, quand l'information d'adresse précitée et une commande indiquant d'[envoyer au terminal informatique 60] ont été enregistrées comme contenu de code de données confidentielles, un traitement tel que celui de la figure 10 est exécuté en réponse à cette commande pour qu'il y ait envoi au terminal informatique 60 de l'information d'adresse mise en correspondance avec l'information d'identification. De plus, lorsque le contenu enregistré dans le code de données confidentielles correspond à une information prédéfinie et à une commande de [stockage en mémoire 35], cette commande va stocker dans la mémoire 35 cette information prédéfinie mise en correspondance avec l'information d'identification.If there has been no decryption of a confidential data code and a public data code has been decrypted, the control circuit 40 corresponding to the processing unit presents the decryption results of this code of data. public data by no longer matching the mark 5 [SQ] as identification information, but the mark [QR] as other information (i.e., the decrypted results of the content placed upstream of the code of end identification in the code string). Such a configuration makes it possible, if it has not been matched [SQ] in the data presented or if the mark [OR] has been, to specify that the data presented does not contain confidential data. valid. Moreover, it can be made so for the processing of FIGS. 8 and 9 that in the case of decryption of a confidential data code, the control circuit 40 acting as a processing unit puts the decrypted data which results from such a decryption of confidential data code in correspondence with the identification information (mark [SQ], marks ["], ["]) and stores them in the memory 35 (memory unit) or in an external memory device In other words, it can be made in the above example that data similar to those sent in step S24 are stored in the memory 35 in case of decryption of confidential data codes. . It is therefore easier to quickly and accurately distinguish whether the decrypted data of a confidential data code and stored by matching them with the credentials is or is not valid confidential data. Moreover, it can be done so for the processing of FIGS. 8 and 9, when it has not been deciphered of confidential data code, but a public data code has been, that the circuit 40, that is to say the processing unit, puts the result of the decryption of this public data code in correspondence not with the mark [SQ] as identification information, but with the mark [ QR] as other information (i.e., the result of decrypting the content placed upstream of the end identification code in the code string) and stores it in the memory 35 (memory unit) or in a An external memory device connected to the reader 20. In doing so, it is possible to specify that valid confidential data is not contained in the stored data if it has not been mapped to the [SQ] mark. or if they have been with the mark [Q R]. The above example illustrated the presentation of the results of decryption of confidential data codes or their storage for the matching process in the case of decryption of such confidential data codes, but it may very well be a matter of processing adapted to the decryption result of the confidential data codes. Such a [processing adapted to the result of decryption of confidential data codes] may notably consist in executing a command contained in the decrypted confidential data code. For example, when the aforementioned address information and a command indicating to [send to the computer terminal 60] have been recorded as confidential data code content, a processing such as that of FIG. 10 is executed in response to this command for sending to the computer terminal 60 address information matched with the identification information. In addition, when the content stored in the confidential data code corresponds to a predefined information and to a command of [storage in memory 35], this command will store in the memory 35 this predefined information matched with the information of identification.

Une telle disposition permet de spécifier a posteriori que l'information mémorisée dans la mémoire 35 est une donnée confidentielle valide. Dans cette configuration équipée d'un terminal informatique 60 (portion de connexion) qui se connecte à chacun des sites d'un réseau donné, le générateur de codes d'information 1 génère des codes de données confidentielles contenant une information d'adresse qui spécifie une adresse au sein du réseau. D'autre part, l'unité de traitement du lecteur 20, s'il y a eu déchiffrement d'un code de données confidentielles par la deuxième unité de décodage, délivre au terminal informatique 60 au moins l'information d'adresse mise en correspondance avec l'information d'identification, lequel terminal informatique 60 (portion de connexion) est conçu pour se connecter au site spécifié par l'information d'adresse à la condition qu'il y ait présentation de l'information d'adresse mise en correspondance avec l'information d'identification.Such an arrangement makes it possible to specify a posteriori that the information stored in the memory 35 is valid confidential data. In this configuration equipped with a computer terminal 60 (connecting portion) which connects to each of the sites of a given network, the information code generator 1 generates confidential data codes containing an address information which specifies an address within the network. On the other hand, the processing unit of the reader 20, if there has been decryption of a confidential data code by the second decoding unit, delivers to the computer terminal 60 at least the address information set. correspondence with identification information, which computer terminal 60 (connection portion) is adapted to connect to the site specified by the address information provided that there is presentation of the addressed address information in correspondence with the identification information.

Dans cette configuration, le terminal informatique 60 (portion de connexion) accède au site spécifié par cette information d'adresse, pour autant que l'information d'adresse ait été mise en correspondance avec l'information d'identification dans les données issues de l'unité de traitement. À l'inverse, quand les données présentées ne sont pas des données confidentielles valides, l'accès au site spécifié par ces données illicites peut être restreint. En adoptant cette technique, l'accès du terminal informatique 60 (portion de connexion) à un autre site ne se fera pas tant que l'information d'identification n'aura pas été mise en correspondance même dans le cas d'un acte frauduleux de nature à orienter l'utilisateur vers cet autre site par l'apposition d'un autre code bidimensionnel dans lequel est enregistré l'adresse de cet autre site sur le code d'information où ont été enregistrées des données confidentielles par exemple. Il est donc possible de faire échec plus efficacement à ce genre d'accès par dérivation frauduleuse. De plus, le générateur de codes d'information 1 génère un code de données confidentielles par chiffrement et codage de données à tenir secrètes sur la base de clés de chiffrement prédéfinies. Toutefois, le lecteur de code d'information, pourvu d'une mémoire 35 où sont stockées les clés de déchiffrement (unité de mémorisation de clés de chiffrement), est conçu pour que le circuit de commande 40 faisant office de deuxième unité de décodage tente, quand la présence d'un code de données confidentielles a été validée, de le déchiffrer à l'aide de la clé de déchiffrement mémorisée dans la mémoire 35 (unité de mémorisation de clés de déchiffrement). En cas de déchiffrement réussi avec cette clé de déchiffrement, il exécute le traitement de mise en correspondance, puis présente ou mémorise l'information d'identification ; en revanche, il délivre une alarme de nature prédéfinie (traitement de l'étape S72) en cas d'échec de déchiffrement avec la clé de déchiffrement.In this configuration, the computer terminal 60 (connection portion) accesses the site specified by this address information, provided that the address information has been mapped to the identification information in the data from the processing unit. Conversely, when the data presented is not valid confidential data, access to the site specified by this illegal data may be restricted. By adopting this technique, the access of the computer terminal 60 (connection portion) to another site will not be done until the identification information has been matched even in the case of a fraudulent act to orient the user to this other site by affixing another two-dimensional code in which is recorded the address of this other site on the information code where were stored confidential data for example. It is therefore possible to defeat more effectively such access by fraudulent diversion. In addition, the information code generator 1 generates a confidential data code by encryption and encryption of data to be kept secret based on predefined encryption keys. However, the information code reader, provided with a memory 35 where the decryption keys (encryption key storage unit) are stored, is designed so that the control circuit 40 acting as a second decoding unit tries to when the presence of a confidential data code has been validated, to decrypt it using the decryption key stored in the memory 35 (decryption key storage unit). In the event of successful decryption with this decryption key, it performs the mapping processing, then presents or stores the identification information; on the other hand, it delivers an alarm of a predefined nature (processing of the step S72) in the event of failure of decryption with the decryption key.

Dans ce mode de fonctionnement où une alarme est donnée en cas d'échec du déchiffrement, notamment lorsque la clé de déchiffrement mémorisée dans le lecteur 20 n'est pas une clé valide par exemple, l'utilisateur, fort de cette alerte, saura que le traitement de mise en correspondance ne s'est pas déroulé normalement et pourra facilement en saisir la cause. [Autres modes de réalisation] La présente invention n'est pas circonscrite au seul mode de réalisation qui vient d'en être décrit en référence aux figures ci-dessus, puisque les modes de réalisation suivants par exemple entrent aussi dans le cadre technique de ses revendications. Dans l'architecture de la figure 1 notamment, le générateur de codes d'information 1 et le lecteur de code d'information 20 formaient par exemple des dispositifs distincts ; or, ce générateur de codes d'information 1 peut aussi faire office de lecteur de code d'information 20. Le terminal informatique 60 du premier mode de réalisation formait une portion de connexion distincte du lecteur 20, mais il n'est pas exclu d'opter pour une architecture dans laquelle une partie de ce lecteur 20 fait office de portion de connexion (circuit de commande 40 et interface de communication 48). En d'autres termes, il peut s'agir d'une configuration dans laquelle le programme exécutant les traitements de la figure 11 est mémorisé dans le lecteur 20 et où le circuit de commande 40 exécute ce programme. En ce cas, il suffit que les opérations dites de [transfert] de la figure 10 soient remplacées par le concept de passation au programme en question. De son côté, la partie dite de [réception] de la figure 11 peut l'être par le concept d'extraction par le lecteur 20. Le circuit de commande 40 qui constitue en ce cas l'unité de traitement du lecteur 20 mémorise dans la mémoire 35, si un code de données confidentielles a été déchiffré, au moins l'information d'adresse mise en correspondance avec l'information d'identification. Si cette information d'adresse mise en correspondance avec l'information d'identification est mémorisée dans la mémoire 35 du lecteur 20, le programme exécutant le traitement de la figure 11 se connectera à son lancement au site spécifié par cette information d'adresse.In this operating mode where an alarm is given in the event of failure of the decryption, in particular when the decryption key stored in the reader 20 is not a valid key for example, the user, armed with this alert, will know that the matching process did not proceed normally and could easily grasp the cause. [Other Embodiments] The present invention is not limited to the single embodiment which has just been described with reference to the figures above, since the following embodiments, for example, also fall within the technical scope of its claims. In the architecture of FIG. 1 in particular, the information code generator 1 and the information code reader 20 formed, for example, separate devices; however, this information code generator 1 can also act as an information code reader 20. The computer terminal 60 of the first embodiment formed a separate connection portion of the reader 20, but it is not excluded that opt for an architecture in which a portion of this reader 20 serves as a connection portion (control circuit 40 and communication interface 48). In other words, it may be a configuration in which the program executing the processing of FIG. 11 is stored in the reader 20 and where the control circuit 40 executes this program. In this case, it is sufficient that the so-called transfer operations of Figure 10 are replaced by the concept of transfer to the program in question. For its part, the so-called "reception" part of FIG. 11 can be by the concept of extraction by the reader 20. The control circuit 40 which constitutes in this case the processing unit of the reader 20 stores in the memory 35, if a confidential data code has been decrypted, at least the address information matched with the identification information. If this address information mapped to the identification information is stored in the memory of the reader 20, the program executing the processing of FIG. 11 will connect to its launch at the site specified by this address information.

L'exemple présenté a porté sur un générateur de codes d'information dont les codes d'information SQ sont imprimés ; or, ces derniers peuvent très bien ne pas l'être. À titre d'exemple, le générateur de codes d'information 1 peut générer des données d'image à partir desquelles s'affiche l'image du code d'information SQ, auquel cas le code d'information SQ ainsi généré peut être acquis par un support d'affichage (terminal informatique portable équipé d'un dispositif d'affichage ou terminal informatique fixe) par envoi ou migration de données via un support de stockage, et ainsi venir s'y afficher. Il peut encore s'agir d'une architecture dans laquelle le générateur de codes d'information 1 marque sur un objet le code d'information SQ généré par le traitement de la figure 4 en application d'un procédé connu de marquage direct. Le premier mode de réalisation a illustré un exemple de code d'information SQ généré par le générateur de code 1 dans lequel, lorsque le nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques est inférieur à la capacité de la zone de codes où doivent être placés les mots de code, le code d'identification de fin indiquant la fin de la chaîne de codes formée par les codes de données publiques placées dans la zone de codes est placé en toute fin de cette chaîne, mais cet exemple n'est pas limitatif.The example presented focused on an information code generator whose SQ information codes are printed; however, these may very well not be. By way of example, the information code generator 1 can generate image data from which the image of the SQ information code is displayed, in which case the SQ information code thus generated can be acquired. by a display medium (portable computer terminal equipped with a display device or fixed computer terminal) by sending or migration of data via a storage medium, and thus come to display there. It may also be an architecture in which the information code generator 1 marks on an object the SQ information code generated by the processing of FIG. 4 by application of a known direct marking method. The first embodiment illustrated an exemplary SQ information code generated by the code generator 1 in which, when the total number of public data codes encoded as code words representing data to be made public is less than the capacity. of the code area where the codewords are to be placed, the end identification code indicating the end of the code string formed by the public data codes placed in the code area is placed at the very end of this string , but this example is not limiting.

Quand, à titre d'exemple, le nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques du code d'information SQ généré par le générateur de codes d'information 1 est inférieur à la capacité de la zone de codes où doivent être placés les mots de code, l'information d'identification de fin qui permet d'identifier la position de fin de la chaîne de codes formée par les codes de données publiques peut être placée en une position prédéfinie de cette chaîne. En ce cas, les codes de données confidentielles codés comme mots de code représentant des données à tenir secrètes peuvent l'être après la position de fin spécifiée par l'information d'identification de fin.When, by way of example, the total number of public data codes coded as code words representing data to be made public from the information code SQ generated by the information code generator 1 is less than the capacity of the code area where the codewords are to be placed, the end identification information which identifies the end position of the code string formed by the public data codes can be set to a predefined position of this code code. chain. In this case, the confidential data codes encoded as code words representing data to be held secret may be after the end position specified by the end identification information.

Divers exemples d'informations d'identification de fin peuvent être envisagés et, au lieu du code d'identification de fin du premier mode de réalisation, des données de position de fin permettant de spécifier la [position de fin de la chaîne de codes formée par les codes de données publiques] obtenue par calcul de la longueur de texte d'ensemble des codes de données publiques (c'est-à-dire la donnée permettant de spécifier la longueur de texte jusqu'à la position de fin) peuvent être placées ou ajoutées au début des codes de données publiques. Cette façon de procéder permet de spécifier la longueur et la portée des données jusqu'à la position de fin du code de données publiques, ainsi que de connaître la position à laquelle se terminent les codes de données publiques (position de fin). En ce cas, quand un code de données confidentielles est incorporé au code d'information SQ, il suffit après avoir ajouté un code d'identification de confidentialité notamment à la suite de la position de fin spécifiée par l'information d'identification de fin (donnée de position de fin), d'insérer un code d'identification de confidentialité semblable à celui du premier mode de réalisation.Various examples of end identification information may be envisaged and, instead of the end identification code of the first embodiment, end position data to specify the end position of the formed code string. by the public data codes] obtained by calculating the overall text length of the public data codes (i.e. the data for specifying the text length to the end position) may be placed or added at the beginning of the public data codes. This procedure allows you to specify the length and range of the data up to the end position of the public data code, as well as to know the position at which the public data codes end (end position). In this case, when a confidential data code is incorporated in the SQ information code, it is sufficient after adding a confidentiality identification code in particular following the end position specified by the end identification information. (end position data), insert a privacy identification code similar to that of the first embodiment.

Dans le code d'information SQ, les codes de données confidentielles placés après le code d'identification de fin ou après la position de fin spécifiée par l'information d'identification de fin peuvent correspondre aux codes de données confidentielles précités proprement dits, encodés comme mots de code représentant des données à tenir secrètes, mais aussi après avoir fait l'objet d'un traitement prédéfini. Par traitement prédéfini, on entend entre autres la réorganisation des bits constitutifs des données confidentielles, leur agencement réparti ainsi que la conversion de la valeur des données spécifiées par les bits constitutifs des données confidentielles. Là encore, spécifier ce mode de traitement côté lecteur 20 permet de déchiffrer les codes de données confidentielles. [Légende des symboles] 1 ... Générateur de codes d'information 20 ... Lecteur de code d'information 35 ... Mémoire (unité de mémoire, unité de stockage de clés de déchiffrement) 40 ... Circuit de commande (première unité de décodage, unité de décision, deuxième unité de décodage, unité de traitement) 60 ... Terminal informatique (portion de connexion) 100 ... Système d'utilisation de code d'information SQ ... Code d'informationIn the SQ information code, the confidential data codes placed after the end identification code or after the end position specified by the end identification information may correspond to the aforementioned confidential data codes encoded as code words representing data to be kept secret, but also after having been the subject of a predefined treatment. By predefined processing is meant, among other things, the reorganization of the constituent bits of the confidential data, their distributed arrangement as well as the conversion of the value of the data specified by the constituent bits of the confidential data. Again, specifying this drive side processing mode 20 decrypts the confidential data codes. [Legend of symbols] 1 ... Information code generator 20 ... Code reader 35 ... Memory (memory unit, decryption key storage unit) 40 ... Control circuit (first decoding unit, decision unit, second decoding unit, processing unit) 60 ... Computer terminal (connection portion) 100 ... SQ information code utilization system ... Code of information

Claims (10)

REVENDICATIONS1. Système d'utilisation d'un code d'information (100), caractérisé en ce qu'il comprend : - un générateur de codes d'information (1) qui génère un code d'information (SQ), et - un lecteur de code d'information (20) qui lit le code d'information (SQ) généré par le générateur de codes d'information, dans lequel le générateur de codes d'information est configuré pour générer un code d'information (SQ) de telle sorte que, A) lorsqu'un nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques est inférieur à une capacité maximale de la zone de codes où ces mots de code doivent être rangés, i) un code d'identification de fin est ajouté immédiatement après une chaîne de codes composée des codes de données publiques rangés dans la zone de codes, le code d'identification de fin indiquant une fin de la chaîne de code, ou ii) une information d'identification de fin est disposée à une position donnée dans la chaîne de codes dans la zone de codes, l'information d'identification de fin qui permet d'identifier une position de fin de la chaîne de codes composée des codes de données publiques dans la zone de codes, et B) où les codes de données confidentielles codées comme mots de code représentant des données à tenir secrètes sont disposés après le code d'identification de fin ou après la position de fin identifiée par l'information d'identification de fin, et le lecteur de code d'information (20) comprend, une première unité de décodage qui tente de déchiffrer soit tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes soit tous les mots de code rangés avant la position de fin dans la chaîne de codes, la position de fin étant identifiée par l'information d'identification de fin une unité de décision qui détermine si un code de données confidentielles est ou non rangé soit après le code d'identification de fin soit après la position de fin dans la chaîne de codes, une deuxième unité de décodage qui décode les codes de données confidentielles quand l'unité de décision détermine que les codes de données 35 confidentielles sont rangés dans la chaîne de codes, etune unité de traitement qui, quand la deuxième unité de décodage a décodé les code de données confidentielles, i) effectue un premier traitement consistant au moins à délivrer les résultats de déchiffrement du code de données confidentielles, à mémoriser les résultats de déchiffrement du code de données confidentielles ou réaliser selon les résultats de déchiffrement du code de données confidentielles, et ii) effectue un deuxième traitement consistant soit à délivrer soit à mémoriser une information d'identification prédéterminée.REVENDICATIONS1. System for using an information code (100), characterized in that it comprises: - an information code generator (1) which generates an information code (SQ), and - a reader of information an information code (20) which reads the information code (SQ) generated by the information code generator, wherein the information code generator is configured to generate an information code (SQ) of such so that, A) when a total number of public data codes encoded as codewords representing data to be made public is less than a maximum capacity of the code area where these codewords are to be stored, i) a code end identification is added immediately after a code string composed of the public data codes stored in the code area, the end identification code indicating an end of the code string, or ii) identification information end is arranged at a given position in the a code string in the code area, the end identification information that identifies an end position of the code string composed of the public data codes in the code area, and B) where the codes of confidential data coded as code words representing data to be held secret are disposed after the end identification code or after the end position identified by the end identification information, and the information code reader ( 20) comprises, a first decoding unit which attempts to decipher either all the code words arranged before the end identification code in the code string or all the codewords arranged before the end position in the code string , the end position being identified by the end identification information a decision unit which determines whether or not a confidential data code is stored either after the end identification code or after the end identification code. end position in the code string, a second decoding unit which decodes the confidential data codes when the decision unit determines that the confidential data codes are stored in the code string, and a processing unit which, when the second decoding unit has decoded the confidential data code, i) performs a first treatment consisting at least of delivering the decryption results of the confidential data code, storing the decryption results of the confidential data code or performing according to the results decrypting the confidential data code, and ii) performs a second processing consisting of either delivering or storing a predetermined identification information. 2. Système d'utilisation d'un code d'information (100) selon la revendication 1, caractérisé en ce que l'unité de traitement est configurée pour : mémoriser dans une portion de mémoire (35) prédéterminée ou délivrer à la fois les données déchiffrées des codes de données confidentielles and l'information d'identification qui sont mis en correspondance quand la deuxième unité de décodage a décodé les codes de données confidentielles, et mémoriser dans la portion de mémoire (35) ou délivrer, sans l'information d'identification, les résultats déchiffrés de tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes ou les résultats déchiffrés de tous les mots de code rangés avant la position de fin identifiée par l'information d'identification de fin dans la chaîne de codes quand la deuxième unité de décodage n'a pas décodé les codes de données confidentielles.A system for using an information code (100) according to claim 1, characterized in that the processing unit is configured to: store in a predetermined memory portion (35) or deliver both data decrypted from the confidential data codes and identification information that are matched when the second decoding unit has decoded the confidential data codes, and store in the memory portion (35) or issue, without the information identification, the decrypted results of all the codewords arranged before the end identification code in the code string or the decrypted results of all the codewords arranged before the end position identified by the information of end identification in the code string when the second decoding unit has not decoded the confidential data codes. 3. Système d'utilisation d'un code d'information (100) selon la revendication 2, caractérisé en ce que l'unité de traitement est configurée pour mémoriser dans la portion de mémoire (35) ou délivrer des données combinées dans lesquelles une information d'identification amont est ajoutée en amont des données rangées composant les données déchiffrées et une information d'identification aval est ajoutée en aval des données rangées composant les données déchiffrées quand la deuxième unité de décodage a décodé les codes de données confidentielles, les informations d'identification amont et aval étant l'information d'identification.An information code utilization system (100) according to claim 2, characterized in that the processing unit is configured to store in the memory portion (35) or to output combined data in which a upstream identification information is added upstream of the stored data of the decrypted data and downstream identification information is added downstream of the stored data of the decrypted data when the second decoding unit has decoded the confidential data codes, the information upstream and downstream identification being the identification information. 4. Système d'utilisation d'un code d'information (100) selon l'une quelconque des revendications 1 à 3, caractérisé en ce que le système comprend une portion de connexion (60) se connectant aux différents sites d'un réseau prédéfini,le générateur de codes d'information est configuré pour générer le code de données confidentielles qui comprend une information d'adresse spécifiant une adresse au sein du réseau, l'unité de traitement est configurée pour mémoriser dans la portion de mémoire (35) ou pour délivrer au moins l'information d'adresse et l'information d'identification qui sont mises en correspondance quand la deuxième unité de décodage a décodé le code de données confidentielles ; et la portion de connexion (60) est configurée pour se connecter au site spécifié par l'information d'adresse quand l'information d'adresse et l'information d'identification 10 qui sont mises en correspondance sont délivrées ou mémorisée dans la portion de mémoire (35).4. A system for using an information code (100) according to any one of claims 1 to 3, characterized in that the system comprises a connection portion (60) connecting to the different sites of a network predefined, the information code generator is configured to generate the confidential data code which includes address information specifying an address within the network, the processing unit is configured to store in the memory portion (35) or to deliver at least the address information and the identification information that are matched when the second decoding unit has decoded the confidential data code; and the connection portion (60) is configured to connect to the site specified by the address information when the address information and the identification information that are mapped are delivered or stored in the portion. memory (35). 5. Système d'utilisation d'un code d'information (100) selon l'une quelconque des revendications 1 à 4, caractérisé en ce que 15 le générateur de codes d'information est configuré pour générer les codes de données confidentielles en encryptant les données à tenir secrètes sur la base d'une clé de chiffrement prédéterminée, et en codant les données à tenir secrètes encryptées ; le lecteur de code d'information (20) comprend une unité de stockage de clé de 20 décryptage dans laquelle est une clé de décryptage est mémorisée ; et la deuxième unité de décodage est configurée pour : tenter de décoder les données à tenir secrètes en utilisant la clé de décryptage mémorisée dans l'unité de stockage de clé de décryptage quand l'unité de décision détermine que les codes de données confidentielles sont rangés, 25 effectuer le premier traitement et le deuxième traitement quand les codes de données confidentielles ont été décryptées avec succès selon la clé de décryptage, et effectuer un traitement d'alerte prédéterminé quand les codes de données confidentielles ont été décryptées sans succès. 30An information code usage system (100) according to any one of claims 1 to 4, characterized in that the information code generator is configured to generate the confidential data codes by encrypting the data to be kept secret on the basis of a predetermined encryption key, and coding the data to be secret encrypted; the information code reader (20) comprises a decryption key storage unit in which a decryption key is stored; and the second decoding unit is configured to: attempt to decode the secret data by using the decryption key stored in the decryption key storage unit when the decision unit determines that the confidential data codes are stored , Performing the first processing and the second processing when the confidential data codes have been decrypted successfully according to the decryption key, and performing a predetermined alert processing when the confidential data codes have been decrypted without success. 30 6. Lecteur de code d'information (20) capable de lire un code d'information (SQ) dans lequel, A) lorsqu'un nombre total de codes de données publiques codées comme mots de code représentant des données à rendre publiques est inférieur à une capacité maximale de la zone de codes où ces mots de code doivent être 35 rangés, i) un code d'identification de fin est ajouté immédiatement après une chaînede codes composée des codes de données publiques rangés dans la zone de codes, le code d'identification de fin indiquant une fin de la chaîne de code, ou ii) une information d'identification de fin est disposée à une position donnée dans la chaîne de codes dans la zone de codes, l'information d'identification de fin qui 5 permet d'identifier une position de fin de la chaîne de codes composée des codes de données publiques dans la zone de codes, et B) les codes de données confidentielles codées comme mots de code représentant des données à tenir secrètes sont disposés immédiatement après le code d'identification de fin ou immédiatement après la position de fin identifiée par l'information d'identification de 10 fin, caractérisé en ce que le lecteur de code d'information (20) comprend une première unité de décodage qui tente de déchiffrer soit tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes soit tous les mots de code rangés avant la position de fin dans la chaîne de codes, la position 15 de fin étant identifiée par l'information d'identification de fin une unité de décision qui détermine si un code de données confidentielles est ou non rangé soit après le code d'identification de fin soit après la position de fin dans la chaîne de codes, une deuxième unité de décodage qui décode les codes de données 20 confidentielles quand l'unité de décision détermine que les codes de données confidentielles sont rangés dans la chaîne de codes, et une unité de traitement qui, quand la deuxième unité de décodage a décodé les code de données confidentielles, i) effectue un premier traitement consistant au moins à délivrer les résultats de déchiffrement du code de données confidentielles, à 25 mémoriser les résultats de déchiffrement du code de données confidentielles ou réaliser selon les résultats de déchiffrement du code de données confidentielles, et ii) effectue un deuxième traitement consistant soit à délivrer soit à mémoriser une information d'identification prédéterminée. 30An information code reader (20) capable of reading an information code (SQ) in which A) when a total number of public data codes encoded as codewords representing data to be made public is less than at a maximum capacity of the code area where these code words are to be stored, i) an end identification code is added immediately after a code string composed of the public data codes stored in the code area, the code identification end indicating an end of the code string, or ii) end identification information is disposed at a given position in the code string in the code area, the end identification information which 5 identifies an end position of the code string composed of the public data codes in the code area, and B) the confidential data codes encoded as codewords representing data to be kept secret are available. immediately after the end identification code or immediately after the end position identified by the end identification information, characterized in that the information code reader (20) comprises a first decoding unit which attempts to decipher either all the codewords arranged before the end identification code in the code string or all the code words stored before the end position in the code string, the end position being identified by the code code. end identification information a decision unit which determines whether or not a confidential data code is stored either after the end identification code or after the end position in the code string, a second decoding unit which decodes the confidential data codes when the decision unit determines that the confidential data codes are stored in the code string, and a processing unit which, when the second decoding unit has decoded the confidential data code, i) performs a first treatment consisting at least of delivering the decryption results of the confidential data code, storing the decryption results of the confidential data code or performing according to the decryption results of the confidential data code, and ii) performs a second processing consisting either of delivering or storing a predetermined identification information. 30 7. Lecteur de code d'information (20) selon la revendication 6, caractérisé en ce que l'unité de traitement est configurée pour : mémoriser dans une portion de mémoire (35) prédéterminée ou délivrer à la fois les données déchiffrées des codes de données confidentielles and l'information d'identification qui sont mis en correspondance quand la deuxième unité de 35 décodage a décodé les codes de données confidentielles, etmémoriser dans la portion de mémoire (35) ou délivrer, sans l'information d'identification, les résultats déchiffrés de tous les mots de code rangés avant le code d'identification de fin dans la chaîne de codes ou les résultats déchiffrés de tous les mots de code rangés avant la position de fin identifiée par l'information d'identification de fin dans la chaîne de codes quand la deuxième unité de décodage n'a pas décodé les codes de données confidentielles.An information code reader (20) according to claim 6, characterized in that the processing unit is configured to: store in a predetermined memory portion (35) or deliver both the decrypted data of the code confidential data and identification information which are matched when the second decoding unit has decoded the confidential data codes, andemore in the memory portion (35) or issue, without the identification information, the decrypted results of all the codewords arranged before the end identification code in the code string or the decrypted results of all the codewords arranged before the end position identified by the end identification information in the code string when the second decoding unit has not decoded the confidential data codes. 8. Lecteur de code d'information (20) selon la revendication 7, caractérisé en ce que l'unité de traitement est configurée pour mémoriser dans la portion de mémoire 10 (35) ou délivrer des données combinées dans lesquelles une information d'identification amont est ajoutée en amont des données rangées composant les données déchiffrées et une information d'identification aval est ajoutée en aval des données rangées composant les données déchiffrées quand la deuxième unité de décodage a décodé les codes de données confidentielles, les informations 15 d'identification amont et aval étant l'information d'identification.An information code reader (20) according to claim 7, characterized in that the processing unit is configured to store in the memory portion (35) or to provide combined data in which identification information The upstream is added upstream of the stored data constituting the decrypted data, and downstream identification information is added downstream of the stored data constituting the decrypted data when the second decoding unit has decoded the confidential data codes, the identification information. upstream and downstream being the identification information. 9. Lecteur de code d'information (20) selon l'une quelconque des revendications 6 à 8, caractérisé en ce que le système comprend une portion de connexion (60) se connectant aux différents 20 sites d'un réseau prédéfini, le générateur de codes d'information est configuré pour générer le code de données confidentielles qui comprend une information d'adresse spécifiant une adresse au sein du réseau, l'unité de traitement est configurée pour mémoriser dans la portion de mémoire 25 (35) ou pour délivrer au moins l'information d'adresse et l'information d'identification qui sont mises en correspondance quand la deuxième unité de décodage a décodé le code de données confidentielles ; et la portion de connexion (60) est configurée pour se connecter au site spécifié par l'information d'adresse quand l'information d'adresse et l'information d'identification 30 qui sont mises en correspondance sont délivrées ou mémorisée dans la portion de mémoire (35).An information code reader (20) according to any one of claims 6 to 8, characterized in that the system comprises a connection portion (60) connecting to the various sites of a predefined network, the generator information code is configured to generate the confidential data code which includes address information specifying an address within the network, the processing unit is configured to store in the memory portion (35) or to deliver at least the address information and identification information that are matched when the second decoding unit has decoded the confidential data code; and the connection portion (60) is configured to connect to the site specified by the address information when the address information and the identification information that are mapped are delivered or stored in the portion. memory (35). 10. Lecteur de code d'information (20) selon l'une quelconque des revendications 6 à 9, caractérisé en ce queles codes de données confidentielles sont des codes produits par encryptage des données à tenir secrètes, sur la base d'une clé d'encryptage prédéterminée, et par codage des données à tenir secrètes encryptées ; le lecteur de code d'information (20) comprend une unité de stockage de clé de décryptage dans laquelle est une clé de décryptage est mémorisée ; et la deuxième unité de décodage est configurée pour : tenter de décoder les données à tenir secrètes en utilisant la clé de décryptage mémorisée dans l'unité de stockage de clé de décryptage quand l'unité de décision détermine que les codes de données confidentielles sont rangés, effectuer le premier traitement et le deuxième traitement quand les codes de données confidentielles ont été décryptées avec succès selon la clé de décryptage, et effectuer un traitement d'alerte prédéterminé quand les codes de données confidentielles ont été décryptées sans succès.An information code reader (20) according to any one of claims 6 to 9, characterized in that the confidential data codes are codes produced by encrypting the data to be kept secret, on the basis of a key d predetermined encryption, and coding data to keep secret encrypted; the information code reader (20) comprises a decryption key storage unit in which a decryption key is stored; and the second decoding unit is configured to: attempt to decode the secret data by using the decryption key stored in the decryption key storage unit when the decision unit determines that the confidential data codes are stored , performing the first processing and the second processing when the confidential data codes have been decrypted successfully according to the decryption key, and performing a predetermined alert processing when the confidential data codes have been decrypted without success.
FR1456808A 2013-07-17 2014-07-16 SYSTEM FOR USING AN INFORMATION CODE AND READER READING AN INFORMATION CODE Active FR3008812B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2013148826A JP6136688B2 (en) 2013-07-17 2013-07-17 Information code utilization system and information code reader
JP2013148826 2013-07-17

Publications (2)

Publication Number Publication Date
FR3008812A1 true FR3008812A1 (en) 2015-01-23
FR3008812B1 FR3008812B1 (en) 2018-07-27

Family

ID=52275574

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1456808A Active FR3008812B1 (en) 2013-07-17 2014-07-16 SYSTEM FOR USING AN INFORMATION CODE AND READER READING AN INFORMATION CODE

Country Status (3)

Country Link
JP (1) JP6136688B2 (en)
KR (1) KR101570704B1 (en)
FR (1) FR3008812B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10512033B2 (en) * 2015-01-29 2019-12-17 Qualcomm Incorporated Timing information for discovery in unlicensed spectrum

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004147006A (en) 2002-10-23 2004-05-20 Sharp Corp Information transmitting method and portable terminal
JPWO2004090804A1 (en) * 2003-04-03 2006-07-06 株式会社ワイヤーアクション Two-dimensional barcode generation device, two-dimensional barcode decoding device, two-dimensional barcode generation method, two-dimensional barcode decoding method and program
JP4924468B2 (en) * 2007-05-29 2012-04-25 株式会社デンソーウェーブ Two-dimensional code generation method and reader
JP4924206B2 (en) * 2007-05-29 2012-04-25 株式会社デンソーウェーブ Two-dimensional code generation method and reader
JP5708309B2 (en) 2011-07-01 2015-04-30 株式会社デンソーウェーブ Information code reading system
JP5737116B2 (en) * 2011-10-03 2015-06-17 株式会社デンソーウェーブ Information provision system

Also Published As

Publication number Publication date
JP6136688B2 (en) 2017-05-31
JP2015022436A (en) 2015-02-02
KR20150009937A (en) 2015-01-27
FR3008812B1 (en) 2018-07-27
KR101570704B1 (en) 2015-11-23

Similar Documents

Publication Publication Date Title
EP2673732B1 (en) Secure transaction method from a non-secure terminal
EP0485275B1 (en) Security device with a memory and/or a microprocessor for data processing machines
EP3690686B1 (en) Authentication procedure, server and electronic identity device
FR2685510A1 (en) METHOD OF AUTHENTICATING, BY AN OUTER ENVIRONMENT, A PORTABLE OBJECT CONNECTED THROUGH THIS MEDIUM THROUGH A TRANSMISSION LINE, AND SYSTEM FOR IMPLEMENTING THE SAME.
EP3009954A1 (en) Decryption Device, Method for Decrypting and Method and System for Secure Data Transmission
CN103514579A (en) Information processing apparatus, information processing system, and information processing method
WO2002091139A2 (en) Security device for online transaction
KR101234040B1 (en) Method for generating barcodes and judging a validity of the bar-codes, bar-code generating device, and system having the same
CN106375274A (en) Message encryption
FR2944400A1 (en) METHOD OF AUTHENTICATING A SERVER FROM A USER OF A MOBILE DEVICE
FR3008812A1 (en) SYSTEM FOR USING AN INFORMATION CODE AND READER READING AN INFORMATION CODE
WO2009027806A1 (en) Terminal for reading information contained in the memory of a portable object and operation method of said terminal
JP2013080329A (en) Information provision system
FR3092186A1 (en) Secure marking element and encoding and authentication methods of said marking element
WO2019096871A1 (en) Devices and methods for sharing and displaying images
FR3083627A1 (en) METHOD FOR SECURE TRANSMISSION OF CRYPTOGRAPHIC DATA
BE1026342B1 (en) DEVICE AND METHOD FOR SECURE INDENTIFICATION OF A USER
FR3081663A1 (en) METHOD FOR REMOTELY MANAGING THE OPENING OF AN ELECTRONIC LOCK WITH A USER INTERFACE, TERMINAL, LOCK AND COMPUTER PROGRAM
WO2013087715A1 (en) Method of configuration by association of a machine terminal with a user terminal
EP1840778A1 (en) Single-use identification device
FR2985052A1 (en) ELECTRONIC DEVICE FOR STORING CONFIDENTIAL DATA
JP2013025731A (en) Optical information reader
FR2913551A1 (en) User authenticating method for use in Internet network, involves authenticating authentication server by token and vice versa for each of web pages requested by user, by executing control script e.g. java script, in computer
FR3111444A1 (en) Acquisition and secure processing method of acquired secret information
EP3900293A1 (en) Method and system for securing operations and associated user station

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLFP Fee payment

Year of fee payment: 3

PLFP Fee payment

Year of fee payment: 4

PLSC Publication of the preliminary search report

Effective date: 20180119

PLFP Fee payment

Year of fee payment: 5

PLFP Fee payment

Year of fee payment: 6

PLFP Fee payment

Year of fee payment: 7

PLFP Fee payment

Year of fee payment: 8

PLFP Fee payment

Year of fee payment: 9

PLFP Fee payment

Year of fee payment: 10