La crittografia end-to-end è il cuore di Proton Drive. È ciò che mantiene privati i tuoi file, in modo che solo tu e le persone da te scelte possiate accedervi — nemmeno noi. Poiché ogni operazione sui file è protetta in questo modo nelle nostre app di archiviazione cloud, le prestazioni crittografiche hanno un impatto diretto sulla velocità percepita di caricamenti e download.

Dopo i nostri precedenti miglioramenti delle prestazioni dell’SDK per caricamenti e download, quest’ultimo aggiornamento si basa su quel lavoro rendendo lo strato di crittografia principale di Proton Drive ancora più efficiente.

Proton Drive utilizza lo standard OpenPGP per crittografare i contenuti dei file e ora abbiamo adottato un progresso crittografico introdotto in un aggiornamento dello standard. Gran parte della creazione dell’ SDK durante quest’anno è consistita nello spostamento delle operazioni sui file di Drive su una base condivisa, rendendo le app più veloci e fluide su tutte le piattaforme. Il risultato è un aumento delle prestazioni fino a 4 volte per il caricamento dei file. Inoltre, getta le basi per la prossima generazione di funzionalità di Drive.

Impatto sulle prestazioni

La crittografia ha un grande impatto sulla fluidità percepita dell’app durante l’uso quotidiano, quindi ridurre quel costo fino a 4 volte rende il caricamento dei file molto più veloce, soprattutto sui dispositivi in cui le prestazioni contano di più:

  • Sui dispositivi mobili, i nostri benchmark mostrano che la crittografia di un file da 4 MB che prima richiedeva 97 ms ora richiede 32 ms.
  • Su processori più potenti, la stessa operazione che prima richiedeva 12 ms ora richiede 3 ms.

La crittografia di un film in HD o di 1.000 foto ad alta risoluzione richiedeva circa un minuto e mezzo sul telefono o circa 12 secondi su un computer desktop veloce. Con questo aggiornamento, lo stesso lavoro si conclude in circa 30 secondi sui dispositivi mobili e in circa 3 secondi su un computer desktop.

Come Proton Drive è diventato più veloce

La struttura utilizzata da Proton Drive è un nodo di file, che può avere molte revisioni, ciascuna delle quali rappresenta una versione del file. I contenuti vengono poi suddivisi in blocchi. Il nodo contiene materiale crittografico che viene utilizzato per crittografare i blocchi. Questo materiale crittografico sul nodo del file consiste nella chiave del nodo (una chiave segreta PGP bloccata) e in un pacchetto di chiavi di contenuto (un PKESK crittografato con la chiave del nodo).

Un diagramma che spiega l'aggiornamento crittografico di Proton Drive

I messaggi PGP che Proton Drive utilizza per i contenuti dei file sono costituiti da due pacchetti:

  • Una chiave di sessione crittografata con chiave pubblica (PKESK): si tratta del pacchetto di chiavi di contenuto del nodo, condiviso per tutti i blocchi.
  • Un pacchetto di dati protetto dall’integrità e crittografato simmetricamente (SEIPD): questo rappresenta il contenuto crittografato dei blocchi.

Il nuovo schema di crittografia

Prima di questo aggiornamento crittografico, i file caricati utilizzavano un PKESK v3 e un SEIPD v1. Ora, l’algoritmo di crittografia richiede un PKESK v6 e un SEIPD v2. La crittografia simmetrica utilizzata per il contenuto è AES-GCM, che sfrutta appieno la crittografia hardware sulla maggior parte dei dispositivi moderni.

Poiché la chiave di sessione è condivisa tra le revisioni quando i file vengono aggiornati, tutte le revisioni di un file devono corrispondere allo schema di crittografia utilizzato dalla prima di esse. Ciò significa che i client devono essere aggiornati per tenere conto della versione PKESK quando si apporta una modifica a un file e si carica una nuova revisione. I client basati sull’SDK di Proton Drive gestiranno questo aspetto automaticamente, poiché le informazioni sono contenute nella chiave di sessione. La chiave viene generata qui(nuova finestra) e utilizzata durante la crittografia dei blocchi(nuova finestra).

Per evitare problemi con la successiva decriptazione, les revisioni inviate con la versione errata verranno rifiutate. Ciò significa che i client che non supportano questa funzionalità non saranno in grado di aggiornare i file caricati dopo l’entrata in vigore di questa modifica. Assicurati di aggiornare i tuoi client Proton Drive per ottenere tutti i vantaggi in termini di prestazioni.

Novità in arrivo

Questo è un grande passo avanti nell’evoluzione del modello di core condiviso di Proton Drive verso uno spazio di archiviazione cloud più performante e capace, protetto da crittografia end-to-end. L’SDK offre a ogni client Drive un core crittografico condiviso, rendendo possibili modifiche di questa portata — e aiutandoci a muoverci più velocemente su ciò che verrà dopo. Continua a seguirci per ulteriori miglioramenti quest’anno.

Grazie per il tuo continuo supporto,

Il team di ingegneria di Proton Drive