Condivisione sicura della foto e del nome in iMessage

La condivisione della foto e del nome in iMessage consente all’utente di condividere il proprio nome e la propria foto usando iMessage. L’utente può selezionare le informazioni della scheda personale oppure personalizzare il nome e includere un’immagine di sua scelta. La condivisione del nome e della foto con iMessage utilizza un sistema in due passaggi per distribuire il nome e la foto.

I dati vengono suddivisi in campi, ognuno di questi campi viene codificato e autenticato separatamente e poi tutti i campi vengono autenticati insieme secondo il processo descritto a continuazione. Esistono tre campi:

  • Nome

  • Foto

  • Nome file foto

Un primo passaggio per la creazione dei dati è la generazione casuale di una chiave record a 128 bit sul dispositivo. Tale chiave record viene quindi derivata con HKDF-HMAC-SHA-256 per creare tre sotto-chiavi: chiave 1:chiave 2:chiave 3 = HKDF(chiave record, “soprannomi”). Per ogni campo viene generato un vettore di inizializzazione a 96 bit casuale e i dati vengono codificati mediante AES-CTR e la chiave 1. Viene poi elaborato un codice di autenticazione del messaggio (MAC) con HMAC-SHA-256 tramite la chiave 2 e coprendo il nome del campo, il vettore di inizializzazione del campo e il ciphertext del campo. Infine, viene concatenato l’insieme dei valori MAC dei singoli campi e il relativo MAC viene elaborato con HMAC-SHA-256 tramite la chiave 3. Il MAC a 256 bit viene archiviato insieme dati codificati. I primi 128 bit di questo MAC sono utilizzati come RecordID.

Questo record codificato viene poi archiviato nel database pubblico di CloudKit come RecordID. Questo record non cambia mai e ogni volta che l’utente sceglie di modificare il nome utente e la foto viene generato un nuovo record. Quando l’utente 1 sceglie di condividere nome e foto con l’utente 2, invia una chiave record insieme al RecordID all’interno del payload di iMessage, che è codificato.

Quando il dispositivo dell’utente 2 riceve questo payload di iMessage, nota che contiene una chiave e un RecordID per soprannome e foto. Il dispositivo dell’utente 2 recupera dal database pubblico di CloudKit il nome e la foto codificati nel recordID e li invia tramite iMessage.

Una volta ricevuto il messaggio, il dispositivo dell’utente 2 decrittografa il payload e verifica la firma usando il RecordID stesso. Se la verifica ha esito positivo, l’utente 2 visualizza il nome e la foto e può scegliere di aggiungerli ai contatti o di usarli per Messaggi.

Data di pubblicazione: 18 febbraio 2021
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
Utile?
Limite di caratteri: 250
Il limite massimo di caratteri è 250.
Grazie per il tuo feedback.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.