Hvordan fungerer SSL-kommunikation sikkert?

I dette blogindlæg vil vi forklare de grundlæggende koncepter og processen bag SSL-kommunikation på en enkel måde ved hjælp af et eksempel fra online shopping fra det virkelige liv.

 

Hvorfor er SSL nødvendigt?

Med den udbredte anvendelse af smartphones og muligheden for at oprette forbindelse til internettet når som helst og hvor som helst, der er blevet en del af vores dagligdag, er behovet for at beskytte personlige og økonomiske oplysninger sikkert blevet mere kritisk end nogensinde. Nylige store databrud viser tydeligt, hvor let de data, vi overfører, kan eksponeres over netværket. I dette miljø, hvis du ser "https://" i stedet for "http://" i et websteds adresselinje, indikerer det, at kommunikationen mellem dig og webstedet er sikret, og en af ​​kerneteknologierne bag denne sikkerhed er SSL (Secure Sockets Layer).
Kort sagt er SSL en teknologi, der krypterer data, der transmitteres over et netværk, for at beskytte dem mod aflytning og manipulation. Mange websteder bruger HTTPS til sikker udveksling af data mellem brugere og servere, og det er især vigtigt ved udveksling af følsomme oplysninger, f.eks. ved online shopping eller netbank.

 

Krypteringsmetoder: Symmetrisk nøgle og asymmetrisk nøgle

Krypteringsmetoder er bredt opdelt i symmetrisk-nøgle og asymmetrisk-nøgle metoder. Symmetrisk-nøgle kryptering er en metode, der krypterer information ved hjælp af en enkelt hemmelig nøgle og dekrypterer den ved hjælp af den samme nøgle. Ligesom forholdet mellem en lås og en nøgle i det virkelige liv, kan enhver, der kender nøglen, læse det krypterede indhold. Det har fordelene ved hurtig behandlingshastighed og enkel implementering.
Asymmetrisk kryptering bruger derimod en anden offentlig nøgle til kryptering og en privat nøgle til dekryptering. Udstederen opretter et par offentlige og private nøgler og distribuerer den offentlige nøgle bredt til andre. Da indhold krypteret med den offentlige nøgle kun kan dekrypteres med den tilsvarende private nøgle, sikres et højt niveau af fortrolighed, hvis den private nøgle opbevares sikkert. Beregningerne er dog komplekse, hvilket resulterer i relativt langsommere hastigheder.
SSL kombinerer styrkerne og svaghederne ved disse to metoder. Asymmetrisk kryptering bruges til sikkerhedsfølsomme, men korte beregningsprocesser, såsom servergodkendelse og udveksling af sessionsnøgler, mens den faktiske dataoverførsel bruger hurtig symmetrisk-nøglekryptering for at opnå både effektivitet og sikkerhed.

 

Sådan fungerer SSL-kommunikation — Et eksempel med en onlinebutik

Lad os undersøge, hvordan SSL fungerer ved hjælp af et typisk online shoppingscenarie. Antag, at en studerende ved navn Ms. CM indtaster sine oplysninger for at købe tøj på online shoppingsiden "12th Street" og klikker på knappen "Køb". Under denne proces overføres følsomme oplysninger såsom kreditkortnumre. Hvis shoppingsiden er falsk og udgiver sig for at være legitim, kan Ms. CM's oplysninger blive stjålet. For at forhindre dette problem gennemgår SSL først en servergodkendelsesfase.
Den indledende proces, hvor klienten (CM) og serveren (12th Street) etablerer en forbindelse, kaldes et "handshake", hvor de verificerer hinandens status. Under handshake sender klienten en besked til serveren, der angiver, at den "ønsker en sikker forbindelse", og serveren sender sit certifikat og sin offentlige nøgle. Dette certifikat udstedes af en betroet certifikatmyndighed (CA) og garanterer, at serverens offentlige nøgle er knyttet til serverens identitet. Klienten verificerer certifikatet for at bekræfte, at denne offentlige nøgle tilhører den ægte 12th Street, og fortsætter derefter kommunikationen med tillid.
Det næste trin er processen med at dele de nøgler, der skal bruges til den faktiske krypterede kommunikation. Klienten genererer et token, der kun er kendt af begge parter (f.eks. en forudbestemt hemmelig værdi eller 'pre-master secret'), og krypterer det ved hjælp af serverens offentlige nøgle, før det sendes. Serveren dekrypterer dette ved hjælp af sin private nøgle for at hente tokenet, og begge parter bruger denne værdi til at generere de symmetriske nøgler, der skal bruges i sessionen. Dette sikrer, at selvom en aflytter opsnapper beskeden midt i, kan de ikke generere de efterfølgende symmetriske nøgler uden tokenet.
De sessionsnøgler, der rent faktisk bruges i SSL, er typisk opdelt i fire typer. Disse er: en nøgle til kryptering af data sendt af klienten, en nøgle til kryptering af data sendt af serveren, en nøgle til at verificere integriteten og oprindelsen af ​​beskeder sendt af klienten, og en nøgle til at verificere integriteten og oprindelsen af ​​beskeder sendt af serveren. Med andre ord består systemet af to typer nøgler til kryptering og to typer nøgler til beskedverifikation, hvilket sikrer kommunikationens fortrolighed, integritet og ægthed.
I praksis tilføjer hver part sine egne verifikationsoplysninger til de data, den sender, når der udveksles beskeder, krypterer dem og sender dem. Den modtagende part dekrypterer dataene og verificerer disse oplysninger for at bekræfte, at beskeden ikke er blevet manipuleret eller forfalsket under transmissionen. Denne proces forhindrer nogen i at ændre eller forfalske beskeden under transmission.

 

Resumé og personlige forholdsregler

Kort sagt er SSL-kommunikation en metode, der autentificerer den anden parts identitet og krypterer data ved hjælp af en sessionsnøgle, der kun er kendt af de to parter. Dette forhindrer tredjeparter i at læse eller ændre dataindholdet og verificerer både meddelelsens oprindelse og integritet. Angribernes metoder udvikler sig dog fortsat, og sikkerhedsteknologierne udvikler sig i overensstemmelse hermed.
I en livsstil, hvor vi konstant er forbundet via smartphones, kan personlige oplysninger spredes vidt omkring, og der er mange tilfælde, hvor autoriserede institutioner eller tjenesteudbydere lovligt indsamler og bruger sådanne oplysninger. Udover bestræbelserne på at styrke den tekniske sikkerhed er det altafgørende, at brugerne anerkender vigtigheden af ​​deres oplysninger og udvikler vanen med at kontrollere, om et websted er troværdigt.

 

Om forfatteren