Reutilitzar contrasenyes és extremament problemàtic. És trist que la gent no conegui els riscos associats per al seu compte i les seves dades. Els atacants utilitzen adreces de correu electrònic i contrasenyes de filtracions anteriors i intenten accedir a altres llocs web. Els gestors de contrasenyes que generen contrasenyes aleatòries són una mesura perfecta contra aquests atacs, ja que generen contrasenyes diferents per a cada lloc web. Però, què passa amb totes aquelles contrasenyes antigues? Acabem de llançar una nova funcionalitat que permet als usuaris comprovar les seves contrasenyes amb una enorme base de dades gràcies a haveibeenpwned.com. Amb aquesta nova eina al nostre abast és possible comprovar contrasenyes contra un conjunt de dades de gairebé 5.000 milions de comptes amb contrasenyes.
El servei Pwned Passwords va ser creat a l’agost de 2017 després que el NIST publiqués una directriu recomanant específicament que les contrasenyes proporcionades pels usuaris es comprovessin amb dades d’infraccions existents. La raó d’aquest consell i les suggerències sobre com les aplicacions poden aprofitar aquestes dades estan descrites en detall a l’entrada del blog titulada Introducing 306 Million Freely Downloadable Pwned Passwords. Al febrer de 2018, es va llançar la versió 2 del servei amb més de mig milió de contrasenyes, cadascuna d’elles a més amb un comptador de quantes vegades havia estat exposada.
Un petit vídeo que mostra millor com funciona. L’API mostra el progrés de l’anàlisi. Com que és un servei gratuït, respectem el seu límit i no volem causar problemes, per això les sol·licituds estan limitades a una cada 1,5 segons.
En una primera etapa, tots els secrets que contenen les teves contrasenyes es descarreguen des del servidor. En segon lloc, cada secret es desxifra al teu navegador abans de crear una empremta sha1 de la contrasenya. Les empremtes sha1 tenen una longitud de 160 bits (40 caràcters en hexadecimal). L’empremta sha1 es divideix en un prefix (5 caràcters hex) i un sufix (35 caràcters hex). El prefix s’envia a l’API de haveibeenpwned.com, que comprova la seva base de dades i retorna una llista de sufixos. El client compara el sufix de la contrasenya amb la llista de sufixos rebuts i marca la contrasenya com a filtrada o no. Es tracta d’una manera eficient de consultar la base de dades de contrasenyes sense enviar realment la contrasenya (ni derivats febles), i és coneguda com a k-anonimització.