Hvad er et TLS-håndtryk?
TLS-kryptering og autentificeringsprotokol, der beskytter internetkommunikation. TLS handshake er en proces, der sikrer en forbindelse med en server ved hjælp af asymmetrisk kryptografi. Websteder, der anvender et TLS-certifikat, kan udnytte HTTPS-protokollen til at oprette sikker forbindelse til serveren. Denne blog har TLS handshake forklaret i detaljer, herunder TLS handshake-trinnene, arbejdsmetode og meget mere.
Hvad er et TLS-håndtryk?
Ligesom det håndtryk, vi laver i det virkelige liv, er TLS-håndtrykket en introduktion. Den angiver sikker kommunikation mellem to servere, hvor der udveksles meddelelser for at bekræfte hinanden, verificere hinanden, opstille kryptografiske koder og blive enige om sessionsnøgler.
TLS-håndshake-processen starter med den indledende "Hello" og fortsætter til den fase, hvor klient og server kan tale sammen over en sikret forbindelse.
Hvordan fungerer TLS Handshake?
Nu hvor du ved, hvad et TLS-håndshake er, skal vi se, hvordan det fungerer.
TLS-handshake-processen fungerer altså kun, når der er oprettet et TLS-certifikat på serveren for et websted eller program. Dette certifikat indeholder vigtige oplysninger om domæneejeren og serverens offentlige nøgle for at bekræfte serverens identitet. Denne sekventielle proces etablerer en TLS-forbindelse. Så når en bruger anmoder om at få adgang til et websted med TLS-aktivering, begynder TLS-handshaken mellem hans enhed og webbrowseren og udveksler følgende sæt oplysninger:
- Anvendt TLS-version (TLS 1.0, 1.2, 1.3, osv.).
- Vurder de krypteringssuiter, der skal anvendes.
- Verifikation af serverens identitet ved hjælp af TLS-certifikatet.
- Når den indledende handshake-proces er afsluttet, genereres der en sessionsnøgle til at kryptere meddelelser mellem klienten og serveren.
TLS-håndshaken fastlægger en cipher suite for al kommunikation. En cipher suite beskrives som et sæt algoritmer, der anvendes til at etablere en sikker kommunikationsforbindelse. En vigtig rolle i TLS handshake er at bestemme, hvilken cipher suite der skal anvendes. TLS indstiller matchende sessionsnøgler på tværs af en ukrypteret kanal ved hjælp af kryptografi med offentlige nøgler.
Handshake verificerer også afsenderens ægthed ved at kontrollere serveren ved hjælp af offentlige nøgler. Offentlige nøgler er envejskrypteringsnøgler, hvilket betyder, at ingen andre end den oprindelige afsender kan dekryptere de krypterede data. Den oprindelige afsender bruger sin private nøgle til at dekryptere data.
TLS-håndshake mislykkedes betyder, at forbindelsen afsluttes, og at klienten får vist en fejlmeddelelse "503 Service Unavailable".
TLS vs. SSL-håndtryk
SSL står for Secure Sockets Layer, den oprindelige sikkerhedsprotokol, der er udviklet til HTTP. SSL blev erstattet af TLS, og SSL-håndshakes kaldes nu TSL-håndshakes.
Hvornår finder en TLS-håndtrykning sted?
Browseren forespørger webstedets origin-server, når en bruger anmoder om at navigere på et websted via en sikret forbindelse. Det sker også, når en anden kommunikationskanal anvender HTTPS. Dette omfatter API-opkald og DNS over et sikret netværk.
Trinene i en TLS-håndtrykning
TLS handshake-trinnene består af en række datagrammer eller meddelelser, der overføres mellem klienten og serveren. De præcise trin varierer afhængigt af den type nøgleudvekslingsalgoritme, der anvendes, og de cipher suites, der understøttes af begge sider. Her er, hvad du kan forvente.
Trin 1: Meddelelsen "Client Hello
Klientens server starter TLS-håndshake-processen ved at sende en "hello"-meddelelse til webstedets hovedserver. Meddelelsen består af vigtige oplysninger som TLS-versionen og de understøttede cipher suites samt nogle tilfældige bytes kaldet "client random".
Trin 2: Meddelelsen "Server Hello
Serveren svarer på klientens hello besked ved at sende et svar med et SSL-certifikat, serverens valgte cipher suite og "server random"-strengen, som genereres af serveren.
Trin 3: Autentifikation
I dette TLS-håndtryk bekræfter klienten serverens SSL-certifikat over for den udstedende myndighed. Dette gøres for at bekræfte, at serveren er ægte, og at klienten kommunikerer med domæneejeren.
Trin 4: Premaster-hemmeligheden
Premaster secret, som er en anden tilfældig streng af bytes, sendes af klienten. Den er krypteret med en offentlig nøgle og kan dekrypteres af serveren ved hjælp af en privat nøgle.
Trin 5: Anvendt privat nøgle
Premasterhemmeligheden dekrypteres af serveren.
Trin 6: Sessionsnøgler oprettes
Klienten og tjeneren opretter sessionsnøgler ud fra klientens tilfældige nøgle, serverens tilfældige nøgle og premasterhemmeligheden. Resultatet af alle tre skal være det samme.
Trin 7: Klienten er klar
Klienten sender en sessionsnøgle-krypteret "færdig"-meddelelse.
Trin 8: Serveren er klar
Serveren sender en sessionsnøgle-krypteret "færdig"-meddelelse.
Trin 9: Sikker symmetrisk kryptering opnået
Dette er det sidste TLS-håndshake-trin. Når det er afsluttet, fortsætter kommunikationen ved hjælp af sessionsnøglerne.
TLS 1.3 Handshake - Hvad er forskellen?
TLS 1.3 understøtter ikke RSA, og derfor er trinene lidt anderledes.
Klient Hej
Klienten sender en "Client Hello"-meddelelse, der indeholder protokolversionen, klientens tilfældige kode og en liste over cipher suites. Antallet af cipher suites falder, da der ikke er understøttelse af cipher suites i TLS 1.3-versionen.
Denne meddelelse indeholder også parametre, der bruges til at evaluere premasterhemmeligheden. Dette reducerer håndtrykets længde, hvilket er den primære forskel mellem TLS 1.3-håndtryk og TLS 1.0, 1.1 og 1.2-håndtryk.
Server opretter masterhemmelighed
I dette trin modtager serveren klientens tilfældige og klientens parametre og cipher suites. Da den producerer sin egen tilfældige server, genererer den masterhemmeligheden.
Server Hej og færdig
Server hello indeholder servercertifikatet, den kryptografiske signatur, den tilfældige server og den valgte cipher suite. Den sender også en "færdig"-meddelelse, da den har masterhemmeligheden.
Sidste trin og klient færdiggjort
Klienten verificerer signaturen og certifikatet, genererer masterhemmeligheden og sender en "Finished"-meddelelse.
Sikker symmetrisk kryptering opnået
Når TLS-håndshaken er afsluttet, fortsætter kommunikationen ved hjælp af sessionsnøglerne.
Hvordan læser man TLS-rapporter?
TLS-rapporter kan give værdifuld information om forkert afstemte TLS-håndtryk under MTA-STS-godkendelse sammen med leveringsproblemer. PowerDMARC's TLS-RPT tilbyder rapporter i et menneskeligt læsbart format, der er parset fra originale JSON-filer.
Hvis du vil læse TLS-rapporter fra i dag, kan du starte din gratis prøveperiode hos os!
Hvorfor skal forretnings- og webapplikationer bruge TLS Handshake?
TLS handshake beskytter webapplikationer mod overtrædelser og andre cyberangreb, da HTTPS er den sikrede version af HTTP-udvidelsen. Websteder med TLS-certifikat kan udnytte HTTPS-protokollen til at oprette sikker forbindelse til brugerne. Formålet er at beskytte følsomme oplysninger som f.eks. personlige data, finansielle data, loginoplysninger osv.
- Hvordan ved man, om en e-mail er et fupnummer? - 27. marts 2024
- Hvad er cyberkriminalitet? Typer, konsekvenser og forebyggelse - 22. marts 2024
- Kan man have flere SPF-poster? - 19. marts 2024