Používaš ho každý deň, ale poznáš ho naozaj? Takto funguje iMessage

iMessage je oveľa komplexnejší, než by sa mohlo zdať pri pohľade na modrú bublinu správy. Ukážeme vám, ako funguje na pozadí.

Používaš ho každý deň, ale poznáš ho naozaj? Takto funguje iMessage

Systém iMessage integrovaný do aplikácie Správy od Apple ponúka plynulú, bezpečnú a všestrannú komunikáciu. Neslúži len na posielanie textov a obrázkov – umožňuje zdieľať aj videá, hlasové správy, dokumenty, reakcie, nálepky, polohu a obsah z rôznych aplikácií. Na pozadí to všetko zabezpečuje komplexný systém založený na šifrovaní medzi koncovými zariadeniami, ktorý sa stal jedným z dôležitých pilierov ekosystému Apple.

Stručná história iMessage

Apple ponúkal internetovú komunikáciu už dávno pred vznikom iMessage. Išlo o aplikáciu iChat, ktorá bola dostupná na počítačoch Mac v rokoch 2002 až 2012 a ktorú možno považovať za predchodcu iMessage aj FaceTime. iChat umožňoval bezplatné posielanie správ cez internet a videohovory na Macu. Apple oznámil príchod iMessage v roku 2011 počas predstavenia systému iOS 5 a služba bola spustená ešte v tom istom roku. Cieľom bolo ponúknuť používateľom iPhonu, iPodu touch a iPadu rýchlu internetovú alternatívu k SMS správam a k službe BlackBerry Messenger, ktorá bola v tom čase obzvlášť populárna v Severnej Amerike.

V roku 2012 prišla služba iMessage aj na počítače Mac ako súčasť aplikácie Správy. Tým sa naplno začala synchronizácia medzi zariadeniami Apple: používatelia mohli vidieť rovnaké konverzácie na iPhone, iPade aj Macu. Služba si rýchlo získala popularitu a Apple v nasledujúcich rokoch neustále rozširoval jej funkcie. V roku 2014 napríklad pribudla možnosť zdieľať polohu priamo v konverzáciách. Ďalší veľký krok prišiel v roku 2016 s vydaním iOS 10. Pribudli balíky nálepiek, efekty na obrazovke, ručne písané správy, reakcie Tapback a iMessage App Store. Ten umožnil vývojárom rozšíriť vlastné aplikácie o funkcie dostupné v Správach alebo vytvárať funkcie priamo pre túto aplikáciu. Zdieľanie obsahu, spoločné hranie hier aj osobnejšia komunikácia sa tak stali jednoduchšími.

V roku 2017 pribudla funkcia Správy v iCloude, ktorá umožnila synchronizovať históriu správ medzi zariadeniami Apple prostredníctvom iCloudu. V roku 2022 sa objavila možnosť dodatočne upravovať a odvolávať odoslané správy. V roku 2024 Apple predstavil doteraz najväčšiu bezpečnostnú aktualizáciu iMessage – protokol Apple PQ3. V aplikácii Správy sa zároveň začala podporovať aj norma RCS u kompatibilných operátorov a zariadení.

Ako funguje iMessage v zákulisí?

Technické procesy, ktoré zabezpečujú fungovanie platformy na pozadí, sú oveľa zložitejšie, než si používateľ uvedomuje. Keď napíšeme správu, priložíme obrázok alebo video a stlačíme tlačidlo Odoslať, v zlomku sekundy sa spustí viacstupňový proces.

Zahŕňa overenie totožnosti, šifrovanie, smerovanie v sieti aj doručenie. Okrem našich vlastných zariadení sa na tomto procese podieľajú aj servery Apple, no vďaka šifrovaniu medzi koncovými zariadeniami nedokážu prečítať obsah správ.

1. Overenie totožnosti

Služba Apple Push Notification service, skrátene APNs, umožňuje doručovanie v reálnom čase a synchronizáciu medzi viacerými zariadeniami. Najskôr je však potrebné zaregistrovať konkrétne zariadenie Apple v službe iMessage, či už ide o iPhone, iPad, Apple Watch alebo Mac.

Keď na novom zariadení Apple zapneme iMessage, zariadenie pomocou bezpečnej správy kľúčov vytvorí súkromný a verejný kľúč. Súkromný kľúč zostáva v chránenom prostredí zariadenia a neodosiela sa na servery Apple. Verejný kľúč sa naopak nahrá do centrálneho adresára spoločnosti Apple s názvom IDS, teda Apple Identity Service. S týmto kľúčom možno prepojiť telefónne číslo a e-mailovú adresu priradenú k účtu Apple, z ktorých môžeme odosielať správy iMessage a na ktorých ich môžeme prijímať. Ak zapneme iMessage na viacerých zariadeniach Apple, každé z nich bude v systéme Apple evidované s vlastným verejným kľúčom. Zariadenia zároveň dostanú jedinečný token APNs. Môžeme si ho predstaviť ako digitálnu doručovaciu adresu, vďaka ktorej systém Apple vie, ktorému zariadeniu má poslať upozornenie a dátový balík so správou.

2. Smerovanie

Keď zadáme meno, telefónne číslo alebo e-mailovú adresu príjemcu, zariadenie na pozadí overí v adresári Apple, či je daný kontakt prepojený s účtom iMessage, verejným kľúčom a aktívnym zariadením. Ak áno, aplikácia Správy spracuje konverzáciu ako iMessage. Verejné kľúče zariadení príjemcu a systém využívajúci tokeny APNs zabezpečia, aby sa správa prostredníctvom serverov Apple dostala do správnych zariadení. Používateľ si zvyčajne všimne len to, že bublina správy je modrá.

RCS v aplikácii iMessage

Ak príjemca nemá registráciu iMessage, aplikácia Správy sa pokúsi odoslať správu ako SMS, MMS alebo – pri kompatibilnom operátorovi a zariadení – ako RCS. Takéto správy sa zobrazujú v zelenej bubline. Dôležité je, že doručovanie SMS, MMS a RCS správ neprebieha prostredníctvom systému iMessage. Na Macu a iPade možno tieto správy používať vtedy, keď má používateľ aj iPhone prihlásený do toho istého účtu Apple a má na ňom povolenú funkciu Preposielanie správ. iPhone potom môže odovzdávať správy prijaté cez mobilnú sieť alebo systém RCS operátora ostatným zariadeniam Apple.

3. Šifrovanie

Po stlačení tlačidla Odoslať sa v iMessage spustí proces šifrovania využívajúci viacero kľúčov. Spomedzi komunikačných služieb pre bežných používateľov má iMessage jednu z najprísnejších bezpečnostných architektúr. Všetky konverzácie iMessage sú predvolene chránené šifrovaním medzi koncovými zariadeniami, teda E2EE. To znamená, že obsah správy dokážu dešifrovať iba zariadenia odosielateľa a príjemcu. Servery Apple sa síce podieľajú na doručovaní, ale nedokážu čítať text správ, fotografie, videá ani prílohy.

Zariadenie najskôr vytvorí náhodný jednorazový kľúč relácie, ktorým zašifruje obsah správy. Môže ísť o text, fotografiu, video, hlasovú správu, emoji alebo inú prílohu. iMessage potom z IDS získa verejné kľúče priradené k zariadeniam účastníkov konverzácie. Systém zašifruje kľúč relácie osobitne pre každé príslušné zariadenie. Vďaka tomu môže správu dešifrovať iPhone, iPad, Mac alebo Apple Watch príjemcu, ak je na danom zariadení dostupná rovnaká konverzácia. Výsledný dátový balík preto obsahuje zašifrovanú správu, kľúče zašifrované pre zariadenia príjemcu a tokeny APNs potrebné na doručenie.

4. Odoslanie a doručenie

Zašifrovaný dátový balík sa cez internet odošle na server Apple, ktorý v tomto procese funguje v podstate ako doručovateľ. Keďže súkromný kľúč potrebný na dešifrovanie sa nachádza iba v zariadení príjemcu, obsah správy nedokáže prečítať ani server, ani sieťové prvky, cez ktoré dátový balík prechádza.

Server Apple odošle dátový balík správnym zariadeniam na základe tokenov APNs. Ak žiadne zariadenie príjemcu nie je pripojené na internet – napríklad iPhone je vypnutý a Mac nie je pripojený k sieti –, systém zašifrovanú správu dočasne uloží. Podľa informácií spoločnosti Apple môže iMessage uchovávať správy čakajúce na doručenie najviac 30 dní. Keď bude niektoré zo zariadení príjemcu opäť dostupné, systém správu doručí a čakajúci dátový balík odstráni zo servera.

Systém doručovania iMessage nefunguje na princípe neustáleho zisťovania nových správ, známeho ako polling. Zariadenia udržiavajú nízkoenergetické spojenie so systémom APNs, takže server môže po prijatí novej správy upozorniť príslušné zariadenie. Vďaka tomu zostáva iMessage rýchly a zároveň sa obmedzuje zbytočná sieťová komunikácia na pozadí.

5. Dešifrovanie

Keď zariadenie Apple príjemcu stiahne dátový balík obsahujúci správu, vyberie kľúč, ktorý bol zašifrovaný preň. Pomocou vlastného súkromného kľúča dešifruje kľúč relácie a následne ho použije na obnovenie a zobrazenie obsahu správy. Ak proces prebehne úspešne, prijímajúce zariadenie môže prostredníctvom systému odoslať zašifrované potvrdenie o doručení. Na jeho základe sa odosielateľovi môže zobraziť stav „Doručené“ a – ak si príjemca povolil potvrdenia o prečítaní – aj informácia o prečítaní správy.

Ochrana pred budúcimi útokmi

Začiatkom roka 2024 Apple oznámil protokol Apple PQ3, ktorý do iMessage pribudol s aktualizáciami iOS 17.4, iPadOS 17.4, macOS 14.4 a watchOS 10.4. Išlo o jednu z najväčších aktualizácií bezpečnostnej architektúry v histórii iMessage. Cieľom PQ3, teda Post-Quantum Cryptography Level 3, je zvýšiť odolnosť iMessage voči pokročilejším výpočtovým metódam vrátane kvantových počítačov.

iMessage PQ3

Jednou z hrozieb je útok označovaný ako „Harvest Now, Decrypt Later“ – teda „teraz zozbierať, neskôr dešifrovať“. Útočník alebo štátny aktér dnes nemusí byť schopný dešifrovať zašifrovaný dátový balík, môže si ho však uložiť v nádeji, že sa k jeho obsahu v budúcnosti dostane pomocou výkonnejších výpočtových kapacít, napríklad kvantového počítača. Protokol PQ3 sa snaží takémuto scenáru predísť. K existujúcim metódam šifrovania pridáva nové procesy výmeny kľúčov s postkvantovou ochranou, pričom kľúče používané počas konverzácií sa pravidelne obnovujú. Aj keby útočník v budúcnosti získal kľúč spojený s konkrétnou reláciou, nemohol by pomocou neho dešifrovať dlhú históriu celej konverzácie.

Ako používateľovi sa nám iMessage na prvý pohľad môže javiť len ako jednoduché textové pole a četovacia aplikácia. Na pozadí však funguje komplexný systém overovania totožnosti, šifrovania a doručovania. Vďaka nemu môžeme na zariadeniach Apple pohodlne komunikovať s blízkymi, priateľmi a kolegami na viacerých synchronizovaných zariadeniach, a pritom využívať vysokú úroveň zabezpečenia.

Späť na blog