Ez a bejegyzés egy hosszabbra tervezett, kriptográfiai témájú sorozat ötödik darabja. A bejegyzésekben nem bocsátkozom komoly elméleti fejtegetésekbe – csak a privátszféra védelme iránt érdeklődő laikus vagy szakmabeli számára potenciálisan érdekes dolgokat szeretném kifejteni. A sorozat előző darabja itt olvasható: http://pet-portal.eu//blog/read/84/2008-07-21-Aszimmetrikus-kriptografia.php/
Az eddigiekben a kriptográfiában használt algoritmusokról írtam, de kevés szó esett arról, hogy a gyakorlatban hogy néz ki a kényes természetű adatok védelme. A TrueCrypt nevű, népszerű rejtjelezőprogram bemutatásával szeretném ezt a hiányt pótolni.
A TrueCrypt (TC) egy nyílt forráskódú szoftver, melyet a TrueCrypt Foundation fejleszt 2004 óta. A program jelenleg a Windowst (egészen a Vistáig), a MacOS X Tigert és Leopardot, illetve a Linux platformot támogatja. A TC egy ún. „on-the-fly” vagy „on-line” rejtjelező, ami azt jelenti, hogy a szimpla fájlműveletekkel (pl. másolás vagy áthelyezés) egyidőben megy végbe az érintett állományok titkosítása.
Az alapkoncepció a virtuális meghajtókra épül. A véletlenszerű adathalmaznak tűnő rejtjelezett tartalom visszafejtéséhez megadjuk a kulcsot (ennek természetéről majd később), és kiválasztjuk a csatolási pontot (mount point). Ez utóbbi Windows alatt egy meghajtóbetűjel, míg Linux alatt egy könyvtár lehet. Ha a megfelelő kulcsot adtuk meg, a csatolási pont alatt egy teljesen hétköznapi fájlrendszert lát az operációs rendszer, vagyis minden fájlművelet illetve egyéb beavatkozás – mint például a töredezettségmentesítés – pontosan úgy megy végbe, mint egy nem rejtjelezett fájlrendszeren, épp csak a TC is beékelődik a rendszerhívások láncolatába a titkosított fájlokhoz való hozzáféréskor. A virtuális meghajtó leválasztása (dismount) után a rejtjelezett fájlrendszer teljes egésze újra biztonságban van.

A meghajtók kezelése ebben az ablakban történik
Háromféle adategységen lehetséges rejtjelezés: ún. konténerfájlon, partíción vagy rendszermeghajtón (vagyis olyan fizikai meghajtón, melynek egyik partícióján helyezkedik el a betöltendő operációs rendszer). Az első esetben a TC egy hétköznapi fájlt hoz létre az általunk kiválasztott helyen. Ez az állomány fogja tartalmazni a rejtjelezett fájlrendszert. A módszer előnye, hogy a fájlt könnyűszerrel másolhatjuk illetve mozgathatjuk. A második esetben egy partíciót „helyben” rejtjelezünk. Ez azt jelezti, hogy a partíció bármilyen jellemzője – mint amilyen a tartalmazott fájlrendszer típusa – a továbbiakban csak a TC-tel való visszafejtés után válik ismertté az operációs rendszer számára. Ez a koncepció kiküszöböli a konténer töredezettségéből adódó teljesítménydegradációt. A harmadik módszer talán a legérdekesebb: ilyenkor az egész meghajtó tartalmára kihat a rejtjelezés, beleértve például a partíciós táblát is. A meghajtó egyetlen titkosítatlanul maradó területe az első 512 bájt, ide kerül a TC saját betöltőprogramja (boot loader): ez felel a betöltés előtti hitelesítésért (pre-boot authentication), és az operációs rendszer betöltésének megkezdéséért. Érdekesség, hogy a TC rendszertöltő által kiírt szöveget testreszabhatjuk. Kiírhatunk olyan üzeneteket, mint például „Sérült/hiányzó rendszertöltő”, vagy teljes egészében le is tilthatunk bármilyen kimenetet. Ezzel a felületes támadókban eloszlathatjuk azt a gyanút, hogy a rendszermeghajtó rejtjelezve van, mert arra fognak gyanakodni, hogy a számítógép működésképtelen állapotban van.
Érdekesek továbbá a TC-ben használható kulcsok. Alapvetően jelszót és kulcsállományokat használhatunk a rejtjelezési mesterkulcs származtatásához. Utóbbi kategóriát általunk választott, szimpla, mezei állományok – például képek, szövegek – alkothatják. A kulcsfájlok méretére nincsen maximumkorlát, bár teljesítménnyel kapcsolatos okokból csak az első 1 megabájtjuk kerül felhasználásra a kulcsszármaztatáshoz. Ha több, a legkülönfélébb helyeken található kulcsállományt adunk meg a konténer létrehozásakor, sokat nyerhetünk a biztonság terén.
Hadd tegyek a kulcsfájlokkal kapcsolatban néhány megjegyzést. Egyrészt vigyázni kell, nehogy töröljük vagy módosítsuk a kulcsállományokat, különben minden valószínűség szerint könnyes búcsút vehetünk rejtjelezett adatainktól. Másrészt a kulcsfájl akkor igazán jó, ha annak hasznos részének nagy a „véletlenszerűsége” (pontosabban az entrópiája). Ezért hasznos a TC „véletlenfájl-generátora”, mellyel ideális kulcsállományt készíthetünk magunknak. Viszont a közel tökéletes véletlenszerűség felkeltheti egy támadó figyelmét – hol helyezzük hát el ezt a fájlt? Több jó válasz is lehetséges – az egyikről, valamint a TC technikaibb aspektusairól majd egy hét múlva írok.
Vissza
Hozzászólások
Összesen 4 hozzászólás látható.
2016.09.24.
2009.02.15.
2009.02.12.
2009.02.09.
Új hozzászólás beküldése
Bárki hozzászólhat, nem regisztrált beküldő esetén egyik adat megadása sem kötelező - a hozzászólás akár névtelen is lehet.