Najmä v kontexte udalostí posledných mesiacov je veľmi zaujímavou novinkou, že všetka komunikácia cez populárnu aplikáciu WhatsApp je teraz plne šifrovaná metódou end-to-end. Miliarda aktívnych používateľov služby tak teraz môže viesť zabezpečenú konverzáciu, a to na iOS aj Androide. Šifrované sú textové správy, zasielané obrázky aj hlasové hovory.
Je otázkou, nakoľko je šifrovanie nepriestrelné. WhatsApp totiž naďalej so všetkými správami centrálne zaobchádza a koordinuje aj výmenu šifrovacích kľúčov. Ak by sa teda hacker alebo napríklad vláda chceli k správam dostať, získanie správ užívateľov by nebolo nemožné. Stačilo by im teoreticky získať si firmu na svoju stranu alebo ju nejakým spôsobom priamo napadnúť.
Šifrovanie pre radového používateľa v každom prípade znamená ohromné zvýšenie zabezpečenia jeho komunikácie a pre aplikáciu je veľkým skokom dopredu. Na šifrovanie je využívaná technológia renomovanej firmy Open Whisper, s ktorou WhatsApp šifrovanie testoval už od novembra predminulého roka. Technológia je založená na otvorenom zdrojovom kóde (open source).
Nie je mi jasné, prečo to centrálne sifrovanie, prečo whatsapp nenechá vymeniť si kľučky obaja účastníci konverzácie?
Jednou vetou – použiteľnosť pre BFU. S plne nezávislou výmenou kľúčov by to bolo síce pekné, ale nepoužiteľné.
no ja samozrejme myslel, pod kapotou. Lame user o tom vôbec nemusí viesť.
Nikde tu nevidím zmienku o centrálnom šifrovaní, skôr naopak.
Predtým bývalo zvykom, že autor článku pri post edite na základe komentára to napísal stručne do diskusie a povedal „upresnené“.
To by však musel autor článku niečo zmeniť.
tak v tom prípade sa veľmi ospravedlňujem, mal som vlci hmlu. Chyba bola medzi mojím pocitacom a múrmi.
Threema
Neviem, čo autor myslí tou koordináciou kľúčov. Čo je mi známe, a ako je v článku spomenuté, WhatsApp novo používa protokol Signal, ktorý je založený na tom, že každá konverzácia znamená novú výmenu kľúčov cez Diffie-Hellmann a vygenerovanie nového AES a MAC. To všetko prebieha na strane klientov a nikto po ceste s tým nemôže nič robiť, ani WhatsApp, ten maximálne smeruje šifrované správy medzi užívateľmi a môže (a asi to robí) ukladať a analyzovať metadáta. Alebo mi niečo uniklo?
Dobrý deň, nie som práve expert na šifrovanie a nechcel som zabiehať do technikálií, ktorým ani poriadne nerozumiem. Každopádne, ak to chápem správne, tak WhatsApp operuje s verejnými kľúčmi, ktoré sú používané na zašifrovanie správy. Pokiaľ by sa teda útočníkovi cez firmu WhatsApp podarilo niekomu podstrčiť vlastný šifrovací kľúč, mohol by takto zašifrovanú správu aj rozšifrovať.
Inak ale máte pravdu a priznávam sa bez mučenia, v otázke šifrovania máte s najvyššou pravdepodobnosťou navrch a budem rád, keď ma poučíte.
Dobrý deň, je to pomerne obsahom témy, ale pokúsim sa zjednodušene – jedine, čo je uložené na WhatsApp serveri, je niekoľko Vašich verejných kľučov, ktoré sú používané pri vytváraní chat session medzi Vami a niekým iným. Išlo by to aj bez nich, ale tieto tzv. pre-keys umožňujú okrem iného vytvoriť sifrovanú session aj v prípade, keď je druhá strana offline (čo je špecialita Signal protokolu, žiadny iný to, aspoň čo je mi známe, nevie). Signal protokol ďalej obsahuje metódu pre spoľahlivé overenie druhej strany, zabraňujúcu práve tomu, aby sa niekto za Vás vydával. Pre sifrovanie samotnej správy sa potom používa symetrická kryptografia, teda správa sa zasifruje aj desifruje rovnakým kľučom. Tento kľuč je generovaný pre každú správu nový a WhatsApp (firma) k nemu nemá prístup, generuje sa na koncových zariadeniach (preto End to End kryptografia), ktorá najskôr vykonala tzv. handshake pomocou protokolu Diffie-Hellman (presnejšie ECDH). Vďaka tomuto handshake obe strany získajú tzv. shared secret, teda nejaké veľké náhodné číslo, ktoré poznajú obe strany, ale nikto iný, kto by ich mohol odpočúvať. Na základe tohto shared secret potom obe strany môžu generovať nové a nové sifrovacie kľučky, ktoré sú pre každú správu unikátne. Vstupom pre vygenerovanie takéhoto kľúča totiž nie je iba zdieľaný „shared secret“, ale aj predchádzajúca správa. Vďaka tomu a ďalším vlastnostiam Signal protokolu je zabezpečená tzv. forward secrecy a future secrecy, teda aj keby niekto ziskal Vašu zasifrovanú správu a nejakým spôsobom sa mu ju v budúcnosti podarilo rozlúsknuť a získal by prístup k sifrovaciemu kľučke, nemôže im desifrovať zadnú inú ktorú ste poslal.
Ospravedlňujem sa, ak som to napísal zbytočne podrobne a opakoval niečo, čo už poznáte a dúfam, že som odpovedal na nejasnosti. Tiež nie som expert na kryptografiu, ale zhodou okolnosti som sa touto témou nedávno pomerne do hĺbky zaoberal :) Napriek tomu, ak niekto nájde v tom, čo som písal, nejaké nepresnosti, budem rád, keď ma opraví.
Ďakujem veľmi za info, popísal ste to pekne zrozumiteľne. Nabudúce budem lepšie informačne vybavený ;)
To znamená, že WhatsApp teraz nemá centrálnu históriu?
Centrálnu históriu má, ale každá správa je šifrovaná unikátnym kľúčom, ktorý má len príjemca správy.