Jan 162012
 

Sedan ett år tillbaka kräver alla certifikatutfärdare att du har nycklar med minst 2048 bitars längd. Det är ett sätt att höja säkerheten på nätet i takt med att datorerna blir mer och mer kraftfulla. Det som var säkert för tio år sedan är inte säkert nu, när en standard-PC har flera CPU-kärnor med en massiv kapacitet.

När används Certifikat-nycklarna?

Nycklarna i certifikaten används för att kontrollera en servers (och kanske också en klients) identitet vid start av en TLS eller SSL-session. Med stöd av dessa starka nycklar skapas en kortare krypteringsnyckel som används för att kryptera dataströmmen. Den används bara för sessionen och kastas därefter. Att kryptera hela dataströmmen med nycklar på 2048 bitar skulle ta alldeles för mycket kapacitet. Genom att använda dessa för att skydda identitetskontroll och utbyte av nycklar för kryptering av sessionen får man en hög säkerhet.

Vad innebär det här för mig?

Om du har ett gammalt certifikat du ska förnya, så måste du skapa nya nycklar och skapa en ny CSR – oavsett vilken webbserver du använder. Att byta nycklar med några års mellanrum är förmodligen en bra idé ändå. Om du söker ett nytt certifikat, så ska du ange minst 2048 bitar när du startar processen med att skapa en CSR och därmed generera nycklarna.

Om programvaran inte stödjer mer än 1024 bitar?

Om din programvara är så gammal att den inte stödjer större nyckellängd än 1024 bitar så har du inget val annat än att uppgradera programmet. Certifikatutfärdarna gör inte några undantag som innebär en lägre säkerhet i certifikatkedjan.

 

Kryptering

 

Kortkurs om SSL och TLSKryptering är matematik och politik i kombination

Kryptering är en teknologi som utvecklades för att dölja information för obehöriga avlyssnare. Det är en teknologi som har haft högkonjuktur i krigssituationer, då man naturligtvis vill kunna kommunicera utan att fiendens styrkor kan läsa det som man kommunicerar.

Detsamma gäller givetvis i datorsammanhang, man vill kunna dölja information som överförs, speciellt när man överför information över ett publikt nät som Internet.

Krypteringsteknologi kan också användas för identifikation i nätverkssammanhang – att avgöra vem man kommunicerar med. Man kan med hjälp av krypteringsteknologi skapa en digital signatur, en sorts namnteckning eller stämpel på ett dokument. Dessutom kan man använda samma teknologi till att kontrollera att dokumentet inte förändrats, att dess integritet har upprätthållits.

Konfidentialitet – att dölja information, identifikation, integritet och oavvisbarhet är grundstenar för nätverkssäkerhet. Utan denna grundläggande säkerhet kommer inte företag och personer att använda Internet för elektroniska affärer.

Kryptoalgoritmer

Grunden i kryptografi är det kodsystem man använder. Det finns flera olika metoder för kryptografi. För varje metod finns ett antal olika sätt att räkna, det som kallas algoritmer. En sådan formel är ofta skyddad av patent och kräver licens för användning.

Metoderna skiljer sig också åt vad gäller hastighet. Ju mer komplicerad och svårgenomtränglig ett sätt att kryptera information är, ju mer tid går åt för datorn som ska kryptera. Ska man att kryptera meddelanden i e-post är det gott om tid, men när det gäller att kryptera nätverkstrafik i hög hastighet mellan två datorer är tidsåtgången ofta kritisk.

Rak kryptering

För rak kryptering, eller symmetrisk kryptering, använder man samma nyckel för kryptering och dekryptering. Det gör att både sändare och mottagare har samma nyckel. Rak kryptering används ofta vid kryptering av en session där hastigheten är viktig. Kryptoformeln är enklare och det gör att det går åt mindre datorkraft för att kryptera och dekryptera information.

Ett problem är överföring av nyckeln, som är gemensam för sändare och mottagare. Den kan inte överföras mellan avsändare och mottagare okrypterad över ett nätverk. Den måste överföras på ett säkert sätt över nätet eller på annat sätt, till exempel på USB-sticka.

Assymetrisk kryptering

Asymmetrisk kryptering baseras på två olika nycklar. Den ena kallas hemlig (ofta också “privat” från engelska “private key”) och den andra öppen (ofta också “publik” från engelska “public key”). Kryptering med den ena nyckeln kan endast dekrypteras med den andra. Nycklarna hänger alltså mycket intimt ihop. Det gör att man kan göra den ena nyckeln, som man kallar den öppna nyckeln, fritt tillgänglig.

Eftersom nycklarna är beroende av varandra kan man vara säker på att information man kan dekryptera med den ena nyckeln är krypterad med den andra. Omvänt kan man också vara säker på att om man krypterar information med en nyckel, kan den bara dekrypteras med den andra.

Asymmetrisk kryptering används ofta vid identifiering, till exempel digitala signaturer. Det används också för säkra meddelanden.

När väljer man vad?

Två parametrar som är utslagsgivande är behovet av säkerhet och behovet av snabbhet. Ju längre krypteringsnyckel som används, ju långsammare går det för datorn att kryptera materialet.

En symmetrisk kryptering är alltid snabbare och enklare för datorn att jobba med än asymmetrisk. Samma sak gäller tyvärr också för den som ska knäcka koden.

Den asymmetriska krypteringen ger fördelar i form av identifiering – man vet vilken nyckel som krypterat informationen. Om nyckeln är kopplad till en person eller företag kan man säkert avgöra vem eller vilket företag som har krypterat.

Det gör att för sessionskryptering, som i hög grad är beroende av hastighet, använder man symmetrisk kryptering. För identifikation och elektroniska signaturer används asymmetrisk kryptering. Många gånger använder man både och. En SSL-session använder stark asymmetrisk kryptering för att komma överens om en tillfällig symmetrisk nyckel, något som är svagare.

Nyckelns längd är avgörande

När krypteringen utförs av datorer kan den också knäckas med datorer. Därför är nyckelns längd avgörande. Ju längre nyckellängd, desto längre tid tar det att knäcka. Det handlar givetvis också om algoritmen, men ofta använder man en känd algoritmenl och då är nyckelns kvalitet och längd avgörande faktorer.

Idag används 40-bitars symmetrisk kryptering för SSL-sessioner i webben, krypterade sessioner som används till exempel för Internetbanker. Inom USA används 128 bitars kryptering, men exportreglerna begränsar nyckelns längd vid export av amerikanska programvaror. 40 bitars kryptering tar inte lång tid att knäcka och är inte ett bra skydd som ger konfidentialitet för din dataöverföring.

För identifiering används asymmetrisk kryptering, med ett nyckelpar som hör ihop. För sådana finns inte samma exporthinder, vilket gör att man här kan använda nycklar med 512 eller 1024 bitar.

Patent & Licenser

Algoritmer för kryptering är väl skyddade av patent och företag som licensierar ut teknologi. RSA var ett amerikanskt företag som ägde många rättigheter till kryptering och licensierar ut till andra företag. En del av patenten för RSAs algoritmer gick ut i september 2000.

Exempel: Säker e-post

Om person X får brev från Y och Y har krypterat brevet med sin privata nyckel kan X tack vare nyckelhanteringen vara säker på att brevet kommer från Y. Brevet är dock inte skyddat för läsning av andra eftersom vem som helst kan få tag på en publik nyckel.

Om Y dessutom krypterar brevet med X publika nyckel, kan bara X läsa brevet med hjälp av sin egen privata nyckel.

Då har man dels säkrat meddelandet för obehörig läsning, dels säkerställt avsändarens identitet.

 

 

Länkar