iMessagen suojauksen yleiskatsaus
Applen iMessage on viestipalvelu iPhone- ja iPad-laitteille, Apple Watchille ja Mac-tietokoneille. iMessage tukee tekstiä ja liitteitä kuten kuvia, yhteystietoja, sijainteja, linkkejä ja suoraan viestiin lisättäviä liitteitä kuten peukutuskuvaketta. Viestit näkyvät kaikissa käyttäjän rekisteröidyissä laitteissa, joten käyttäjä voi jatkaa keskustelua millä tahansa laitteellaan. iMessage käyttää laajasti Applen push-ilmoituspalvelua (APNs). Apple ei kirjaa lokia viestien tai liitteiden sisällöstä. Ne on suojattu päästä-päähän-salauksella, joten ainoastaan lähettäjä ja vastaanottaja pääsevät niihin. Apple ei voi purkaa näiden tietojen salausta.
Kun käyttäjä laittaa iMessagen päälle laitteessa, laite luo salaus- ja allekirjoitusavainparit palvelun kanssa käytettäviksi. Salaukseen on 1280-bittinen RSA-salausavain sekä 256-bittinen elliptisen käyrän salausavain NIST P-256 ‑käyrällä. Allekirjoituksille käytetään 256-bittisiä elliptisten käyrien allekirjoitusalgoritmin (ECDSA) allekirjoitusavaimia. Yksityiset avaimet tallennetaan laitteen avainnippuun ja ne ovat käytettävissä vain, kun lukitus on ensin avattu. Julkiset avaimet lähetetään Apple Identity Service (IDS) ‑palvelulle, missä ne liitetään käyttäjän puhelinnumeroon tai sähköpostiosoitteeseen yhdessä laitteen APNs-osoitteen kanssa.
Kun käyttäjät ottavat iMessagen käyttöön useammilla laitteilla, niiden julkiset salaus- ja allekirjoitusavaimet, APNs-osoitteet ja liitetyt puhelinnumerot lisätään hakemistopalveluun. Käyttäjät voivat myös lisätä useampia sähköpostiosoitteita, jotka vahvistetaan lähettämällä vahvistuslinkki. Puhelinnumerot vahvistetaan käyttäen operaattorin verkkoa ja SIM-korttia. Joissakin verkoissa tämä vaatii tekstiviestin käyttämistä (käyttäjälle näytetään vahvistusvalintaikkuna, jos tekstiviesti ei ole ilmainen). Puhelinnumeron vahvistamista voidaan vaatia iMessagen lisäksi useille järjestelmäpalveluille, kuten FaceTimelle ja iCloudille. Kaikissa käyttäjän rekisteröidyissä laitteissa näkyy varoitusviesti, kun uusi laite, puhelinnumero tai sähköpostiosoite lisätään.