Lösenord

Från Wikipedia
Hoppa till: navigering, sök

Ett lösenord är ett eller flera ord eller en kombination tecken som är hemliga. Ett lösenord består av en kortare sekvens bokstäver och andra tecken, ibland bildande riktiga ord och ibland helt nonsensartade kombinationer. Den som känner till lösenordet kan använda det för att autentisera sig själv i något sammanhang. Ett exempel är inloggningen till ett e-postkonto.

Självständiga lösenord och komplement[redigera | redigera wikitext]

Lösenord kan förekomma för sig själva, som Ali Babas ”Sesam, öppna dig” eller en portkod. Vanligast är dock att lösenordet är ett komplement, som i fallet kod till bankomater, där både ett fysiskt kort och ett lösenord krävs för att ta ut pengar. I datorsammanhang är lösenordet ofta ackompanjerat av ett användarnamn, och båda måste då anges korrekt för att tillträde ska ges. Också om användarnamnet har annan användning fungerar det ofta också som en utökning av lösenordet.

Lösenord i datorsammanhang[redigera | redigera wikitext]

Vid en direktsändning i TV under 1970-talet kunde en tittare se när programmets talare matade in lösenordet i datorn.[källa behövs] Efter detta skrivs lösenord aldrig ut i klartext utan endast symboltecken eller inga tecken alls visas för den som skriver in lösenordet.

Ju längre och mer avancerade lösenord man använder, desto svårare är det för crackare att knäcka dem. Samtidigt blir de svårare att minnas, varför krav på långa lösenord ofta leder till längre men enklare lösenord, lösenord som byts mer sällan och används i många olika system (varav en del kan vara opålitliga) eller lösenord som varieras på triviala sätt.

Lösenord i Unix[redigera | redigera wikitext]

Lösenordens utveckling i Unix ger en bild av problematiken.

För att ett lösenord skall kunna kontrolleras måste det sparas på något sätt på det system som skall autentisera användaren. I operativsystemet Unix sparades lösenordet traditionellt i en fil som kunde läsas av alla användare, men i en form ur vilken lösenordet inte kan härledas: nollor och ett par angivna tecken (”salt”) krypterade med lösenordet. Krypteringsalgoritmen var modifierad på ett sätt som skulle göra krypteringen – och därmed masstest av lösenord – långsam också på specialkonstruerad maskinvara. En angripare som gissar lösenord måste testa lösenordet skilt för varje användare eller för varje salt.

Under 1990-talet började datorerna bli så kraftfulla att de traditionella Unix-lösenorden på högst 8 tecken ofta inte längre räckte, om angriparen fick testa lösenord på sin egen maskin. Ett välvalt lösenord på 6 tecken (26×6 ger drygt 68 miljarder möjligheter) räcker fortfarande långt, men typiska lösenord börjar vara möjliga att knäcka på en uppsättning hemdatorer. Då flyttades lösenorden över till en fil som endast kan läsas av administratören och vissa serverprogram. Därmed kan antalet gissningar per sekund begränsas, i den mån filen inte läcker ut. Parallellt med detta utvecklade man andra algoritmer, som framförallt gav möjlighet till längre lösenord, som ger större säkerhet utan lika strikta krav på hur de väljs.

Resonemanget ovan gäller i huvudsak lösenord som är att betrakta som en slumpmässig samling tecken. Sådana lösenord kan man åstadkomma till exempel genom att ta den andra bokstaven i varje ord i en ramsa, som inte är allmänt känd, och byta vissa bokstäver mot andra tecken: ”minns att gå till butiken varje dag!” kunde bli ”it8iuAd!” (åäö stöds inte).

Om lösenordet är ett riktigt ord, en kombination av ord, ett felvänt ord, ett namn, ett telefonnummer eller liknande kan det ofta gissas utan större ansträngning. Det finns datorprogram som givet en lista på lösenord i den form de sparats går igenom en uppsättning ordböcker, ord- och namnlistor och information som kan fås om användaren, modifierar dessa enligt givna mönster och testar alla kombinationer. Med tillgång till lösenordsfilen kan miljoner möjligheter testas utan problem. Ett mindre antal triviala kombinationer kan testas utan tillgång till lösenordsfilen i den mån en dator tillåter inloggning över nätet.

Istället för lösenord kan man i en del system använda långa maskinellt genererade nycklar, möjligen i sin tur krypterade med hjälp av ett lösenord. Detta används till exempel av SSH, SSL och Kerberos.

Lösenordens styrka[redigera | redigera wikitext]

Lösenord knäcks oftast genom Brute-Force och ordboksattacker, men även Rainbow Tables kan användas för att knäcka dem. Oftast blir lösenord som krypteras till databaser och operativsystem krypterade i MD5 eller SHA-1.

\mathbf k=b^t

b = "bas"
t = "antal tecken"
k = "kombinationer"

Baser Kombinationer
Bas Beskrivning 6 tecken 8 tecken 10 tecken
26 Endast små bokstäver. 0,3 mrd 21 mrd 141 167 mrd
52 Små och stora bokstäver. 20 mrd 53 459 mrd 14 455 510 mrd
62 Stora + små bokstäver och siffror. 57 mrd 218 340 mrd 839 299 365 mrd
83 Stora + små bokstäver, siffror och
specialtecken i ASCII.
327 mrd 2 252 292 mrd

Metoder för att komma runt säkerheten[redigera | redigera wikitext]

Lösenord på datorn behöver kan ibland kringgås inte alltid vara säkra bara för att lösenordet är starkt. Datormiljön erbjuder speciella utmaningar så som avlyssning av trafik, tangentloggning och även återställningfunktioner som ibland kan användas för att komma runt ett lösenord, även programsårbarheter kan användas för att komma runt lösenord.[1]

Metoder för att skapa starka lösenord[redigera | redigera wikitext]

För att skapa starka lösenord kan man blanda versaler, gemener, siffror och specialtecken: använda många typers tecken. Man kan undvika kända ord och namn, eller ord och namn som någon utomstående kan koppla till lösenordets innehavare.[2][3]

Se även[redigera | redigera wikitext]

Källor[redigera | redigera wikitext]

  1. ^ http://www.offlinetalk.com/index.php/topic,12.msg30/
  2. ^ https://www.testalosenord.se/
  3. ^ http://www.alltomdatasakerhet.se/index?view=losenord