Säkerhet

Vi vet att din säkerhet är viktig för dig. Den är viktig även för oss. Du ska känna dig trygg när du använder mkey för att hantera ditt företags koder, lösenord eller andra hemligheter. På den här sidan har vi samlat all nödvändig information om kryptering och andra säkerhetsaspekter i mkey.

Kryptering

mkey använder sig av AES256 vilket är standardalgoritmen som används vid symmetrisk kryptering. Utöver detta använder sig mkey av AES256 med:

- Cipher Block Chaining (CBC) mode vilket gör att all data är beroende av föregående data. Detta är för att förhindra möjligheten att kunna läcka information via det krypterade datat. En unik IV per kod vilket gör att man inte kan utläsa lösenorden på de krypterade texterna, även om man har två koder med exakt samma lösenord.

mkey använder också en fixed lenght padding scheme med slumptecken vilket förhindrar att lösenordets längd kan gissas eller läsas ut. Genom att använda denna padding scheme, blir lösenordet alltid 510 tecken långt vid kryptering vilket gör det omöjligt att veta vilka lösenord som är svaga eller starka. På så sätt förhindras även riktade brute-force-attacker mot svaga inloggningsuppgifter (en modifierad variant av ISO-10126).

Login till mkey

Alla användarlösenord för access till mkey är hashade med en unik hemlighet, så kallad salt. Hashningsalgoritmen som används kallas PBKDF2 och är enligt internationell krypteringsstandard.

En hash är en så kallas envägsfunktion; ett unikt värde som genereras från data som inte kan gissas eller avkrypteras och saltet används för att ytterliga stärka säkerheten då den gör att man inte kan använda färdigräknade tabeller (rainbowtable) för att kunna avläsa vilken hash som tillhör vilket lösenord. I och med detta försvårar vi möjligheten att kunna återskapa ditt lösenord från hashen vid en eventuell dataläcka, vilket betyder att ditt lösenord till mkey är i säkert förvar.

Utöver lösenord kan du även välja att aktivera 2-faktorautentisering för inloggning till mkey. Systemet kommer då att skicka en SMS-kod till ditt mobilnummer och efter att du angett ditt vanliga användarnamn och lösenord måste du även ange SMS-koden. 

Efter lyckad inloggning kommer just den enheten du loggade in via att anses som betrodd i en begränsad tid och sedan kommer du behöva förnya SMS-inloggningen. Loggar du in via en ny enhet, exempelvis mobilen, kommer systemet att kräva SMS-inloggning för den enheten. 

Slumpgenerering

Detta är en av de viktigaste säkerhetsfunktionerna för en lösenordshanterare. Alla slumpvärden som genereras i mkey, så som SMS-koden vid 2-faktorinloggning och koden/lösenorden för hemligheterna som du lagrar i systemet, använder sig av .Nets inbyggda RNGCryptoServiceProvider.

Detta kanske låter som grekiska, men kortfattat kan datorer inte generera verkliga slumpvärden i och med att de följer regler och logik. Därför finns det algoritmer som generar slumpvärden enligt vissa grundvärden. Desto bättre entropi dessa grundvärden har, samt ju fler olika källor man använder, desto säkrare är slumpvärdet. I och med att mkey använder sig av RNGCryptoServiceProvider har systemet många källor och väldigt komplexa slumptalsalgorimer vilket i sin tur gör att man inte kan gissa sig fram till lösenordet.