Beskrivning
Infrastrukturer för offentliga nyckelringar, eller PKI:er, håller på att bli många organisationers säkerhetsryggrad, eftersom de tillhandahåller autentisering och identifiering till enheter, individer eller applikationer som arbetar inom ett företags nätverk. Sättet en PKI fungerar på är att en enhet, användare eller applikation som vill arbeta i en organisations nätverk skickar ut ett Certifikatsigneringsbegäran (CSR), som innehåller deras publika nyckel och den information som behövs för att skapa ett certifikat för den användaren. Den publika nyckeln är en del av ett nyckelpar som skapas av begäraren och som består av en privat och en publik nyckel. Den privata nyckeln hålls hemlig för alla, medan den publika nyckeln används för att matcha meddelanden, certifikat eller annan kommunikation som signerats av den privata nyckeln med motsvarande publika nyckel. CSR:n skickas till en utfärdande certifikatutfärdare, eller CA, som ansvarar för att utfärda och hantera certifikat. När begäran har godkänts skickas certifikatet till den som begär det.

Figur 1: Ett diagram över hur en CSR fungerar
Dessa certifikat innehåller information om certifikatägaren, inklusive den utfärdande certifikatutfärdarens namn, certifieringssökvägen, begärarens publika nyckel och mycket mer. Certifikat delar certifikatägarens identitet med andra enheter, applikationer och användare i nätverket, så att de vet att certifikatägaren kan litas på. Detta förtroende fastställs via certifieringssökvägen, eller certifikatkedjan, för det certifikat som utfärdats till certifikatägaren.
Att förstå förtroendekedjan
Som tidigare nämnts är en del av ett certifikat certifieringsvägen, eller förtroendekedjan, för certifikatet. Denna förtroendekedja är en väg som länkar certifikatägarens certifikat tillbaka till rot-CA:ns certifikat. Anledningen till en förtroendekedja är att ge den förfrågande tjänsten eller användaren förtroende för det certifikat vars kedja de följer. När en webbläsare ansluter dig till en webbplats är det första de gör att kontrollera webbplatsens certifikat. Om certifikatet som används av webbplatsen visar sig vara giltigt kontrollerar webbläsaren sedan förtroendekedjan för certifikatet. Även om certifikatet fortfarande är giltigt måste webbläsaren även verifiera mellanliggande, utfärdande och rot-CA:ns certifikat.

Figur 2: Ett exempel på ett certifikat
Bilden nedan är ett exempel på hur en Chain of Trust ser ut. Certifikatet längst ner, med namnet *.krypteringskonsultering.com är den här webbplatsens certifikat. Certifikatet som heter R3 är mellancertifikatet och certifikatet som heter DST-rot CA X3 är rotcertifikatet. Flera komponenter kontrolleras på vart och ett av dessa certifikat:
- Utfärdaren av det certifikat som visas måste matcha namnet på det föregående certifikatet i kedjan.
- Kedjans topp måste vara ett betrott certifikat.
- Det nuvarande certifikatet måste signeras med den hemliga nyckeln från det föregående certifikatet i kedjan.

Figur 3: Ett exempel på en certifieringsväg
Anledningen till att detta kallas för förtroendekedjan är att toppen av kedjan ger implicit förtroende till resten av kedjan. Det översta certifikatet i en förtroendekedja är alltid en välkänd och betrodd rot-CA som är explicit betrodd i webbläsarens certifikatarkiv. Eftersom denna rot-CA är explicit betrodd kan alla certifikat den utfärdar också vara implicit betrodda. Detta beror på att explicit förtroende för en CA innebär att du också litar på att den bara distribuerar certifikat till andra betrodda källor. Det implicita förtroendet sipprar ner genom förtroendekedjan och gäller alla mellanliggande och utfärdande CA:er inom den kedjan, såväl som det slutliga certifikatet för webbplatsen som verifieras. Således upprättas en betrodd och säker anslutning mellan webbplatsen och webbläsaren.

Rotcertifikat
Rotcertifikatet är kärnan i förtroendekedjan, där allt förtroende härrör. Rotcertifikatet är certifikatet för en rot-CA. Dessa rotcertifikat, eller betrodda certifikat, lagras i certifikatarkiv, även känt som ett betrott rotarkiv. Dessa arkiv innehåller certifikatet och den offentliga nyckeln för alla betrodda rötter och är förinbyggda i enhetens operativsystem eller via tredjepartsrotarkiv i applikationer som webbläsare. Genom att bygga in dessa rotarkiv i enheten innan den används går godkännandet av många certifikat mycket snabbt, eftersom de flesta organisationer som använder offentliga PKI:er använder samma som redan är betrodda. Det innebär att alla certifikat som signeras av betrodda rot-CA:er automatiskt är betrodda.
Rotcertifikatutfärdare används för att utfärda certifikat till mellanliggande och utfärdande certifikatutfärdare. När dessa andra certifikatutfärdare etableras används ett korssignerat certifikat i motsats till ett vanligt certifikat. Ett korssignerat certifikat är ett certifikat som signeras av en annan certifikatutfärdare, som redan är betrodd, för den nyskapade och icke-betrodda certifikatutfärdaren. Detta gör det möjligt att skapa en certifikatkedja som leder tillbaka till en redan betrodd certifikatutfärdare, tills den nyskapade certifikatutfärdaren har bevisat sitt förtroende och förtjänat sitt eget betrodda certifikat. En annan viktig punkt med rotcertifikat är att de utfärdas för en längre tidsperiod än vanliga certifikat. Ett genomsnittligt certifikat utfärdas för en period på cirka 4–6 månader. Rotcertifikat, å andra sidan, tenderar att utfärdas i 20 år, eftersom de måste vara giltiga längre så att PKI:n inte kollapsar.
Root-CA:er bör aldrig heller utfärda certifikat till slutanvändare, eftersom kompromettering av ett rotcertifikat skulle krossa hela PKI:n. Om en hotaktör skulle ta kontroll över ett rotcertifikat skulle de kunna utfärda så många certifikat de ville till vilken enhet som helst. Detta skulle göra det möjligt för dem att infiltrera ett nätverk helt oupptäckt och stjäla känslig information, plantera skadlig kod i applikationer eller förstöra viktig infrastruktur. Istället används mellanliggande certifikat för att utfärda certifikat till slutanvändare. Låt oss nu ta en titt på mellanliggande certifikat.
Mellancertifikat
Mellanliggande certifikat ges till mellanliggande CA:er, som utför uppgifter som rot-CA:er vanligtvis gjorde tidigare. Eftersom det är osäkert att ha mer än en rot-CA skapas flera mellanliggande CA:er. Rot-CA:er hålls offline hela tiden, så mellanliggande CA:er fungerar som online-rot-CA:er, utan risk att lamslå hela PKI:n.
Så här skapas en mellanliggande CA är enkel:
- Först signerar rot-CA:n den mellanliggande CA:ns certifikat, det mellanliggande certifikatet, med sin egen privata nyckel, vilket gör det mellanliggande certifikatet tillförlitligt.
- Den mellanliggande certifikatutfärdaren har nu möjlighet att använda sitt mellanliggande certifikat för att signera slutanvändarcertifikat.
- Mellanliggande CA:er kan också signera andra mellanliggande CA:ers mellanliggande certifikat, vilket skapar fler länkar i förtroendekedjan som leder tillbaka till rotcertifikatet.
Att använda mellanliggande certifikatutfärdare hjälper till att minska risken med att använda certifikatutfärdare. Om du tänker på en PKI som ett träd, om en mellanliggande "gren" skulle komprometteras, skulle den "grenen" kunna beskäras från PKI:n, vilket gör att resten av PKI:n kan fortsätta existera. Om "roten" till PKI:n, den faktiska rot-CA:n, blir infekterad, skulle det kräva att hela certifikatutfärdaren ersätts. Mellanliggande certifikat är avgörande för att skapa en solid och säker PKI. Mellanliggande certifikatutfärdare lagras på samma sätt som andra certifikat i PKI:n, i ett certifikatarkiv. Ett certifikatarkiv lägger till nya betrodda certifikatutfärdarcertifikat och slutanvändarcertifikat till sig självt för enklare certifikatvalidering i framtiden.
Slutsats
Som ni kan se, även om de har liknande funktioner, är rotcertifikat och mellanliggande certifikat väldigt olika. Rot-CA:er hålls offline och utfärdar endast certifikat till mellanliggande CA:er, aldrig till slutanvändare, eftersom deras kompromettering skulle förstöra PKI:n. Mellanliggande CA:er fungerar som onlineversionen av rot-CA:er, men med ett mellanliggande certifikat snarare än ett rotcertifikat. Mellanliggande CA:er kan utfärda certifikat till andra mellanliggande CA:er, eller till slutanvändare, för vilket ändamål de än behöver dem. Mellanliggande CA:er skiljer sig också något från rot-CA:er genom att deras initiala certifikat är ett korssignerat certifikat, i motsats till ett självsignerat certifikat, vilket är vad rotcertifikatet är. Efter att ha bevisat sitt förtroende utfärdas mellanliggande CA:n sitt eget certifikat och behöver inte längre förlita sig på det korssignerade certifikatet.
Utan rotcertifikat och mellanliggande certifikat bryts hela förtroendekedjan för en PKI. Mellanliggande certifikatutfärdare behövs för slutanvändarinteraktion, medan rotcertifikatutfärdare utgör basen för förtroendekedjan. När du funderar på att designa din egen PKI, se till att du använder både rotcertifikat och mellanliggande certifikat för att få de säkraste systemen som möjligt. För all hjälp som behövs med design och/eller implementering av en säker infrastruktur för offentliga nyckelringar kan du anlita Encryption Consultings tjänster. Vårt erfarna expertteam kan hjälpa dig att skapa din ideala PKI.
