Mi a titkosítás és miért fontos?

Sok kommunikációs protokoll titkosítást használ a kapcsolat biztonságosságának biztosítására. Jó ötlet megérteni, hogy valójában mit csinál a titkosítás, és miért fontos mindenki számára, hogy tudja, mitől védhet meg, és mitől nem.

A titkosítás az adatok titkosításának matematikai folyamata egy titkosítási rejtjel és egy titkosítási kulcs segítségével. A titkosított adatok vagy rejtjelezett szöveg csak dekódoló kulcs használatával dekódolható vissza az eredeti „sima szöveges” formájára.

Jó titkosítási algoritmus esetén a rejtjelezett szövegnek megkülönböztethetetlennek kell lennie a véletlenszerű zajoktól vagy az értelmetlen értékektől. Ez lehetetlenné teszi annak megállapítását, hogy az adatok titkosított szöveg-e, vagy csak zajról van szó. Ez a kialakítás jelentősen megnehezíti a rejtjelezett szöveg elemzését annak érdekében, hogy megkísérelje dekódolását anélkül, hogy szükség lenne a visszafejtési kulcsra a kriptoanalízisnek nevezett folyamaton keresztül.

Tipp: A zaj véletlenszerű statikus háttér, akárcsak néhány régi tévén, amikor nincs jel.

Szimmetrikus vs aszimmetrikus

A titkosítási algoritmusok egyes osztályainál a visszafejtési kulcs megegyezik a titkosítási kulccsal, míg másokban a két kulcs különbözik. Ha a visszafejtési kulcs megegyezik a titkosítási kulccsal, azt szimmetrikus titkosításnak nevezik. Ebben az esetben a titkosítási kulcsot jelszónak tekinthetjük, és bárki, aki rendelkezik a jelszóval, titkosíthatja vagy visszafejtheti az adatokat. Az AES jó példa a szimmetrikus titkosítási algoritmusra, mivel egyik felhasználási területe a HTTPS-kommunikáció biztonságossá tétele az interneten.

Tipp: A HTTPS vagy Hypertext Transfer Protocol Secure az interneten használt elsődleges titkosított kommunikációs protokoll.

Az aszimmetrikus titkosítás külön titkosítási és visszafejtési kulcsot használ, általában nyilvános kulcsú titkosításnak is nevezik. A titkosítási kulcsot nyilvános kulcsnak nevezik, bárki számára közzéteszik az adatok titkosítására. A visszafejtési kulcsot azonban privát kulcsnak nevezik, és ahogy a neve is sugallja, titkosan marad.

Ez a titkosítási forma biztosítható annak biztosítására, hogy csak a címzett tudja visszafejteni és elolvasni a titkosított üzenetet. A nyilvános kulcsú titkosítási algoritmusok gyakori példája az RSA. Az RSA-t gyakran használják HTTPS-kapcsolatokban is, de csak azért, hogy a két számítógép biztonságosan megegyezzen a szimmetrikus titkosítási kulcs használatában.

Tipp: Az aszimmetrikus titkosítási algoritmusok lassabbak, mint a hasonló biztonsági szintet biztosító szimmetrikusok. Ezért az aszimmetrikus titkosítást csak a gyorsaságot és hatékonyságot igénylő protokollokban, például a HTTPS-ben használják szimmetrikus titkosítási kulcs elfogadására.

Tipp: A HTTPS nem garantálja, hogy a kívánt webhelyhez csatlakozik. Ez garantálja, hogy a keresősávba beírt webhelyet csatlakoztatja. Ha elgépelt, és véletlenül az exanple.com webhelyre böngészte az example.com helyett, a HTTPS megerősíti, hogy biztonságosan csatlakozik az exanple.com webhelyhez. A HTTPS csak azt ellenőrzi, hogy biztonságos-e a kapcsolat a webszerverrel. A HTTPS azt sem jelenti, hogy a webhely, amelyhez csatlakozik, nem tartalmaz vírusokat vagy más rosszindulatú szoftvereket.

Biztonsági szintek

A titkosítási algoritmusok biztonságát bitekben mérik. A biztonsági részek a használt titkosítási kulcs méretére utalnak, és ezért azt, hogy mennyire nehéz kitalálni. Sajnos így nem lehet közvetlenül összehasonlítani a szimmetrikus és aszimmetrikus algoritmusok biztonságát.

A szimmetrikus titkosítási algoritmusoknak, például az AES-nek, legalább 128 bites titkosítási kulcsot kell használniuk ahhoz, hogy biztonságosnak minősüljenek, bár a 256 bites kulcs használata javasolt. Az aszimmetrikus algoritmusoknak legalább 2048 bites kulcsot kell használniuk ahhoz, hogy biztonságosnak minősüljenek.

Egy 256 bites titkosítási kulcsnak 2^256 lehetséges kombinációja van, ez kettő megszorozva önmagával 256-szor. Teljesen kiírva a következők vannak: 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 256 bites titkosítási kulcs lehetséges kombinációi. Ez a szám olyan nagy, hogy nagyjából megegyezik a tudósok által a látható univerzumban létező atomok számával.

Felfoghatatlanul nehéz helyesen kitalálni a 256 bites kulccsal titkosított adatok visszafejtéséhez szükséges kulcsot. Még ha dedikált hozzáféréssel rendelkezne is a leggyorsabb szuperszámítógépekhez és évszázadok óta, statisztikailag nem valószínű, hogy helyesen találná ki a visszafejtő kulcsot.

Miért fontos?

Amikor bejelentkezik egy weboldalra, elküldi felhasználónevét és jelszavát, vagy banki adatait. Ezek az adatok magánjellegűek és bizalmasak, ha valaki más rendelkezik velük, hozzáférhet az Ön fiókjaihoz, megszemélyesítheti Önt, pénzt lophat el Öntől stb.

Az egyszerű szöveges HTTP-protokoll használatakor az Ön és a webszerver közötti hálózaton bárki elfoghatja és elolvashatja az Ön által küldött és fogadott kommunikációt. Ez magában foglalja jelszavait és egyéb bizalmas adatait. Az otthoni hálózat többi felhasználója, az internetszolgáltató és a nyilvános Wi-Fi hotspotok más felhasználói, amelyekhez csatlakozik, olyan helyzetben lehetnek, hogy végrehajtsák ezt a fajta támadást.

Ha HTTPS-védett kommunikációt használ a webszerver felé és onnan, adatai titkosítva lesznek, és senki más nem tudja elolvasni. Ez a titkosítás biztonságban tartja jelszavait és egyéb személyes adatait az interneten való böngészés során.

A titkosítás azonban nem csak a privát vagy érzékeny adatok esetében fontos; egyben hasznos adatvédelmi eszköz is. Megakadályozhatja például az internetszolgáltatót abban, hogy rágörcsölje webböngészési szokásait.

A kommunikáció lehető legnagyobb részének titkosítása kevésbé nyilvánvalóvá teszi, hogy hol vannak elrejtve olyan érzékeny adatok, amelyeket a támadók esetleg megpróbálhatnak ellopni. Mint ilyen, általában ajánlott a titkosítás használata, ahol csak lehetséges, minden tevékenységének biztonsága érdekében.

A modern hardverrel és titkosítási algoritmusokkal a titkosítás csak észrevehetetlen késleltetést ad hozzá, így nem kell attól tartania, hogy lelassítja az internetkapcsolatot.