next up previous index
Következő: 5.9.6.2.8.6 PGP - gyors Fel: 5.9.6.2.8 Haladó témák Előző: 5.9.6.2.8.4 Sebezhetőség   Index

5.9.6.2.8.5 A hamis biztonság
Egy titkosító szoftver esetén mindig felmerül az a kérdés, hogy miért kellene bíznod benne. Még akkor is, ha magad vizsgáltad át a forráskódot, kriptográfiai ismeretek hiányában nem feltétlenül tudod jól megítélni a biztonság fokát. És ha jól értesz is a kriptográ- fiához, előfordulhat, hogy az algoritmus apró hiányossága esetleg elkerülik a figyelmedet. Amikor gimnáziumba jártam, még a hetvenes évek elején, kitaláltam egy zseniális titkosítási módszert. Ebben egyszerűen pszeudorandom számokat kellett vegyíteni a nyersszövegbe, így jött létre a kódszöveg. A bekevert számok lehetetlenné teszik a frekvenciaanalízisen alapuló fejtést, és még a kormányerők se bírnák visszafejteni az üzenetet. Nagyon elégedett voltam a felfedezésemmel. És rendkívül magabiztos. Évekkel később megtaláltam a módszeremet számos kriptográfiába bevezető könyvben. Príma. Más kódolóknak is eszébe jutott ez a dolog. Csak az volt a baj, hogy a módszer azért került bemutatásra, hogy néhány elemi kriptoanalízis-technikát demonstráljanak az így kódolt üzenetek visszafejtésénél. Na ennyit a zseniális módszeremről... Az esetből kénytelen voltam levonni azt a tanulságot, hogy a rejtő- algoritmus tervezésénél mennyire könnyű beleesni a hamis biztonság érzetébe. Az emberek többsége nem érti, hogy mennyire nehéz egy olyan titkosító algoritmust találni, mely ellenáll egy erőforrásokban bővelkedő ellenfél tartós feltörési kísérleteinek. Jónéhány szoftver- fejlesztő megtette, hogy teljesen naiv séma alapján írt titkosító algoritmust (akár többen is ugyanazt.) Egyeseket bele is építettek a kereskedelmi termékekbe és jó pénzt csináltak belőle, amikor eladták sokezer gyanútlan felhasználónak. Ez azzal analóg, hogy olyan biztonsági övet árul valaki, amely ránézésre jónak tűnik, viszont a legcsekélyebb karambol esetén is elszakad. Az ilyenek használata még veszélyesebb, mint teljesen biztonsági öv nélkül autózni. Hiszen senki sem gondolja, hogy rosszak egy valódi karambol bekövetkeztéig. A gyenge algoritmuson alapuló titkosítás használata hasonló veszélynek teszi ki féltett adatainkat, amelyek titkosítás nélkül esetleg nem kerülnének ugyanilyen helyzetbe. Egyes kereskedelmi csomagok a DES algoritmust használják, ami egy elég jó hagyományos titkosítási eljárás, amelyet saját köznapi adatainak védelmére kormány is előír (de nem úgy kiemelt titkosságú adatokra - hmm.). A DES többféle módon futhat, melyek közül egyes módok jobbak, mint a többiek. Így a kormány előírja, hogy ne alkalmazzák a legegyszerűbb ECB (Electronic Codebook) módot, hanem az erősebb CFB (Cipher Feedback) vagy CBC (Cipher Block Chaining) módot kell alkalmazni. Ennek ellenére az általam látott DES-t alkalmazó programokban az ECB-t alkalmazzák. Beszéltem néhány ilyen program készítőjével, és kiderült, hogy egyesek nem is hallottak a CBC és FCB módokról, sem az ECB ismert gyengeségeiről. Már az a tény is felháborító, hogy az ilyen témában programozónak halvány sejtelme sincs a kriptográfia alapjairól. És ezek a szoftverek ráadásul szoktak egy alternatív algoritmust is tartalmazni, melyet a lassú DES helyett javasolnak használni. A szerző talán abba a hitbe ringatja magát (és a fogyasztókat), hogy az alternatív rejtjelzés ugyanolyan biztonságos mint a DES lenne, de kikérdezve gyakran tapasztaltam, hogy az én előzőekben ismertetett ,,zseniális'' algoritmusom egy változatáról van szó. Vagy a programozók másik csoportja egyszerűen semmit nem hajlandó elárulni a titkosítás módjáról, ugyanakkor elvárja, hogy feltétel nélkül megbízzak benne. Elhiszem, hogy meg van győződve, hogy az alkalmazott módszere zseniális, de hogyan lehetnék ebben biztos, ha nem láthatom? A tárgyilagosság érdekében le kell szögeznem, hogy a fentiekben tárgyalt szoftverek nem olyan társaságoktól származnak, melyek kriptográfiára specializálódnak. Van egy AccessData nevű társaság (87 East 600 South, Orem, Utah 84058, tel: 1-800-658-5199), mely 185 dollárért árul egy olyan programot, mely megfejti a WordPerfect, Lotus 1-2-3m MS Excel, Symphony, Quattro Pro, Paradox és MS-Word 2.0 programok beépített titkosítását. És nem egyszerűen kitalálja a jelszót, hanem valódi kriptoanalízist használ. Az emberek jó része saját - elfelejtett jelszóval védett - adatainak visszafejtéséhez vásárolja meg az említett programot. Meg törvényes végrehajtással foglalkozó társasá- gok, amikor a lefoglalt fájlokba szeretnének beleolvasni. Beszéltem Eric Thompsonnal, a program szerzőjével, ő mondta, hogy a program a másodperc tört része alatt végez a megfejtéssel, csak beleépített jópár lassító ciklust, hogy a vásárló szemében a megfejtés komoly munkának tűnjön. Azt is közölte, hogy a PKZIP jelszavas védelme ugyanúgy könnyen feltörhető és a végrehajtók máris hozzájutnak ehhez a szolgáltatáshoz egy másik cég által. A rejtjelzés bizonyos tekintetben hasonló a gyógyszerekhez. Az integritása a döntő. A rossz penicillin kívülről pont ugyanolyan mint a jó penicillin. A táblázatszámoló szoftverről ránézésre meg tudod mondani, hogy rossz, de hogy állapítod meg a titkosítóról, hogy az? A rossz titkosító által létrehozott kódszöveg pont olyan jónak tűnik mint a jó titkosítóé. Ez jó terepet kínál a ,,kuruzslóknak''. De szemben a gyógyszert hamisítókkal, a rossz titkosítók készítői még csak nincsenek is tisztában azzal, hogy amit eladnak, az a hamis biztonság. A készítők általában jó programozó szakemberek, de életükben nem láttak még kriptográfiáról szóló irodalmat. És meg vannak győződve róla, hogy jó titkosítót tudnak készíteni. Miért is ne? Hisz a feladat nem tűnik olyan nehéznek. És a program látszólag jól is működik. Az az ember, aki kitalált egy szerinte megtörhetetlen titkosítást vagy egy rendkívül ritka zseni, vagy naiv és tapasztalatlan a területen. Emlékszem, hogy Brian Snow, az NSA (USA biztonsági szolgálat) egyik sokra tartott elöljáró kriptográfusa azt mondta: sose hinne egy olyan ember által kitalált algoritmusban, aki előzőeg nem szerzett komoly tapasztalatokat a rejtjelfejtés területén. Az ilyen tapasztalat nagyon sokat ér. Ahogy megfigyeltem, a titkosításra szakosodott cégeknél csupa ilyen tapasztalt embert látni. ,,Igen'', folytatta Snow, ,,ez jelentősen megkönnyíti a munkánkat itt az NSA-ban''. Magam is osztom ezt a véleményt. A hamis biztonsággal maga a kormány is kereskedik. A II. világháború után pl. eladták a németektől zsákmányolt Enigma rejtjelző készülékeket a fejlődő országok kormányainak. De azt nem közölték, hogy a szövetséges hatalmak már a háború alatt megfejtették az Enigma rejtjelezést. Ezt a tényt a háború után sokáig titokként őrizték. A ma elterjedt Unix rendszerek közül elég sok ma is az Enigma kódolást használja a fájlok titkosítására, részben azért, mert a kormány akadályokat gördített a jobb sémák alkalmazásának útjába. Az RSA algoritmus 1977-ben való publikálását is szerették volna megakadályozni. És azóta is megakadályozzák a gyártók minden olyan törekvését, melyek valóban biztonságos telefonokkal látnák el a köznépet. Az USA biztonsági hivatalának (NSA) is az a legfőbb munkája, hogy információkat gyűjtsön. Elsősorban a privát telefonbeszélgetések lehallgatásával (lásd James Bamford ,,The Puzzle Palaze'' c. könyvét). Az NSA-nál jelentős tudás és erőforrás áll rendelkezésre a különféle titkosítások megfejtéséhez. Ha az emberek nem jutnak jó titkosítóprogramhoz, az csak öröm az NSA-nak. Ugyanez a szervezet foglalkozik a titkosító algoritmusok minősítésével és előírásával is. Egyesek szerint ez komoly érdekkonfliktust jelent. Olyan, mintha a kecskére bíznák a káposztát. Az NSA a saját algoritmusának használatát erőlteti, melynek működésébe nem lehet betekinteni (lévén titkos), ugyanakkor elvárja, hogy bízzunk benne és használjuk. Ezzel szemben bármelyik kriptográfus megmondhatja, hogy egy jó titkosító algoritmust nem kell titokként őrizni, a nyilvánosságra hozatal semmiben nem jelent támpontot a megfejtéshez. Csak a titkosító kulcsokat kell titokban tartani. Az NSA emberein kívül ki tudhatja, hogy az algo- ritmus megbízható? És mindenki tudja, hogy nem nehéz egy olyan algoritmust tervezni, amelynek alapján azután csak ők tudnak kódot visszafejteni, amíg nem hozzák nyilvánosságra. Elképzelhető, hogy szándékosan hamis biztonságot árulnak? Én nem vagyok annyira bizonyos a PGP megbízhatóságában, mint annak idején a saját ,,zseniális'' algoritmusomban hittem. Ha így lenne, azt rossz jelnek tartanám. Viszont abban biztos vagyok, hogy az RSA nem tartalmaz semmilyen könnyen felfedhető gyengeséget. A PGP-ben alkalmazott algoritmusokat a civil szféra kiemelkedő kriptográfusai tervezték, és ezek egyenként komoly gyakorlati próbáknak voltak alávetve. A program forráskódja széles körben hozzáférhető, tehát bárki beletekinthet. A program sok éven át készült, és ezalatt rengetegen áttekintették. És én nem az NSA-nak dolgozom. Remélem, hogy ennyi elegendő ahhoz, hogy valaki megbízhasson a PGP-ben.


next up previous index
Következő: 5.9.6.2.8.6 PGP - gyors Fel: 5.9.6.2.8 Haladó témák Előző: 5.9.6.2.8.4 Sebezhetőség   Index

1999-09-17