Šifrování emailů

V době dnešních sociálních sítí je obzvlášť důležité chránit si svá hesla a jiné údaje před krádeží. Je až s podivem, kolik lidí vůbec netuší, jak je internet nebezpečné médium a chovají se nezodpovědně. Jako příklad uvedu emailovou komunikaci, kterou dnes používá asi každý uživatel internetu.

Myšlenka elektronických zpráv se datuje přibližně do 60. let 20. století. To tady ještě nebyl internet, ale ARPANET. V té době byla duležitá pouze jedna věc: „Aby to fungovalo“. Z toho vyplývá jeden vážný nedostatek - většina komunikačních protokolů internetu NENÍ bezpečná.

Pro odesílání emailů a pro komunikaci emailových serverů se používá protokol SMTP, který je definován v RFC821. Protokol SMTP je čistě textový (jako většina jiných internetových protokolů), to znamená že kdokoliv si může obsah zprávy přečíst a vy o tom ani nemusíte vědět. Je to stejný princip, jako když posíláte pohlednici z dovolené.

To ale není jediný bezpečnostní problém, který může nastat. Jelikož se vše posílá jako čistý text, není složité odeslat email pod cizí emailovou adresou. Možná si vzpomínáte na nedávnou aféru s Českou spořitelnou a phishingovým útokem.

Šifrování emailů

Existuje však řešení těchto bezpečnostních problémů. Každý email opatřit elektronickým podpisem, nebo přímo zašifrovat.

Za použití asymetrického šifrování tak můžeme bezpečne komunikovat s okolím, aniž bychom se museli bát o obsah svých zpráv. Princip je jednoduchý. Nejprve si vytvoříme veřejný/soukromý pár klíčů, které potom používáme při odesílání emailů.

Příklad

Alice odesílá email Bobovi a opatří jej svým elektronickým podpisem. To znamená, že se vytvoří otisk (hash) zprávy a tento se pak zašifruje pomocí Alicina soukromého klíče. Jakmile Bob příjme email, rozšifruje podpis pomocí Alicina veřejného klíče a porovná hash se správou, kterou právě obdržel. Pokud vše souhlasí, může si být Bob jistý tím, že dopis opravdu odeslala Alice a že jeho obsah nebyl nikým změněn.

V příkladu výše je tak díky podpisu jisté, kdo je odesílatelem a že zpráva nebyla změněna. Stále si může každý přečíst obsah. Jak tedy postupovat, pokud chceme zašifrovat celý dokument?

Předtím, než Alice odešle email (může být i elektronicky podepsán) Bobovi, zašifruje jeho obsah Bobovým veřejným klíčem. Bob si pak pomocí svého soukromého klíče může přečíst, co mu Alice chce sdělit tak tajného. V případě, že email při jeho odesílání zachytí Eva, nezjistí obsah zprávy, protože nemá Bobův soukromý klíč.

Na příkladech je vidět, že elektronický podpis, resp. šifrování textu řeší výše popsané problémy s paděláním a odposloucháváním elektronické pošty. Je tu však jedna důležitá podmínka, aby vše fungovalo: Váš soukromý klíč si musíte hlídat a nikdy jej nikomu nedávat!

Tvorba klíčů

Pro Linux, Mac OS i Windows

Pokud chcete začít bezpečně komunikovat po internetu, je důležité vygenerovat si soukromý a veřejný klíč. Pokud nejste technicky zdatní, nezoufejte. Není to tak obtížné, jak se může zdát.

První podmínkou je používat nějakého inteligentního emailového klienta (nevím totiž o žádném freemailu, který poskytuje šifrování ve svém webovém rozhraní). Já používám Thunderbird a jsem plně spokojen. Podporuje vše, co potřebuju. Předtím, než začnete šifrovat si však musíte doinstalovat doplněk jménem Enigmail.

Druhá podmínka je mít nainstalovaný program pro generování klíčů - GPG. Program je šířen pod licencí GNU GPL a je dostupný pro Unix, MAC OS i Windows.

Poté již stačí zapnout Thunderbird, nastavit si svoji emailovou schránku (pro stahování pošty ze serveru doporučuji protokol IMAP) a pokusit se odeslat šifrovaný email (například na svoji vlastní adresu). Klient vám oznámí, že nemá potřebné klíče a zeptá se vás, jestli je má vygenerovat. Jednodužší už to být nemůže. Pak už jen stačí svým známým odeslat váš veřejný klíč. A to je vše.

Jedna rada: pokud budete přeinstalovávat operační systém, nesmažte si svůj soukromý klíč!

Pro Unix

Pokud jste technicky zdatnější a rádi se hrajete, můžete zkusit vygenerovat si klíče pomocí GPG. Opět je nutné nainstalovat si program GPG. Například pro Debian (a z něj odvozené systémy):

# Jako root nainstalujte program gnupg
sudo apt-get install gnupg

Jakmile máte GPG nainstalovaný, můžete začít generovat klíče. Program gpg je interaktivní a provede vás celým procesem tvorby klíče. Na konci výpisu programu můžete vidět soukromý i veřejný otisk vašeho nového klíče. Pokud teď v terminálu napíšete:

# Přepínač -a způsobí textový výpis klíče
gpg -a --export jan.nov@server.domain

Toto je pak váš veřejný klíč v textové podobě. Tento pak můžete uložit do souboru a odeslat lidem, se kterými chcete bezpečně komunikovat.

Závěr

Osobně každý email, který odesílám do světa, podepisuji. Bohužel, situace je taková, že lidé vůbec netuší, co to takový elektronický podpis je a když jsou náhodou ochotni poslechnout si vysvětlení, tak stejně nakonec řeknou: „To nepotřebuji, protože to nikdo nepoužívá.“

Tento způsob myšlení je ale špatný. Můj názor na celou věc je takový, že k počítačové gramotnosti patří vědomí o možných bezpečnostních hrozbách a správné chování jedince v celosvětové síti. A elektronickou poštou to teprve začíná.

Lidé by se měli začít zajímat o tuto problematiku. Především na základních a středních školách je nutné začít děti učit, jak se správně chovat na internetu. Místo jedné hodiny výuky zbytečných HTML značek nebo neefektivního klikání ve Wordu se mohou studenti dozvědět něco o elektronickém podpisu a asymetrickém šifrování.