Authentification forte

Un article de Wikipédia, l'encyclopédie libre.

Les trois facteurs possibles pour une authentification forte.
Les trois facteurs possibles pour une authentification forte.

En sécurité des systèmes d'information, une authentification forte est une procédure d'identification qui requiert concaténation d'au moins deux[1] éléments ou « facteurs » d'authentification qui sont :

  • Ce que l'entité connaît (un mot de passe, un code NIP, une phrase secrète, etc.),
  • Ce que l'entité détient (une carte magnétique, RFID, une clé USB, un PDA, une carte à puce, etc. Soit un « Authentifieur » ou « Token »),
  • Ce que l'entité est, soit une personne physique (empreinte digitale, empreinte rétinienne, structure de la main, structure osseuse du visage ou tout autre élément biométrique),
  • Ce que l'entité sait faire, soit une personne physique (biométrie comportementale tel que signature manuscrite, reconnaissance de la voix, un type de calcul connu de lui seul, etc.).

Dans la majorité des cas, l'entité est une personne physique - individu - personne morale, mais elle peut être une machine comme par exemple un serveur web utilisant le protocole SSL ou encore un applet.

Représentation de l'authentification forte sous forme pyramidale.
Représentation de l'authentification forte sous forme pyramidale.

On peut considérer que l'authentification forte est une des fondations essentielle pour garantir :

Sommaire

[modifier] Pourquoi l'authentification forte ?

Le mot de passe est actuellement le système le plus couramment utilisé pour identifier un utilisateur. Il n’offre plus le niveau de sécurité requis pour assurer la protection de biens informatiques sensibles. Sa principale faiblesse réside dans la facilité avec laquelle il peut être trouvé, grâce à différentes techniques d’attaque. Mis à part l’approche, efficace, de l'ingénierie sociale (social engineering), on recense plusieurs catégories d’attaques informatiques pour obtenir un mot de passe :

L'attaque par force brute n'est pas vraiment une méthode de cassage puisque le principe est applicable à toutes les méthodes. Elle est toutefois intéressante car elle permet de définir le temps maximum que doit prendre une attaque sur une méthode cryptographique. Le but de la cryptographie est de rendre impraticable l'usage de la force brute en augmentant les délais de résistance à cette méthode. En théorie il suffit que le délai de résistance soit supérieur à la la durée de vie utile[2] de l'information à protéger. Cette durée varie selon l'importance de l'information à protéger.

[modifier] Technologies d'authentification forte

[modifier] One Time Password (OTP)

Mot de passe à usage unique. Cette technologie permet de s'authentifier avec un mot de passe à usage unique. Cette technologie est basée sur l'utilisation d'un secret partagé. Il n'est donc pas possible de garantir la non-répudiation avec cette technologie.

[modifier] Certificat Numérique X.509 (PKI)

[modifier] Biométrie

Liste TAN.
Liste TAN.

[modifier] Autres systèmes

  • La liste à biffer ou TAN (Transaction Authentication Number). Il s'agit de rentrer un OTP (One-Time Password) provenant d'une liste de code fournie par exemple par la banque.
Fonctionnement d'une carte matricielle.
Fonctionnement d'une carte matricielle.
  • Bingo Card ou carte matricielle. Il s'agit de rentrer un OTP provenant d'une carte matricielle fournie. Ce système utilise les coordonnées en Y et X.
Fonctionnement d'un SMS.
Fonctionnement d'un SMS.
  • Utilisation des SMS. Ce système utilise la technologies des SMS. L'utilisateur reçoit un OTP directement sur son téléphone portable.

[modifier] « Authentifieur » ou « Token » de type OTP

Ce type de « Token » est basé sur un secret partagé unique. Le « Token » contient le secret. Le serveur d'authentification contient le même secret. Grâce au partage de ce dénominateur commun il est alors possible de générer des mots de passe à usage unique (One Time Password). Du fait que ce type de Token utilise un secret partagé il n'est pas possible d'assurer la non-répudiation. La technologie du certificat numérique permet a contrario de garantir la non-répudiation.

Il existe deux modes de fonctionnement :

Fonctionnement d'un token basé sur le temps.
Fonctionnement d'un token basé sur le temps.

[modifier] Token basé sur le temps

Ces tokens utilisent, en plus du secret partagé, un dénominateur commun qui est le temps. Chaque partie est synchronisée sur le temps universel (UTC). On utilise alors un Code NIP comme deuxième facteur d'authentification. Ces Tokens sont définis comme une technologie dite Synchrone. Chaque minute, par exemple, ces Tokens affichent un nouveau « Token Code », le One Time Password.

L'exemple le plus connu est SecurID de la société RSA Security.

Fonctionnement d'un token basé sur un compteur.
Fonctionnement d'un token basé sur un compteur.

[modifier] Token basé sur un compteur

Ces tokens utilisent, en plus du secret partagé, un dénominateur commun qui est un compteur. Chaque partie se synchronise sur le compteur. On utilise alors un Code NIP comme deuxième facteur d'authentification. Le code NIP peut être entré sur un mini clavier. Comme la technologie basée sur le temps, ces Tokens ne sont pas capables d'offrir la non-répudiation. Ces Tokens sont définis comme une technologie dite Synchrone.

Fonctionnement d'un token basé sur un mécanisme de « Challenge Response ».
Fonctionnement d'un token basé sur un mécanisme de « Challenge Response ».

[modifier] Token basé sur un mécanisme de « Challenge Response »

Ces tokens utilisent, en plus du secret partagé, un nombre aléatoire généré par le serveur d'authentification. Le client reçoit ce challenge ou nonce et répond à celui-ci au serveur. On utilise alors un Code NIP comme deuxième facteur d'authentification. Le code NIP peut être entré sur un mini clavier. Comme cette technologie utilise un secret partagée, ces Tokens ne sont pas capables d'offrir la non-répudiation.

Ces Tokens sont définis comme une technologie dite Asynchrone.

[modifier] Type « d'Authentifieur » ou « Token » de type PKI

Carte à puce.
Carte à puce.

[modifier] Carte à puce

Pour sécuriser la clé privée et stocker le certificat numérique, la carte à puce est une solution très efficace. Cette technologie permet aussi d'implémenter d'autres fonctions telles que sécurité des bâtiments, badgeuse, etc.

Généralement, la carte à puce est liée à l'utilisation d'un code NIP ou par l'utilisation de la biométrie.

Lorsque la biométrie remplace le code NIP, le système offre une preuve "quasi absolue" du porteur de la carte (cf technologie Match On Card).

Token USB de la société Aladdin Knowledge Systems
Token USB de la société Aladdin Knowledge Systems

[modifier] Token USB

Ces Token utilise la même technologie cryptographique que les cartes à puces. Ce type de Token est capable de stocker, générer du matériel cryptographique de façon très sécurisé. Ces Token sont définis comme une technologie dite connectée. En d'autre termes il est nécessaire de « brancher » ce Token sur l'ordinateur via le port USB. L'inconvénient majeur de cette technologie est qu'elle n'est pas vraiment portable. Par exemple il est difficile d'utiliser son Token sur une « borne » Internet (Kiosk, Hôtel, etc.).

Exemple de Token hybride.
Exemple de Token hybride.

[modifier] Type « d'Authentifieur » ou « Token » de type Hybride

Ces tokens offrent le meilleur des deux mondes. Ils sont capable de gérer les certificats numériques et d'offrir une solution très portable pour les nomades avec la technologie OTP.

[modifier] Annexes

[modifier] Notes et références

  1. En toute rigueur la multiplication des éléments d'authentification ne fait que la rendre plus complexe. Seuls des éléments ou facteurs inviolables et non subtilisables peuvent assurer une réelle solidité pour une authentification
  2. La durée de vie utile d'une information est la période durant laquelle cette information offre un avantage ou une confidentialité que l'on souhaite préserver de tout usage frauduleux

[modifier] Voir aussi

[modifier] Publications

Articles
Présentations

[modifier] Liens externes

Sites de référence
Directive
Autres langues