Proton Authenticator er en open source to-faktor-godkendelse (2FA) godkender-app, der genererer tidsbaserede engangskoder (TOTP) på din enhed, så du kan få adgang til onlinetjenester med et ekstra lag af sikkerhed. Den bruger den samme gennemtestede kryptering, der sikrer resten af Proton-økosystemet. Proton Authenticator er unik ved, at den blev designet fra bunden til at være tilgængelig på næsten enhver platform, samtidig med at den bevarer dit privatliv og giver dig totalt ejerskab over dine data.
I modsætning til andre godkender-apps sikrer Proton Authenticator dine data med end-to-end kryptering, selv når du aktiverer enhedssynkronisering.
Dette betyder, at Proton Authenticator forhindrer alle, inklusive Proton selv, i at vide, hvilke onlinetjenester du har konti hos. Disse oplysninger, ligesom dine e-mails eller browserhistorik, kan afsløre meget om dig, og beskyttelse af dem er afgørende for at bevare dit privatliv.
Proton Authenticators end-to-end kryptering garanterer, at alle kryptografiske operationer, inklusive nøglegenerering og datakryptering, udføres lokalt på din enhed. Det betyder, at dine ukrypterede data ikke kan tilgås af Proton eller deles med nogen tredjeparter. Proton-servere har aldrig adgang til dine ukrypterede data, inklusive din Proton Account-adgangskode.
Krypteringsmodel
Proton Authenticator bruger en omfattende tilgang til at sikre maksimal sikkerhed og privatliv for alle brugerdata. Alle kryptografiske operationer sker lokalt på din enhed, og alle data, der overføres til serveren, er altid krypterede. Proton har aldrig adgang til de klartekstnøgler, der kræves for at dekryptere brugerdata, hvilket gør det umuligt for os at dekryptere lagrede data, selv hvis vi bliver anmodet om det af tredjeparter.
Proton Authenticator bruger den samme avancerede kryptering, vi bruger til godkendelse i Proton Mail. Dette inkluderer brugen af en hærdet version af SRP-protokollen (Secure Remote Password), der tilbyder stærkere sikkerhedsgarantier mod man-in-the-middle (MITM) angreb. Vores implementering betyder, at selv en angriber, der vilkårligt kan læse, ændre, forsinke, ødelægge, gentage eller fabrikere beskeder mellem Proton og en bruger på en uopdagelig måde, er begrænset til kun at tjekke ét gæt på en individuel adgangskode pr. loginforsøg, hvilket svarer til at forsøge at logge ind direkte. På denne måde, selv hvis Proton kompromitteres og handler ondsindet, afsløres adgangskode-lignende oplysninger aldrig.
Læs mere om Protons godkendelseskryptering
Datakryptering
Proton Authenticator giver dig mulighed for sikkert at gemme dine 2FA-koder, selvom du ikke har en Proton Account. Det betyder, at den indledende krypteringsproces skal udføres helt på din lokale enhed. Hvis du derefter beslutter, at du vil bruge din Proton Account til at synkronisere dine koder på tværs af enheder, kan vi bruge de kryptografiske nøgler, der er lagret på Proton-servere, til at udføre synkroniseringen.
Proton-kryptering begynder med, at Proton-serveren leverer den krypterede version af rodnøglen, som Godkender-appen bruger til at kryptere brugerens data. Hver Proton-bruger har en asymmetrisk User Key, og Proton krypterer denne User Key på din enhed som følger:
- Konti, der bruger en individuel adgangskode: Proton krypterer User Key med en bcrypt-hash af kontoadgangskoden og kontosalt.
- Konti, der bruger vores funktion med flere kontoadgangskoder: Proton krypterer User Key med en bcrypt-hash af nøgleadgangskoden og kontosalt.
Proton Authenticator bruger bcrypt og et kontosalt til at hashe din adgangskode som et ekstra lag af beskyttelse mod brute-force-angreb. Selv hvis en ondsindet aktør fik adgang til Proton-databasen, ville dine kontonøgler være sikre mod brute-force-angreb.
Når du aktiverer synkronisering, genererer Proton Authenticator en 32-byte tilfældig Authenticator Key. Denne nøgle er krypteret og underskrevet med din User Key, hvilket sikrer, at kun du kan dekryptere den — ingen (heller ikke Proton) kan læse eller oprette en ny Authenticator Key. Når du har adgang til Authenticator Key, krypteres alle poster i Proton Authenticator ved hjælp af 256-bit AES-GCM.

Da Proton Authenticator ikke kræver en Proton Account, har vi også brug for et separat krypteringsskema, der sikkert lagrer dine data, når de kun findes på din enhed. I sidste ende er den nemmeste måde at implementere dette på ved at behandle Proton Account som en separat nøgleudbyder. I sidste ende ser det ud som følger:

Til den lokale nøglelagring på din enhed er vi afhængige af hvert systems sikre nøglelagerudbydere:
- Android: Vi lagrer nøglen sikkert i Android Keystore(nyt vindue), som derefter bruges til at kryptere en Lokal Tilfældig Nøgle, som vi lagrer i appens beskyttede filsystem. Den nøgle bruges til symmetrisk at kryptere alle Proton Authenticator-poster på din enhed.
- iOS/iPadOS/macOS: Vi genererer en Lokal Tilfældig Nøgle og lagrer den i Keychain-tjenesten(nyt vindue). Den nøgle bruges til symmetrisk at kryptere alle Proton Authenticator-poster på din enhed.
- Windows: Vi genererer en Lokal Tilfældig Nøgle og lagrer den i Windows Credential Manager(nyt vindue). Den nøgle bruges til symmetrisk at kryptere alle Proton Authenticator-poster på din enhed. Hvis forbindelsen til WCM ikke er tilgængelig, tillader vi brugeren at kryptere deres Lokale Tilfældige Nøgle med en adgangskode.
- Linux: Vi genererer en Lokal Tilfældig Nøgle og lagrer den i den tilgængelige DBUS Secret Service. Den nøgle bruges til symmetrisk at kryptere alle Proton Authenticator-poster på din enhed. Hvis ingen DBUS secret service er konfigureret, tillader vi brugeren at kryptere deres Lokale Tilfældige Nøgle med en adgangskode.
Kryptering af sikkerhedskopi
En af Proton Authenticators hovedstyrker er, at du altid styrer dine data. Dette inkluderer muligheden for periodisk at sikkerhedskopiere dine koder til din lokale enhed og indstille en adgangskode, der krypterer disse følsomme data.
For at implementere denne sikre lokale sikkerhedskopi bruger vi den adgangskode, du angav, til at udlede en sikker krypteringsnøgle ved hjælp af Argon2 som en KDF (Key-Derivation Function). En KDF bruges til at generere kryptografiske nøgler fra hemmelige inputs, såsom brugerindtastede adgangskoder, og dens hovedformål er at forbedre sikkerheden ved at gøre det sværere og mere tidskrævende for angribere at knække adgangskoder. Ved hjælp af denne krypteringsnøgle genereret fra din adgangskode serialiserer vi alle dine poster og krypterer dem for at sikre, at dine data forbliver sikkert krypterede, selvom sikkerhedskopien lækkes. Og ved at bruge velkendte og åbne teknologier er du i stand til at dekryptere dine data uden at bruge Proton Authenticator, hvilket giver dig mulighed for at bevare kontrollen, selvom du beslutter at flytte til en anden Godkender-app.
Sikkerhed gennem gennemsigtighed
Ligesom alle Proton-tjenester er Proton Authenticator open source. Alle kan konsultere vores kildekode for at bekræfte vores sikkerhedsmodel. Som med vores andre tjenester vil Proton Authenticator også gennemgå regelmæssige uafhængige sikkerhedsaudits, og vi vil dele disse auditrapporter offentligt, så snart de er tilgængelige.
Endelig, for interesserede sikkerhedsforskere, er Proton Authenticator berettiget til Protons fejldusør-program, der tilbyder belønninger på op til $100.000 for opdagelsen af fejl i Protons software.






