Le code PIN est mort, vive le code PIN ! Grace à l’Intelligence Artificielle (IA), votre téléphone est désormais capable de reconnaître votre écriture.
Vous authentifier grâce à votre écriture, sur votre smartphone, c’est la promesse de cette nouvelle application mobile développée par une équipe de chercheurs rennais [1]. L’application, qui vient remplacer le fameux clavier virtuel utilisé pour la saisie des mots de passe, consiste à inviter l’utilisateur à dessiner un code à 4 chiffres avec le doigt pour s’authentifier.
Si la graphologie est une technique centenaire, des travaux récents ont montré qu’une IA était également capable de reconnaître l’auteur d’un texte manuscrit en analysant le style d’écriture [2]. Grâce à la puissance de calcul embarquée dans les smartphones de dernière génération, il est désormais possible de faire cette analyse graphologique sur seulement quelques chiffres ou dessins. Historiquement, l’IA a d’abord été utilisée pour reconnaître des chiffres dans des images, par exemple pour scanner automatiquement des codes postaux ou les montants écrits sur les chèques bancaires. Dorénavant, non seulement la machine est-elle capable de reconnaître les chiffres, mais aussi leur auteur.
L’application proposée ici n’utilise pas la reconnaissance d’image, mais analyse la dynamique de l’écriture, captée par l’écran tactile (vitesse, accélération, courbure…). Il s’agit d’une forme de biométrie dite comportementale [3], car elle repose sur l’analyse du comportement de l’utilisateur : l’interaction de son doigt avec l’écran. Cette forme de biométrie présente l’avantage d’être beaucoup plus difficile à imiter qu’une biométrie physiologique telle que la reconnaissance faciale, où une simple photo suffit parfois à tromper le système. Pour faire cette analyse graphologique, l’application embarque des réseaux de neurones dits récurrents, bien adaptés au traitement de séquences de longueur variable. Ils sont notamment très utilisés pour la compréhension du langage naturel [4], par exemple dans les systèmes de traduction automatique, ou pour la reconnaissance de la parole.
Dans le domaine de la sécurité informatique, on distingue trois classes de facteurs d’authentification : les facteurs mémoriels (ce que je connais), les facteurs matériels (ce que je possède) et les facteurs biométriques (ce que je suis). Chaque classe de facteurs a ses inconvénients : risque d’oubli pour les mots de passe, risque de perte pour les cartes à puces, craintes pour la vie privée pour la biométrie.
De nos jours, la plupart des systèmes sont protégés par une ou deux classes de facteurs. Par exemple, l’accès à un site bancaire se fait généralement via un code secret (un facteur : ce que je connais), tandis qu’un paiement par carte bancaire est généralement sécurisé par deux facteurs (la carte que je possède, le code secret que je connais). Parfois, pour un paiement en ligne, le code secret est reçu par SMS, mais cette méthode est désormais réputée peu sûre : elle est notamment vulnérable aux attaques par “SIM swapping” (appropriation par un pirate d’un numéro de téléphone en l’enregistrant sur une nouvelle carte SIM) [5].
Sur les smartphones, l’usage de la biométrie physiologique s’est généralisé depuis la sortie de l’Iphone 5S en 2013. La plupart des terminaux proposent aujourd’hui de la reconnaissance d’empreinte digitale ou faciale. Pour autant, les performances de ces systèmes de biométrie ne sont pas rendues publiques et peuvent fortement varier entre les constructeurs (avec parfois de gros ratés, tels que celui du capteur d’empreintes digitales du Samsung S10 [6]). De plus, ces systèmes de biométrie peuvent simplement être contournés par la saisie d’un code PIN. En effet, en cas d’échec de la reconnaissance biométrique, l’utilisateur se voit toujours proposer la saisie d’un code. Du point de vue de la sécurité de bout en bout, la sécurité du système reste donc celle du code PIN ! Une personne malveillante a donc plutôt intérêt à voler le code PIN plutôt que d’usurper le capteur biométrique.
La technologie de reconnaissance de l’écriture proposée ici est donc un moyen de sécuriser la saisie des codes PIN, par l’ajout d’une couche de biométrie comportementale. Si une personne malveillante vole votre code PIN, elle ne pourra pas le saisir puisque le téléphone ne reconnaîtra pas son écriture. Enfin, il s’agit d’une biométrie plus respectueuse de la vie privée : par un procédé de protection de la vie privée appelé “biohashing” [7], la représentation des chiffres tracés par l’utilisateur est transformée en une empreinte irréversible (il n’est pas possible de retrouver le tracé à partir de l’empreinte). Cette empreinte est le seul élément à quitter le terminal, et sert à valider l’authentification dans le cloud (code valide et écriture reconnue). Ainsi, le risque de piratage de l’écriture est moindre, a contrario de la reconnaissance faciale ou de l’empreinte digitale [8].
[1] SECURING SMARTPHONE HANDWRITTEN PIN CODESWITH RECURRENT NEURAL NETWORKS (pdf)
[2] Technical Correspondence (pdf)
[3] Le mot de passe, c’est vous
[4] Mot de l’innovation : TALN
[5] Qu’est-ce que le « SIM swapping », qui a permis de pirater le compte du patron de Twitter ?
[6] Le lecteur d’empreinte digitale des Galaxy S10 de Samsung trompé par un film protecteur
[7] Biohashing: two factor authentication featuring fingerprint data andtokenised random number (pdf)
[8] 27,8 millions de données touchées par une faille de sécurité chez un spécialiste du contrôle d’accès biométrique