Salasanojen kierrättäminen on äärimmäisen ongelmallista. On valitettavaa, että ihmiset eivät tiedä, mitä riskejä heidän tileihinsä ja tietoihinsa liittyy. Hyökkääjät käyttävät vanhoista tietovuodoista saatuja sähköpostiosoitteita ja salasanoja yrittäessään saada pääsyn muille verkkosivuille. Satunnaisia salasanoja luovat salasanojen hallintaohjelmat ovat erinomainen keino näitä hyökkäyksiä vastaan, sillä ne luovat yksilöllisen salasanan joka sivustolle. Mutta entä kaikki vanhat salasanat? Olemme juuri julkaisseet uuden ominaisuuden, jonka avulla käyttäjät voivat tarkistaa salasanansa valtavaa tietokantaa vasten haveibeenpwned.comin avulla. Tämän uuden työkalun ansiosta on mahdollista tarkistaa salasanoja lähes 5 miljardin tunnuksen ja salasanan joukosta.
Pwned Passwords -palvelu perustettiin elokuussa 2017, kun NIST julkaisi suosituksen, että käyttäjän antamat salasanat tulisi tarkistaa olemassa olevien tietomurtojen perusteella. Tämän neuvon taustaa ja ideoita siitä, miten sovellukset voivat hyödyntää tätä dataa, on selostettu tarkemmin blogikirjoituksessa Introducing 306 Million Freely Downloadable Pwned Passwords. Helmikuussa 2018 palvelusta julkaistiin versio 2, joka sisältää yli puoli miljardia salasanaa, joista jokaisen yhteydessä on myös tieto, kuinka monta kertaa kyseinen salasana on vuotanut.
(Lähde: https://haveibeenpwned.com/Passwords)
Pieni video, joka havainnollistaa miten toiminto käytännössä toimii. API näyttää analyysin etenemisen. Koska kyseessä on ilmainen palvelu, kunnioitamme rajauksia emmekä halua aiheuttaa haittaa, joten pyyntöjä rajoitetaan yhteen 1,5 sekunnin välein.
Ensimmäisessä vaiheessa kaikki salaiset tietosi, jotka sisältävät salasanoja, ladataan palvelimelta. Toisessa vaiheessa jokainen salasana puretaan selaimessasi ennen kuin siitä luodaan sha1-tiiviste. Sha1-tiivisteet ovat 160-bittisiä (eli 40 merkkiä heksadesimaalina). Sha1-tiiviste jaetaan etuliitteeseen (5 heksadesimaalia) ja loppuosaan (35 heksadesimaalia). Etuliite lähetetään haveibeenpwned.com API:lle, joka tarkistaa tietokannastaan kaikki sitä vastaavat tiedot ja palauttaa listan loppuosista. Selain vertailee salasanan loppuosaa saamaansa listaan ja merkitsee salasanan vuotaneeksi tai ei. Tämä on tehokas tapa kyselyyn salasanojen tietokannasta, ilman että salasanaa (tai siitä johdettuja heikompia arvoja) lähetetään palveluun – tätä kutsutaan k-anonymisoinniksi.