PGP

Elég jó magánélet
Típusú titkosító szoftverek és kereskedelmi szoftverek
Szerző Philipp Zimmermann
Fejlesztő Philipp Zimmermann
Beírva Többnyelvű
Operációs rendszer Linux , macOS , Windows
Első kiadás 1991
legújabb verzió
Olvasható fájlformátumok Pretty Good Privacy (PGP) Private/Secret Keyring [d] , PGP egyértelmű szöveggel aláírt üzenet [d] , PGP nyilvános kulcs blokk [d] , PGP privát kulcs blokk [d] , PGP ASCII-Armor [d] , PGP Disk image [d] , Pretty Good Privacy (PGP) nyilvános kulcstartó [d] és PGP aláírás [d]
Generált fájlformátumok PGP üzenet [d] , Pretty Good Privacy (PGP) Private/Secret Keyring [d] , PGP egyértelmű szöveggel aláírt üzenet [d] , PGP nyilvános kulcs blokk [d] , PGP privát kulcs blokk [d] , PGP ASCII-Armor [ d] , PGP lemezkép [d] , Pretty Good Privacy (PGP) nyilvános kulcstartó [d] és PGP aláírás [d]
Weboldal openpgp.org

A PGP ( angolul  Pretty Good Privacy ) egy számítógépes program , egyben olyan funkciók könyvtára, amely lehetővé teszi az üzenetek, fájlok és egyéb elektronikus formában megjelenő információk titkosítását és digitális aláírását, beleértve az átlátható adattitkosítást tárolóeszközökön, például keményen hajt .

Eredetileg Philipp Zimmermann tervezte 1991 -ben .

Általános információk

A PGP számos olyan implementációt tartalmaz, amelyek kompatibilisek egymással és számos más programmal ( GnuPG , FileCrypt stb.) az OpenPGP szabványnak ( RFC 4880 ) köszönhetően, de eltérő funkcionalitással. A PGP megvalósítása minden leggyakoribb operációs rendszerhez létezik . A szabadon terjesztett implementációk mellett kereskedelmi forgalomban is vannak.

Kompatibilitás

A PGP fejlődésével egyes rendszerek lehetővé teszik titkosított üzenetek létrehozását olyan új funkciók segítségével, amelyek a régebbi rendszereken nem érhetők el. A küldőnek és a fogadónak tisztában kell lennie egymás képességeivel, vagy legalább meg kell állapodnia a PGP beállításokban.

Biztonság

1996-ban Bruce Schneier kriptográfus úgy jellemezte a PGP korai verzióját, mint "a katonai szintű kriptorendszerekhez legközelebb álló dolgot". Jelenleg egyetlen olyan eset sem fordul elő, amikor a PGP-titkosított adatokat nyers erővel vagy a kriptográfiai algoritmus sebezhetőségével törték fel.

A PGP kriptográfiai erőssége azon a feltételezésen alapul, hogy az alkalmazott algoritmusok ellenállnak a modern hardvereken végzett kriptográfiai elemzésnek . Például a PGP első verzióiban az egyirányú függvényen (faktorizáláson) alapuló RSA algoritmust használták a munkamenetkulcsok titkosításához. A PGP 2-es verziójában ezenkívül használhatja az IDEA algoritmust . Ezt követően további titkosítási algoritmusokat adtak hozzá. A használt algoritmusok egyikének sem ismert sebezhetősége.

2010-ben Svájcból, Japánból, Franciaországból, Hollandiából, Németországból és az Egyesült Államokból származó tudósok egy csoportjának sikerült egy 768 bites, 232 számjegyű RSA - kulcsot faktorálnia. A prímtényezők megtalálása a számmezőszita általános módszerével történt [6] . Az első lépés (6-os és 1-es fokú polinompár kiválasztása) 80 processzoron körülbelül fél év számolást vett igénybe, ami körülbelül 3%-a volt az algoritmus fő szakaszában (szitálás) töltött időnek, amelyet számítógépek százait csaknem két évig. Ha ezt az időt interpoláljuk egyetlen 2,2 GHz-es AMD Opteron processzor működésére 2 GB RAM-mal, akkor ez körülbelül 1500 év lenne. Az adatok feldolgozása a következő, erőforrás-igényes lépéshez (lineáris algebra) történő szitálás után néhány processzoron több hetet vett igénybe. Az utolsó lépés a nem triviális OSLU-megoldások megtalálása után nem tartott tovább 12 óránál.

Az OSLU megoldást Wiedemann módszerrel több különálló klaszteren hajtották végre, és valamivel kevesebb, mint 4 hónapig tartott. A ritka mátrix mérete 192 796 550 × 192 795 550 volt, 27 795 115 920 nem nulla elemmel. A mátrix merevlemezen való tárolása körülbelül 105 gigabájtot vett igénybe. Ugyanakkor körülbelül 5 terabájt tömörített adatra volt szükség ennek a mátrixnak a felépítéséhez.

A csoport végül mindkét prímtényezőt ki tudta számítani, amelyek mindegyike egy 384 bites, 116 jegyű szám.

A kutatók biztosak abban, hogy faktorizációs módszerükkel az 1024 bites RSA-kulcs feltörése lehetséges lesz a következő évtizedben.

A kutatók szerint munkájuk után csak az 1024 bites vagy annál hosszabb RSA kulcsok tekinthetők megbízható titkosítási rendszernek. Ezenkívül a következő három-négy évben fel kell hagyni az 1024 bites kulcsú titkosítással. [7] .

A modulus két prím szorzatára való kiterjesztésének ismeretében az ellenfél könnyen megtalálhatja a titkos kitevőt, és ezzel megtörheti az RSA-t. Mindazonáltal a mai napig a leggyorsabb faktorizációs algoritmus, a General Number Field Sieve szita, amelynek sebessége egy k bites egész szám esetén néhány , nem teszi lehetővé egy nagy egész szám elfogadható időn belüli bontását.

A PGP működése

A PGP- titkosítás szekvenciálisan, hash-el, adattömörítéssel, szimmetrikus kulcsú titkosítással és végül nyilvános kulcsú titkosítással történik, és minden lépést a számos támogatott algoritmus egyike hajt végre. A szimmetrikus titkosítás hét szimmetrikus algoritmus ( AES , CAST5 , 3DES , IDEA , Twofish , Blowfish , Camellia ) egyikével történik munkamenetkulcson. A munkamenetkulcsot egy kriptográfiailag erős pszeudo-véletlenszám-generátor segítségével állítják elő . A munkamenet kulcsát a címzett nyilvános kulcsával titkosítják az RSA vagy Elgamal algoritmusok segítségével (a címzett kulcsának típusától függően). Minden nyilvános kulcs egy felhasználónévnek vagy e-mail címnek felel meg. A rendszer első verziója a Web of Trust nevet kapta, és szemben állt az X.509 rendszerrel , amely a PGP-hez később hozzáadott hierarchikus CA-alapú megközelítést használt . A PGP modern verziói mindkettőt tartalmazzák.

Billentyűk

A PGP-felhasználó létrehoz egy kulcspárt: nyilvános és privát kulcsot . A kulcsok generálásakor megadásra kerül azok tulajdonosa (név és e-mail cím ), a kulcs típusa, a kulcs hossza és érvényességi ideje. A nyilvános kulcs a digitális aláírás titkosítására és ellenőrzésére szolgál . Privát kulcs - dekódoláshoz és digitális aláírás létrehozásához.

A PGP háromféle kulcsot támogat: RSA v4, RSA legacy (v3) és Diffie-Hellman/DSS ( Elgamal a GnuPG terminológiájában ).

RSA örökölt kulcsok esetén a kulcs hossza 1024 és 2048 bit között lehet, a Diffie-Hellman/DSS és RSA kulcsok esetében pedig 1024 és 4096 között. Az RSA örökölt kulcsok egy kulcspárt tartalmaznak, míg a Diffie-Hellman/DSS és RSA kulcsok egy főkulcsot és további titkosítási kulcsokat tartalmaznak. Ugyanakkor az elektronikus aláírási kulcs a Diffie-Hellman/DSS kulcsokban mindig 1024-es méretű. Az egyes kulcstípusok érvényességi ideje korlátlanul vagy meghatározott dátumig definiálható. Egy titkos kifejezést használnak a kulcstároló védelmére.

Digitális aláírás

A PGP támogatja a hitelesítést és az integritás-ellenőrzést digitális aláíráson keresztül . Alapértelmezés szerint a titkosítással együtt használatos, de egyszerű szövegre is alkalmazható. A feladó PGP-t használ az RSA vagy DSA aláírás létrehozásához . Ez először létrehoz egy hash -t a nyílt szövegből (más néven kivonatot), majd digitálisan aláírja a hash -t a küldő privát kulcsának használatával. Az MD5 , SHA-1 , RIPEMD-160 , SHA-256 , SHA-384 , SHA-512 algoritmusok használhatók hash létrehozására . A PGP újabb verziói támogatják az MD5-öt a korábbi verziókkal való kompatibilitás fenntartása érdekében. Az aláíráshoz RSA vagy DSA algoritmusokat használnak (a kulcs típusától függően).

Adattömörítés

Az üzenetek és fájlok méretének csökkentése, valamint a kriptográfiai elemzés megnehezítése érdekében a PGP tömöríti az adatokat a titkosítás előtt. A tömörítés a ZIP , ZLIB , BZIP2 algoritmusok egyike szerint történik . A tömörített, rövid és gyengén tömöríthető fájlok nincsenek tömörítve.

Web of Trust

Mind az üzenetek titkosításánál , mind a digitális aláírás ellenőrzésénél szükséges, hogy a címzett által kapott nyilvános kulcs valóban a feladóé legyen. A nyilvános kulcs egyszerű letöltésével megváltoztatható. A PGP az első verziók óta támogatja a nyilvános kulcsú tanúsítványokat , amelyek segítségével a helyettesítések (vagy véletlen átviteli hibák) könnyen felismerhetők. Nem elég azonban egyszerűen létrehozni egy módosítástól védett tanúsítványt, mivel ez csak a létrehozás után garantálja a tanúsítvány integritását. A felhasználóknak valamilyen módon ellenőrizniük kell, hogy a tanúsítványban lévő nyilvános kulcs valóban a feladóhoz tartozik-e. Az első verziók óta a PGP termékek tartalmaztak egy belső tanúsítvány-ellenőrzési sémát, amelyet a bizalom webjének neveznek .  A megadott "felhasználói név - nyilvános kulcs" pár harmadik fél által aláírható, igazolva a kulcs és a tulajdonos egyezését. Az ilyen aláírások több egymásba ágyazott megbízhatósági szinttel rendelkezhetnek. Bár sok program olvassa és írja ezeket az információkat, nagyon kevesen veszik figyelembe ezt a tanúsítványszintet a tanúsítvány elfogadásának vagy elutasításának eldöntésekor.

A web of trust protokollt először Zimmermann írta le 1992-ben a PGP 2.0-s verziójának kézikönyvében:

Idővel felhalmozódnak mások kulcsai, amelyeket megbízható ajánlóknak nevezhet. Bárki más választhatja meg megbízható ajánlóit. És mindenki fokozatosan összegyűjti és a kulcsaival együtt szétosztja mások hitelesített aláírásait, elvárva, hogy bármely címzett megbízzon legalább egy vagy két aláírásban. Ez lehetővé teszi egy decentralizált, hibatűrő hálózat létrehozását az összes nyilvános kulcsból.

A bizalomháló mechanizmusnak vannak előnyei a központi nyilvános kulcs-kezelési infrastruktúrához képest , mint például az S/MIME -ben, de nem terjedt el széles körben. A felhasználók manuálisan akarták ellenőrizni a tanúsítványok helyességét, vagy egyáltalán nem.

Tanúsítványok

A legújabb OpenPGP specifikációkban megbízható aláírások használhatók a tanúsító hatóságok létrehozásának támogatására. A tanúsítvány-bizalom azt jelenti, hogy a kulcs valóban a megadott tulajdonoshoz tartozik, és egy szinttel lejjebb tanúsítványok aláírására használható. A 0-s szintű tanúsítvány normál aláírást jelent. Az 1-es szint azt jelenti, hogy aláírt kulccsal 0-s szintű tanúsítványokat hozhat létre, 2-es szintű tanúsítvánnyal 1-es szintű tanúsítványokat hozhat létre. A 2-es szint szinte megegyezik azzal a bizalomfokozattal, amellyel a felhasználók a böngészőkbe épített megbízható tanúsítványok listájára támaszkodnak.

A PGP minden verziója tartalmaz egy módot a tanúsítványok visszavonására. Erre akkor van szükség, ha meg akarja őrizni a kommunikáció biztonságát, amikor a privát kulcs elveszik vagy feltörik . A tanúsítványok visszavonása hasonló a központi nyilvános kulcsú infrastruktúrában lévő CRL-ekhez. A PGP modern verziói a tanúsítványok lejárati dátumát is támogatják.

Az összes aszimmetrikus titkosítású kriptográfiai rendszerre jellemző annak a problémája, hogy helyesen határozzák meg, hogy a nyilvános kulcs a tulajdonosé-e . Nincsenek elég jó megoldásai. Az eredeti PGP-séma lehetővé teszi a felhasználó számára, hogy eldöntse, használja-e a tanúsítvány-érvényesítési sémát, míg a legtöbb nyilvános kulcsú infrastruktúra megköveteli az egyes tanúsítványok érvényesítését.

Történelem

Korai történelem

1991-ben Philip Zimmerman megalkotta a PGP első verzióját. Az első verzió a BassOmatic szimmetrikus titkosítási algoritmust tartalmazta , amelyet maga Zimmerman hozott létre. Zimmerman részt vett az atomellenes mozgalomban, és létrehozta a PGP-t a BBS biztonságos használatára , valamint a fájlok és üzenetek tárolására. A nem kereskedelmi célú felhasználáshoz nem volt szükség licencre, az összes forráskódot minden másolat terjesztette. A PGP átterjedt a Usenetre , majd az Internetre .

Bűnügyi nyomozás

Nem sokkal a megjelenése után a PGP-t az Egyesült Államokon kívül kezdték használni, és 1993-ban az amerikai kormány vizsgálatot indított Zimmerman ellen a 40 bitnél hosszabb kulcshosszúságú kriptográfiai rendszerek forgalmazását szabályozó exporttörvények megsértésének gyanúja miatt. A PGP 128 bites vagy annál hosszabb kulcsokat használt.

Zimmerman ügyesen megkerülte az amerikai törvények korlátozásait. A forráskódot az MIT Press által kiadott könyvben publikálta [8] [9] . A kód beolvasható, felismerhető és lefordítható. A könyvek exportját nem lehet betiltani, mert azt az Egyesült Államok alkotmányának első kiegészítése védi (hasonló sémát használtak a Snuffle titkosítási rendszerben is, lásd a Bernstein kontra Egyesült Államok ügyet ).

1996-ban a vizsgálatot lezárták [10] [11] [12] .

OpenPGP

PGP Inc. aggódott a szabadalmak miatt . A vállalat létrehozta az Unencumbered PGP ("unencumbered PGP") belső szabványát, amely nem használ olyan algoritmusokat, amelyeknek problémái vannak a licencekkel. Mivel a PGP-t világszerte széles körben használták, sokan szerettek volna saját PGP 5-kompatibilis szoftvert létrehozni. 1997-ben a PGP Inc. javasolta az OpenPGP nevű IETF szabványt. Az IETF megalkotta az RFC 2440 (1998) és az RFC 4880 (2007) szabványt.

1999- ben a Free Software Foundation létrehozta az OpenPGP ingyenes megvalósítását GNU Privacy Guard (GnuPG) néven .

Network Associates megszerzése

1997 decemberében a PGP Inc. a Network Associates Inc (jelenleg McAfee ) vette át . A NAI továbbra is exportált forrásnyomtatással. A NAI részeként a PGP csapata lemeztitkosítást, tűzfalat, behatolásészlelést és IPsec VPN -t fejlesztett ki . Miután 2000-ben legalizálták a kriptográfiai szoftverek exportját, a NAI a PGP-csapat tiltakozása ellenére leállította a forráskód közzétételét.

2001-ben Zimmerman kilépett a NAI-ból, a NAI bejelentette a PGP eladását és a PGP fejlesztés leállítását. 2002-ben a NAI megszüntette az összes PGP PGP E-Business Server termék (a PGP eredeti konzolos verziója) támogatását.

Jelenlegi állapot

2002-ben több korábbi PGP fejlesztő megalakította a PGP Corporationt , és felvásárolta a PGP-t (kivéve a konzolos verziót). 2003-ban a PGP Corporation kifejlesztett egy új szerverterméket, a PGP Universal-t.

2010-ben a Symantec Corp. megvásárolta a PGP-t 300 millió dollárért.

Cryptographic Applications PGP Corporation

A PGP-t eredetileg kliensoldali e-mail titkosításra fejlesztették ki, de 2002 óta tartalmazza laptop merevlemezek, fájlok és könyvtárak titkosítását, azonnali üzenetküldést, kötegelt fájlátvitelt, fájl- és címtárvédelmet a hálózati tárolókban, modern változataiban pedig - az adatok titkosítását is. HTTP kérések és válaszok a szerver oldalon (mod openpgp) és a kliens oldalon (Enigform).

Az ügyfélprogramok a PGP Desktop családban egyesülnek (beleértve a PGP Desktop e-mailt , a PGP Whole Disk Encryption és a PGP NetShare -t ).

A PGP Universal Server lehetővé teszi a PGP Desktop alapú ügyfelek központi adminisztrálását a parancssorból .

2010-ben az alkalmazás jogait a Symantec 300 millió dollárért megszerezte [13] .

Az oroszországi használat jogi vonatkozásai

A mai napig nincs közvetlen törvényi tilalom a PGP használatára Oroszországban. A kriptográfia használatát csak állami és önkormányzati intézményekben korlátozza a törvény. Az FSB arra utasítja az összes kormányzati ügynökséget, hogy csak hitelesített kriptográfiai eszközöket használjanak. Magánszemélyek és cégek maguk határozzák meg, hogy számukra milyen információ minősül üzleti titoknak, ezek tárolásának és továbbításának módjait [14] . A Helpdesk24 információs forrás „Az információvédelem kriptográfiai eszközeinek használatának jogszerűsége” című cikkben kivonatokat ad a szövetségi törvényekből, amelyek megmagyarázzák ezt a problémát. [1] Ezenkívül az "openPGP Oroszországban" projekt szerzői azzal érvelnek, hogy nincsenek törvények, amelyek tiltják a PGP használatát [15] . A PGP és nem hitelesített megfelelői segítségével előállított elektronikus aláírás jogi erővel bír az Orosz Föderációban, mivel az elektronikus aláírásról szóló 63-FZ [16] 5. cikkének (3) bekezdése szerint az „elektronikus aláírásról” szóló definíció alá tartozik. továbbfejlesztett minősíthetetlen elektronikus aláírás [17] . E szövetségi törvény 6. cikkének (2) bekezdése szerint az ilyen ES elismeréséhez megállapodásra van szükség az elektronikus interakció résztvevői között.

Lásd még

Jegyzetek

  1. 1 2 https://web.archive.org/web/web.pa.msu.edu/reference/pgp-readme-1st.html
  2. https://web.archive.org/web/web.mit.edu/network/pgp262-announce.html
  3. 1 2 3 http://openpgp.vie-privee.org/latest.html
  4. https://rjmarq.org/pgp/pgp5.html
  5. https://web.archive.org/web/web.mit.edu/afs/net/mit/jis/www/pgpfaq.html
  6. RSA-768 faktorizációs bejelentés archiválva : 2014. április 13. a Wayback Machine -nél 
  7. RSA-768 faktorizálás archiválva : 2020. február 11. a Wayback Machine -nél 
  8. Zimmermann, Philip (1995). PGP forráskód és belsők. MIT Press. ISBN 0-262-24039-4 . A szerző előszava Archivált 2016. március 3-án a Wayback Machine -nél
  9. Robert nyilatkozata v. Előző archiválás : 2016. június 30., a Wayback Machine , 1996. OKTÓBER 4. – A kiadó vallomása a Bernstein v. Az Egyesült Államok Igazságügyi Minisztériuma archiválva : 2018. április 4., a Wayback Machine // EFF 
  10. A Feds nem fog vádat emelni a PGP Creator ellen. Archiválva : 2016. február 5., a Wayback Machine , 1996. január 11., Phil Zimmermann
  11. Íme a vezető védőm közleménye Archiválva : 2016. március 15., a Wayback Machine / Phil Zimmermann, 1996.01.12 .
  12. Phil Zimmermann honlapja . Letöltve: 2013. február 23. Az eredetiből archiválva : 2013. február 26..
  13. A Symantec 300 millió dollárért megvásárolta a PGP Corporationt. Archiválva : 2016. március 5. a Wayback Machine -nél .
  14. Szövetségi törvény "Az üzleti titokról" No. 98-FZ 10. cikk "Az információk bizalmasságának védelme",
  15. openPGP Oroszországban / Gyakran Ismételt Kérdések / OpenPGP Oroszországban . Letöltve: 2013. február 27. Az eredetiből archiválva : 2013. január 20..
  16. Az Orosz Föderáció 2011. április 6-i szövetségi törvénye, N 63-FZ . Letöltve: 2020. április 30. Az eredetiből archiválva : 2020. május 28.
  17. Az "ELEKTRONIKUS ALÁÍRÁS" fogalmának tartalmáról A Wayback Machine 2013. október 5-i archív másolata // Kriptográfiai, Kommunikációs és Informatikai Intézet, Moszkva

Linkek