Az aszimmetrikus kriptográfia egy területen kriptográfia , ahol különbség van az adatok között az állami és magán , szemben a szimmetrikus titkosítás , ahol alkalmassága révén valósul birtokában egy közös titkos adatokat a résztvevők között.
Az aszimmetrikus kriptográfia a nyilvános és a magánkulcs titkosításának példájával illusztrálható , amely titkosítási technika , vagyis a cél az adatok titkosságának garantálása. Az aszimmetrikus kifejezés abban a tényben érvényes, hogy két titkosítási kulcs létezik (az üzeneteket fogadni akaró felhasználó maga állítja elő), például ha a felhasználó az első kulcsot használja a "titkosítás" nevű algoritmusban , akkor az adatok érthetetlenné válnak mindazok számára, akik nincs meg a második kulcs, aki megtalálja a kezdeti üzenetet, amikor ezt a második kulcsot megkapja egy úgynevezett „visszafejtési” algoritmus bemeneténél.
Megegyezés szerint a visszafejtő kulcsot privát , a titkosítási kulcsot pedig nyilvánosnak hívjuk .
A privátnak választott kulcsot soha nem továbbítják senkinek, míg a nyilvánosnak választott kulcs korlátozások nélkül továbbadható.
Ez a rendszer két fő dolgot tesz lehetővé:
A koncepció a nyilvános kulcsú kriptográfia - más néven aszimmetrikus kriptográfia - általában tulajdonított Whitfield Diffie és Martin Hellman , aki bemutatta, hogy a nyilvánosság a Nemzeti Számítógép Konferencia a 1976 , majd megjelent néhány hónappal később New Directions in kriptográfia . A koncepciót azonban állítólag más kutatók azonos időben fedezték fel önállóan.
Ralph Merkle állítólag nagyjából ugyanabban az időben fedezte fel ugyanazt a cikket, bár cikkei csak 1978-ban jelentek meg.
1976-ban megjelent cikkükben W. Diffie és M. Hellman nem tudtak példát hozni egy nyilvános kulcsos rendszerre, ha nem is találtak volna ilyet. Csak 1978-ban volt Ronald Rivest , Adi Shamir és Leonard Adleman , az RSA példája , amely a szerzők három nevéből származik. A három férfi ezt követően megalapította az RSA Security céget . A Merkle-Hellman rendszert széles körben a nyilvános kulcsú titkosító rendszer első gyakorlati megvalósításának tekintik, azonban Shamir 1982-ben bebizonyította, hogy bizonytalan.
A nyilvános kutatás mellett a brit titkosítási szolgálatok (GCHQ, Government Communications Headquarters ) titkos kutatásokat végeztek volna, amelyek aszimmetrikus titkosítási koncepciókhoz és eszközökhöz vezettek volna az 1970-es évek első felétől:
Ezeket a felfedezéseket a GCHQ csak 1997-ben hozta nyilvánosságra .
Az aszimmetrikus titkosítás vagy a nyilvános kulcsú titkosítás az egyirányú funkciók és a titkos jogsértés létezésén alapul .
Az egyirányú függvények olyan matematikai függvények , amelyek egy üzenetre alkalmazva rendkívül nehéz megtalálni az eredeti üzenetet.
A titkos jogsértés megléte azonban lehetővé teszi az egyirányú funkciót megtervező személy számára, hogy könnyedén dekódolja az üzenetet a birtokában lévő, privát kulcsnak nevezett információnak köszönhetően.
Tegyük fel, hogy Alice titkos üzenetet akar kapni Bobtól egy csatornán, amelyet meghallgathat egy passzív támadó, Eve :
A szokásosan használt terminológia:
A gyakorlatban hagyományos titkosítási függvényeket használnak , a „nyilvános kulcs” és a „privát kulcs” kifejezések ekkor megfelelnek az e funkciókhoz használt paramétereknek.
Alice azt kívánja, bárkitől titkosított üzeneteket kaphatna .
Nyilvános kulcsok terjesztéseEzután létrehoz egy értéket egy egyirányú, titkos megsértésével funkciót aszimmetrikus titkosító algoritmus ( lista itt ), pl RSA .
Alice az üzeneteket kódoló funkciót mindenki számára sugározza (nyilvános kulcs jelöli), de titokban tartja a dekódolási funkciót (privát kulcs).
TitkosításA nyilvános kulcs egyik szerepe a titkosítás biztosítása ; Tehát ez az a kulcs, amellyel Bob titkosított üzeneteket küld Alice-nek. A másik kulcs - a titkos információ - a kockák számszerűsítésére szolgál. Így Alice és egyedül ő tudja elolvasni Bob üzeneteit. Az egyik kulcs ismerete nem teszi lehetővé a másik levezetését.
Eredeti hitelesítésMásrészt, ha Alice a privát kulcsát használja az üzenet összefoglalójában , Bob lehetővé teszi annak ellenőrzését, hogy az üzenet valóban Alice-től származik: Alice nyilvános kulcsát alkalmazza a megadott hash-ra (Alice titkos kulcsával titkosított hash), és ezért megtalálja az eredeti üzenetet. Elég lesz összehasonlítania az így kapott kivonatot és az üzenet tényleges kivonatát, hogy tudja, Alice valóban a feladó-e. Bobot így megnyugtatja a kapott üzenet eredete: valóban Alice-é. Különösen ezen a mechanizmuson működik a digitális aláírás .
Titkosítás: Alice széfet választott. Nyitva küldi Bobnak, és megtartja a kulcsot. Amikor Bob Alice-nek akar írni, ott hagyja üzenetét, bezárja a széfet, ehhez nincs szüksége kulcsra, és visszaküldi Alice-nek. Átvételkor csak Alice nyithatja meg a széfet, mivel a kulcsot egyedül ő birtokolja, feltételezve a széfet, és senki sem tudja újra megcsinálni a kulcsot.
Hitelesítés vagy aláírás: Alice elhelyez egy üzenetet a széfben, amelyet bezár a magánkulcsával, mielőtt elküldené Bobnak. Ha Bob Alice nyilvános kulcsával (amellyel rendelkezik), sikerül elolvasnia a levelet, az azért van, mert Aliceé, és ezért ő helyezte oda a levelet.
A doboz két zárralEgy másik lehetséges hasonlat az lenne, ha elképzelünk egy dobozt két különböző zárral. Ha a doboz az egyik oldalon zárva van, csak a másik zárnak megfelelő kulcs engedi a doboz kinyitását, és fordítva. Az egyik kulcs privát és titokban tartott, a másik állítólag nyilvános, és másolatot bárki megszerezhet, aki használni szeretné a dobozt.
Üzenet titkosításához Bob veszi a négyzetet, ott helyezi el az üzenetét, és bezárja a nyilvános kulccsal. Csak a másik zárhoz hozzáférést biztosító magánkulcs birtokosa, ebben az esetben Alice lesz képes újra kinyitni a dobozt.
Egy üzenet aláírásához Alice elhelyezi azt a mezőben, és bezárja a privát kulcsával. Tehát bárki, aki visszaszerezte a nyilvános kulcsot, kinyithatja a dobozt. De mivel a dobozt a magánkulcs bezárta, ez a személy biztos lesz abban, hogy valóban Alice, ennek a kulcsnak a kizárólagos birtokosa az, aki elhelyezi az üzenetet a dobozban, és bezárja az említett dobozt.
Speciális tulajdonságaikért cserébe az aszimmetrikus cifrák általában kevésbé hatékonyak, mint szimmetrikus ekvivalenseik : a feldolgozási idők hosszabbak, és az egyenértékű biztonság érdekében a kulcsoknak sokkal hosszabbaknak kell lenniük.
Ha az aszimmetrikus titkosítás lehetővé teszi a passzív lehallgatás elleni védekezést , a nyilvános kulcs kezdeti továbbítása nem biztonságos csatornán a középső ember támadásainak tesz ki . A kockázat elkerülése érdekében általában egy nyilvános kulcsú infrastruktúrát használnak .
Az aszimmetrikus rejtjelezés megfelel a szimmetrikus kriptográfia egyik fő igényének : egy kulcs biztonságos megosztása két tudósító között annak megakadályozása érdekében, hogy ezt a kulcsot illetéktelen harmadik fél lehallgassa, és ezért a titkosított adatokat engedély nélkül olvassák.
Mivel a szimmetrikus titkosítási mechanizmusok olcsóbbak a számítási időben , előnyösebbek az aszimmetrikus titkosítási mechanizmusok helyett. A szimmetrikus titkosítási kulcs használatához azonban megköveteli, hogy a két tudósító megossza ezt a kulcsot, vagyis ismerje azt a csere előtt. Ez akkor jelenthet problémát, ha ennek a kulcsnak a kommunikációját nem biztonságos adathordozón keresztül , "tiszta állapotban" hajtják végre . Ennek a hátránynak a leküzdése érdekében aszimmetrikus titkosítási mechanizmust alkalmaznak a szimmetrikus kulcs cseréjének egyetlen szakaszában, és ez utóbbit használják a központ többi részében.
Az aszimmetrikus titkosítási mechanizmusok használatának egyik fő hátránya, hogy a nyilvános kulcsot minden embernek elosztják: Bobnak , Carole-nak és Alice-nek, akik bizalmasan szeretnének adatokat cserélni. Ezért, amikor a titkos kulccsal rendelkező személy, Alice visszafejti a titkosított adatokat, nincs módja arra, hogy bizonyossággal ellenőrizze ezen adatok eredetét ( Bob vagy Carole ): hitelesítési problémákról beszélünk .
A probléma megoldása érdekében hitelesítési mechanizmusokat alkalmaznak a titkosított információk eredetének garantálására. Ezek a mechanizmusok szintén aszimmetrikus titkosításon alapulnak, amelynek elve a következő: Bob titkosított adatokat akar küldeni Alice-nek, garantálva ezzel számára, hogy ő a küldő.
Ez a hitelesítési módszer az aszimmetrikus kulcspárok specifikusságát használja: ha egy üzenetet a nyilvános kulcs segítségével titkosítunk, akkor a titkos kulcs segítségével visszafejthetjük az üzenetet; ennek fordítottja is lehetséges: ha titkosítjuk a magánkulcsot, akkor visszafejthetjük a nyilvános kulcsot is.
Az aszimmetrikus titkosítást digitális tanúsítványokkal is használják , amelyek tartalmazzák a tanúsítványhoz társított entitás nyilvános kulcsát. A privát kulcs az utóbbi entitás szintjén van tárolva. A tanúsítványalkalmazás például egy nyilvános kulcsú infrastruktúra (PKI) megvalósítása egy entitás hitelesítésének és digitális aláírásának kezelésére , például egy webszerver ( például Apache az SSL modullal ), vagy egyszerűen egy aláírni vágyó ügyfél. titkosítsa az információkat a tanúsítványukkal az előző szakaszokban leírtak szerint.
A szimmetrikus titkosítás 128 bites kulcs segítségével 2128 (~ 3,4 10 38 ) módot kínál az üzenet titkosítására. A hacker próbál brute force visszafejteni az üzenetet kellene kipróbálni őket egyesével.
A nyilvános kulcsú rendszereknél ez más. Először is, a kulcsok hosszabbak (például az RSA esetében legalább 2048 bit ); valójában nagyon sajátos matematikai felépítésűek (nem választhatunk véletlenszerű bitek sorozatát titkos kulcsként, például az RSA esetében csak a prímszámokat használják). Néhány algoritmus, amely kihasználja ezt a struktúrát, hatékonyabb, mint például a teljes keresés, például 1024 bit. Így az RSA esetében a számmezők általános rostája hatékonyabb módszer, mint a faktorizálás kimerítő keresése .
Vegye figyelembe a kriptográfia jelenlegi fejlõdését elliptikus görbék felhasználásával , amelyek lehetõvé teszik (bonyolultabb elmélet és megvalósítások árán) a hagyományos algoritmusokénál lényegesen kisebb kulcsok használatát (jelenleg 160 bites méretet nagyon biztonságosnak tartanak). egyenértékű biztonsági szintet.
A The Guardian újság 2013. szeptember 6-i kiadásában azt állította, hogy az NSA képes volt megfejteni az interneten keringő titkosított adatok nagy részét. Számos forrás azonban jelezte, hogy az NSA nem matematikailag bontotta meg a rejtjeleket, hanem a biztonsági protokollok végrehajtásának gyengeségeire támaszkodott.