End-to-end versleuteling vormt de kern van Proton Drive. Het is wat uw bestanden privé houdt, zodat alleen u en de mensen die u kiest er toegang toe hebben — zelfs wij niet. Omdat elke bestandsbewerking op deze manier wordt beschermd in onze cloudopslag-apps, hebben cryptografische prestaties een directe invloed op hoe snel uploads en downloads aanvoelen.
Na onze eerdere SDK-prestatieverbeteringen voor uploads en downloads bouwt deze nieuwste update voort op dat werk door de kernversleutelingslaag van Proton Drive nog efficiënter te maken.
Proton Drive gebruikt de OpenPGP-standaard om de inhoud van bestanden te versleutelen, en we hebben nu een cryptografische vooruitgang overgenomen die is geïntroduceerd in een update van de standaard. Een groot deel van de ontwikkeling van de SDK dit jaar bestond uit het verplaatsen van de bestandsbewerkingen van Drive naar een gedeelde basis, waardoor de apps sneller en soepeler werken op alle platforms. Het resultaat is een tot 4x betere prestatie voor bestandsuploads. Het legt ook de basis voor de volgende generatie Drive-functies.
Impact op de prestaties
Versleuteling heeft een grote invloed op hoe soepel de app aanvoelt tijdens het dagelijks gebruik. Door die belasting tot 4x te verminderen, voelen bestandsuploads veel sneller aan, vooral op de apparaten waar prestaties het belangrijkst zijn:
- Op mobiel tonen onze benchmarks aan dat de versleuteling van een bestand van 4 MB dat voorheen 97 ms duurde, nu 32 ms duurt.
- Op krachtigere processors duurt dezelfde bewerking die voorheen 12 ms duurde, nu 3 ms.
Het versleutelen van een HD-film of 1.000 foto’s met een hoge resolutie kostte uw telefoon voorheen ongeveer anderhalve minuut, of een snelle desktop ongeveer 12 seconden. Met deze update is hetzelfde werk geklaard in ongeveer 30 seconden op mobiel en ongeveer 3 seconden op een desktop.
Hoe Proton Drive sneller is geworden
De structuur die Proton Drive gebruikt is een bestands-node, die veel revisies kan hebben, die elk een versie van het bestand vertegenwoordigen. De inhoud is vervolgens opgedeeld in blocks (blokken). De node bevat cryptografisch materiaal dat wordt gebruikt om de blocks te versleutelen. Dit cryptografische materiaal op de bestands-node bestaat uit de node key (een vergrendelde geheime PGP-sleutel) en een content-sleutelpakket (een PKESK versleuteld met de node key).

De PGP-berichten die Proton Drive gebruikt voor de inhoud van bestanden bestaan uit twee pakketten:
- Een met een openbare sleutel versleutelde sessiesleutel (PKESK): dit is het inhoudsleutelpakket van de node, gedeeld voor alle blocks.
- Een symmetrisch versleuteld gegevenspakket met integriteitsbescherming (SEIPD): dit is de versleutelde blockinhoud.
Het nieuwe versleutelingsschema
Vóór deze cryptografie-update gebruikten geüploade bestanden een v3 PKESK en een v1 SEIPD. Nu vereist het versleutelingsalgoritme een v6 PKESK en een v2 SEIPD. De symmetrische versleuteling die voor de inhoud wordt gebruikt is AES-GCM, die optimaal gebruikmaakt van hardwareversleuteling op de meeste moderne apparaten.
Omdat de sessiesleutel wordt gedeeld tussen revisies wanneer bestanden worden bijgewerkt, moeten alle revisies van een bestand overeenkomen met het versleutelingsschema dat door de eerste is gebruikt. Dit betekent dat clients moeten worden bijgewerkt om rekening te houden met de PKESK-versie wanneer ze een wijziging in een bestand aanbrengen en een nieuwe revisie uploaden. Clients die zijn gebouwd op de Proton Drive SDK regelen dit automatisch, omdat de informatie in de sessiesleutel wordt meegestuurd. De sleutel wordt hier(nieuw venster) gegenereerd en gebruikt bij het versleutelen van de blocks(nieuw venster).
Om problemen met ontsleuteling achteraf te voorkomen, worden revisies die met de verkeerde versie zijn ingediend, geweigerd. Dit betekent dat clients die de functie niet ondersteunen, bestanden die zijn geüpload nadat deze wijziging van kracht is geworden, niet kunnen bijwerken. Zorg ervoor dat u uw Proton Drive-clients bijwerkt om alle prestatievoordelen te benutten.
Wat volgt er nu
Dit is een grote stap in de ontwikkeling van het gedeelde kernmodel van Proton Drive naar beter presterende, krachtigere cloudopslag die wordt beschermd door end-to-end versleuteling. De SDK geeft elke Drive-client een gedeelde cryptografische kern, waardoor wijzigingen van deze omvang mogelijk worden — en we sneller kunnen werken aan wat hierna komt. Blijf op de hoogte voor meer verbeteringen dit jaar.
Bedankt voor uw voortdurende steun,
Het Proton Drive engineering-team






