Funkce

Šifrované volání, posílání zpráv a dokumentů

Jak funguje Babelnet

Jak funguje Babelnet

Babelnet je platforma pro bezpečnou komunikaci. Umožňuje prostřednictvím mobilních zařízení i stolních počítačů se systémy iOS, Android, Windows a macOS bezpečně zasílat a ukládat zašifrované textové zprávy a dokumenty. Babelnet využívá kombinace nejlepších kryptografických algoritmů a protokolů, které chrání vaše informace před aktivním i pasivním útokem.

Schéma jak funguje Babelnet

Jak se šifruje?

Každá zpráva je šifrována standardním symetrickým algoritmem AES s jedinečným klíčem Message Key, který náhodně generuje aplikace Babelnet na zařízení odesilatele. Stejný klíč potřebuje i příjemce pro rozšifrování zprávy, proto je Message Key také zašifrován, tentokrát klíčem Contact Key, který sdílí odesilatel s příjemcem a připojen ke zprávě. Contact Key je spočítán příjemcem i odesilatelem s použitím standardního algoritmu Diffie-Hellman. Pro tento výpočet musí mít obě strany k dispozici ověřenou hodnotu veřejného klíče protistrany. Tyto veřejné klíče bezpečně distribuuje na všechna registrovaná zařízení firemní Babelnet Messaging Server.

Schéma jak se šifruje

Jak se telefonuje?

Babelnet zajišťuje šifrované hovory mezi mobilními zařízeními v datové síti prostřednictvím technologie VoIP. Přenos hlasu probíhá přímo mezi koncovými klienty, pokud to umožňuje způsob připojení klientů do internetu, nebo prostřednictvím TURN serveru (Traversal Using Relays around NAT) v případě, kdy je nutné přímé spojení reléovat.

Babelnet zajišťuje bezpečný přenos hlasu na základě aplikačního šifrování protokolem SRTP (Secure Real Time Protocol) mezi koncovými body přenosu. Pro nalezení sdílených šifrovacích klíčů je využita technologie Perfect Forward Secrecy, která zaručuje, že v případě kompromitace DH klíčů, nebo session klíčů relace nejsou kompromitovány klíče žádné jiné relace.

Jak se navazuje telefonní spojení?

Pro navázání telefonního spojení je nutná výměna zpráv v rámci signalizačního protokolu Babelnet. Signalizační zprávy jsou zasílány standardním transportním mechanismem pro zasílání šifrovaných zpráv s kontrolou integrity. V rámci signalizace dojde k výměně veřejné části dočasných DH klíčů volajícího a volaného klienta a následně k dohodě na dočasném sdíleném tajemství, ze kterého jsou odvozeny jednorázové kryptografické klíče pro navazovanou SRTP relaci.

Jak se posílají zprávy?

Zašifrované zprávy jsou odeslány na BMS k doručení. BMS upozorní příjemce na novou zprávu připravenou k doručení prostřednictvím push notifikací a umožní její vyzvednutí. Pokud zpráva obsahuje přílohy, jsou v přijaté zprávě umístěny ve formě náhledů odkazy na stažení těchto příloh. Správce může nastavit maximální dobu, po kterou jsou zprávy respektive přílohy uloženy na serveru a je možné je vyzvednout, po překročení této doby jsou automaticky smazány.

Aby bylo možné zasílat zprávy i příjemcům, kteří mají účty na jiných serverech, než odesilatel, implementuje Babelnet komunikaci mezi servery.

Schéma jak se posílají zprávy

Jak se ukládají zprávy?

Odeslané i doručené zprávy zůstávají na zařízeních uloženy v zašifrované formě, jejich šifrovací klíč Message Key je při uložení zašifrován pomocí individuálního klíče zařízení Device Key. Device Key je na každém zařízení náhodně vygenerován při instalaci aplikace Babelnet. Device Key je šifrován klíčem odvozeným z hesla Babelnet.

Pro zobrazení zpráv je nutné zadat heslo Babelnet, ze kterého se odvodí klíč, pomocí kterého se dočasně rozšifruje Device Key. S použitím Device Key je pak možné rozšifrovat Message Key jakékoli zprávy uložené v aplikaci Babelnet a následně rozšifrovat a zobrazit tuto zprávu.

Jak se brání útokům?

Bezpečná komunikace je založena nejen na šifrování přenášených zpráv, ale i na jejich autentizaci a kontrole integrity, aby příjemce získal jistotu, že data pocházejí od legitimního odesilatele a nebyla změněna útočníkem. K tomuto účelu je zpráva nejprve zašifrována a poté je výsledný šifrový text „podepsán“ pomocí algoritmu HMAC s vlastním autentizačním klíčem (Encrypt-then-Authenticate). Další ochranný mechanismus umožní detekovat aktivní útoky na zadržení nebo naopak znovu odeslání nezměněné zprávy (replay attack) pomocí číslování posloupností zpráv a konverzací.

Z jakých částí se skládá Babelnet

Babelnet Messaging Server

Srdcem systému je Babelnet Messaging Server (BMS). Tento server udržuje databázi účtů uživatelů a registrovaných zařízení, ověřuje a bezpečně uchovává veřejné klíče uživatelů a synchronizuje je na registrovaná zařízení. BMS je vybaven serverovým SSL certifikátem a poskytuje klientské licence pro zařízení uživatelů.

BMS zprostředkovává datovou komunikaci mezi zařízeními uživatelů, neuchovává ovšem žádné privátní ani tajné klíče a neúčastní se šifrování zpráv. V případě, že odesilatel nebo příjemce nejsou připojeni on-line, zajišťuje BMS zasílání notifikací a asynchronní doručení šifrovaných zpráv.

K BMS se všechna zařízení musí registrovat s využitím jednorázového hesla. Při registraci BMS získá a ověří veřejný klíč uživatele a synchronizuje jej na registrovaná zařízení ostatních uživatelů. Po dokončené registraci se zařízení připojují k serveru automaticky, bez zásahu uživatele.

Address Book

Babelnet poskytuje službu centrálního adresáře a uživatelských adresářů kontaktů. Kontakty jsou odesilatelé a příjemci zpráv, jejich veřejné klíče jsou základem kryptografického modelu pro šifrování zpráv.

Kontakty jsou organizovány do skupin, například podle organizační struktury, projektů nebo zákazníků. Každý kontakt může být členem libovolného množství skupin. Uživatelům lze nastavit práva pro vyhledávání kontaktů ve skupinách.

Uživatelské adresáře jsou vytvářeny na serveru a synchronizovány na všechna zařízení uživatele. Uživatelské adresáře eliminují extenzivní množství kontaktů, které by bylo nutné synchronizovat na lokální zařízení a současně umožňují efektivně vyhledávat a používat kontakty, s kterými se často komunikuje.

Babelnet Attachment Server

BMS je integrován s Babelnet Attachment Serverem (BAS), který zajišťuje dočasné uložení a asynchronní stažení šifrovaných dokumentů přiložených k zprávám. Možnost zasílání dokumentů ve formě příloh zprávy je volitelná, správce jí může povolit, nebo zakázat. Zprávy obsahují pouze metadata příloh, vlastní přílohy je nutné samostatně stáhnout na základě informací uvedených ve zprávě. BAS umožňuje nastavit maximální velikost příloh a maximální dobu pro jejich dočasné uložení.

Babelnet Messaging Gateway

Babelnet Messaging Gateway (BMG) je speciální proxy klient, určený pro automatické, softwarově řízené rozesílání šifrovaných zpráv a dokumentů. BMG je integrován s BMS, a poskytuje jednoduché REST API aplikacím třetích stran. Tyto aplikace se autentizují k BMG a bezpečným kanálem poskytují data k zašifrování a odeslání na libovolné zařízení s klientem Babelnet. BMG je ideální řešení pro automatické rozesílání šifrovaných zpráv, upozornění, dokumentů, jednorázových autentizačních hesel, výplatních lístků, údajů o proběhlých transakcích apod.

Babelnet Push Proxy

Mobilní zařízení se systémy iOS a Android umožňují příjem aplikačních push notifikací, které upozorňují na zprávu čekající na serveru na doručení, i když klientská aplikace Babelnet běží na pozadí, nebo není spuštěna.

Push notifikace jsou zařízením rozesílány v rámci infrastruktury Apple/Google notifikačních serverů.

Pro zasílání požadavků k rozeslání push notifikací prostřednictvím Apple/Google notifikačních serverů slouží Babelnet Push Notification Gateway. Zaslání požadavků je volitelné a správce je může povolit, nebo zakázat. Požadavek na zaslání push notifikace musí být elektronicky podepsán s použitím privátního klíče, který má k dispozici pouze Push Notification Gateway a certifikátu, který je registrován u Apple/Google notifikačních serverů.

V upozornění se neposílají žádné informace obsažené ve zprávě, pouze oznámení, že BMS má zprávu k doručení. Použití upozornění je nepovinné, pokud není nastaveno, může být doručení zpráv zpožděno.

Klienti Babelnet

Klienti Babelnet umožnují šifrovat, dešifrovat, odesílat a přijímat zprávy a přiložené dokumenty prostřednictvím BMS/BAS, pořizovat a přehrávat vybrané formáty dokumentů přímo v aplikaci (fotografie, videa, hlasové nahrávky), ukládat zprávy a dokumenty v zašifrovaném tvaru, pracovat s konverzacemi více účastníků, vyhledávat kontakty v aplikaci i v centrálním adresáři.

Klienti Babelnet jsou k dispozici zdarma pro všechny významné platformy mobilních i stolních zařízení.

Každý uživatel může mít pod svým účtem registrováno více zařízení s libovolnou kombinací klientů.

Každé zařízení může být připojeno k více serverům

Webová administrativní konzole

Firemní správce provádí administraci serveru, uživatelů, skupin a zařízení prostřednictvím web rozhraní administrativní konzole Babelnet. Prostřednictvím konzole lze konfigurovat připojení k firemnímu LDAP adresáři, import uživatelských účtů a autentizaci pomocí SSO. Správce může generovat QR kódy pro registraci uživatelských zařízení, revokovat klíče, zařízení a uživatele a sledovat jejich připojení k serveru a statistiky provozu.

Webová správa zařízení uživatele

Uživatelé mají k dispozici web stránky pro správu svých zařízení s klientem Babelnet. Uživatelé mohou registrovat nová zařízení k BMS nebo zrušit stávající registrovaná zařízení.

Technologie a slovníček

Šifrování

Šifrování je jeden z účinných způsobů pro zabezpečení důvěrnosti dat. Šifrování je realizováno na základě kryptografického algoritmu, který provádí transformaci otevřených dat (plaintext) do šifrovaného textu (ciphertext). K šifrování musí existovat zpětná transformace – dešifrování. Všechny moderní kryptografické algoritmy používají k šifrování a dešifrování parametry– kryptografické klíče.

Kryptografické algoritmy, které používají stejný klíč pro šifrování i dešifrování se nazývají symetrické.

Kryptografie, která používá pro šifrování a dešifrování různé klíče, se jmenuje asymetrická kryptografie. Jeden klíč z klíčového páru lze zveřejnit (public key), zatímco druhý klíč zůstává soukromý (private key)

SHA-2

SHA-2 je rodina kryptografických hashovacích fukcí s různou délkou výstupu, které jsou široce používány v řadě kryptografických schémat a protokolů. Hashovací funkce je jednosměrná funkce, která transformuje vstupní data libovolné délky do hodnoty výstupu pevné délky, splňuje přitom požadavky na odolnost proti nalezení kolizí. Standardy hashovacích funkcí jsou popsány v publikaci FIPS PUB 180-4.

AES

Standardní symetrický šifrovací algoritmus AES používá klíče s délkou 128, 192 nebo 256 bitů, je popsán v dokumentu FIPS PUB 197. Pro šifrování zpráv a dokumentů používá Babelnet AES v módu CBC podle publikace NIST SP 800-38A.

Diffie-Hellman

Algoritmus nesymetrické kryptografie Diffie-Hellman je používaný komunikujícími stranami k nalezení shody na hodnotě symetrického klíče. Diffie-Hellman je popsaný v RFC 2631 a v publikaci NIST SP 800-56A. Algoritmus není odolný proti útoku MitM a musí být proto doplněn dalšími kryptografickými obrannými mechanismy.

RSA

RSA je rozšířený algoritmus nesymetrické kryptografie, používaný v řadě kryptografických schémat a protokolů. Standardem pro RSA je PKCS #1 v2.1, popsaný v RFC 3447.

Babelnet používá RSA v souvislosti s certifikátem veřejného klíče serveru.

HMAC

HMAC je algoritmus kombinující hashovací funkci a kryptografický klíč pro kontrolu integrity a autenticity dat. HMAC je popsán v RFC 2104 a jeho rozšíření pro použití hashovacích algoritmů SHA2 je uvedeno v RFC 4868.

Babelnet používá princip encrypt-then-authenticate který pomocí HMAC autentizuje každou šifrovanou zprávu a dokument, a kontroluje hodnotu HMAC před dešifrováním zprávy, a zabraňuje tak aktivním útokům směřujícím na změnu nebo podvržení šifrované zprávy.

Certifikát veřejného klíče

Certifikát umožňuje pomocí přenosu důvěry používat cizí veřejné klíče pro účely, ke kterým byly vydány certifikační autoritou v rámci infrastruktury PKI. Certifikát tvoří binární datová struktura obsahující identifikaci držitele, hodnotu jeho veřejného klíče a další údaje, je opatřená digitálním podpisem vydavatele. Standardem pro digitální certifikáty je X.509v3, interoperabilní profil je popsaný v RFC 3280.

Babelnet používá pouze certifikát serveru k účelu navázání SSL/TLS komunikace, autentizace serveru a podpisu požadavků na rozeslání notifikací.

Šifrování mezi koncovými body

Data jsou šifrována odesilatelem a mohou být dešifrována až koncovým příjemcem. Žádný uzel (server, router), kterým data prochází, je nemůže dešifrovat.

Babelnet používá aplikační šifrování mezi koncovými body komunikace jako základní bezpečnostní řešení.

SSL/TLS

Standardní kryptografické protokoly pro zabezpečenou komunikaci. SSL/TLS zahrnuje tři fáze:

  • dohodu účastníků na podporovaných kryptografických algoritmech
  • výměnu klíčů založenou na šifrování s veřejným klíčem a autentizaci založenou na certifikátu
  • šifrování provozu symetrickou šifrou

SSL/TLS zajišťuje šifrování pouze mezi dvěma sousedními body komunikace. Protokol TLS v2.1 je popsán v RFC 5246.

MitM útok

Man-in-the-middle je známý typ útoku, kdy útočník působí mezi odesilatelem a příjemcem zprávy a přesměrovává a mění zprávy tak, aby se odesilatel domníval, že komunikuje s příjemcem a příjemce se domníval, že komunikuje s odesilatelem; ve skutečnosti oba komunikují s útočníkem. Obranou proti MitM je autentizace příjemce a odesilatele, autentizace zprávy, kontrola integrity zprávy a kontrola klíčů alternativním bezpečným kanálem. Pro více informací viz https://en.wikipedia.org/wiki/Man-in-the-middle_attack.

Tento web používá k poskytování služeb a analýze návštěvnosti soubory cookie. Používáním těchto stránek s tím souhlasíte.