I tabellen ovan jämför vi TechWorlds labbdator med den angivna prestandan på klustret bestående av tjugofem grafikkort. Klustret är cirka tjugofem gånger snabbare än TechWorlds labbdator. Kostnaden för klustret uppskattas till cirka trehundratusen kronor.
Vi uppgav tidigare att ett lösenord på nio slumpmässiga tecken är starkt nog för att skydda mot en angripare med ett grafikkort. Ett sådant lösenord knäcks av Jeremi Gosney grafikkortskluster på cirka 93 dagar – ännu starkare lösenord krävs alltså. Ett ord med tio slumpmässigt utvalda tecken skulle ta cirka tjugoåtta år att knäcka med Jeremi Gosneys kluster, så det borde avskräcka de flesta angripare.
Gratisverktyget Hashcat kan användas för att knäcka lösenord med hjälp av grafikkort. Det har stöd för de flesta populära hash-algoritmerna.
Men hur starkt lösenord behövs om vi leker med tanken att vi vill skydda våra lösenord mot en ännu mer resursstark angripare, till exempel en underrättelsetjänst som FRA? Många sådana organisationer hemlighåller specifikationer på sina superdatorer, så det är svårt att uppskatta deras knäckningskapacitet. Om vi gör några antaganden kan vi dock göra en grov uppskattning:
- Underrättelsetjänsten har en budget i paritet med de dyraste superdatorerna i världen, och sådana specifikationer finns redovisade offentligt.
- Det är möjligt att utföra knäckning av lösenord distribuerat på ett mycket stort antal grafikkort utan någon prestandaförlust.
Världens snabbaste dator
Den snabbaste superdatorn i världen vars specifikation är känd i november 2012 var superdatorn Cray Titan. Den består av 18 688 stycken Nvida Tesla K20-grafikkort och den uppges kosta cirka 630 miljoner kronor. Om kostnaden för ett sådant inköp slås ut över flera budgetår kan vi anta att det ryms inom budgetramen för FRA, som för 2013 ansökt om en budget på cirka 821 miljoner.
Om vi antar att Nvida Tesla K20 har liknande prestanda som vår labbdators grafikkort AMD HD 7970 (tester har dock visat att HD 7970 är snabbare för flera typer av beräkningar) kan vi göra en grov uppskattning på att Cray Titan är 19 200 gånger snabbare än vår labbdator. Det innebär att Cray Titan kan utsätta ett lösenord skyddat med ntlm för cirka 4,58 x 10^14 knäckningsförsök per sekund. Det betyder att en uttömmande sökning av ett lösenord bestående av elva helt slumpmässiga tecken tar cirka fyra år. Tolv helt slumpmässiga tecken tar cirka 479 år.
Innehållsförteckning
alu, arithmetic logical unit: Enhet för aritmetiska och logiska operationer.
asic, application specific integrated circuit: Krets designad för en specifik uppgift.
cpu, central processing unit: Enhet i en dator som exekverar ett program.
fpga, field programmable gate array: Krets som kan konfigureras efter konstruktion.
gpu, graphics processing unit: Processor som finns på grafikkort. Arbetar med högre grad av parallellisering än en normal processor.
hash: Envägsfunktion. Resultatet från en hash går inte att räkna baklänges till vilka indata som angetts.
instruktionspipeline: Instruktionspipeline är en teknik som används vid tillverkning av proccessorer för att höja processorns genomströmning av instruktioner. Kan liknas vid löpande band-principen inom biltillverkning. Varje steg i pipelinen utför en liten specialiserad uppgift innan resultatet skickas vidare till nästan pipeline-steg.
ntlm, nt lan manager: Det sätt som användes för att autentisera Windows NT-klienter mot ett Windows NT-nätverk.
regnbågstabell: Tabell med förberäknade hash-kedjor. Snabbar upp formering av osaltade lösenord och därmed knäckning av krypterade lösenord.
salt: Slumpmässigt värde som läggs till ett lösenord för att göra det svårare att knäcka lösenordet. Lagras i klartext tillsammans med det krypterade lösenordet.
simd, single instruction single data:
Processorarkitektur där varje instruktion appliceras på data lagrad i en minnescell.
sisd, single instruction multiple data: Processorarkitektur där varje instruktion appliceras på data i flera minnesceller samtidigt.