Hashcash

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Hashcash est un système de preuve de travail conçu pour limiter le spam et les dénis de service.

Fonctionnement[modifier | modifier le code]

Le principe du hashcash est de prouver qu'on a effectué une quantité de travail avec des ressources CPU. Cette méthode oblige donc les spammeurs à devoir utiliser beaucoup de ressources, par comparaison aux utilisateurs normaux qui n'abusent pas de ces services, tels que l'envoi de courriels ou de commentaires dans les blogs.

Cette méthode évite donc à l'utilisateur de remplir des captchas ou de devoir effectuer des micropaiements, la part de CPU requis étant négligeable pour l'utilisateur.

Détails techniques[modifier | modifier le code]

On utilise souvent des algorithmes tels que SHA-1, MD5. Pour les courriels par exemple, on demande à l'expéditeur du message d'envoyer un champ d'en-tête tel que celui-ci [1]

   X-Hashcash: 1:20:060408:destinataire@example.org::1QTjaYd7niiQA/sc:ePa

On demande à l'expéditeur de trouver un couple 1:20:date:adresse courriel du destinataire:nombre incrémenté qui donnerait un hash sha1 dont les 20 premiers bits seraient à 0, ce qui nécessite environ 2^20 calculs de hash, soit une seconde de calcul environ sur un processeur à 1 GHz. Le destinataire n'a plus qu'à vérifier que la date d'envoi est récente et que le couple est valide.

Applications[modifier | modifier le code]

Ce système peut être utilisé dans tout système où l'on cherche à éviter des attaques répétées en grandes quantités pour un destinataire unique ou multiple, tels que:

Avantages et Inconvénients[modifier | modifier le code]

Avantages[modifier | modifier le code]

  • Il est peu contraignant pour l'utilisateur normal : pas de lettres à recopier avec le système de captcha, pas de système de micropaiement à mettre en place.
  • Ce système permet ainsi d'éviter que les courriels légitimes ne se retrouvent par erreur dans les dossiers indésirables.
  • Pour les listes de diffusion, l'utilisateur doit penser à les mettre dans sa liste blanche pour leur éviter d'avoir à calculer les hashcash

Inconvénients[modifier | modifier le code]

  • Il faut néanmoins que le système qui permet un tel calcul soit implanté, tels que le support du javascript pour les navigateurs, une extension ou un support natif dans les clients de messagerie ou pour les interfaces web mails tels que gmail.
  • Il reste donc nécessaire de vérifier les mails ne contenant pas le champ X-Hashcash, ou de fournir une méthode alternative pour les visiteurs n'ayant pas activé JavaScript.
  • L'efficacité de la méthode à vérifier : si le taux de réponse est assez élevé, les bénéfices peuvent être plus importants que le coût des ordinateurs à utiliser pour générer du SPAM avec hashcash valide.
  • De plus, les PC infectés (zombies) peuvent en calculer sans coût supplémentaire pour les spammeurs, tout en passant de manière assez inaperçue à l'utilisateur (avec un processus tournant en priorité basse).

Logiciels/Plugins utilisant hashcash[modifier | modifier le code]

Liens externes[modifier | modifier le code]