iMessage, integriran u Appleovu aplikaciju Poruke, omogućuje jednostavnu, sigurnu i svestranu komunikaciju. Ne služi samo za slanje tekstualnih poruka i fotografija – putem njega možeš dijeliti i videozapise, glasovne poruke, dokumente, reakcije, naljepnice, lokaciju te sadržaj iz različitih aplikacija. U pozadini svega toga nalazi se složen sustav koji se temelji na end-to-end enkripciji i koji je s vremenom postao jedan od važnih temelja Appleova ekosustava.
Kratka povijest iMessagea
Apple je internetsku komunikacijsku uslugu nudio i mnogo prije iMessagea. Bila je to aplikacija iChat, dostupna na Mac računalima od 2002. do 2012. godine, koju možemo smatrati prethodnicom iMessagea i FaceTimea. iChat je omogućavao besplatno slanje poruka putem interneta i videopozive na Macu. Apple je dolazak iMessagea najavio 2011. godine, na predstavljanju sustava iOS 5, a usluga je pokrenuta još iste godine. Cilj je bio korisnicima iPhonea, iPod toucha i iPada ponuditi brzu internetsku alternativu SMS porukama, ali i tada posebno popularnoj usluzi BlackBerry Messenger u Sjevernoj Americi.
Godine 2012. iMessage je stigao i na Mac računala, kao dio aplikacije Poruke. Time je započela prava sinkronizacija između Appleovih uređaja: korisnici su iste razgovore mogli pratiti na iPhoneu, iPadu i Macu. Usluga je brzo postala popularna, a Apple je tijekom sljedećih godina neprestano proširivao njezine mogućnosti. Primjerice, 2014. godine u razgovore je uvedena mogućnost dijeljenja lokacije. Sljedeći veliki korak dogodio se 2016. godine s dolaskom sustava iOS 10, koji je donio pakete naljepnica, efekte zaslona, rukom pisane poruke, Tapback reakcije i iMessage App Store. Potonji je razvojnim programerima omogućio proširivanje vlastitih aplikacija unutar Poruka ili stvaranje funkcija namijenjenih upravo toj aplikaciji. Tako je postalo jednostavnije dijeliti sadržaj, zajedno igrati igre i učiniti komunikaciju osobnijom.
Godine 2017. uvedena je značajka Poruke na iCloudu, koja je omogućila sinkronizaciju povijesti poruka putem iClouda između Appleovih uređaja. Godine 2022. stigle su mogućnosti naknadnog uređivanja i poništavanja slanja poruka, a 2024. Apple je predstavio najveće sigurnosno ažuriranje iMessagea dotad – protokol Apple PQ3. Iste je godine aplikacija Poruke dobila i podršku za standard RCS kod kompatibilnih operatera i uređaja.
Kako iMessage funkcionira u pozadini?
Tehnički detalji koji omogućuju rad platforme mnogo su složeniji nego što korisnik može primijetiti. Nakon što upišemo poruku, priložimo fotografiju ili videozapis i pritisnemo gumb za slanje, u djeliću sekunde pokreće se višestupanjski proces.
U njemu sudjeluju identifikacija, enkripcija, usmjeravanje kroz mrežu i isporuka. U procesu, uz naše uređaje, sudjeluju i Appleovi poslužitelji, no zbog end-to-end enkripcije iMessagea ne mogu pročitati sadržaj poruka.
1. Identifikacija
Oslanjanje na poslužitelje usluge Apple Push Notification service, odnosno APNs, omogućuje isporuku u stvarnom vremenu i sinkronizaciju između više uređaja. Za to je najprije potrebno registrirati određeni Appleov uređaj u usluzi iMessage, bilo da je riječ o iPhoneu, iPadu, Apple Watchu ili Macu.
Kada na novom Appleovu uređaju uključimo iMessage, uređaj pomoću sigurnog upravljanja ključevima stvara privatni i javni ključ. Privatni ključ ostaje u zaštićenom okruženju uređaja i ne prenosi se na Appleove poslužitelje. Javni ključ, s druge strane, prenosi se u Appleov središnji direktorij IDS, odnosno sustav Apple Identity Service. Uz taj ključ mogu se povezati telefonski broj i adresa e-pošte povezana s Apple računom s kojih možemo slati iMessage poruke i na koje ih možemo primati. Ako iMessage uključimo na više Appleovih uređaja, svaki se uređaj u Appleovu sustavu prikazuje zasebnim javnim ključem. Uređaji dobivaju i jedinstveni APNs token. Možemo ga zamisliti kao digitalnu adresu za isporuku: Appleov sustav na temelju njega zna kojem uređaju treba proslijediti obavijest i paket s porukom.
2. Usmjeravanje
Kada unesemo ime, telefonski broj ili adresu e-pošte primatelja, uređaj u pozadini provjerava u Appleovu direktoriju postoji li za taj kontakt javni ključ povezan s računom za iMessage i aktivan uređaj. Ako postoji, aplikacija Poruke tretira razgovor kao iMessage. Javni ključevi uređaja primatelja i sustav koji upotrebljava APNs tokene osiguravaju da poruka preko Appleovih poslužitelja stigne na odgovarajuće uređaje. Korisnik obično primijeti samo to da je oblačić poruke plave boje.

Ako primatelj nije registriran za iMessage, aplikacija Poruke pokušat će poslati poruku kao SMS, MMS ili, ako su operater i uređaj kompatibilni, RCS poruku. Takve se poruke prikazuju u zelenom oblačiću. Važno je naglasiti da se SMS, MMS i RCS poruke ne isporučuju putem sustava iMessage. Na Macu i iPadu te se poruke mogu koristiti ako korisnik ima iPhone prijavljen na isti Apple račun i na njemu je omogućena značajka Prosljeđivanje poruka. iPhone tada može prosljeđivati poruke koje prima putem mobilne mreže ili operaterova RCS sustava na druge Appleove uređaje.
3. Enkripcija
Čim pritisnemo gumb za slanje, u iMessageu započinje proces enkripcije koji uključuje više ključeva. Među uslugama za razmjenu poruka namijenjenima široj javnosti, iMessage se odlikuje jednim od najstrožih sigurnosnih sustava. Svi iMessage razgovori prema zadanim su postavkama zaštićeni end-to-end enkripcijom, odnosno E2EE zaštitom. To znači da sadržaj poruke mogu dešifrirati samo uređaji pošiljatelja i primatelja. Appleovi poslužitelji sudjeluju u isporuci, ali ne mogu pročitati tekst poruka, fotografije, videozapise ni privitke.
Uređaj najprije stvara nasumični jednokratni ključ sesije kojim šifrira sadržaj poruke, bilo da je riječ o tekstu, fotografiji, videozapisu, glasovnoj poruci, emojiju ili drugom privitku. Zatim iMessage iz IDS-a dohvaća javne ključeve povezane s uređajima sudionika razgovora. Sustav zasebno šifrira ključ sesije za svaki uključeni uređaj, pa poruku mogu dešifrirati iPhone, iPad, Mac ili Apple Watch primatelja ako je razgovor dostupan na tom uređaju. Završni paket podataka tako sadrži šifriranu poruku, ključeve šifrirane za uređaje primatelja i APNs tokene potrebne za isporuku.
4. Slanje i isporuka
Šifrirani paket podataka putem interneta prenosi se na Appleov poslužitelj, koji u tom procesu u osnovi služi kao dostavljač. Budući da se privatni ključ potreban za dešifriranje nalazi samo na uređaju primatelja, ni poslužitelj ni drugi sudionici mreže kroz koju paket prolazi ne mogu pročitati sadržaj poruke.
Appleov poslužitelj prosljeđuje paket odgovarajućim uređajima na temelju APNs tokena. Ako nijedan uređaj primatelja nije povezan s internetom – primjerice, iPhone je isključen, a Mac nije povezan s mrežom – sustav privremeno pohranjuje šifriranu poruku. Prema Appleovim informacijama, poruke iMessage koje čekaju isporuku mogu se čuvati najviše 30 dana. Čim neki od uređaja primatelja ponovno postane dostupan, sustav isporučuje poruku, a zatim uklanja paket koji je čekao na poslužitelju.
Sustav isporuke iMessage poruka ne funkcionira na temelju neprekidnog provjeravanja novih poruka, odnosno pollinga. Uređaji održavaju vezu s APNs sustavom uz malu potrošnju energije, pa poslužitelj može obavijestiti odgovarajući uređaj kada stigne nova poruka. To pridonosi brzom radu iMessagea uz manje nepotrebne mrežne komunikacije u pozadini.
5. Dešifriranje
Nakon što Appleov uređaj primatelja preuzme paket podataka s porukom, odabire ključ koji je šifriran za njega. Uređaj vlastitim privatnim ključem dešifrira ključ sesije, a zatim ga upotrebljava za vraćanje izvornog sadržaja poruke i njezin prikaz. Ako je proces uspješan, uređaj primatelja može putem sustava poslati šifriranu potvrdu o isporuci. Na temelju nje pošiljatelju se može prikazati status „Isporučeno”, a ako je primatelj to omogućio, i potvrda o čitanju.
Zaštita od budućih napada
Početkom 2024. Apple je najavio protokol Apple PQ3, koji je u iMessage stigao s ažuriranjima sustava iOS 17.4, iPadOS 17.4, macOS 14.4 i watchOS 10.4. Riječ je o jednom od najvećih ažuriranja sigurnosne arhitekture u povijesti iMessagea. PQ3, odnosno Post-Quantum Cryptography Level 3, osmišljen je kako bi iMessage i ubuduće bio otporniji na naprednije računalne metode, uključujući kvantna računala.

Jedan od oblika prijetnje naziva se napad „Harvest Now, Decrypt Later”. Ideja je da napadač ili državni akter danas možda još ne može dešifrirati šifrirani paket podataka, ali ga može spremiti i sačuvati u nadi da će mu u budućnosti, zahvaljujući naprednijim računalnim mogućnostima, primjerice kvantnom računalu, moći pristupiti. PQ3 pokušava spriječiti upravo takav scenarij. Uz prethodno opisane metode enkripcije uvodi nove postupke razmjene ključeva zaštićene postkvantnom kriptografijom, dok se ključevi koji se upotrebljavaju tijekom razgovora redovito obnavljaju. Tako napadač, čak i ako u budućnosti uspije doći do ključa povezanog s određenom sesijom, neće moći dešifrirati dugu povijest cijelog razgovora.
Korisniku se iMessage na prvi pogled možda čini tek jednostavnim poljem za unos teksta i aplikacijom za čavrljanje, no u pozadini se nalazi složen sustav identifikacije, enkripcije i isporuke. Zahvaljujući njemu možemo jednostavno održavati kontakt s obitelji, prijateljima i kolegama na Appleovim uređajima, uz sinkronizaciju između više uređaja i visoku razinu sigurnosti.