Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR ACCESSING A WEB RESOURCE
Document Type and Number:
WIPO Patent Application WO/2023/001381
Kind Code:
A1
Abstract:
The method (10) for accessing a Web resource comprises: - a step (11) of capturing at least one image of an object bearing a visible graphic code comprising two portions, - a step (12) of decoding, in a captured image of the graphic code, a first code portion implemented in accordance with a first coding protocol, using a first standardized application, this first standardized code portion representing access to a site for downloading a second application and - a step (16) of decoding, in a captured image of the graphic code, with the second application, at least one second code portion implemented in accordance with a second coding protocol, this second code portion representing, together with the first code portion, access to a Web resource.

Inventors:
JARDE PASCAL (FR)
Application Number:
PCT/EP2021/070695
Publication Date:
January 26, 2023
Filing Date:
July 23, 2021
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
MOONIFY SAS (FR)
International Classes:
H04L9/40; A63F13/213; G06K7/14; H04W12/06; H04W12/77; G06K19/06
Domestic Patent References:
WO2014059439A12014-04-17
WO2014091252A12014-06-19
Foreign References:
EP3686761A12020-07-29
US20180197053A12018-07-12
FR3106426A12021-07-23
Other References:
JENNIFER GOULA: "QR code used by BitInstant on their new prepaid debit card", 1 January 2012 (2012-01-01), XP055899414, Retrieved from the Internet [retrieved on 20220309]
Attorney, Agent or Firm:
CORNUEJOLS, Marine (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé (10, 60, 76, 125, 145) d’accès à une ressource de la toile, caractérisé en ce qu’il comporte :

- une étape (11, 61, 111, 131) de capture, par un terminal utilisateur, d’au moins une image d’un objet (80) portant un code graphique visible (20, 100) comportant deux parties (26, 28, 101, 105),

- une étape (12, 62 à 64) de décodage, dans une image captée du code graphique, d’une première partie de code réalisée selon un premier protocole de codage, par une première application, cette première partie de code représentant un accès à une page de la toile,

- une étape (16, 67 à 69) de décodage, dans une image captée du code graphique, d’au moins une deuxième partie de code réalisée selon un deuxième protocole de codage différent du premier protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile,

- une étape (70) de vérification de correspondance d’un couple d’informations comportant une information décodée dans la première partie (26) du code graphique (20) et une information décodée dans la deuxième partie (28) du code graphique avec un couple d’informations autorisé et,

- en cas de correspondance de ces informations avec des informations conservées en mémoire, une étape (72) de réception d’un jeton d’accès à la ressource.

2. Procédé selon la revendication 1, qui comporte :

- une étape de transmission d’au moins une image captée par le terminal de l’utilisateur à une page de la toile identifiée par la première partie de code et

- une étape de lecture de la deuxième partie de code par le serveur hébergeant ladite page.

3. Procédé selon l’une des revendications 1 ou 2, qui comporte une étape de transmission d’au moins une image captée par le terminal de l’utilisateur à une page de la toile identifiée par la première partie de code, l’étape de vérification de correspondance étant réalisée avec le serveur hébergeant ladite page.

4. Procédé selon l’une des revendications 1 à 3, dans lequel la deuxième partie de code comporte une somme de contrôle et le procédé comporte, de plus, une étape de vérification du code de contrôle de la deuxième partie de code.

5. Procédé selon l’une des revendications 1 à 4, dans lequel l’étape (12, 62 à 64) de décodage, dans une image captée du code graphique, de la première partie de code représente un accès à un site de téléchargement d’une deuxième application, et l’étape (16, 67 à 69) de décodage, dans une image captée du code graphique, de la deuxième partie de code est réalisé en mettant en œuvre la deuxième application.

6. Procédé selon l’une des revendications 1 à 5, dans lequel l’étape de vérification de correspondance comporte une étape (70) de transmission conjointe d’une information décodée dans la première partie (26) du code graphique (20) et d’une information décodée dans la deuxième partie (28) du code graphique.

7. Procédé (10, 60, 76) selon l’une des revendications 1 à 6, dans lequel la première partie (26) de code graphique (20) comporte des cellules rectangulaires, la couleur de chaque cellule rectangulaire représentant une information et la deuxième partie (28) de code graphique comporte des cellules (21, 23) triangulaires, la couleur de chaque cellule triangulaire représentant une information.

8. Procédé (10, 60, 76) selon l’une des revendications 1 à 7, qui comporte, de plus, une étape (65, 66) de repérage, dans une image captée du code graphique (20), d’une géométrie périphérique (24) entourant la première (26) et la deuxième (28) partie du code graphique.

9. Procédé (10, 60, 76) selon l’une des revendications 1 à 8, dans lequel la première partie (26) de code graphique (20) représente un accès à une information de disponibilité à ladite ressource.

10. Procédé (10, 60, 76) selon l’une des revendications 1 à 9, dans lequel la première partie (26) de code graphique (20) et la deuxième partie (28) de code graphique ne présentent aucune corrélation l’une avec l’autre, aucune de ces parties de codes n’étant dérivée de l’autre.

11. Procédé (10, 60, 76) selon l’une des revendications 1 à 10, dans lequel la deuxième partie (28) de code graphique (20) entoure la première partie (26) de code.

12. Procédé (10, 60, 76) selon l’une des revendications 1 à 11, dans lequel la première partie (26) de code graphique (20) est unique et représente un localisateur uniforme de ressource, ou URL (30).

13. Procédé (10, 60, 76) selon la revendication 12, qui comporte, en cas d’absence de correspondance des informations décodées avec des informations conservées en mémoire, une étape (74) de blocage provisoire de la transmission conjointe d’information et/ou de la délivrance de jeton d’accès.

14. Dispositif (40) d’accès à une ressource de la toile, caractérisé en ce qu’il comporte :

- un moyen (41, 50) de capture, par un terminal utilisateur, d’au moins une image d’un objet (80) portant un code graphique visible (20, 100) comportant deux parties (26, 28, 101, 105),

- un moyen (42, 44) de décodage, dans une image captée du code graphique, d’une première partie (26, 101) de code réalisée selon un premier protocole de codage, par une première application, cette première partie de code représentant un accès à une page de la toile,

- un moyen (42, 44) de décodage, dans une image captée du code graphique, d’au moins une deuxième partie (28, 105) de code réalisée selon un deuxième protocole de codage différent du premier protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile,

- un moyen (42, 44) de vérification de correspondance d’un couple d’informations comportant une information décodée dans la première partie (26) du code graphique (20) et une information décodée dans la deuxième partie (28) du code graphique avec un couple d’informations autorisé et,

- un moyen de transmission au terminal, en cas de correspondance de ces informations avec des informations conservées en mémoire, d’un jeton d’accès à la ressource.

15. Code graphique (20) pour réaliser les étapes du procédé selon l’une des revendications 1 à 13, qui comporte :

- une première partie (26) de code réalisée selon un premier protocole de codage, cette première partie de code représentant un accès à une page de la toile et

- une deuxième partie (28) de code réalisée selon un deuxième protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile.

16. Code graphique (20) selon la revendication 15, dans lequel la deuxième partie (28) de code entoure la première partie (26) de code.

17. Code graphique (20) selon l’une des revendications 15 ou 16, dont au moins une partie est masquée par une encre opaque amovible au doigt.

18. Document d’identité comportant un code graphique selon l’une des revendications 15 à 17.

19. Carte bancaire comportant un code graphique selon l’une des revendications 15 à 17.

20. Document d’accès à un site comportant un code graphique selon l’une des revendications 15 à 17.

21. Document de signature électronique comportant un code graphique selon l’une des revendications 15 à 17.

Description:
TITRE DE L’INVENTION : PROCÉDÉ ET DISPOSITIF D’ACCÈS À UNE RESSOURCE DE LA TOILE

DOMAINE TECHNIQUE DE L’INVENTION

La présente invention vise un procédé et un dispositif d’accès à une ressource de la toile.

Elle s’applique, notamment, au domaine des jeux hybrides possédant une composante physique et une composante virtuelle.

ÉTAT DE LA TECHNIQUE

Une des méthodes généralement employée pour simplifier la transmission d’une information à un tiers est l’usage d’un code graphique que ce tiers peut scanner afin d’obtenir l’information. Les systèmes normalisés les plus utilisés à ces fins sont les codes à barres, utilisant par exemple l’un des formats UPC-A (acronyme de Universal Product Code pour code universel des produits), UPC-E, EAN-8 (acronyme de European Article Numbering pour numération d’articles universelle), EAN-13, Code 39, Code 93, Code 128, ITF (acronyme de Interleaved 2 of 5 pour entrelacé deux sur cinq), Codabar, MSI (acronyme de Micro-Star International, Co), RSS-14 (acronyme de Really Simple Syndication pour syndication très simple), QR (acronyme de Quick Response pour réponse rapide) Code, tous ces formats correspondant à des marques déposées.

La normalisation de ces codes leur apporte l’avantage conséquent d’être lisibles, reconnus et décodables nativement par un grand nombre d’appareils munis d’un capteur d’image, notamment les intelliphones (en anglais « smartphones »), les tablettes et les ordinateurs.

Les codes à barres sont idéaux pour coder graphiquement une information complexe, difficile à retenir par le tiers à qui l’information est transmise (par exemple, une longue URL, acronyme anglais de « Uniform Resource Locator », pour localisateur uniforme de ressource, couramment appelée « adresse web »). Cette adresse sert à désigner une ressource présente sur la toile par une suite de caractère ASCII (acronyme de American Standard Code for Information Interchange pour code américain normalisé pour l'échange d'information). Les ressources peuvent être variées, par exemple page de la toile, vidéo, son, image, animation, adresse email ...

Toutefois, les codes à barres sont également utilisés pour identifier l’instance d’une entité qui se veut unique (comme le droit d’entrée dans un lieu privé, une place assise numérotée dans un concert, un coupon de réduction nominatif, ...).

Par exemple, après avoir acheté en ligne une place de concert, un consommateur se voit attribuer un ticket à imprimer exposant un code à barres. Ce code à barres est, par la suite, scanné par le préposé à l’entrée du lieu où se déroule l'événement.

Ce code est généralement constitué de nombreux caractères rendant difficile, mais pas impossible, sa détermination par une personne mal intentionnée. Dans certains cas, un média accessible publiquement (site internet, application logicielle de scan, ...) donne aux utilisateurs la possibilité de valider la légitimité d’un code. Un utilisateur mal intentionné pourrait utiliser ce média pour générer des codes par détermination et par attaque de force brute. Il est possible de limiter la portée de l’attaque en scannant l’adresse IP de l’utilisateur effectuant la requête, mais si cet utilisateur utilise un réseau de botnet, il peut alors se faire passer pour de multiples utilisateurs légitimes. « Botnet » est un terme générique qui désigne un groupe d'appareils programmables infectés et contrôlés par un pirate à distance. Les botnets sont généralement créés par un pirate informatique ou par un petit groupe de pirates qui utilise un logiciel malveillant afin d'infecter un grand nombre d’appareils. L’accès aux librairies permettant de générer ces codes à barres est publique. Connaissant le code sous-jacent, une personne mal intentionnée est en mesure d’imprimer le code à barres correspondant à un achat. Il établit ainsi un faux, permettant à son utilisateur de revendiquer le bien ou le service acquis au détriment du véritable acheteur. EXPOSÉ DE L’INVENTION

La présente invention vise à remédier à tout ou partie de ces inconvénients.

À cet effet, selon un premier aspect, la présente invention vise un procédé d’accès à une ressource de la toile, qui comporte :

- une étape de capture, par un terminal utilisateur, d’au moins une image d’un objet portant un code graphique visible comportant deux parties,

- une étape de décodage, dans une image captée du code graphique, d’une première partie de code réalisée selon un premier protocole de codage, par une première application, cette première partie de code représentant un accès à une page de la toile,

- une étape de décodage, dans une image captée du code graphique, d’au moins une deuxième partie de code réalisée selon un deuxième protocole de codage différent du premier protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile,

- une étape de vérification de correspondance d’un couple d’informations comportant une information décodée dans la première partie du code graphique et une information décodée dans la deuxième partie du code graphique avec un couple d’informations autorisé et,

- en cas de correspondance de ces informations avec des informations conservées en mémoire, une étape de réception d’un jeton d’accès à la ressource.

Grâce à ces dispositions, le code graphique permet l’accès à une ressource de la toile avec un code normalisé public et un code propriétaire.

Grâce à ces dispositions, tout appareil communicant muni d’un capteur d’image et d’un lecteur de code visible normalisé, par exemple un QR code (marque déposée), peut accéder à une ressource de la toile pour un jeu virtuel. On rappelle qu’un « QR code », forme anglaise de « code QR » (QR étant l’acronyme de « Quick Response » pour réponse rapide), désigne un code à barres en deux dimensions, qui se compose de modules carrés noirs apparaissant dans un carré blanc. Le QR code permet un décodage rapide.

La présente invention permet à l’éditeur du code graphique à scanner de donner à un tiers, offreur d’un bien ou service, la possibilité de communiquer à un ayant-droit le certificat de propriété d’un bien ou service à réclamer. Une fois émis et affiché (ou imprimé), ce code graphique garantit à l’émetteur que ce bien ou service ne sera réclamé qu’une fois et uniquement par l’ayant droit légitime.

Le procédé d’émission et de lecture :

- est simple et offre une expérience utilisateur fluide,

- garantit l’unicité de l’instance concerné et

- fournit un procédé de décodage fiable limitant la fraude.

Dans des modes de réalisation particulier, le procédé comporte :

- une étape de transmission d’au moins une image captée par le terminal de l’utilisateur à une page de la toile identifiée par la première partie de code et

- une étape de lecture de la deuxième partie de code par le serveur hébergeant ladite page. Dans des modes de réalisation particulier, le procédé comporte une étape de transmission d’au moins une image captée par le terminal de l’utilisateur à une page de la toile identifiée par la première partie de code, l’étape de vérification de correspondance étant réalisée avec le serveur hébergeant ladite page.

Dans des modes de réalisation particulier, la deuxième partie de code comporte une somme de contrôle et le procédé comporte, de plus, une étape de vérification du code de contrôle de la deuxième partie de code.

Dans des modes de réalisation particulier, l’étape de décodage, dans une image captée du code graphique, de la première partie de code représente un accès à un site de téléchargement d’une deuxième application, et l’étape de décodage, dans une image captée du code graphique, de la deuxième partie de code est réalisé en mettant en œuvre la deuxième application.

Dans des modes de réalisation particulier, l’étape de vérification de correspondance comporte une étape de transmission conjointe d’une information décodée dans la première partie du code graphique et d’une information décodée dans la deuxième partie du code graphique.

Dans des modes de réalisation, la première partie de code graphique comporte des cellules rectangulaires, la couleur de chaque cellule rectangulaire représentant une information et la deuxième partie de code graphique comporte des cellules triangulaires, la couleur de chaque cellule triangulaire représentant une information. Grâce à ces dispositions, les deux parties de code sont aisément discriminées au cours des étapes de lecture et de décodage.

Dans des modes de réalisation, le procédé objet de l’invention comporte, de plus, une étape de repérage, dans une image captée du code graphique, d’une géométrie périphérique entourant la première et la deuxième partie du code graphique.

Grâce à ces dispositions, le code combiné comportant les deux parties du code graphique est facilement repéré et le recadrage, en angles, en déformation de perspective et en position, est plus rapide et plus fiable, ce qui évite des défauts de lecture du code.

Dans des modes de réalisation, la première partie de code graphique représente un accès à une information de disponibilité à ladite ressource.

Grâce à ces dispositions, un utilisateur muni d’un intelliphone (en anglais « smartphone ») peut, sans avoir à télécharger la deuxième application, vérifier que le code graphique correspond bien à un produit ou service disponible. Les transactions, telles qu’échange ou vente, portant sur le code graphique sont donc sécurisées par la vérification aisée de disponibilité réelle du produit ou service correspondant à ce code graphique.

Dans des modes de réalisation, la première partie de code graphique et la deuxième partie de code graphique ne présentent aucune corrélation l’une avec l’autre, aucune de ces parties de codes graphique n’étant dérivée de l’autre.

Grâce à ces dispositions, une attaque en force brute qui permettrait de découvrir l’information représentée par la première partie de code graphique, ne donne aucune indication sur l’information représentée sur la deuxième partie de code graphique.

Dans des modes de réalisation, la deuxième partie de code graphique entoure la première partie de code graphique.

Cette configuration « concentrique » permet de gérer sans ambigüité les codes combinés : la deuxième partie de code graphique avec sa périphérie servant de contenant à la première partie de code graphique, normalisé, il n’est de fait pas possible de le confondre avec un autre code qui serait à proximité.

Dans des modes de réalisation, la première partie de code graphique est unique et représente un localisateur uniforme de ressource (URL).

Grâce à ces dispositions, la première partie de code graphique identifie une seule instance d’un bien ou d’un service mis à disposition à travers le code graphique.

Dans des modes de réalisation, le procédé objet de l’invention comporte une étape de transmission conjointe d’une information décodée dans la première partie du code graphique et d’une information décodée dans la deuxième partie du code graphique et, en cas de correspondance de ces informations avec des informations conservées en mémoire, une étape de réception d’un jeton d’accès à la ressource. Grâce à ces dispositions, un jeton sécurisé présentant la même structure peut être délivré pour un ensemble d’offreurs de produits ou services.

Dans des modes de réalisation, le procédé objet de l’invention comporte, en cas d’absence de correspondance des informations décodées avec des informations conservées en mémoire, une étape de blocage provisoire de la transmission conjointe d’information et/ou de la délivrance de jeton d’accès.

Grâce à ces dispositions, une attaque en force brute est impossible.

Selon un deuxième aspect, la présente invention vise un dispositif d’accès à une ressource de la toile, qui comporte :

- un moyen de capture, par un terminal utilisateur, d’au moins une image d’un objet portant un code graphique visible comportant deux parties,

- un moyen de décodage, dans une image captée du code graphique, d’une première partie de code réalisée selon un premier protocole de codage, par une première application, cette première partie de code représentant un accès à une page de la toile,

- un moyen de décodage, dans une image captée du code graphique, d’au moins une deuxième partie de code réalisée selon un deuxième protocole de codage différent du premier protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile,

- un moyen de vérification de correspondance d’un couple d’informations comportant une information décodée dans la première partie du code graphique et une information décodée dans la deuxième partie du code graphique avec un couple d’informations autorisé et,

- un moyen de transmission au terminal, en cas de correspondance de ces informations avec des informations conservées en mémoire, d’un jeton d’accès à la ressource.

Selon un troisième aspect, la présente invention vise un code graphique pour réaliser les étapes du procédé objet de l’invention, qui comporte :

- une première partie de code réalisée selon un premier protocole de codage, cette première partie de code représentant un accès à une page de la toile et

- une deuxième partie de code réalisée selon un deuxième protocole de codage, cette deuxième partie de code représentant, en combinaison avec la première partie de code, un accès à une ressource de la toile.

Dans des modes de réalisation, la deuxième partie de code entoure la première partie de code. Dans des modes de réalisation, au moins une partie est masquée par une encre opaque amovible au doigt.

Selon un quatrième aspect, la présente invention vise un document d’identité comportant un code graphique objet de l’invention.

Selon un cinquième aspect, la présente invention vise une carte bancaire comportant un code graphique objet de l’invention. Selon un sixième aspect, la présente invention vise un document d’accès à un site comportant un code graphique objet de l’invention.

Selon un septième aspect, la présente invention vise un document de signature électronique comportant un code graphique objet de l’invention.

Les avantages, buts et caractéristiques particulières de ce code graphique, de ce dispositif, de ce document d’identité, de cette carte bancaire, de ce document d’accès et de ce document de signature électronique étant similaires à ceux du procédé objet du premier aspect de l’invention, ils ne sont pas rappelés ici.

BRÈVE DESCRIPTION DES FIGURES

D’autres avantages, buts et caractéristiques particulières de l’invention ressortiront de la description non limitative qui suit d’au moins un mode de réalisation particulier du procédé et du dispositif objets de la présente invention, en regard des dessins annexés, dans lesquels : [Fig.1] représente, schématiquement, sous forme d’un logigramme, des étapes d’un premier mode de réalisation particulier du procédé objet de l’invention,

[Fig.2] représente un premier exemple de code combiné,

[Fig.3] représente un exemple de message représenté par un code normalisé,

[Fig.4] représente un dispositif objet de l’invention,

[Fig.5] représente, sous forme d’un logigramme, des étapes d’un deuxième mode de réalisation particulier du procédé objet de l’invention,

[Fig.6] représente, sous forme d’un logigramme, des étapes d’une variante du deuxième mode de réalisation particulier du procédé objet de l’invention,

[Fig.7] représente une carte portant un code combiné et d’autres informations,

[Fig.8] représente deux cartes portant des codes combinés et d’autres informations,

[Fig.9] représente un deuxième exemple de code combiné,

[Fig.10] représente, sous forme d’un logigramme, des étapes d’un troisième mode de réalisation du procédé objet de l’invention et

[Fig.11] représente, sous forme d’un logigramme, des étapes d’un quatrième mode de réalisation du procédé objet de l’invention.

DESCRIPTION DES MODES DE RÉALISATION

La présente description est donnée à titre non limitatif, chaque caractéristique d’un mode de réalisation pouvant être combinée à toute autre caractéristique de tout autre mode de réalisation de manière avantageuse.

On note dès à présent que les figures ne sont pas à l’échelle.

Bien que la présente invention concerne l’accès à tout type de ressource, de bien ou de service, on se limite, dans la description qui va suivre, à des applications d’accès à des ressources, biens ou services, relatives à un jeu virtuel. On observe, en figure 1, un premier mode de réalisation du procédé 10 d’accès à une ressource de la toile objet de l’invention. Ce procédé 10 comporte :

- une étape 11 de capture, par un terminal, d’au moins une image d’un objet portant un code graphique visible comportant deux parties,

- une étape 12 de décodage, dans une image captée, d’une première partie de code réalisée selon un premier protocole de codage, par une première application normalisée, cette première partie de code normalisée représentant un accès à un serveur de téléchargement d’une deuxième application,

- au cours d’une étape 14, le terminal accède à une page d’information conservée par le serveur 46, qui décrit la disponibilité du bien ou service concerné par le code normalisé et propose l’installation de la deuxième application permettant de valider l’acquisition d’un bien ou d’un service,

- si, au cours d’une étape 13, on détermine que la deuxième application n’est pas déjà accessible par le terminal ou si l’utilisateur le demande, au cours d’une étape 15, le terminal effectue un téléchargement de la deuxième application, à partir de la page d’information.

La description de disponibilité du bien ou service facilite le transfert ou l’échange de codes combinés entre utilisateurs, notamment lorsque l’un des codes, typiquement le code augmenté, est masqué, par exemple par une encre opaque amovible au doigt. Par exemple, si une personne veut échanger ou vendre une de ses cartes, l’acheteur peut vérifier la validité de la carte par le statut de disponibilité du bien ou service, en scannant directement cette carte avec son terminal communicant muni du lecteur de code normalisé. Lorsque le terminal accède à cette page, le serveur hébergeant cette page, effectue un appel à une base de données identifiant les biens et services afin de vérifier la disponibilité du bien ou du service associé au code normalisé 26,

- une étape 16 de décodage dans une image captée, d’un code combiné, comme exposé en regard des figures 5 et 6, avec la deuxième application, ce code combiné comportant une deuxième partie de code réalisée selon un deuxième protocole de codage, cette deuxième partie de code représentant, conjointement avec la première partie de code, un accès à une ressource de la toile pour au moins un jeu virtuel et

- une étape 17 d’accès à la ressource de la toile.

La présente invention met ainsi en œuvre un double code graphique à scanner. Ce système de codage graphique permet de décoder et vérifier un identifiant ou signature numérique représentant un bien ou un service dans le but d’en disposer.

Le double code graphique 20, ou code combiné, est constitué de trois niveaux concentriques d’informations, comme illustré en figure 2 :

- la périphérie 24 est une forme géométrique reconnaissable grâce au contraste important de ses bords par rapport au support 22 du code 20. - un code graphique 26 normalisé, par exemple placé au centre du code 20 et

- un code graphique augmenté 28 entourant le code graphique normalisé 26 et encapsulé dans la forme périphérique 24.

Les codes, normalisé 26 et augmenté 28, entourés par la forme périphérique 24 n’ont aucune corrélation l’un avec l’autre, aucun de ces codes 26 et 28 n’étant dérivé de l’autre.

La génération et l’association des codes 26 et 28 sont purement aléatoires ou quasi- aléatoires et sont effectués au moment de l’émission du double code 20.

L’encapsulation préférentielle du code normalisé 26 au sein du code augmenté 28 et le procédé de décodage associé, décrit plus loin, garantissent :

- à celui qui scanne le double code 20, la fiabilité de l’identification du bien à acquérir et

- à celui qui émet le code, la légitimité de l’acquisition limitant considérablement les possibilités de fraude.

En présence d’une représentation physique du double-code 20, par exemple imprimé sur un ticket ou affiché sur une page web à la suite d’un achat, un utilisateur peut utiliser un terminal communicant capable de lire les code à barres normalisés et muni d’un capteur d’image pour les scanner, c’est-à-dire en capter au moins une image. Par exemple, le terminal est un téléphone mobile. L’appareil détecte alors le code normalisé 26 dans un premier temps, avec une première application. Une fois décodé, ce code normalisé 26 révèle l’adresse internet d’une page dédiée et unique au bien à acquérir, les codes normalisés étant ainsi uniques. Comme illustré en figure 3, le message 30 représenté par le code normalisé 26 comporte deux parties :

- le préfixe 32 : le nom de domaine avec son protocole vers lequel l’utilisateur doit être redirigé (dans l’exemple représenté : « http://tsl.gg/ »). Le préfixe sert également à identifier le contexte dans lequel le bien existe (une entité morale, une organisation, une entreprise, un jeu, une application, un thème, une série, etc...) ; Il est préférable qu’il soit le plus court possible (et donc de privilégier un nom de domaine concis) afin de laisser plus de caractères au suffixe 34 et

- le suffixe 34 : un code alphanumérique dont les caractères sont compatibles avec une adresse internet (les lettres de l’alphabet en minuscule, en majuscule et les symboles

« moins » et « souligné »/« underscore »).

Pour mettre en œuvre la présente invention, l’utilisateur met en œuvre un dispositif 40 qui comporte un terminal communiquant 50 et des serveurs 46, 47 et 48 accessibles sur internet. L’utilisateur dispose du terminal 50 comportant un capteur d’image 41 , un contrôleur 42, un moyen de communication 43 et une mémoire d’applications 44. Le terminal 50 est typiquement un intelliphone (« smartphone »). Le capteur d’image 41 est configuré pour capter une image nette d’un code combiné 49 matérialisé, par exemple imprimé, sur un support. Le moyen de communication 43 permet au terminal d’accéder à la toile (« web ») 45, à laquelle sont reliés :

- Un serveur 46 d’affichage du produit ou service associé au code normalisé et de téléchargement d’applications,

- Un serveur 47 de vérification de double code et

- Un serveur 48 de distribution de biens ou services.

On note que les bases de données citées dans la présente demande peuvent être des chaînes de blocs (« blockchains ») ou des bases de données plus classiques.

Le moyen de communication 43 est, par exemple, un réseau de téléphonie mobile ou un décodeur internet (« box »), boîtier électronique mis à disposition par le fournisseur d’accès à internet, et reliant les équipements de télécommunication de l’usager à des réseaux, dont le réseau internet.

La mémoire d’applications 44 contient des applications basiques, telles qu’une première application de lecture de codes normalisés 26, notamment codes à barres en une dimension, en deux dimensions ou QR codes. La mémoire d’applications 44 est aussi configurée pour conserver, après téléchargement par le moyen de communication 43 depuis le serveur 46, une deuxième application de lecture de code normalisé 26 et de code augmenté 28. Le contrôleur 42 est configuré pour faire fonctionner la première et la deuxième application sur les images captées successivement par le capteur d’image 41.

La figure 5 décrit des étapes d’un mode de réalisation particulier du procédé 60 objet de l’invention. Après avoir téléchargé la deuxième application depuis le serveur d’application 46 sur son terminal 50, un utilisateur lance cette deuxième application qui permet de lire le code augmenté 28. La deuxième application propose à l’utilisateur de créer un compte, s’il vient de télécharger la deuxième application, ou de s’identifier (avec un nom d’utilisateur et un mot de passe) s’il possède déjà un compte, c’est-à-dire qu’il a déjà utilisé la deuxième application. Une fois déclenchée, la deuxième application lance un module de traitement du flux d’images fourni par le capteur d’image 41 du terminal 50.

Au cours d’une étape 61, l’utilisateur utilise son terminal communicant 50 pour capter une image du code combiné. Au cours d’une étape 62, la deuxième application recherche, dans le flux d’images captées, un code normalisé 26. Dès qu’un code normalisé 26 est détecté, au cours d’une étape 63, le code normalisé 26 est décodé au cours d’une étape 64. Préférentiellement, afin d’éviter les fraudes par attaque de force brute ou les requêtes déclenchées par des robots, on limite le nombre de tentatives de lecture pour chaque terminal utilisateur, par exemple par reconnaissance de son adresse IP (acronyme de Internet Protocol, pour protocole internet). Toutefois, comme expliqué plus haut, l’obtention d’un code normalisé par ce procédé reste possible. Dans le cas de figure où le code normalisé 26 serait découvert (par déduction), le pirate obtient l’information que le bien ou le service est disponible. Toutefois il ne peut pas en faire l’acquisition du fait que ce code normalisé ne suffit pas pour réaliser cette acquisition.

Afin de disposer du bien ou du service, il lui faudrait par la suite :

- prédire le code augmenté 28 et

- effectuer une demande d’acquisition au serveur 47, en fournissant le code normalisé 26 et le code augmenté 28.

Comme exposé plus bas, un blocage temporaire du code combiné interdit cette seconde attaque de force brute.

On note que, une fois imprimé sur un support physique, le code normalisé 26, ou le code augmenté 28 ou les deux peuvent optionnellement être protégés par une encre opaque à gratter. La présence non détériorée de cette encre opaque sur le support assure, à l’utilisateur qui détient ce support, la disponibilité du bien ou service par une vérification visuelle n’impliquant pas de procédé mécanique ou numérique.

Le module de traitement d’image fournie par le capteur d’image 41 du terminal 50 recherche, au cours d’une étape 65, la forme géométrique de la périphérie 24 du code 20.

Dans le mode de réalisation du double code 20 représenté en figure 2, cette périphérie 24, en noir sur fond blanc, présente une forme géométrique extérieure carrée et une forme géométrique intérieure octogonale.

Au cours de l’étape 65, le module détecte la forme périphérique 24 du code 20 grâce :

- à sa forme géométrique singulière (octogonale dans un carré, dans l’exemple représenté)

- au contraste fort entre son contour et son bord intérieur.

Si la forme périphérique 24 est identifiée, au cours d’une étape 66, un module de détection de code augmenté 28 recherche la présence du code augmenté 28 dans le double code 20, au cours d’une étape 67.

Ce module continue de lire le flux d’images fourni par le capteur d’image et recherche les éléments graphiques qui permettent la reconnaissance du code augmenté 28.

Ce code augmenté 28 est préférentiellement constitué d’un ensemble de symboles ayant une forme géométrique détectable. Dans l’exemple représenté en figure 2, les symboles du code augmenté 28 sont des triangles rectangles isocèles.

Chaque symbole peut exister sous deux états visibles :

- actif : de couleur sombre (par exemple le symbole 21)

- inactif : de couleur claire (par exemple le symbole 23).

Le triangle rectangle isocèle est une forme géométrique préférentielle car :

- c’est une forme simple, facile à identifier et à reconnaître, très différente des carrés et lignes des codes à barres les plus communs, tels que le code 26, - son nombre de bords est minimum pour une forme géométrique et

- le ratio des dimensions du symbole sur la surface qu’il occupe est optimal.

La combinaison des symboles du code augmenté 28 et leur état actif ou inactif constituent un code binaire dont la portée numérique est tributaire du nombre de symboles. Par exemple, dans l’ordre de lecture des symboles dans le code augmenté 28, les états actifs sont associés au chiffre binaire « 1 » et les états inactifs au chiffre binaire « 0 ». La portée numérique est ainsi égale à deux puissance n, n étant le nombre de symboles dans le code augmenté 28. On note que, si un symbole peut prendre trois états, par exemple noir, blanc et gris, cette portée numérique est de trois puissance n.

Dans le but d’interdire, ou au moins complexifier au maximum, l’obtention d’un code augmenté 28 par prédiction, il est préférable d’augmenter le nombre n de symboles qu’il comporte et/ou le nombre d’états / couleurs que chaque symbole peut prendre.

Dans le mode de réalisation illustré en figure 2, le code augmenté 28 comporte 70 symboles pouvant prendre deux états, ce qui correspond à environ 1,18 trilliards de combinaisons.

On note que les symboles doivent être suffisamment gros et contrastés pour être visibles de manière distincte par un capteur d’image de faible qualité, sans autofocus et à une distance relativement éloignée, par exemple à portée de bras. La surface imprimée du code combiné 20 dépend de fait de la taille des symboles et de leur nombre.

Une fois le code augmenté 28 détecté, au cours d’une étape 68, il est décodé et le code binaire est obtenu, au cours d’une étape 69. Avec ce code binaire et le code obtenu par décodage du code normalisé, la deuxième application demande une validation du code combiné au serveur 47, au cours d’une étape 70.

L’un de ces codes peut optionnellement être utilisé pour afficher une représentation graphique (en deux dimensions ou en trois dimensions, ou en réalité augmentée) du bien ou service concerné, sur l’écran de l’appareil en train de le scanner. Par exemple, cette représentation est un personnage de jeu ou un objet utilisable dans un jeu.

Une fois les deux codes normalisé 26 et augmenté 28 obtenus, une requête de demande de vérification de disponibilité est adressée au serveur 47. Cette requête représente les deux codes normalisé 26 et augmenté 28 lus, par exemple en les comportant intégralement.

Au cours d’une étape 71 , le serveur 47 vérifie que les deux codes envoyés correspondent aux codes d’un bien ou d’un service à distribuer, et, si c’est le cas, retourne au terminal un jeton (en anglais « token ») temporaire d’acquisition, au cours d’une étape 72. La durée de validité de ce jeton est préférentiellement très courte, par exemple de quelques secondes.

Si les deux codes normalisé 26 et augmenté 28 ne correspondent pas aux codes d’un bien ou d’un service à distribuer, il peut s’agir d’une tentative de requête frauduleuse. La délivrance du jeton représentant le bien ou service est bloquée dès la première tentative erronée, au cours d’une étape 74, et ce pour une période longue, par exemple de 24 heures. L’adresse IP du terminal qui vient d’adresser la requête est également bannie pour la même période. Pour un code normalisé 26 donné, et un code augmenté 28 constitué de 70 symboles, il n’existe qu’un seul code augmenté correct parmi 1,180 Trilliard de codes disponibles. L’utilisateur mal intentionné ne possède donc qu’une chance sur 1,18 Trilliard d’obtenir le code augmenté par déduction. Ce procédé rend pratiquement impossible le succès d’une attaque par force brute.

Si le propriétaire légitime de ce code effectue un scan dans l’intervalle pendant lequel le bien ou service qu’il a acquis est bloqué à la suite d’une tentative de piratage, un message lui indique que le bien est temporairement bloqué et qu’il ne pourra revendiquer son acquisition qu’à la fin de la longue période.

Une fois le jeton obtenu, demander la disposition du bien ou service ne peut se faire qu’en fournissant, au cours d’une étape 73, avec la requête adressée au serveur de distribution de ce bien ou service, le jeton d’acquisition temporaire valide pendant la courte durée qui suit son émission.

Si le serveur de distribution du bien ou service détermine que le jeton est invalide, le bien ou le service est bloqué et l’adresse IP du terminal utilisateur est banni une longue période, par exemple 24 heures, au cours de l’étape 74.

Si ce serveur de distribution détermine que le jeton est expiré, le serveur de distribution l’indique à la deuxième application sur le terminal utilisateur et cette deuxième application propose à l’utilisateur de rescanner le double code 20.

Si le serveur de distribution détermine que le jeton est valide, le bien ou le service est associé au compte utilisateur identifié sur le terminal ayant scanné le double code 20, au cours d’une étape 75.

Le double code 20 est donc « consommé », le bien ou le service en question est tracé dans la base de données comme étant dorénavant acquis par un utilisateur, donc indisponible pour une acquisition future.

On note que, dans toute la description des étapes de la figure 5, l’ordre de lecture du code normalisé et du code augmenté peuvent être intervertis. Néanmoins, la recherche du code augmenté nécessite la recherche de la forme périphérique du code combiné alors que la recherche du code normalisé ne la nécessite pas.

Dans la variante 76 de ce mode de réalisation décrite en figure 6, qui correspond à cette interversion, l’ordre des étapes devient 61, 65, 66, 67, 68, 69, 62, 63, 64 et 70 à 75 (dont l’ordre est inchangé). On note qu’il peut y avoir, de plus, une inversion des rôles respectifs des codes normalisés et augmentés :

- Le code augmenté permet d’accéder à l’information de disponibilité du bien ou service,

- Le code normalisé complète le code augmenté pour obtenir la validation de l’acquisition. Dans des variantes de chacun des modes de réalisation illustrés en figures 5 et 6, la recherche de la périphérie (étapes 65 et 66) est omise.

On observe, en figure 7, un exemple de carte 80 portant un code combiné 81. Cette carte comporte aussi un numéro 83, une représentation 84 de personnage de jeu, un nom 85 de personnage de jeu, un code multipoint 82 et des valeurs d’attributs 86.

Dans le cadre du jeu, l’invocation d’un personnage avec une carte portant le code combiné 81 se déroule de la manière suivante.

Lors d'une partie (un combat), lors de phases de jeu précises, chaque joueur doit invoquer des créatures, accessoiriser les créatures déjà invoquées ou interrompre les actions de son adversaire. Ces créatures, accessoires ou interruptions sont représentées par des cartes, bénéficiant chacune d'un double code augmenté unique. Grâce à un terminal communicant muni d'un capteur d’image, le joueur dont c'est le tour, scanne les cartes qu'ils souhaitent invoquer.

On note que l'adversaire peut être présent, dans la même pièce que le joueur en question, leurs terminaux communicants respectifs étant connectés ensemble via un protocole réseau (par exemple Bluetooth, réseau local). L'adversaire peut également être distant et connecté par l’intermédiaire d’Internet au travers d'un serveur de jeu.

Le joueur ne peut invoquer que les cartes dont il est le propriétaire, c'est à dire qu'il a préalablement scanné en les associant à son compte de joueur.

Ce qui assure la légitimité des cartes scannées :

- à l'adversaire : les cartes jouées appartiennent bien au joueur. Il ne gagnera pas de façon déloyale,

- à l'organisateur du tournoi le cas échéant : les cartes jouées ne sont pas des copies frauduleuses,

- au développeur du jeu : que l'équilibre de son jeu n'est pas perturbé par l'ajout de cartes contrefaites.

Le code combiné 81 identifie une créature représentée par la représentation 84 de manière unique, et donc détermine ses caractéristiques en mémoire (coût d'invocation représenté par le numéro 83, c’est-à-dire la quantité d'énergie nécessaire à son invocation et, selon les valeurs d’attributs 86, sa puissance d'attaque, sa capacité à porter des accessoires lourds et sa défense). Le jeu peut ainsi accepter, refuser et donc réagir en conséquence d'une invocation déclenchée par un joueur.

Lors d'une invocation, si la carte est légitime, reconnue, et respecte les règles du jeu, le personnage est affiché sur l'écran du joueur concerné, mais également sur celui de son adversaire même si distant.

La détection du code combiné 81 permet à l'application du jeu de représenter le personnage en réalité augmenté dans l'état dans lequel il est supposé être dans la partie. De par l'unicité du code combiné 81, l'application est capable de reconnaître un personnage déjà invoqué lors d'une partie, et de l'afficher dans un état cohérent avec ce qu'il a subi. Par exemple, si le personnage est mort au combat, la reconnaissance de son code permet d'afficher ce personnage allongé et inanimé. De fait, un joueur ne peut invoquer une carte qui l'a déjà été. Une accessoirisation par combinaison de codes est illustrée en figure 8. On retrouve, en figure 8 la carte 80 représentée en figure 7 en superposition avec une carte 90 hormis sa partie basse représentant un code combiné 91 , le nom d’accessoire 95 et les codes d’attributs 96.

Le joueur peut accessoiriser ses créatures afin de changer leurs caractéristiques (par exemple, augmentation de la puissance de l'attaque, de sa capacité de défense, de sa capacité à porter des accessoires lourds) représentées par les codes d’attributs 96.

Associer un accessoire à une créature, se fait en plaçant la carte d'accessoire 90 sous la carte 80 de la créature avec les deux codes combinés 81 et 91 toujours visibles. La proximité d'un double code augmenté avec un autre code augmenté est détecté par la deuxième application et le capteur d’image. Cette proximité permet d'associer ces deux codes combinés 81 et 91. Ce principe n'est pas arrêté à deux codes. Le joueur peut cumuler les accessoires, dans la limite des règles du jeu et de la capacité de portée de la créature.

La figure 8 montre qu'une combinaison d'un accessoire avec une créature se fait verticalement. L'application détecte la proximité des deux codes combinés 81 et 91. Les valeurs 86 et 96 situées à leur droite, s'additionnent verticalement avec les valeurs correspondantes de la carte située en dessous. Dans l'exemple, grâce à l'accessoire, la créature étend ses capacités à « 6 » en attaque, « 0 » en portée et « 5 » en défense.

Grâce à la mise en œuvre de la présente invention et la certification des doubles codes, le joueur adverse, bien que distant, a l'assurance de savoir que les cartes jouées (dans le monde réel) par son adversaire sont légitimes au regard des règles (numériques) dictées par le jeu. Cela réduit les possibilités de triche alors que la distance qui sépare les joueurs les rendent vulnérables face à ce problème.

On observe, en figure 9, un code combiné 100 comportant, au centre, un code normalisé, typiquement un QR code 101 et, en périphérie, un code graphique 105. Le code 101 se trouve à l’intérieur d’une zone délimitée par le trait discontinu 102. Le code graphique 105 se trouve dans une zone entre le trait discontinu 102 et le trait discontinu 107. Bien entendu, ces traits discontinus 102 et 107 ne se trouvent pas imprimés avec le code combiné 100 et ne servent qu’au besoin de la présente description.

Le code normalisé 101 comporte des cellules carrées 104 qui peuvent prendre deux valeurs, une fois imprimées : noir ou blanc. Ces deux valeurs correspondent à un bit (unitaire binaire ou « binary unit », en anglais) de données (message ou code complémentaire, par exemple de détection ou de correction d’erreur). Le code 101 comporte aussi des motifs de recherche (« finder pattern », en anglais) 103 permettant à un logiciel de traitement d’image de déterminer l’orientation, la déformation géométrique due à la perspective et la position du code 101 dans une image captée (« scan ») du code et de son environnement.

Le code graphique 105 comporte des cellules géométriques 106, ici triangulaires, qui peuvent prendre deux valeurs, une fois imprimées : noir ou blanc, pour représenter un bit de données. On note que les cellules géométriques 106 sont repartis selon une symétrie de rotation de 90°. Les cellules géométriques triangulaires présentent ainsi un angle droit et une hypothénuse toujours parallèle au côté de la ligne 107 la plus proche de cette hypothénuse. Ainsi, la lecture des valeurs binaires représentées dans les cellules 106 est facilitée.

On note que la marge entre le QR code 101 central et le code périphérique 105 est suffisante afin d’éviter toute confusion à l’application qui effectue l’interprétation de la capture d’image, par exemple cette écartement, ou marge, est d’au moins deux cellules élémentaires du QR code 101.

On décrit, ci-dessous, en regard des figures 10 et 11, deux modes de réalisation particuliers du procédé objet de l’invention.

Concernant l’encodage, le code normalisé 101, au centre du code combiné 100, représente une URL. Ainsi, seuls les caractères autorisés par les URLs peuvent y être encodés. Le code périphérique 105, par exemple représenté sous forme de triangles, représente une chaîne de caractères dont les symboles sont définis en fonction du nombre de combinaisons souhaités. Par exemple, un ensemble de six valeurs binaires (« bits ») correspond à l’un de 64 caractères différents.

Le code est constitué d’un certain nombre de symboles (Le nombre de symboles est défini en fonction de la taille maximum de la chaîne de caractères souhaitée et de la surface disponible sur le support)

Par exemple, pour une surface autorisant 72 symboles, et pour une chaîne à encoder composée de 10 caractères, chacun des 10 caractères va être converti en bits soit, 10 * 6 bits = 60 bits = 60 symboles. Il reste 12 symboles supplémentaires qui peuvent être utilisés au codage d’une somme de contrôle (en anglais « checksum »), par exemple un code de détection et/ou de correction d’erreur (par exemple un contrôle de redondance cyclique, ou « CRC »). Cette somme de contrôle a pour vocation de confirmer l’intégrité des données du code lues lors d’un capture d’image. Cette somme de contrôle est déterminée par une équation mathématique sur la base de la chaîne à encoder. Si la somme de contrôle n’utilise pas tous les symboles restant disponibles, ces symboles disponibles peuvent être utilisés pour le stockage d’un numéro de version du code, par exemple.

Le procédé de décodage peut suivre deux logiques différentes : du centre vers la périphérie, comme représenté en figure 10, ou de la périphérie vers le centre, comme représenté en figure 11. Pour le procédé 125 comportant un décodage du centre du code combiné 100 vers sa périphérie, le terminal de l’utilisateur capte une image du code central normalisé 101, étape 111. Nativement, l’application “appareil photo” d’un intelliphone (« smartphone » en anglais) est capable de trouver, étape 112, et lire, étape 113, le QR code 101 qui se trouve au centre du code combiné 100.

Ce QR code central 101 représente l’URL d’une page de la toile (« web ») représentant un objet (numérique ou physique) de manière unique, vers laquelle l’utilisateur est redirigé.

Cette page web est hébergée sur un serveur accédant aux données permettant d'identifier ce produit et contenant les métadonnées de l’objet.

Au cours d’une étape 114, le terminal de l’utilisateur accède à cette page.

Cette page web affiche des informations publiques et utiles à l’identification de l’objet, par exemple le nom commercial de l’objet, sa référence, sa description, son numéro de série et une photo descriptive, étape 115.

En fonction de l'état de l’objet dans le processus et des étapes d’attribution prévues par l’émetteur du code combiné 100, au cours d’une étape 116, des appels à actions sont proposés à l’utilisateur, par exemple l’acquisition du droit de propriété de l’objet, permettre de signifier avoir trouvé l’objet déclaré perdu.

Certaines de ces actions peuvent impliquer un niveau de sécurité élevé nécessitant, une capture d’image complète du code combiné, par exemple pour l’obtention du droit de propriété de l’objet. Ce qui va être décrit ci-dessous. Dans ce cas de figure, il est demandé à l’utilisateur de capter à nouveau une image du code combiné pour en acquérir le droit de propriété. Dans des modes de réalisation, le scanner utilisé pour acquérir et interpréter le code combiné est intégré à la page web. Ce scanner est utilisé, au cours d’une étape 117, pour décoder simultanément le QR Code et le code périphérique. Ainsi, successivement : on demande à l’utilisateur l’autorisation d’accéder à la caméra de son terminal, avec cette autorisation, on affiche le flux vidéo de la caméra sur la page web, un programme informatique analyse ce flux vidéo image par image, l’utilisateur pointe la caméra vers le code combiné et le programme informatique recherche un QR code dans ce flux vidéo.

L’image est redressée pour compenser les distorsions géométriques de l’image, par exemple dues à l’inclinaison et à l’orientation de la caméra par rapport au code, puis convertie dans une matrice de bits afin d’être décodée. Si un QR code est trouvé et correspond au QR code concerné par les étapes précédentes, étape 118, le scanner étend le décodage au-delà de la surface géométrique prise par le QR Code afin d’y détecter le code périphérique.

Si le QR code trouvé ne correspond pas au QR code initialement lu, un message est affiché demandant à l’utilisateur de scanner le code scanné à l’origine. Une fois décodés, les deux codes 101 et 105 sont transmis au serveur qui accède aux données permettant d’identifier les produits. Préférentiellement, ce transfert d’informations se fait de manière sécurisée via un tunnel SSL/TLS.

Le serveur compare ces deux codes 101 et 105 avec les couples de codes qu’il conserve en base de données :

- Si les deux codes 101 et 105 correspondent à un seul enregistrement en base de données, alors l’objet est autorisé à passer à l’étape suivante dans son flux de processus associé (par exemple, délivrance du droit de propriété),

- Si les deux codes 101 et 105 ne correspondent à un couple de codes conservé en base de données, les actions et opérations qu’il est possible d’effectuer sur l’objet correspondant à ce couple de codes sont inhibées pendant une durée donnée. Cette inhibition protège le serveur contre les attaques de force brute.

Concernant la matrice de valeurs binaires du code périphérique 105, lors de la lecture du flux vidéo après redressement de l’image, une étape 119 du procédé a pour objectif de simplifier la lecture de cette image afin d’y détecter plus facilement les symboles géométriques, par exemple des triangles, représentants le code périphérique.

Les dimensions du QR code permettent de déterminer l’emplacement et les dimensions de chaque symbole géométrique constituant le code périphérique. Les “finder pattern” du QR code permettent également d’en déterminer l’orientation.

Afin de vérifier la présence ou non, de chacun des symboles, une opération de simplification de leur forme est effectuée.

Chaque symbole est simplifié par l’intermédiaire d’une matrice de modules représentant chacun une valeur binaire.

Par exemple un symbole triangle correspond à une matrice constituée de seize cellules, sept cellules modules à sa base, puis cinq, puis trois, et une cellule à son sommet, comme représenté ci-dessous :

X

XXX xxxxx xxxxxxx

Lors du décodage, chaque position de symbole est analysée. On essaye de déterminer la présence ou non d’un symbole géométrique en analysant la valeur binaire en chacune des cellules dans la surface du symbole. Si une zone prévue pour contenir un symbole est recouverte de plus de 50% de cellules positives, par exemple blanches (donc 8 sur 16 modules dans l’exemple ci-dessus) il représente une valeur binaire positive au sein du code périphérique. La détermination de la valeur binaire positive ou négative d’une cellule est effectuée par comparaison avec une valeur limite de luminosité prédéterminée (par exemple la luminosité moyenne sur le QR-code).

Cette opération est préférentielle car l’analyse de l’image n’est pas binaire. Cette opération résout des problèmes de contraste, de flash de lumière, de brillance, de distorsion, qui peuvent en altérer la lecture.

Chaque zone géométrique, par exemple triangulaire, est ainsi lue. Puis, on convertit les N symboles de données ainsi obtenues en texte.

Les symboles restant sont analysés pour calculer la somme de contrôle.

Au cours d’une étape 120, si le nombre correspondant à cette somme de contrôle stockée dans le code est égal au nombre de la somme de contrôle calculée à partir de l’image captée, on considère que le décodage est valide.

Une somme de contrôle erronée peut résulter d’une falsification du code, d’une altération physique du support, ou à d’un défaut environnemental lors de la lecture.

Le choix de l’algorithme est déterminé par le nombre de symboles utilisables afin de stocker le résultat numérique du calcul et sa capacité à éviter les collisions pouvant entraîner des faux positifs.

Un exemple de formule appliquée au calcul du checksum est l’algorithme de Fletcher.

Si le résultat de l’étape 120 est positif, au cours d’une étape 121, le couple de messages représentés par le couple de codes 101 et 105 est comparé aux couples de messages conservés en mémoire du serveur.

S’il y a correspondance avec un couple de code, au cours d’une étape 122, le serveur attribue une prestation, un droit (par exemple un droit d’accès ou une identification d’un document tel qu’une pièce d’identité ou d’un moyen de paiement) ou un objet à l’utilisateur. Dans le procédé 145 comportant un décodage allant de la périphérie du code combiné 100 vers son centre, la somme de contrôle du code périphérique 105 sert à valider que le code 105 est lu dans la bonne orientation.

Au cours d’une étape 131, on capte le code périphérique 105. Au cours d’une étape 132, on effectue une lecture du contenu du code périphérique 105.

Au cours d’une étape 133, on détermine si la somme de contrôle est incorrecte, c’est-à-dire si le résultat du calcul selon la formule de génération de cette somme de contrôle correspond à la somme lue dans le code périphérique 105. Si non, au cours d’une étape 134, on applique une rotation à 90° du code et on recommence la recherche. Le code 105 est considéré invalide, étape 135, si aucune des quatre orientations ne donne l’égalité de sommes de contrôle attendue.

S’il y a correspondance entre les sommes de contrôle, au cours d’une étape 136, on effectue une lecture du code central normalisé 101. Puis, au cours d’une étape 137, on accède à la page identifiée par l’URL représentée par le code central 101. Le code combiné objet de l’invention assure des avantages du point de vue de la sécurité :

Le QR Code peut contenir une information que l’on accepte rendre publique et est lu par de très nombreux terminaux. Il est donc déconseillé d’y intégrer des données sensibles.

Lorsque celui-ci représente une URL, il est déconseillé d’y préciser un mot de passe par exemple. Si le QR code devait contenir une URL, l’identifiant d’un produit, et le mot de passe permettant de l’acquérir, il faut accepter l’idée que ces informations sensibles soient conservées sur le poste client de l’utilisateur, ou soient lues et enregistrés par les logiciels de surveillance (« tracking »). De manière générale, cumuler la clef publique et la clef privée dans une information, quelle qu'elle soit, contrevient à la sécurité même procurée par la distinction de ces deux codes. Il impliquerait également à l’émetteur du code de redoubler d’effort afin de ne pas communiquer l’URL (et donc le code) avant de proposer au futur acquéreur d’obtenir le droit de propriété de l’objet. De plus, un code unique laisse l’opportunité à des pirates d’effectuer des attaques de force brute afin de deviner l’existence d’un code avant même la mise en circulation de l’objet appairé. Le code une fois déterminé, le processus d’acquisition de l’objet est compromis.

Le code périphérique permet de réaliser un code propriétaire unique. Un code propriétaire nécessite l’éducation de l’audience quant à son mode de fonctionnement. Il ne peut, par définition, être scanné et interprété nativement par les appareils informatiques du marché, contrairement au QR code.

Les problématiques liées aux failles de sécurité d’un code unique mentionnées au-dessus pour le QR code s’appliquent également.

On pourrait envisager un double code à lecture publique, par exemple deux QR Code juxtaposés. Mais les terminaux ne savent pas décoder deux QR codes simultanément. Or la simultanéité est requise pour un scan et un décodage fiable.

Il est également impossible de déterminer quel code sera lu en premier si les deux codes sont présents à l’écran. Ni d’avoir la garantie que l’appareil va détecter la présence du second... Et éliminer un QR code du flux de caméra, afin de garantir la lecture du second, revient à scanner un code unique, avec les problèmes de scan d’un code.

Un code combiné objet de l’invention, par exemple comportant un QR Code et un code propriétaire, présente de nombreux avantages :

- ce code combiné assure une sécurité maximale, en stockant les données publiques dans un QR code standard (l’URL + l’identifiant de l’objet), et les données privées dans un code propriétaire,

- Le QR code est lu nativement, il ne contient que des données publiques. De ce fait, l’URL contenue dans le QR code ne contient pas de données sensibles, elle peut être partagée sans risque, - Le code propriétaire périphérique n’est lu, scanné, et décodé que dans un environnement sécurisé et cloisonné,

- Une clé privée ne doit jamais figurer dans une URL car cette dernière peut être logguée du côté client comme du côté serveur, ainsi qu’être utilisée par des trackers dans les navigateurs,

- le code combiné peut être décodé directement au sein d’un navigateur à l’aide d’une caméra de la toile (« webcam »), ce qui évite d’avoir à télécharger une application spécifique qui peut freiner l’adoption d’un standard mettant en œuvre ce code combiné,

- En utilisant notre application sur la toile, sans installation sur le terminal de l’utilisateur, les deux codes peuvent être lus simultanément,

- La première partie du code (QR code) peut être lue avec un simple appareil photo d’intelliphone (« smartphone » en anglais), qui redirige l’utilisateur vers une application de la toile lui permettant de déchiffrer la deuxième partie s’il souhaite acquérir le droit de propriété,

- Le fait de scanner le code combiné depuis cette application de la toile, sur un site sécurisé (par exemple selon le protocole SSL/TLS) assure que celui-ci ne pourra être intercepté lors de la communication entre le client et le serveur et

- Une seule combinaison des deux codes combinés en un est valide. Elle permet de bloquer efficacement le processus d’attribution sur un seul objet pendant une période donnée dès la première tentative erronée.

La présente invention s’applique notamment : aux documents d’identité, tels que passeports numériques et pièces d’identité, aux cartes bancaire, aux cartes ou badges d’accès à un site, à l’accès à un certificat numérique, notamment certificat ou clé privé ou une clé publique d’une code asymétrique, par exemple de type PKI (public-key infrastructure), à l’accès à des comptes bancaires, à l’accès à des actif immatériels, notamment les « intangible assets » ou les « digital assets » ou aux Non-fungible tokens (NFT).