Mi a Diffie – Hellman kulcscsere és hogyan működik?

Mi a Diffie – Hellman kulcscsere és hogyan működik?

A Diffie-Hellman kulcscsere volt a nyilvános kulcsú kriptográfia egyik legfontosabb fejleménye és még mindig gyakran alkalmazzák a mai különféle biztonsági protokollok sorozatában.

Ez lehetővé teszi két olyan fél számára, akik korábban még nem találkoztak, biztonságosan létrehozni egy kulcsot, amelyet felhasználhatnak a kommunikáció biztosítására. Ebben a cikkben elmagyarázza, hogy mire használják, hogyan működik lépésről lépésre, különféle variációit, valamint azokat a biztonsági szempontokat, amelyeket figyelembe kell venni a biztonságos végrehajtás érdekében..

Mi a Diffie-Hellman kulcscsere??

A Diffie-Hellman kulcscsere volt a az első széles körben alkalmazott módszer a biztonságos csatornán keresztüli biztonságos fejlesztéshez és cseréhez.

Lehet, hogy a fentiekben nem tűnik annyira izgalmasnak vagy úttörőnek, tehát adjunk egy példát, amely elmagyarázza, hogy a Diffie-Hellman kulcscsere miért volt ilyen fontos mérföldkő a kriptográfia világában, és miért használják még ma ilyen gyakran.

Tegyük fel, hogy egy titkos kém vagy, és el kell küldenie néhány fontos információt a központba. Hogyan akadályoznád meg az ellenségeidet, hogy megrémüljék az üzenetet?

A leggyakoribb megoldás az üzenet kódolása lenne. A legegyszerűbb módszer az, hogy előre megváltoztassa az előzetesen használni kívánt kódtípust és kulcsot, vagy biztonságos kommunikációs csatornán csinálja..

Tegyük fel, hogy Ön különösen rossz kém, és Ön és a központ úgy dönt, hogy egy gyenge shift titkosítót használ az üzenetek kódolására. Ebben a kódban minden „a” -ból „b”, minden „b” -ből „c”, minden „c” -ből „d” lesz, és így tovább, egészen addig, amíg a „z” nem „a”.

Ezen titkos kód alatt a „Let 'get vacsora” üzenet válik „Mfu’t hfu ejoofs”. Szerencsére hipotetikus helyzetünkben az ellenfelek ugyanolyan inkompetensek, mint te, és nem képesek feltörni egy ilyen egyszerű kódot, amely megakadályozza őket abban, hogy hozzáférjenek az üzenet tartalmához.

De mi történik, ha nem sikerült előzetesen egyeztetni a kódot a címzettel?

Tegyük fel, hogy kommunikálni akar egy olyan szövetséges nemzet kémével, akivel még soha nem találkoztál. Nincs biztonságos csatornája, amellyel beszélgethetsz velük. Ha nem titkosítja az üzenetét, akkor az ellenfél, aki elfogja azt, el tudja olvasni a tartalmat. Ha titkosítja anélkül, hogy elmondná a szövetségesnek a kódot, akkor az ellenség nem fogja tudni olvasni, de a szövetségese sem.

Ez a kiadás az 1970-es évekig volt a kriptográfia egyik legnagyobb problémája:

Hogyan lehet biztonságosan információt cserélni valakivel, ha nem volt lehetősége megosztani a kulcsot idő előtt?

A Diffie-Hellman kulcscsere volt az első nyilvánosan alkalmazott mechanizmus e probléma megoldására. Az algoritmus lehetővé teszi azoknak, akik még soha nem találkoztak, biztonságosan létrehozni egy megosztott kulcsot, még egy olyan bizonytalan csatornán is, amelyet az ellenfelek megfigyelhetnek..

A Diffie-Hellman kulcscsere története

A Diffie-Hellman kulcstartó az 1970-es évekig nyúlik vissza. Míg a kriptográfia területe a huszadik század elején jelentősen fejlődött, ezek az előrelépések elsősorban a szimmetrikus kulcsú kriptográfia területére összpontosultak.

Csak 1976-ban jelentkeztek a nyilvános kulcsú algoritmusok a közszférában, amikor Whitfield Diffie és Martin Hellman közzétették papírokat, Új irányok a kriptográfia területén. Az együttműködés körvonalazta egy új rendszer mögött rejlő mechanizmusokat, amelyek a továbbiakban: Diffie-Hellman kulcscsere.

A munkát részben a Ralph Merkle korábbi fejlesztéseinek ihlette. Az úgynevezett Merkle rejtvények vonja be az egyik felet számos kriptográfiai rejtvény létrehozásával és elküldésével a másikra. Ezeknek a rejtvényeknek a megoldásához mérsékelt számítási erőforrások szükségesek.

A címzett véletlenszerűen választott ki egy rejtvényt a megoldandó feladathoz, majd rátette a szükséges erőfeszítéseket annak kitöltésére. Miután a puzzle megoldódott, egy azonosítót és egy munkamenet kulcsot tárnak fel a címzettnek. A címzett ezután továbbítja az azonosítót az eredeti feladónak, amely tudatja a feladóval, hogy melyik rejtvény megoldódott.

Mivel az eredeti feladó készítette a rejtvényeket, az azonosító tudatja velük, hogy melyik munkakulcsot fedezte fel a címzett, és a két fél ezt a kulcsot használhatja a biztonságosabb kommunikációhoz. Ha a támadó figyeli az interakciót, akkor hozzáférhet az összes rejtvényhez, valamint az azonosítóhoz, amelyet a címzett visszajuttat az eredeti feladónak..

Az azonosító nem mondja meg a támadónak, hogy melyik munkamenet-kulcsot használja, tehát az információ dekódolása a legjobb módszer. oldja meg az összes rejtvényt, hogy feltárja a helyes munkakulcsot. Mivel a támadónak átlagosan a rejtvények felét kell megoldania, sokkal nehezebb számukra a kulcs feltárása, mint a címzettnek..

Ez a megközelítés nagyobb biztonságot nyújt, de messze nem a tökéletes megoldástól. A Diffie-Hellman kulcscsere átvette ezen ötletek némelyikét és bonyolultabbá tette azokat a biztonságos nyilvános kulcsú kriptográfia módszerének létrehozása érdekében..

Noha Diffie-Hellman kulcscsere néven ismert, Martin Hellman javasolta, hogy az algoritmust inkább Diffie-Hellman-Merkle kulcscsere-nek nevezzék, hogy tükrözze azt a munkát, amelyet Ralph Merkle a nyilvános kulcsú kriptográfia irányába tett..

Nyilvánvalóan azt hitték, hogy Merkle, Hellman és Diffie voltak az elsők, akik 1997-ig fejlesztették ki a nyilvános kulcsú kriptográfiát, amikor a brit kormány a 70-es évek elején a James Ellis, Clifford Cox és Malcolm Williamson.

Kiderült, hogy a trió 1969 és 1973 között jött létre az első nyilvános kulcsú titkosítási rendszerrel, de munkájukat két évtizedre sorolták be. Ezt a kormányzati kommunikációs központ (GCHQ), az Egyesült Királyság hírszerző ügynöksége alatt végezték.

Felfedezésük valójában az RSA algoritmus volt, tehát Diffie, Hellman és Merkle még mindig az elsők fejlesztették ki a Diffie-Hellman kulcscserét, de a továbbiakban nem a nyilvános kulcsú kriptográfia első feltalálói..

Hol van a Diffie-Hellman kulcscsere??

A Diffie-Hellman kulcscsere fõ célja: biztonságosan dolgozzon ki közös titkokat, amelyek felhasználhatók a kulcsok levezetésére. Ezeket a kulcsokat ezután szimmetrikus kulcsú algoritmusokkal lehet használni az információk védett módon történő továbbításához. A szimmetrikus algoritmusokat általában az adatok nagy részének titkosításához használják, mivel ezek hatékonyabbak, mint a nyilvános kulcsú algoritmusok.

Technikailag a Diffie-Hellman kulcscsere felhasználható nyilvános és magánkulcsok létrehozására. A gyakorlatban azonban inkább az RSA-t alkalmazzák. Ennek oka az, hogy az RSA algoritmus képes a nyilvános kulcsú tanúsítványok aláírására is, míg a Diffie-Hellman kulcscsere nem.

Az ElGamal algoritmus, amelyet erősen használtunk a PGP-ben, a Diffie-Hellman kulcscserén alapszik, tehát az azt használó bármely protokoll ténylegesen egyfajta Diffie-Hellman-ot valósít meg..

A Diffie-Hellman kulcscsere az egyik leggyakoribb módszer a kulcsok biztonságos elosztására gyakran beépítették a biztonsági protokollokba, mint például a TLS, IPsec, SSH, PGP és még sokan mások. Ez a biztonságos kommunikáció szerves részévé teszi.

Ezen protokollok részeként a Diffie-Hellman kulcscserét gyakran használják a webhelyhez való kapcsolódás biztosításához, a másik számítógép távoli eléréséhez és a titkosított e-mailek küldéséhez.

Hogyan működik a Diffie-Hellman kulcscsere??

A Diffie-Hellman kulcscsere összetett és bonyolult lehet, hogy körülvegye a működését. Nagyon sok számot és sok matematikát használ, olyasmi, amit sokan még mindig rettegnek azokból a hosszú és unalmas középiskolai órákból.

A dolgok kicsit könnyebb megértése, Először a Diffie-Hellman kulcscsere analógiájával magyarázzuk meg. Amint nagy képet kap a működéséről, továbbmegyünk a mögöttes folyamatok műszakibb leírására.

A Diffie-Hellman-séma legjobb analógiája az, ha gondolunk két ember keverés festék. Használjuk a kriptográfiai szabványt, és mondjuk, hogy nevük Alice és Bob. Mindketten egy véletlenszerű színben állapodnak meg. Tegyük fel, hogy üzenetet küldenek egymásnak, és döntenek a sárga színről, mint közös színükről, éppúgy, mint az alábbi ábra:

Diffie-Hellman-2

se saját titkos színüket. Nem mondják el a másik félnek a választásukat. Tegyük fel, hogy Alice választja piros, míg Bob a kissé zöldeskék.

A következő lépés Alice és Bob egyaránt, hogy összekeverjék titkos színüket (Alice esetében piros, Bob esetében zöldenkék) és a sárga, amiben kölcsönösen megállapodtak. A diagram szerint Alice egy orosz keverék, míg Bob eredménye a mélyebb kék.

Miután befejezték a keverést, elküldik az eredményt a másik félnek. Alice megkapja a mélyebb kék színt, míg Bobnak narancssárga színű festék van.

Miután megkapta a vegyes eredményt partnerüktől, hozzáadják titkos színüket. Alice veszi a mélyebb kék színt, és hozzáadja titkos vörös festékét, míg Bob hozzáadja titkos zöldeskékét az éppen kapott narancssárga keverékhez.

Az eredmény? Mindkettő azonos színű, amely ebben az esetben undorító barna. Lehet, hogy nem olyan színű, amellyel festeni szeretné a nappali szobáját, ennek ellenére közös színe. Ezt a megosztott színt a közös titok.

A Diffie-Hellman kulcscsere kritikus része az, hogy mindkét fél ugyanazzal az eredménnyel jár, anélkül, hogy a közös titkot teljes egészében el kellene küldenie a kommunikációs csatornán.. Közös szín, a saját titkos színeik kiválasztása, a keverék kicserélése, majd a saját színük ismételt hozzáadása lehetővé teszi mindkét fél számára, hogy ugyanazon közös titokhoz érje el anélkül, hogy soha nem kellene az egész dolgot átküldenie.

Ha egy támadó hallgatja a cserét, akkor csak az a közös sárga szín, amellyel Alice és Bob kezdődik, csakúgy, mint a kevert színek. Mivel ezt valójában hatalmas számokkal végzik el festék helyett, ezek az információk nem elegendőek ahhoz, hogy a támadás megértse a kezdeti titkos színeket vagy a közös titkot (technikailag ezen információk alapján kiszámíthatjuk a közös titkot, de a Diffie-Hellman kulcscsere biztonságos megvalósítása során ehhez elengedhetetlen idő és számítási erőforrások szükségesek).

A Diffie-Hellman kulcscsere ezen struktúrája teszi őt olyan hasznossá. Ez lehetővé teszi a két fél számára, hogy egy potenciálisan veszélyes kapcsolaton keresztül kommunikáljon, és mégis közös titkot hoz létre, amelyet felhasználhatnak titkosítási kulcsok készítéséhez a jövőbeni kommunikációhoz.. Nem számít, hogy megtámadnak-e valamelyik támadó, mert a teljes megosztott titkot soha nem küldik el a kapcsolaton keresztül.

A Diffie-Hellman kulcscsere műszaki részletei

Ideje matematikához…

Ne aggódjon, lassan haladunk, és megpróbáljuk az egész folyamatot a lehető legkönnyebben megérteni. Hasonló feltevést követ, mint a fentebb bemutatott analógia, de a színek keverése és küldése helyett, a Diffie-Hellman-séma valóban rendkívül nagy prímszámok alapján végez számításokat, majd továbbítja azokat.

A biztonság biztosítása érdekében ajánlott a prime (p) legalább 2048 bit hosszú, amely körülbelül ilyen méretű tizedes szám bináris egyenértéke:

415368757628736598425938247569843765827634879128375827365928736 84273684728938572983759283475934875938475928475928739587249587 29873958729835792875982795837529876348273685729843579348795827 93857928739548772397592837592478593867045986792384737826735267 3547623568734869386945673456827659498063849024875809603947902 7945982730187439759284620950293759287049502938058920983945872 0948602984912837502948019371092480193581037995810937501938507913 95710937597019385089103951073058710393701934701938091803984091804 98109380198501398401983509183501983091079180395810395190395180935 8109385019840193580193840198340918093851098309180019

Annak megakadályozása érdekében, hogy valaki fejének felrobbanjon, ezt a magyarázatot sokkal kisebb számokkal fogjuk átvitele. Légy tudatában erre a Diffie-Hellman kulcscsere bizonytalan lenne, ha olyan kicsi számokat használna, mint a példánkban. Csak ilyen kevés számot használunk a koncepció egyszerűbb bemutatására.

A Diffie-Hellman kulcscsere legalapvetőbb formájában, Alice és Bob azzal kezdődik, hogy kölcsönösen úgy dönt, hogy két számot kezdjenek, szemben a fenti példában szereplő egyetlen közös festékkel. Ezek a modulus (p) és az alap (g).

Gyakorlati alkalmazásban, a modulus (p) nagyon nagy prímszám, míg az alap (g) viszonylag kicsi a számítások egyszerűsítése érdekében. Az alap (g) egy ciklikus csoportból származik (G), amelyet általában jóval a többi lépés megkezdése előtt generálnak.

Tegyük fel például, hogy a modulus (p) van 17, míg az alap (g) van 4.

Miután kölcsönösen eldöntötték ezeket a számokat, Alice titkos számot rendez (egy), míg Bob saját titkos számát választja ki (b). Tegyük fel, hogy a következőket választják:

a = 3

b = 6

Alice ezután elvégzi a következő számítást, hogy megadja neki a számot, amelyet Bobnak küld:

A = ga mod p

A fenti számításban, mod a modulo műveletet jelenti. Ezek lényegében olyan számítások, amelyek a bal oldali jobb oldali felosztás után a maradék kitalálására szolgálnak. Mint például:

15 mod 4 = 3

Ha megérti, hogyan működnek a modulo műveletek, akkor ezeket a következő számításokban is elvégezheti, különben használhat online számológépet.

Tegyük fel a számokat a képletbe:

A = 43 mod 17

A = 64 mod 17

A = 13

Amikor ugyanezt teszjük Bobmal, akkor kapjuk:

B = 46 mod 17

B = 4096 mod 17

B = 16

Alice ezután elküldi eredményét (A) Bobnak, míg Bob elküldi az alakját (B) Alice-nek. Alice kiszámítja a megosztott titkot (s) a Bobtól kapott számmal (B) és titkos száma (egy) az alábbi képlettel:

s = Ba mod p

s = 163 mod 17

s = 4,096 mod 17

s = 16

Bob ezt követően elvégzi, ami lényegében ugyanaz a számítás, de azzal a számmal, amelyet Alice küldött neki (A), valamint a saját titkos számát (b):

s = Ab mod p

s = 136 mod 17

s = 4 826 809 mod 17

s = 16

Mint látható, mindkét fél ugyanazon eredményt ért el s, 16. Ez a közös titok, amelyet csak Alice és Bob tudnak. Ezt követően felhasználhatják a kulcsot a szimmetrikus titkosításhoz, lehetővé téve számukra az információk biztonságos küldését egymás között, oly módon, hogy csak ők férjenek hozzá..

Vegye figyelembe, hogy bár B és s ugyanazok a fenti példában, ez csak véletlen egybeesés azon kis számok alapján, amelyeket az ábrához választottak. Általában ezek az értékek nem azonosak a Diffie-Hellman kulcscsere valódi megvalósításában.

Annak ellenére, hogy a fenti adatok nagy részét a csatornán keresztül Cleartext (p, g, A és B) és a potenciális támadók elolvashatják a megosztott titkot (s) soha nem kerül továbbításra. Nem lenne praktikus, ha a támadó kiszámítja a megosztott titkot (s) vagy a titkos számok egyikét (egy és b) a világos szövegben elküldött információk alapján.

Természetesen ez feltételezi, hogy a Diffie-Hellman kulcscsere megfelelően megvalósult, és kellően nagy számot használnak. Mindaddig, amíg ezeket a rendelkezéseket betartják, a Diffie-Hellman kulcscserét biztonságos módszernek tekintik egy megosztott titok létrehozására, amely felhasználható a jövőbeni kommunikáció biztosítására..

Megosztott kulcs létrehozása több fél között

A Diffie-Hellman kulcscsere felhasználható egy megosztott kulcs beállítására, amelyen nagyobb a résztvevők száma. Ugyanezen módon működik, azzal a különbséggel, hogy minden egyes fél számára további számítási körökre van szükség ahhoz, hogy felvegyék titkos számukat, és ugyanazzal a megosztott titokkal végződjenek..

Csakúgy, mint a Diffie-Hellman kulcscsere kétoldalú változatában, az információ bizonyos részeit is bizonytalan csatornákon továbbítják, de nem elég ahhoz, hogy a támadó kiszámítsa a megosztott titkot..

Miért biztonságos a Diffie-Hellman kulcscsere??

Matematikai szinten a Diffie-Hellman kulcscsere egyirányú funkciókra támaszkodik biztonságának alapjául. Ezek olyan számítások, amelyeket egyszerûen lehet elvégezni, de sokkal nehezebb kiszámítani fordítva.

Pontosabban, a Diffie-Hellman problémára támaszkodik, amely feltételezi, hogy a megfelelő paraméterek mellett lehetetlen kiszámítani. gab a g, gegy és gb. Jelenleg nincs nyilvánosan ismert módon a könnyű megtalálás gab a többi értékből, ezért a Diffie-Hellman kulcscsere biztonságosnak tekinthető, annak ellenére, hogy a támadók elfoghatják az értékeket p, g, A, és B.

Hitelesítés & a Diffie-Hellman kulcscsere

A való világban a Diffie-Hellman kulcscserét ritkán használják önmagában. Ennek fő oka az nem nyújt hitelesítést, ami kiszolgáltatottá teszi a felhasználókat a középtávú támadásokkal szemben.

Ezekre a támadásokra akkor kerülhet sor, ha a Diffie-Hellman kulcscserét önmagában valósítja meg, mert nincs eszköze annak ellenőrzésére, hogy a kapcsolatban álló másik fél valóban az, aki azt állítja, hogy ő. Bármely hitelesítés nélkül, a felhasználók valójában kapcsolatba léphetnek a támadókkal amikor azt gondolják, hogy valamelyik megbízható féllel kommunikálnak.

Ezért a Diffie-Hellman kulcscserét általában néhány hitelesítési eszköz mellett végrehajtják. Ez gyakran magában foglalja a digitális tanúsítványok és egy nyilvános kulcsú algoritmus, például az RSA használatát az egyes felek személyazonosságának ellenőrzésére.

A Diffie-Hellman kulcscsere variációi

A Diffie-Hellman kulcscsere számos különféle módon megvalósítható, és számos más algoritmus alapjául szolgált. Ezeknek a megvalósításoknak egy része engedélyt nyújt, míg másoknak különféle kriptográfiai tulajdonságai vannak, mint például a tökéletes előre titkosítás.

Elliptikus görbe Diffie-Hellman

Elliptikus görbe Diffie-Hellman kihasználja az elliptikus görbék algebrai szerkezetét, hogy megvalósításai hasonló biztonsági szintet érjenek el kisebb kulcsmérettel. A 224 bites elliptikus görbe kulcs ugyanolyan biztonságot nyújt, mint egy 2048 bites RSA kulcs. Ez hatékonyabbá teheti a cseréket és csökkentheti a tárolási követelményeket.

Eltekintve a kisebb kulcshosszról és az a tény, hogy az elliptikus görbék tulajdonságaira támaszkodik, az ellipszis-görbe a Diffie-Hellmanhez hasonlóan működik, mint a szokásos Diffie-Hellman kulcscsere..

TLS   

A TLS, amely egy olyan protokoll, amelyet az internet nagy részének biztonságához használnak, a Diffie-Hellman cserét háromféle módon tudja felhasználni: névtelen, statikus és időleges. A gyakorlatban csak a Diffie-Hellman rövid távú megvalósítását kell végrehajtani, mivel a többi lehetőség biztonsági kérdéseket vet fel.

  • Névtelen Diffie-Hellman - A Diffie-Hellman kulcscsere ezen verziója nem használ semmilyen hitelesítést, így kiszolgáltatottá válik a középtávú támadásokkal szemben. Nem szabad használni, vagy végrehajtani.
  • Statikus Diffie-Hellman - Statikus Diffie-Hellman tanúsítványokat használ a szerver hitelesítéséhez. Alapértelmezés szerint nem hitelesíti az ügyfelet, és nem nyújt titkosítást.
  • Átmeneti Diffie-Hellman - Ezt a legbiztonságosabb megvalósításnak tekintik, mivel tökéletes előre titoktartást biztosít. Általában olyan algoritmussal kombinálják, mint például a DSA vagy az RSA, hogy hitelesítsék a kapcsolat egyikét vagy mindkét felet. Az Ephemeral Diffie-Hellman a protokoll futtatásakor különféle kulcspárokat használ. Ez biztosítja a kapcsolat számára a tökéletes titoktartást, mivel még ha a kulcsot a jövőben is kompromittálják, nem lehet felhasználni az összes korábbi üzenet visszafejtésére.

ElGamal

Az ElGamal egy nyilvános kulcsú algoritmus, amelyet a Diffie-Hellman kulcscsere tetejére építettek. Mint Diffie-Hellman, önmagában sem tartalmaz hitelesítési rendelkezéseket, és általában erre a célra más mechanizmusokkal kombinálják..

Az ElGamalt elsősorban a PGP-ben, a GNU Privacy Guard-ban és más rendszerekben használták, mert fő riválisa, az RSA szabadalmaztatásra került. Az RSA szabadalma 2000-ben lejárt, ami lehetővé tette szabadon történő végrehajtását ezen időpont után. Azóta az ElGamal nem került bevezetésre olyan gyakran.

STS

Az Station-to-Station (STS) protokoll szintén a Diffie-Hellman kulcscserén alapul. Ez egy másik kulcsfontosságú megállapodási séma, azonban védelmet nyújt a középtávú támadásokkal szemben, valamint tökéletes előremeneti titkot.

Ez megköveteli, hogy mindkét fél a kapcsolatban rendelkezzen kulcspárral, amelyet mindkét oldal hitelesítéséhez használnak. Ha a felek még nem ismertek egymással, akkor a tanúsítványok felhasználhatók mindkét fél identitásának hitelesítésére.

A Diffie-Hellman kulcscsere & RSA

Amint azt korábban már tárgyaltuk, a Diffie-Hellman kulcscserét gyakran az RSA-val vagy más algoritmusokkal együtt valósítják meg a kapcsolat hitelesítéséhez. Ha ismeri az RSA-t, akkor kíváncsi lehet miért zavarna bárki a Diffie-Hellman kulcscserét is, mivel az RSA lehetővé teszi a korábban még soha nem találkozó felek számára a biztonságos kommunikációt.

Az RSA lehetővé teszi a felhasználók számára, hogy titkosítsák az üzeneteket a levelezőik nyilvános kulcsával, így csak a megfelelő magánkulccsal lehet visszafejteni őket. A gyakorlatban azonban, Az RSA-t nem használják a teljes kommunikáció titkosítására - ez túlságosan nem hatékony.

Ehelyett az RSA-t gyakran csak eszközként használják mindkét fél hitelesítésére. Ezt megteszi mindkét fél digitális tanúsítványai, amelyeket egy tanúsító hatóság ellenőriz annak igazolása, hogy a tanúsítvány tulajdonosa valóban az, akinek állítják, és hogy a tanúsítvány nyilvános kulcsa valójában nekik tartozik.

A kölcsönös hitelesítés érdekében, Mindegyik fél aláír egy üzenetet a saját kulcsával, majd elküldi azt kommunikációs partnerének. Ezután minden címzett megteheti ellenőrizze a másik fél személyét azáltal, hogy ellenőrzi az aláírt üzeneteket a kommunikációs partner digitális tanúsítványának nyilvános kulcsával (ennek működéséről bővebben lásd az RSA - ról szóló cikket, különösen a Üzenetek aláírása szakasz).

Most, hogy mindkét fél hitelesítésre került, technikai szempontból lehetséges folytatni az RSA használatát a titkosított üzenetek biztonságos küldése érdekében egymás között, bár ez túl hatékonnyá válna..

Ennek a hatékonyságnak a kiküszöbölésére számos biztonsági protokoll olyan algoritmust használ, mint a a Diffie-Hellman kulcscsere közös titkot hoz létre, amely felhasználható egy megosztott szimmetrikus kulcs létrehozására. Ezt a szimmetrikus kulcsot ezután egy szimmetrikus kulcsú algoritmusban, például az AES-ben használják az adatok titkosításához. hogy a két fél biztonságosan kívánja elküldeni egymást.

Úgy tűnhet, hogy egy összetett és átgondolt folyamat, de sokkal gyorsabb és kevésbé igényes erőforrásokat igényel, ha összehasonlítunk egy nyilvános kulcsú algoritmust az egész cserére. Ez azért van, mert A szimmetrikus kulcsos titkosítás nagyságrenddel hatékonyabb, mint a nyilvános kulcsú titkosítás.

A nemrégiben említett hatékonyságon kívül vannak más hátrányok is, amelyek kizárólag az RSA használatával járnának. Az RSA-nak biztonságosnak kell lennie, tehát egy további algoritmust megfelelő módon kell végrehajtani mellette, hogy biztonságos legyen.

Az RSA nem nyújt tökéletes előzetes titkot, vagyis, ami egy másik hátrány a Diffie-Hellman rövid távú kulcscseréhez viszonyítva. Összességében ezek az okok miatt sok esetben a legjobb az RSA-t csak a Diffie-Hellman kulcscserével együtt alkalmazni..

Alternatív megoldásként a Diffie-Hellman kulcscsere kombinálható egy olyan algoritmussal, mint például a Digital Signature Standard (DSS), hogy hitelesítést, kulcscserét, titoktartást biztosítson és ellenőrizze az adatok integritását. Ilyen helyzetben az RSA nem szükséges a kapcsolat biztosításához.

A Diffie-Hellman kulcscsere biztonsági kérdései

A Diffie-Hellman kulcscsere biztonsága a megvalósítás módjától, valamint a számára kiválasztott számoktól függ. Mint fentebb megállapítottuk, nem rendelkezik a másik fél hitelesítésének eszközeivel, de a gyakorlatban más mechanizmusokat használnak annak biztosítására, hogy a kapcsolatban lévő másik fél ne legyen csaló.

A számválasztás paraméterei

Ha a Diffie-Hellman kulcscsere valós megvalósításánál olyan kevés számot használnánk, mint a példánkban, akkor a cserefolyamat triviálissá válik a támadó számára, hogy feltörjön. De számít nem csak a számok méretétől - a számoknak is kellnek elég véletlenszerűnek kell lenniük. Ha egy véletlenszám-generátor kiszámítható kimenetet produkál, akkor ez teljesen alááshatja a Diffie-Hellman kulcscsere biztonságát..

A szám p 2048 bit hosszúnak kell lennie a biztonság garantálása érdekében. Az alap, g, lehet viszonylag kis szám, például 2, de ennek egy sorrendből kell származnia G ennek nagy alapvető tényezője van

A Logjam támadás

A Diffie-Hellman kulcscserét arra alapozták, hogy a diszkrét logaritmus problémát nehéz megoldani. A megoldás megtalálásának leghatékonyabb mechanizmusa a számmezős szita algoritmus.

Ennek az algoritmusnak a képességeit figyelembe vették a Diffie-Hellman kulcscsere tervezésekor. 1992-re ismert volt, hogy ez egy adott csoportra vonatkozik, G, az algoritmusban szereplő négy lépés közül három előzetesen kiszámítható. Ha ezt az előrehaladást sikerült megtakarítani, az utolsó lépést viszonylag rövid idő alatt lehet kiszámítani.

Ez nem volt annyira érdekes, amíg rájöttünk, hogy az internetes forgalom jelentős része ugyanazokat a csoportokat használja, amelyek 1024 bit vagy annál kisebbek. 2015-ben egy tudományos csapat elvégezte a Diffie-Hellman kulcscsere által használt TLS által használt leggyakoribb 512 bites prímszámítás kiszámítását..

Emellett a DHE-EXPORT-ot támogató TLS-kiszolgálók 80% -át is leminősítették, és így 512 bites exportminőségű Diffie-Hellman kulcscserét elfogadnának a kapcsolathoz. Ez azt jelenti ezek a szerverek mindegyike érzékenyen támaszkodott ellenfél támadására.

A kutatók tovább extrapolálták az eredményeket, annak becslése szerint, hogy egy nemzetállam megszakíthat egy 1024 bites prímet. Az egy leggyakrabban használt 1024 bites prím törésével az akadémiai csapat becslése szerint egy ellenfél megfigyelheti az egymillió legnépszerűbb HTTPS webhely 18% -át..

Azt mondták, hogy a második prím lehetővé teszi az ellenfél számára, hogy a VPN-kiszolgálók 66% -ának és az SSH-kiszolgálók 26% -ának a kapcsolatát visszafejtse. Később a jelentésben a tudósok azt sugallták, hogy az NSA-nak már lehetnek ezek a képességek.

"A közzétett NSA-szivárgások alapos olvasása azt mutatja, hogy az ügynökség VPN-ekkel szembeni támadása összhangban áll ezzel a szünettel."

E sérülékenység ellenére a Diffie-Hellman kulcscsere továbbra is biztonságos lehet, ha azt helyesen hajtják végre. Amíg egy 2048 bites kulcsot használnak, a Logjam támadás nem fog működni. A frissített böngészők szintén biztonságban vannak e támadás ellen.

A Diffie-Hellman kulcscsere biztonságos?

Noha a Diffie-Hellman kulcscsere bonyolultnak tűnhet, ez az online biztonságos adatcsere alapvető része. Mindaddig, amíg a megfelelő hitelesítési módszer mellett megvalósul, és a számokat megfelelően választották ki, nem tekintik támadásoknak kitettnek.

A Diffie-Hellman kulcscsere innovatív módszer volt a két ismeretlen fél biztonságos kommunikációjának elősegítésére, amikor azt az 1970-es években fejlesztették ki. Míg mostantól újabb verziókat valósítunk meg nagyobb kulcsokkal, hogy megvédjük a modern technológiát maga a protokoll úgy néz ki, hogy továbbra is biztonságban lesz a kvantumszámítás megérkezéséig és a haladó támadások, amelyek vele járnak.

Kiberbiztonsági üzleti technológia A TheDigitalArtist licenc alatt áll CC0

Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me

About the author

Leave a Reply

Your email address will not be published. Required fields are marked *

15 + = 16

Adblock
detector