Šifrujeme data programem TrueCrypt

Petr Krčmář 9. 10. 2007

TrueCrypt je v poslední době čím dál oblíbenějším nástrojem pro jednoduché šifrování důležitých dat nejen na přenosných médiích. Jeho velkou výhodou je, že jej můžete nainstalovat do MS Windows i linuxových distribucí. Bezpečnému transportu dat tak nic nebrání. Jak se TrueCrypt používá v Linuxu?

O TrueCryptu

TrueCrypt je open-source program pro šifrování diskových oddílů. Své služby nabízí jak uživatelům MS Windows, tak i těm, kteří používají Linux. Obě implementace jsou navíc plně kompatibilní, takže není problém používat jeden šifrovaný flash disk v Linuxu i Windows.

Program nabízí takzvané on-the-fly šifrování, což znamená, že veškeré procesy probíhají na pozadí a uživatel s daty pracuje, jako by byla na běžném disku. TrueCrypt je však automaticky šifruje a dešifruje.

Pro šifrování disků je možno použít algoritmy AES-256, Serpent a Twofish. Protože je celá aplikace napsaná s ohledem na špičkovou ochranu dat a obsahuje řadu bezpečnostních mechanismů, můžete se spolehnout na to, že data jsou chráněna skutečně velmi dobře. Neprůstřelnost celého řešení potvrdil nedávno i český expert na kryptografii Vlastimil Klíma. „TrueCrypt je mimořádný software pro šifrování dat na discích. Ověřili jsme, že ve zvoleném modu neobsahuje zadní vrátka, a proto jsme mu svěřili ochranu svých dat.“

Původně byl program k dispozici pouze pro MS Windows, ale už více než dva roky je k dispozici i pro Linux. Protože je šifrování dat čím dál populárnější, rozhodli jsme se vám nabídnout informace o tom, jak TrueCrypt v Linuxu použít.

Instalujeme

Před instalací samotného TrueCryptu musíte nainstalovat Device Mapper. Jedná se o ovladač pro linuxové jádro, který spravuje diskové oddíly, ale jejich ovládání ponechává na aplikaci v uživatelském prostoru. TrueCrypt jej používá právě pro práci s virtuálními oddíly, které sám vytváří.

Device Mapper byste měli najít ve své oblíbené distribuci (v Debianu je) například pod názvem dmsetup. Balíček stačí normálně nainstalovat.

Samotný TrueCrypt pak můžete stáhnout z domovské stránky projektu. K dispozici jsou jak balíčky pro některé systémy (Ubuntu a openSUSE), tak i zdrojové kódy. Bohužel je software distribuován pod licenci TCL (TrueCrypt Collective License), která není podle měřítek GNU svobodná.

Je velmi podobná licenci na XFree86 a vyžaduje zmínku typu „Projekt je založen na TrueCrypt“, což odporuje pravidlům pro svobodný software. Je tedy zřejmé, že například Debian jej s touto licencí nikdy do distribuce nezařadí. Jak je to u jiných distribucí, netuším.

Pokud používáte openSUSE nebo Ubuntu, můžete si nainstalovat připravený balíček, pro ostatní jsou tu zdrojové kódy, které mají 1,1 MB. Nemusíte se jejich kompilace bát, instalace není nijak obtížná. Postup je následující:

$ tar xzf truecrypt-4.3a-source-code.tar.gz
$ cd truecrypt-4.3a-source-code/Linux
$ ./build.sh

Skript automaticky zkontroluje všechny závislosti a pokud něco chybí, sám si o potřebný balíček řekne. Pokud má vše potřebné, sám provede kompilaci potřebných součástí.

Pokud se vše povedlo, jako root spusťte

$ ./install.sh

a opět se rozjede automatický instalátor. Ten se zeptá na umístění utilit (standardně /usr/bin, umístění manuálových stránek (standardně /usr/share/man) a zda dovolíte použití aplikace i běžným uživatelům (standardně zakázáno). Poté se soubory nakopírují na své místo a je hotovo.

Vytváříme šifrovaný disk

K ovládání celého systému se používá utilita s názvem truecrypt a její použití je poměrně intuitivní, protože většina akcí je interaktivních a program se vás sám bude ptát na to, co potřebuje vědět. Pokud jste si nechali nainstalovat manuálové stránky (doporučuji), pak máte k dispozici i sofistikovanou nápovědu.

Nyní si vysvětlíme, jak se vytváří nový šifrovaný disk. Standardně TrueCrypt vytváří soubor, ve kterém uchovává všechny potřebné informace. Z tohoto pohledu se jedná o šifrovaný obraz disku, který je možno připojit jako běžný disk.

Pro vytvoření použijeme parametr -c jako create:

$ truecrypt -c disk.mpeg

Nenechejte se zmást zvolenou příponou. Je jen na vás, jak se bude soubor jmenovat, program na název souboru nijak nedbá a dokonce není možno z obsahu zjistit, že se jedná o šifrovaný disk. Můžete proto v rámci kamufláže použít třeba příponu .mpeg nebo úplně jinou.

Utilita se vás začne postupně ptát na některé věci (v závorce uvádím přednastavené volby):

  • Chcete běžnou nebo skrytou jednotku? (běžnou)
  • Jaký zvolíte souborový systém? (FAT)
  • Zvolte velikost jednotky – možno použít jednotku velikosti (K, M nebo G).
  • Zvolte hash algoritmus. (RIPEMD-160)
  • Zvolte šifrovací algoritmus. (AES)
  • Zadejte heslo k nové jednotce.
  • Znovu zadejte heslo.
  • Zadejte cestu k souboru s klíčem (může zůstat prázdné).

Jako šifrovací klíč je možno použít jak běžné heslo, tak i soubor s daty (nebo obojí). Ta je možno vygenerovat buďto s pomocí příkazu

$ truecrypt --keyfile-create soubor_s_klicem

(pak bude klíč dostatečně silný), nebo je možno použít libovolný soubor.

Ve všech případech však platí, že pokud klíč (tedy soubor nebo heslo) ztratíte/zapomenete/pozměníte (byť i jediný bit), přicházíte o všechna data na šifrovaném disku. Doporučuji proto dávat na klíče opravdu pozor.

Poté, co odpovíte na všechny otázky, program po vás bude chtít nějaké to náhodné rejdění myší po obrazovce. To je použito pro systémový random generátor pro vygenerování dostatečně kvalitních náhodných dat. Pokud nemáte myš, budete vyzváni k zapsání nějakých náhodných dat na klávesnici.

Tím jsme vytvořili nový soubor disk.mpeg, který obsahuje náš šifrovaný disk se souborovým systémem. Nyní jsme připraveni disk připojit a používat.

Odbočka: tvorba souborového systému

Pokud se vám z nějakého důvodu nelíbí souborový systém FAT, máte možnost vytvořit si libovolný jiný, který podporuje vaše jádro. Samozřejmě pak ale můžete mít problémy na MS Windows, které nemají tak širokou podporu souborových systémů jako Linux. Pokud vám na podpoře redmondího systému nezáleží, je volba na vás.

Předpokládejme, že jste při tvorbě nového disku ve druhé otázce vybrali, že nechcete vytvářet souborový systém. TrueCrypt tedy není schopen vám nabídnout ukládání souboru na disk. Může vám jej ale připojit jako další prázdný oddíl.

Provedeme tedy připojení s pomocí příkazu

$ truecrypt disk.mpeg

Pokud jste použili klíč, přidejte ještě parametr -k cesta_ke_klici. Program se zeptá na heslo a pokud vše půjde hladce, disk se připojí jako další oddíl.

TrueCrypt své oddíly značí jako /dev/mapper/truecrypt? kde místo otazníku dosazuje číslo oddílu počínaje nulou. Náš disk.mpeg by se tedy měl připojit jako  /dev/mapper/truecrypt0.

Nyní si na oddílu vytvoříme klasický souborový systém dle naších požadavků, tedy například

$ mkfs.ext3 /dev/mapper/truecrypt0

TrueCrypt samozřejmě celý oddíl transparentně šifruje a jeho podobu ukládá do souboru disk.mpeg. Tím jsme dokončili vytváření souborového systému a můžeme disk zase odpojit.

$ truecrypt -d /dev/mapper/truecrypt0

Připojujeme nový disk

Dostáváme se k tomu hlavnímu, a tím je připojování šifrovaného disku a práce s ním. Pokud TrueCrypt zná obsah souboru a má k dispozici ovladače souborového systému, proběhne připojení zcela automaticky. Samozřejmě můžeme disk připojit jako oddíl (viz předchozí část) a pak klasicky „mountnout“ souborový systém. TrueCrypt to ale může udělat celé za nás.

Programu stačí kromě souboru s diskem předat také adresář, do kterého bude obsah připojen. Příkaz tedy může vypadat takto:

$ truecrypt disk.mpeg /mnt/disk

Opět můžeme přidat parametr -k s cestou ke klíči. Adresář může být v podstatě kdekoliv, běžný uživatel (pokud má právo s TrueCryptem pracovat) zřejmě zvolí adresář u sebe v  /home.

Po zadání hesla se nám ve zvoleném adresáři objeví dešifrovaný obsah. Podle práv pak do něj můžeme normálně ukládat data, případně s nimi přímo pracovat, jako by se jednalo o běžný adresář na našem disku.

Odpojení disku

Odpojení je velmi jednoduché a už jsme si jej vlastně ukázali. Slouží k němu parametr -d, následovaný označením disku, který si přejeme odpojit. Označení může mít několik podob:

  1. Cesta připojenému souboru.
  2. Cesta k adresáři, kam je soubor připojen.
  3. Číslo zařízení v rámci TrueCryptu.
  4. Jméno připojeného disku.

Nejjednodušší zřejmě bude použít připojený adresář. Zavoláme tedy

$ truecrypt -d /mnt/disk

Pokud neudáte žádný konkrétní disk, dojde k odpojení všech připojených TrueCrypt jednotek.

Závěrem

Přestože pro Linux zatím neexistuje oficiální grafické rozhraní pro TrueCrypt, není jeho použití nijak složité. Existují však projekty, které se rozhraní snaží implementovat (například TruecryptGUI), ale často ani nejsou třeba.

TrueCrypt je velmi jednoduše použitelný nástroj, který nabízí velmi silné šifrování a především jednoduchou přenositelnost mezi systémy (je plánována podpora Mac OS X). Pokud chcete mít data na svých (nejen přenosných) discích v bezpečí, určitě TrueCrypt vyzkoušejte.

Anketa

Šifrujete svá data?

Našli jste v článku chybu?
Vitalia.cz: Galerie: Strouhanka ze starých rohlíků? Kdepak

Galerie: Strouhanka ze starých rohlíků? Kdepak

Podnikatel.cz: OSA zdraží, ale taky přidá nový poplatek

OSA zdraží, ale taky přidá nový poplatek

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Lupa.cz: Olympiáda zakázala GIFy. Moc to nepomáhá

Olympiáda zakázala GIFy. Moc to nepomáhá

Měšec.cz: 10 změn novely zákoníku práce

10 změn novely zákoníku práce

Měšec.cz: Na návštěvě na exekutorském úřadě

Na návštěvě na exekutorském úřadě

Podnikatel.cz: Pozor na vykuky, imitují služby České pošty

Pozor na vykuky, imitují služby České pošty

Lupa.cz: Kdo vykrádá LinkedIn? Zjistit to má soud

Kdo vykrádá LinkedIn? Zjistit to má soud

120na80.cz: Lepší poporodní sexuální život? Žádný problém

Lepší poporodní sexuální život? Žádný problém

Podnikatel.cz: Týká se vás EET? Chtějte od berňáku posudek

Týká se vás EET? Chtějte od berňáku posudek

Lupa.cz: Co najdete uvnitř kosmické sondy?

Co najdete uvnitř kosmické sondy?

Vitalia.cz: Je bílý kokos fakt tak úžasný? Ano, je!

Je bílý kokos fakt tak úžasný? Ano, je!

Vitalia.cz: 9 potravin, které nesmí chybět v jídelníčku těhotné

9 potravin, které nesmí chybět v jídelníčku těhotné

Měšec.cz: Udali ho na nelegální software a přišla Policie

Udali ho na nelegální software a přišla Policie

Měšec.cz: Platíme NFC mobilem. Konečně to funguje!

Platíme NFC mobilem. Konečně to funguje!

Root.cz: Xiaomi má vlastní notebook podobný Macu

Xiaomi má vlastní notebook podobný Macu

DigiZone.cz: Jetelín končí. Prima ho vyřadila

Jetelín končí. Prima ho vyřadila

DigiZone.cz: Pevnost Boyard v září a česká

Pevnost Boyard v září a česká

Lupa.cz: Nechcete datacentrum? Jsou na prodej

Nechcete datacentrum? Jsou na prodej

Podnikatel.cz: Chce dodávat chlebíčky. Jaká živnost je třeba?

Chce dodávat chlebíčky. Jaká živnost je třeba?