Facebook ha annunciato alcune modifiche all’architettura di WhatsApp per consentire un vero supporto multi-device. L’azienda di Menlo Park ha avviato un test beta pubblico (accessibile solo ad un numero limitato di utenti) per la funzionalità che permette di utilizzare il servizio su altri quattro dispositivi, anche quando lo smartphone sul quale è installata l’app non è acceso o connesso ad Internet.
WhatsApp: supporto multi-device in beta
Attualmente il supporto multi-device richiede obbligatoriamente l’uso dell’app installata sullo smartphone (dispositivo principale). Quest’ultimo è sempre la “sorgente” dei dati e l’unico in grado di proteggere i messaggi tramite crittografia end-to-end. La versione di WhatsApp per web, Windows, macOS e Portal mantiene solo una connessione sicura con lo smartphone, mostrando gli stessi contenuti (mirroring) all’interno di un’interfaccia ottimizzata.
Il funzionamento ha quindi alcune limitazioni. Se lo smartphone è scarico, la connessione è debole o il sistema operativo chiude l’app in background, WhatsApp non può essere usato su altri dispositivi. Inoltre è possibile utilizzare solo un device alla volta tra quelli collegati allo smartphone. Ad esempio, se viene usato Portal per una videochiamata non si possono ricevere i messaggi su PC.
Facebook ha modificato l’architettura di WhatsApp per offrire una vera esperienza multi-device. Ora ogni dispositivo ha la sua “identity key“. In precedenza c’era un singola chiave da cui derivavano tutte le chiavi cifrate. I server di WhatsApp conservano le corrispondenze tra l’account di ogni utente e tutte le identità. L’elenco delle chiavi dei dispositivi viene recuperato dal server quando si invia un messaggio.
Viene quindi stabilita una sessione cifrata a coppie tra i dispositivi del mittente e del destinatario. Il messaggio viene inviato dal client WhatsApp un numero N di volte ad un numero N di dispositivi (quelli inclusi nel suddetto elenco). I messaggi non vengono conservati sul server.
Quando viene collegato un altro dispositivo, lo smartphone invia i messaggi più recenti (in forma cifrata). Il device ricevente memorizza i messaggi e quindi accede alla cronologia dal database locale. La sincronizzazione avviene in modo simile per altri dati (ad esempio quelli che indicano l’aggiunta di un contatto o la disattivazione delle notifiche per una chat), ma una copia viene conservata sul server (protetta dalla crittografia end-to-end).
Per partecipare al test è necessario installare l’ultima versione beta di WhatsApp o WhatsApp Business e seguire queste istruzioni. Facebook sottolinea che alcune funzionalità non sono disponibili.