Vers de la micro-authentification avec MicroID

Vous connaissiez l’authentification avec identifiant et mot de passe, mais connaissez-vous la micro-authentification ? Pour faire simple il s’agit non pas d’authentifier un utilisateur de façon formelle (en lui demandant ses codes d’accès) mais plutôt de faire de l’authentification « silencieuse ».

Explication : lorsque vous rédigez un commentaire vous pouvez saisir un nom, un email et une URL, mais qui me dit que c’est bien vous ? Pour être plus précis, rien ne vous empêche d’utiliser le nom et l’email de quelqu’un d’autre.

Et c’est là où MicroID entre en scène : ce protocole d’authentification permet de certifier l’identité d’un internaute lorsqu’il dépose un commentaire sur un blog ou fait des modifications dans un wiki. Inutile de vous emballer, ce mécanisme de certification n’est pas inviolable (loin de là) mais il apporte une solution simple et élégante.

Vous noterez donc la subtile différence entre OpenID et MicroID : le premier sert à authentifier un utilisateur sur une service, le second sert à authentifier l’auteur d’un micro-contenu.

Tout repose sur un code (la fameuse MicroID) qui est généré à partir de la concaténation de votre email et d’une URL. Cette URL peut être celle de votre blog ou celle de votre service de gestion d’identité numérique comme ClaimID. Ce code va ensuite servir de clé d’authentification.

Donc pour faire simple :

  1. Vous allez sur le site MicroID.org pour vous créer votre propre MicroID ;
  2. Vous publiez cette MicroID sur la page d’accueil de votre blog (ou sur votre page de profil) ;
  3. Lorsque vous publiez un commentaire (ou du contenu sur un service compatible), le mécanisme compare la concaténation de vos email/URL à celle publiée sur votre blog ;
  4. Si c’est la même MicroID, alors votre identité est certifiée, vous êtes bien celui que vous prétendez être.

Voilà, MicroID est aux mécanismes de certification ce que les microformats sont au web sémantique : une solution très simple à implémenter qui propose un premier niveau de service tout à fait acceptable.

Bien évidement vous ne vous servirez jamais de MicroID pour payer vos impôts en ligne ou gérer vos comptes bancaires, mais par contre c’est une solution extrêmement bien adaptée aux médias sociaux : un moyen simple de contrôler la prolifération de micro-contenus (commentaires, modifications…) sans pénaliser les utilisateurs (ils n’ont rien à faire si ce n’est paramétrer leur MicroID).

Pour en savoir plus sur ce protocole, je vous recommande la page de Wikipedia ou leur blog. Pour l’instant une petite dizaine de services compatibles (Last.fm, Wikitravel, Digg…) mais la liste devrait s’allonger.

Il existe un plugin WordPress pour  implémenter MicroID dans les commentaires mais il n’est malheureusement pas compatible avec la dernière évolution majeure (la V 2.5), enfin je crois. Quelqu’un peut-il me renseigner là-dessus ?

MaJ (17/07/2008) : Après lecture des différents commentaires je me rend compte que quelque chose m’échappe dans le processus d’authentification utilisé. Je pense qu’il n’est pas si simple de détourner une MicroID mais leur site web manque effectivement d’explications sur la viabilité du processus. A suivre…

33 commentaires sur “Vers de la micro-authentification avec MicroID

  1. Je vais un peu plus dans mon idée de départ :

    Est-ce qu’on pourrait imaginer que les micro-formats permettent aux internautes de maitriser les conditions d’accessibilité de leurs documents ? Après tout, si les micro-formats facilitent l’accessibilité pourquoi ne pas imaginer qu’il permettent de la mettre sous conditions ??? Il s’agirait ici d’accessibilité conditionnelle au travers des micro-formats ???

    Présentation sur micro-formats et accessibilité
    http://216.239.59.104/search?q=cache:OsEM8RtkaTUJ:inova.snv.jussieu.fr/evenements/colloques/servonline/fichiers/Ourghanlian_Slides.0.ppt+micro+formats+et+accessibilit%C3%A9&hl=fr&ct=clnk&cd=7&gl=fr&lr=lang_fr

  2. En fait, si j’ai bien compris (d’après wikipedia) la sécurité du MicroID repose sur le fait que l’on génère un hash (chaine de caractère) depuis deux clés : une adresse de site web, et un email.

    Si on connait les deux clés, on peut falsifier la signature sans problème (logique!).

    DONC, le MicroID prends pour postulat de base que vous allez générer votre hash d’authentification public avec une adresse email connue de vous seul, et qui à été au préalable vérifiée par une tierce partie.

    l’idée de base étant, je pense, que quand vous entrez un commentaire dans un blog, vous fournissez votre adresse email, mais elle n’est pas publiée. Donc, le moteur du blog est capable de générer le hash et de le comparer à celui de référence…

    Mais tout cela m’apparait bien faible (micro!) comme protection… à tester!

  3. En fait il suffit que la clé soit générée avec un mot secret en plus. Je rentre l’adresse de mon site plus le mot secret, le serveur concatène mon email + mot secret ou url + mot secret, génère la clé md5 ou autre à partir de là et va vérifier sa présence sur le site en question.
    L’avantage c’est que comme ce système sert à valider des commentaires par exemple, on peut décider de changer le mot secret quand on veut sans que ça affecte la validation des commentaires puisqu’elle a déjà été effectuée.
    Néanmoins je ne suis pas complètement sur de l’intérêt vs openId.

    Florence: tu peux regarder autour de l’apml ce qui se fait (mes quelques liens apml si ça t’intéresse : http://www.yoolink.fr/people/sun/tag/apml )

  4. Comme rappelé plus haut, j’imagine que MicroID fonctionne en supposant que lorsqu’on dépose un commentaire, on demande l’adresse email (qui n’est pas publiée) de l’auteur.
    Le système fonctionne alors uniquement si l’adresse mail est connue de l’auteur seul (idem à un mot de passe). Sinon c’est l’usurpation assurée.
    L’adresse du site sert à comparer le hash calculé avec celui publié sur la page (balise meta).
    A ce moment là, on a bien un système viable d’identification.

    Et pour avoir une adresse email « privée », rien ne vaut l’utilisation du « Plus addressing » ( http://en.wikipedia.org/wiki/E-mail_address#Plus_.28or_Minus.29_addressing ) bien répandu – fonctionne chez Gmail, Yahoo, …

    Donc, en « signant » mon commentaire par « michel.dupond+motsecret@gmail.com », je fournis une adresse email valide (mon adresse email que j’utilise tous les jours) et connue de moi seul

    Ca marche non ?

  5. Je ne comprends pas tout ce brassage de vent. Que l’on demande un mot de passe ou une adresse mail, cela reste un facteur d’authentification.

    Pour gérer une identité sur le web, il suffit d’utiliser un système de clé dans l’esprit openpgp.

    Une adaptation aux blogs:
    Le blogueur télécharge sa clé publique sur son blog.
    Quand il poste sur un autre blog, il fournit avec son commentaire un lien vers sa clé publique et signe son message à l’aide de sa clé privée.

    Il suffit ensuite aux lecteurs de vérifier si la signature du message correspond à la clé publique présente sur le blog.

    Ce système est décentralisé et entièrement automatisable. On peut imaginer qu’un plugin présent dans le navigateur se charge de signer et de vérifier tout les messages automatiquement.

  6. Pour authentifier efficacement le visiteur, avec son accord, il faudrait ;
    1/ s’inspirer des spyware via du Javascript,
    2/ ou mieux que les navigateurs ré-introduisent les cookies cross-site.

    A noter que les blogs avec le widget de MyBlogLog (celui des stats non visible ou celui des avatars) disposent en mémoire une variable de l’ID du visiteur (si inscrit et session active). On pourrait imaginer que le commentaire serait accompagné d’une mention du genre « Identité certifiée par MyBlogLog », en plus de remplir automatiquement les champs de saisie.

    Avis aux courageux ; j’ai déjà repéré que les API fournissent tout le nécessaire ;o)

  7. J’ai pas bien compris comment c’est sensé fonctionner mais à mon avis ce qu’il faut c’est faire une sorte de fil des commentaires postés avec un certain pseudo. L’utilisateur qui a enregistré ce pseudo ayant accès à ce fil et pouvant supprimer des messages qui n’auraient pas été postés par lui. Reste à trouver le moyen de s’assurer que la demande de suppression vient bien de l’utilisateur en question …

Laisser un commentaire