Brevet FR3136330A1 — publié le 20231208

L’objet de la présente divulgation concerne un procédé mis en œuvre par des moyens informatiques, de vérification de l’utilisation d’une interface homme/machine par un opérateur humain pour accéder à un service, le procédé comprenant : - sur requête d’accès à un service reçue d’une entité informatique, renvoyer un message de défi basé sur une phrase comprenant des phonèmes altérés, - analyser une réponse audit message de défi, reçue de l’entité informatique, pour donner accès ou non au service en fonction de la réponse. Figure de l’abrégé : Figure 5 Procédé et dispositif de vérification de l’utilisation d’une interface homme/machine par un opérateur humain La présente description est relative à des applications de sécurité informatique, notamment pour la sécurisation d’un accès à un service informatique. Plus particulièrement, elle relève de la vérification qu’un humain est bien à l’origine d’une requête dans une interaction avec un système informatique, cette vérification étant de type dit « CAPTCHA ». Actuellement dans des interactions informatiques (transactions électroniques, navigation internet) via une interface homme/machine, on utilise des CAPTCHA visuels pour vérifier qu'il s'agit bien d'un humain qui utilise l’interface homme/machine précitée. Plus particulièrement, quand il s'agit des interactions vocales (par exemple une interaction sur une ligne téléphonique avec un serveur vocal ou plus généralement avec tout module de reconnaissance de parole), il est mis en œuvre plutôt une technique de CAPTCHA audio (développée notamment pour des raisons d'accessibilité aux malvoyants). Si les CAPTCHA visuels sont largement utilisés, l’utilisation des CAPTCHA audio est moins développée en proportion, car les solutions proposées ne sont pas très fiables. Une approche basée sur des questions simples ou de type « casse-tête logique » ou mathématiques ou sur des phrases nécessitant un minimum de compréhension existe sous la forme d’un service proposé aux éditeurs de sites internet via une API (pour « application program interface »). Or, l’efficacité d’une telle approche n’est ni certaine, ni pérenne au vu du développement rapide des machines dotées d’intelligence artificielle, capables d’avoir un niveau de compréhension sémantique assez élevé pour répondre à de telles questions. Il est possible bien entendu de complexifier davantage l’accès à un service par un moyen autre qu’un CAPTCHA audio, mais une telle mesure peut décourager les utilisateurs et il reste souhaitable de préserver l’usage du CAPTCHA audio pour sa simplicité. Résumé La présente description vient améliorer la situation. Il est proposé un procédé mis en œuvre par des moyens informatiques, de vérification de l’utilisation d’une interface homme/machine par un opérateur humain pour accéder à un service, le procédé comprenant : - sur requête d’accès à un service reçue d’une entité informatique, envoyer un message de défi basé sur une phrase altérée, ladite phrase altérée comprenant des phonèmes dont au moins un phonème est modifié, - analyser une réponse audit message de défi, reçue de l’entité informatique, pour donner accès ou non au service en fonction de la réponse. L’entité informatique précitée est normalement une interface homme/machine pilotée par un humain, et non pas un robot (sauf en cas d’utilisation non conforme du service précité). Ainsi par exemple, la phrase altérée comprenant un ou des phonèmes modifiés peut être choisie parmi des phrases fréquemment employées dans la vie courante, et être saisie, même dégradées, facilement par un humain, mais plus difficilement par un robot. Ainsi, cette phrase à phonèmes modifiés peut comporter des blancs comme par exemple : « Bon…, je suis …vi de faire vo… …sance » (pour la phrase sans altération « Bonjour, je suis ravi de faire votre connaissance »). Une machine de type robot (équipée d’un détecteur de parole pour tenter de reconnaitre une phrase prononcée oralement) peut interpréter la phrase ci-dessus par exemple comme suit : « Bon ! Je suis (en ?) vie de faire vos sens », alors qu’un humain l’interprète naturellement de façon correcte. Dans un mode de réalisation, le procédé peut comporter des étapes préalables : - pour chaque phrase d’une pluralité de phrases, découper la phrase en phonèmes et modifier au moins un des phonèmes de la phrase, - tester la phrase ainsi altérée pour estimer un score de probabilité de retrouver la phrase sans altération à partir de la phrase altérée, et - si le score est inférieur à un seuil, enregistrer la phrase altérée dans une mémoire. Ainsi, dans une étape courante, le procédé peut comporter : - sur requête d’accès à un service reçue par ladite entité informatique, accéder à ladite mémoire pour envoyer un message de défi basé sur une phrase altérée et préalablement enregistrée dans ladite mémoire. Ainsi, la mise en œuvre d’une telle réalisation permet de s’assurer qu’une phrase simple à comprendre pour un humain peut être dégradée suffisamment pour une machine pour ne pas être identifiée, en testant directement cette phrase dégradée sur une machine de type moteur de recherche (des exemples de tels moteurs étant donnés plus loin). Ainsi par exemple, pour la mise en œuvre du procédé selon ce mode de réalisation, les moyens informatiques précités peuvent comporter au moins : - un module de détection de mots-clés dans une phrase altérée (par exemple un module de détection de parole pour une phrase prononcée acoustiquement mais avec au moins une altération), - un moteur de recherche du type précité pour tenter de trouver dans une base de données ou sur Internet par exemple la phrase complète en fonction de ces mots-clés, et - une mémoire pour stocker la phrase altérée à phonèmes modifiées (avec d’autres phrases de ce type stockées dans cette mémoire) dans le cas où la phrase complète d’origine ne peut pas être retrouvée par le moteur de recherche (ou du moins n’est pas en tête des suggestions du moteur de recherche, comme présenté plus loin). Ainsi, dans une telle réalisation, le test précité de la phrase ainsi altérée peut comporter : - proposer la phrase altérée à un moteur de recherche, le score de probabilité étant alors fonction d’un score de pertinence d’un résultat de la recherche produite par le moteur de recherche. Par exemple, si la véritable phrase initialement prévue (phrase non altérée) n’est proposée par le moteur de recherche qu’en nième position après d’autres phrases fausses (ne correspondant pas à la phrase non altérée), alors le score de probabilité peut être de 1/n et si le seuil est par exemple de 1/5, avec n>5, alors cette phrase altérée peut être enregistrée en mémoire. En revanche, si n - simplement abandonnée, ou - être traitée par les moyens informatiques précités pour modifier davantage de phonèmes, ou encore simplement, - changer les phonèmes qui sont modifiés pour déterminer si le score diminue, comme proposé dans le mode de réalisation ci-après. En effet, si le score de probabilité est supérieur au seuil (par exemple 1/n>1/5), le procédé peut comporter en outre : - modifier au moins un phonème supplémentaire dans la phrase altérée, - tester la phrase ainsi altérée pour estimer ledit score de probabilité, et - répéter la modification d’un phonème supplémentaire et le test tant que le score de probabilité est supérieur au seuil. En complément ou en variante, il peut être prévu aussi de : - changer une partie des phonèmes qui sont modifiés dans la phrase, - tester la phrase comprenant la partie changée pour estimer ledit score de probabilité, et - répéter le changement de partie et ledit test tant que le score de probabilité est supérieur au seuil. Ainsi par exemple, les phonèmes ambigus tels que « champ »/« chant », ou encore « sens »/« sance » dans le mot « connaissance », peuvent être conservés sans dégradation dans la phrase altérée à enregistrer en mémoire, tandis que les phonèmes moins ambigus de la phrase peuvent être davantage dégradés. Comme indiqué précédemment, le message de défi précité peut comporter un signal audio comprenant des données de la phrase altérée, ce signal audio étant alors destiné à être joué par une interface homme/machine à disposition d’un utilisateur (par exemple sur des haut-parleurs ou sur un casque audio reliés à un smartphone ou un ordinateur). Une telle réalisation permet d’augmenter l’ambiguïté de la phrase pour un robot, mais moins pour un humain, comme par exemple avec des phonèmes tels que « champ »/« chant », ou « sens »/« sance » (dans « connaissance »). Avantageusement, la phrase altérée peut en particulier être prononcée dans le signal audio avec une intonation naturelle pour un humain. Par exemple, la phrase peut être prononcée avec une modulation choisie de la fréquence fondamentale du signal de parole. Ainsi, une phrase prononcée avec une intonation d’interrogation (« quelle heu - - t-il ? ») peut être saisie plus facilement par un humain, mais pas par un robot (ou encore une emphase dans la phrase « Bon…, je suis …vi de faire vo… …sance »). Pour la réalisation des dégradations des phonèmes dans une phrase, plusieurs formes de réalisation peuvent être prévues. Par exemple, les phonèmes peuvent être modifiés en ce qu’ils peuvent être permutés entre eux dans la phrase altérée, et/ou en ce qu’un phonème est remplacé par du bruit sur un segment de mêmes durée que le phonème modifié, et/ou remplacé par un silence de même durée que le phonème modifié. Par ailleurs, dans une réalisation, le défi précité peut consister à deviner la phrase altérée. Alternativement, il est possible de prévoir un défi dans lequel l’utilisateur répond à une énigme présentée dans la phrase altérée, ou simplement à une interrogation (par exemple : « Pouvez-vous répondre à cette question ambiguë ? » : « quelle heu - - t-il ? » ou « quel temps …-t-il …hui ? »). Par ailleurs, dans une forme de réalisation, en cas de mauvaise réponse reçue au message de défi, une autre phrase altérée est proposée dans un nouveau message de défi (par exemple en étant tirée aléatoirement de la mémoire précitée pour être proposée à l’entité informatique précitée, ou au contraire selon un ordre de présentation prédéfini à une même entité à laquelle les phrases altérées sont présentées). Une telle réalisation permet d’éviter le rejeu de la même phrase et de faire en sorte qu’une machine, exécutant une intelligence artificielle par exemple, ne puisse tenter n réponses si le score de pertinence précité pour cette phrase était de 1/n. Selon un autre aspect, il est proposé un programme informatique comportant des instructions pour la mise en œuvre d’un procédé tel que défini ci-avant lorsque ce programme est exécuté par un processeur. Selon un autre aspect, il est proposé un support d’enregistrement non transitoire, lisible par un ordinateur, sur lequel est enregistré un tel programme. Selon un autre aspect, il est proposé un dispositif informatique, comprenant un circuit de traitement configuré pour la mise en œuvre du procédé ci-avant. D’autres caractéristiques, détails et avantages apparaîtront à la lecture de la description détaillée ci-après, et à l’analyse des dessins annexés, sur lesquels : Fig. 1 montre un exemple de dispositif pour la mise en œuvre du procédé ci-avant. Fig. 2 montre un exemple de procédé comportant une opération préalable de construction de phrases altérées selon un mode de réalisation particulier. Fig. 3 montre un exemple de procédé comportant une opération courante de proposition de défi basé sur une des phrases altérées selon un mode de réalisation particulier. Fig. 4 montre un exemple de phrase initiale à altérer. Fig. 5 montre une altération possible de la phrase de la . Procédé mis en œuvre par des moyens informatiques, de vérification de l’utilisation d’une interface homme/machine par un opérateur humain pour accéder à un service, le procédé comprenant : - sur requête d’accès à un service reçue d’une entité informatique, envoyer (S8) un message de défi basé sur une phrase altérée, ladite phrase altérée comprenant des phonèmes dont au moins un phonème est modifié (S4), - analyser (S10) une réponse audit message de défi, reçue de l’entité informatique (S9), pour donner accès (S11) ou non au service en fonction de la réponse. Procédé selon la revendication 1, comprenant préalablement : - pour chaque phrase d’une pluralité de phrases, découper (S2) la phrase en phonèmes et modifier (S4) au moins un des phonèmes de la phrase, - tester (S5) la phrase ainsi altérée pour estimer un score de probabilité de retrouver la phrase sans altération à partir de la phrase altérée, et - si le score est inférieur à un seuil (S5), enregistrer (S6) la phrase altérée dans une mémoire, et dans lequel : - sur requête d’accès à un service reçue par ladite entité informatique, accéder à ladite mémoire (S7) pour envoyer un message de défi basé sur une phrase altérée et préalablement enregistrée dans ladite mémoire. Procédé selon la revendication 2, dans lequel tester ladite phrase ainsi altérée (S5) comporte : - proposer la phrase altérée à un moteur de recherche, le score de probabilité étant fonction d’un score de pertinence d’un résultat de la recherche produite par le moteur de recherche. Procédé selon l'une des revendications 2 et 3, dans lequel, si le score de probabilité est supérieur au seuil, le procédé comporte en outre : - modifier (S4) au moins un phonème supplémentaire dans la phrase altérée, - tester (S5) la phrase ainsi altérée pour estimer ledit score de probabilité, et - répéter la modification d’un phonème supplémentaire et le test tant que le score de probabilité est supérieur au seuil. Procédé selon l'une des revendications 2 à 4, dans lequel, si le score de probabilité est supérieur au seuil, le procédé comporte en outre : - changer une partie des phonèmes qui sont modifiés dans la phrase, - tester la phrase comprenant la partie changée pour estimer ledit score de probabilité, et - répéter le changement de partie et ledit test tant que le score de probabilité est supérieur au seuil. Procédé selon l'une des revendications précédentes, dans lequel le message de défi comporte un signal audio comprenant des données de la phrase altérée, ledit signal audio étant destiné à être joué par une interface homme/machine à disposition d’un utilisateur. Procédé selon la revendication 6, dans lequel la phrase altérée est prononcée dans le signal audio avec une intonation naturelle pour un humain. Procédé selon l'une des revendications précédentes, dans lequel modifier au moins un phonème comporte une permutation d’au moins deux phonèmes entre eux. Procédé selon l'une des revendications 6 et 7, dans lequel modifier au moins un phonème comporte un remplacement de ce phonème par du bruit sur un segment de même durée que le phonème modifié. Procédé selon l'une des revendications 6 et 7, dans lequel modifier au moins un phonème comporte un remplacement de ce phonème par un silence sur un segment de même durée que le phonème modifié. Procédé selon l'une des revendications précédentes, dans lequel le défi consiste à deviner la phrase altérée. Procédé selon l'une des revendications précédentes, dans lequel, en cas de mauvaise réponse reçue au message de défi, une autre phrase altérée est proposée dans un nouveau message de défi. Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l’une des revendications précédentes lorsque ce programme est exécuté par un processeur. Dispositif informatique, comprenant un circuit de traitement configuré pour la mise en œuvre du procédé selon l’une des revendications 1 à 12. Support d’enregistrement non transitoire lisible par un ordinateur sur lequel est enregistré un programme pour la mise en œuvre du procédé selon l’une des revendications 1 à 12 lorsque ce programme est exécuté par un processeur.