Technologie

CryptoCult a všechny nabízené produkty využívají v absolutní míře ověřených šifrovacích mechanismů. Komunikace probíhá přes Internet zabezpečeným, šifrovaným způsobem. Takže nehrozí, že ani při odposlechu dat na veřejné Wi-Fi se k třetí straně dostane použitelná informace.

Síťová komunikace

Veškerá komunikace v rámci aplikace CryptoCult probíhá přes internet. Pro řízení provozu, to jest navazování a ukončování hovorů, signalizaci dostupnosti kontaktů a zasílání textových zpráv, používáme Session Initiation Protocol (SIP). Spojení se SIP serverem, který si lze představit jako telefonní ústřednu, zabezpečuje protokol TLS.

Hlasové hovory

Hlasové hovory jsou zabezpečeny pomocí protokolu SRTP, který zajišťuje ochranu před odposlechem, modifikací i opakovaným použitím zachycených dat. Data jsou chráněna šifrou AES-256 a k ověření jejich integrity slouží kód HMAC-SHA1. Pro výměnu hlavního klíče, od kterého jsou pak dle standardu SRTP odvozovány klíče pro samotné šifrování a ověřování integrity, je použit protokol ZRTP.

Hlavní výhodou protokolu ZRTP je, že nevyžaduje, aby komunikující strany předem sdílely nějakou tajnou informaci, již by následně mohly použít pro vzájemné prokázání své identity, tzv. autentizaci. Prvním krokem protokolu ZRTP je Diffieho-Hellmanova výměna klíčů, která umožňuje komunikujícím stranám bezpečně si vyměnit klíče po nezabezpečeném kanálu.

Z důvodu ochrany před útočníkem aktivně vstupujícím do komunikace a vydávajícím se za druhou z komunikujících stran, tzv. man-in-the-middle útokem, následuje po výměně klíčů ověření, že obě strany dospěly ke stejnému sdílenému klíči. Kdyby mezi komunikující strany vstoupil útočník, klíče, ke kterým každá ze stran došla, by se lišily.

Ověření se provádí pomocí čtyřpísmenného kódu, tzv. Short Authentication String, odvozeného od klíče. Tento kód si obě strany na počátku hovoru navzájem přečtou a ověří tak shodu. Pokud spolu již někdy v minulosti obě strany komunikovaly, použije se navíc k ověření informace odvozená od klíče použitého při minulém spojení.

Po ukončení hovoru jsou klíče zničeny, takže dešifrování zachycených dat by nebylo možné ani v případě, kdy by byla později jedna ze stran donucena útočníkem ke spolupráci.

Textové zprávy

Textové zprávy a e-maily jsou chráněny dle standardu OpenPGP. Jejich zabezpečení je založeno na asymetrické kryptografii, kdy každý uživatel má pár klíčů – klíč veřejný a klíč soukromý. Veřejný klíč, jak již jeho označení napovídá, je určen ke zveřejnění. S jeho pomocí mohou ostatní uživatelé zašifrovat zprávy, dešifrovat je však může jen držitel soukromého klíče.

Implementace OpenPGP v aplikaci CryptoCult podporuje asymetrické šifry RSA pro šifrování, dešifrování i podepisování zpráv, ElGamal pro šifrování a DSA pro podepisování zpráv. Ze symetrických šifer, které se používají pro zabezpečení samotného obsahu zprávy, CryptoCult plně podporuje šifru AES v její 128-, 192- i 256bitové variantě a šifru CAST5. Vedle toho umožňuje dešifrovat i zprávy zašifrované šiframi 3DESTwoFish.

Vlastní PGP klíč (RSA) si můžete bezpečně vygenerovat přímo v aplikaci, nemusíte se tedy spoléhat na produkty třetích stran. Lze však také importovat a používat klíče vygenerované v jiných aplikacích, jako je GnuPG nebo PGP Desktop.

E-mail

E-maily jsou zabezpečeny stejně jako textové zprávy, dle standardu OpenPGP. E-mailový klient integrovaný v aplikaci CryptoCult podporuje standardní protokoly pro příjem a odesílání zpráv, tedy POP3, IMAPSMTP. Spojení s e-mailovým serverem je standardně zabezpečeno pomocí SSL a aplikace podporuje i navázání zabezpečené komunikace protokolem STARTTLS.

Zabezpečení dat aplikace

Data aplikace a údaje uložené v Trezoru jsou šifrovány šifrou AES-256. Klíč je odvozen od uživatelského hesla funkcí PBKDF2 s 4096 iteracemi hashovací funkce HMAC-SHA-256 a 160bitovou solí (salt). Tento způsob odvození klíče zajišťuje zvýšenou ochranu proti útokům na heslo, které je typicky nejslabším článkem zabezpečení.