Nuo HTTP iki HTTPS: TLS, SSL ir užšifruoto ryšio supratimas „Mylinking™“ tinklo paketų tarpininkuose

Saugumas nebėra pasirenkamas dalykas, o privalomas kursas kiekvienam interneto technologijų specialistui. HTTP, HTTPS, SSL, TLS – ar tikrai suprantate, kas vyksta užkulisiuose? Šiame straipsnyje paprastai ir profesionaliai paaiškinsime pagrindinę šiuolaikinių užšifruotų ryšio protokolų logiką ir vaizdine schema padėsime suprasti „už spynų“ slypinčias paslaptis.

Kodėl HTTP yra „nesaugus“? --- Įvadas

Ar prisimenate tą pažįstamą naršyklės įspėjimą?

jūsų ryšys nėra saugus

"Jūsų ryšys nėra privatus."
Kai svetainė nebenaudoja HTTPS, visa naudotojo informacija tinkle perduodama atvirojo teksto formatu. Jūsų prisijungimo slaptažodžius, banko kortelių numerius ir net privačius pokalbius gali užfiksuoti gerai pasirengęs įsilaužėlis. Pagrindinė to priežastis yra HTTP šifravimo stoka.

Taigi, kaip HTTPS ir už jo esantis „vartininkas“ TLS leidžia duomenims saugiai keliauti internetu? Panagrinėkime tai sluoksnis po sluoksnio.

HTTPS = HTTP + TLS/SSL --- Struktūra ir pagrindinės sąvokos

1. Kas iš esmės yra HTTPS?

HTTPS (saugus hiperteksto perdavimo protokolas) = HTTP + šifravimo sluoksnis (TLS/SSL)
○ HTTP: Tai atsakinga už duomenų perdavimą, tačiau turinys matomas atvirojo teksto formatu
○ TLS/SSL: Užrakina HTTP ryšio šifravimą, paversdamas duomenis galvosūkiu, kurį gali išspręsti tik teisėtas siuntėjas ir gavėjas.

HTTPS HTTP TLS SSL

1 pav.: HTTP ir HTTPS duomenų srautas.

„Užraktas“ naršyklės adreso juostoje yra TLS/SSL saugumo vėliavėlė.

2. Koks yra ryšys tarp TLS ir SSL?

○ SSL (saugiųjų jungčių sluoksnis): seniausias kriptografinis protokolas, kuriame nustatyta rimtų pažeidžiamumų.

○ TLS (transporto sluoksnio saugumas): SSL, TLS 1.2 ir pažangesnio TLS 1.3 įpėdinis, pasižymintis žymiais saugumo ir našumo patobulinimais.
Šiomis dienomis „SSL sertifikatai“ yra tiesiog TLS protokolo įgyvendinimai, tik pavadinti plėtiniais.

Gilinimasis į TLS: kriptografinė magija, slypinti už HTTPS

1. Rankos paspaudimo eiga visiškai išspręsta

Saugaus TLS ryšio pagrindas yra paspaudimų šokis sąrankos metu. Panagrinėkime standartinį TLS paspaudimų srautą:

TLS rankos paspaudimo fazė

 

2 pav.: Tipiškas TLS paspaudimo procesas.

1️⃣ TCP ryšio sąranka

Klientas (pvz., naršyklė) inicijuoja TCP ryšį su serveriu (standartinis 443 prievadas).

2️⃣ TLS rankos paspaudimo fazė

○ Kliento pranešimas: naršyklė siunčia palaikomą TLS versiją, šifrą ir atsitiktinį skaičių kartu su serverio pavadinimo indikacija (SNI), kuri nurodo serveriui, kurį pagrindinio kompiuterio vardą jis nori pasiekti (įgalinant IP bendrinimą keliose svetainėse).

○ Serverio pasisveikinimas ir sertifikato išdavimas: serveris parenka tinkamą TLS versiją ir šifrą ir išsiunčia savo sertifikatą (su viešuoju raktu) bei atsitiktinius skaičius.

○ Sertifikato patvirtinimas: naršyklė patikrina serverio sertifikatų grandinę iki pat patikimo šakninio CA, kad įsitikintų, jog ji nebuvo padirbta.

○ Išankstinio šifravimo rakto generavimas: naršyklė sugeneruoja išankstinį pagrindinį raktą, užšifruoja jį serverio viešuoju raktu ir siunčia į serverį. Dvi šalys derasi dėl sesijos rakto: naudodami abiejų šalių atsitiktinius skaičius ir išankstinį pagrindinį raktą, klientas ir serveris apskaičiuoja tą patį simetrinio šifravimo sesijos raktą.

○ Rankos paspaudimo užbaigimas: Abi šalys siunčia viena kitai pranešimus „Baigta“ ir pereina į užšifruoto duomenų perdavimo fazę.

3️⃣ Saugus duomenų perdavimas

Visi paslaugos duomenys yra simetriškai ir efektyviai užšifruojami naudojant suderintą sesijos raktą, todėl net jei jie perimami per vidurį, tai tėra „iškraipytas kodas“.

4️⃣ Sesijos pakartotinis panaudojimas

TLS vėl palaiko sesiją, kuri gali gerokai pagerinti našumą, leisdama tam pačiam klientui praleisti varginantį rankos paspaudimą.
Asimetrinis šifravimas (pvz., RSA) yra saugus, bet lėtas. Simetrinis šifravimas yra greitas, bet raktų paskirstymas yra sudėtingas. TLS naudoja „dviejų pakopų“ strategiją – pirmiausia asimetrinį saugų raktų mainą, o tada simetrinę schemą, kad duomenys būtų efektyviai užšifruoti.

2. Algoritmo evoliucija ir saugumo gerinimas

RSA ir Diffie-Hellman
○ PAR
Pirmą kartą jis buvo plačiai naudojamas TLS patvirtinimo metu, siekiant saugiai paskirstyti sesijos raktus. Klientas sugeneruoja sesijos raktą, užšifruoja jį serverio viešuoju raktu ir siunčia taip, kad tik serveris galėtų jį iššifruoti.

○ Diffie-Hellman (DH/ECDH)
Nuo TLS 1.3 versijos RSA nebenaudojamas raktų mainams, o naudojami saugesni DH/ECDH algoritmai, palaikantys tiesioginį slaptumą (PFS). Net jei privatusis raktas nuteka, istorinių duomenų vis tiek negalima atrakinti.

TLS versija Raktų mainų algoritmas Saugumas
TLS 1.2 RSA/DH/ECDH Aukštesnis
TLS 1.3 tik DH/ECDH Aukščiau

Praktiniai patarimai, kuriuos turi įvaldyti tinklų kūrimo specialistai

○ Prioritetinis atnaujinimas į TLS 1.3, kad šifravimas būtų greitesnis ir saugesnis.
○ Įjungti stiprius šifrus (AES-GCM, ChaCha20 ir kt.) ir išjungti silpnus algoritmus bei nesaugius protokolus (SSLv3, TLS 1.0);
○ Konfigūruoti HSTS, OCSP susegimą ir kt., siekiant pagerinti bendrą HTTPS apsaugą;
○ Reguliariai atnaujinkite ir peržiūrėkite sertifikatų grandinę, kad užtikrintumėte pasitikėjimo grandinės galiojimą ir vientisumą.

Išvada ir mintys: Ar jūsų verslas tikrai saugus?

Nuo paprasto teksto HTTP iki visiškai užšifruoto HTTPS – saugumo reikalavimai keitėsi su kiekvienu protokolo atnaujinimu. TLS, kuris yra užšifruoto ryšio šiuolaikiniuose tinkluose kertinis akmuo, nuolat tobulėja, kad susidorotų su vis sudėtingesne atakų aplinka.

 

Ar jūsų įmonė jau naudoja HTTPS? Ar jūsų kriptovaliutų konfigūracija atitinka geriausią pramonės praktiką.


Įrašo laikas: 2025 m. liepos 22 d.