Patroonversleuteling: hoe het tekenen van een vorm uw bestanden beschermt

Met je vinger teken je een patroon. PBKDF2 verandert dat gebaar in een kluissleutel, die een afzonderlijke willekeurige sleutel ontgrendelt waarmee uw bestanden worden beschermd AES-256-GCM. Geen wachtwoordveld, geen korte pincode. Gewoon jouw patroon en een opzettelijk gelaagde sleutelhiërarchie.

Vaultaire serialiseert een vorm die is getekend op een 5×5-raster en verwerkt deze PBKDF2-HMAC-SHA512, 600.000 iteraties, en een zout voor het hele apparaat opgeslagen in de iOS Keychain. Het resultaat van 256 bits is een kluissleutel: deze codeert de kluisindex en pakt de afzonderlijke willekeurige hoofdsleutel uit die AES-256-GCM gebruik voor bestandsinhoud en metadata.

Wat is Patroonversleuteling?

De meeste kluis-apps verbergen zich achter een pincode of wachtwoord. U typt vier cijfers in en uw foto's verschijnen. Klinkt veilig genoeg, toch?

Hier is het probleem: een viercijferige pincode heeft precies 10.000 mogelijke combinaties. Een computer kan ze allemaal binnen een seconde proberen. Zes cijfers? Een miljoen combinaties. Nog steeds triviaal snel voor moderne hardware. Zelfs een wachtwoord van acht tekens biedt, als het alleen kleine letters bevat, ongeveer 200 miljard mogelijkheden. Dat klinkt veel, totdat je erachter komt dat een standaardlaptop miljarden wachtwoordhashes per seconde kan testen.

Patroonversleuteling heeft een fundamenteel andere benadering. In plaats van tekens in een vakje te typen, tekent u een geometrische vorm over een raster van punten. Het specifieke pad dat u volgt – welke punten u aanraakt, in welke volgorde, met welke geometrie – wordt de invoer voor een op wachtwoord gebaseerde sleutelafleidingsfunctie. Het resultaat wordt niet alleen gecontroleerd door de interface: het moet een geverifieerde gecodeerde index en de willekeurige hoofdsleutel daarin ontgrendelen.

Het onderscheid is belangrijk. Wanneer je in sommige apps een pincode invoert, controleert de app alleen of je het juiste nummer hebt getypt. Als u dat heeft gedaan, wordt het geopend, ook al zijn de bestanden mogelijk voornamelijk beveiligd door toegangscontrole. Vaultaire voert in plaats daarvan het getekende patroon in PBKDF2 om een 256-bit kluissleutel af te leiden. Die sleutel moet de kluisindex verifiëren en decoderen voordat deze de willekeurige hoofdsleutel die voor de bestanden wordt gebruikt, kan uitpakken. Een niet-herkend patroon wordt gepresenteerd als een lege kluis, maar het onderliggende AES-GCM authenticatie onderscheidt nog steeds een correcte sleutel van een onjuiste sleutel.

Belangrijkste verschil

Een toegangspoort op basis van een pincode kan lijken op een gesloten deur die voor anderszins leesbare bestanden wordt geplaatst. Het patroon van Vaultaire komt dichter in de buurt van de combinatie op een kluis: het leidt de sleutel af die een gecodeerde index opent, die op zijn beurt de afzonderlijke sleutel vrijgeeft die de inhoud beschermt. De interface kan die cryptografische keten niet zomaar omzeilen.

Hoe het werkt, Stap voor stap

Dit is wat er gebeurt vanaf het moment dat uw vinger het scherm aanraakt tot het moment dat uw bestanden onleesbaar worden voor iedereen.

Stap 1: U tekent uw patroon

Vaultaire presenteert een raster van 5×5 punten. Je tekent een ononderbroken pad dat minimaal 6 punten verbindt met minimaal twee richtingsveranderingen. De app registreert precies welke punten je bezocht en in welke volgorde. Deze reeks is jouw patroon.

5×5 Patroonraster

In tegenstelling tot de 3×3-rasters die gewoonlijk worden gebruikt voor Android-vergrendelingsschermen, gebruikt Vaultaire een 5×5-raster. Dit is geen cosmetische keuze. Vijfentwintig posities maken veel meer paden, kruisingen, overslaan en richtingsveranderingen mogelijk dan negen posities. De grotere theoretische ruimte helpt, maar de daadwerkelijke veiligheid hangt nog steeds af van de onvoorspelbaarheid van het pad dat je kiest. Een bekende letter of eenvoudige vorm blijft raadbaar, zelfs als het raster miljarden alternatieven kan uitdrukken.

Stap 2: Het patroon leidt een kluissleutel af

Uw getekende patroon wordt geserialiseerd met de rastergrootte en ingevoerd PBKDF2 (Op wachtwoord gebaseerde sleutelafleidingsfunctie 2) met HMAC-SHA512, 600.000 iteraties en een willekeurig zout voor het hele apparaat. Het zout is een niet-geheime waarde die is opgeslagen in de iOS Keychain als een WhenUnlockedThisDeviceOnly-item. Het maakt de lokale afleiding apparaatgebonden; het is niet uniek voor elke kluis en voegt geen entropie toe aan een door de mens gekozen patroon.

Coderingsstroom
Uw patroon
5×5 rasterpad
PBKDF2 + Zout
Sleutelafleiding
256-bits sleutel
Uniek per kluis
AES-256-GCM
Bestandsversleuteling

Het sleutelafleidingsproces is bewust duur. PBKDF2 loopt 600.000 HMAC-SHA512 iteraties voor elk kandidaatpatroon, waardoor de kosten van een gokaanval stijgen. Dit verandert een patroon met lage entropie niet in 256 bits beveiliging, en de aanvalstijd is afhankelijk van de hardware van de aanvaller. Het doel ervan is beperkter en meetbaar: elke gok substantieel duurder maken dan een simpele hasj.

Stap 3: uw bestanden worden gecodeerd

Wanneer de kluis voor het eerst wordt gemaakt, genereert Vaultaire een willekeurige hoofdsleutel van 256 bits. De van een patroon afgeleide kluissleutel codeert de index en omhult die hoofdsleutel; het codeert niet elk bestand rechtstreeks. De hoofdsleutel wordt gebruikt met AES-256-GCM voor bestandskoppen, inhoud, miniaturen en gerelateerde metagegevens. Nieuwe nonces zorgen ervoor dat herhaalde leesbare tekst geen herhaalde cijfertekst onder dezelfde sleutel oplevert.

De GCM-modus voegt een belangrijke laag toe: authenticatie. Het versleutelt niet alleen uw gegevens, maar genereert ook een tag die eventuele manipulatie detecteert. Als een enkel bit van het gecodeerde bestand wordt gewijzigd, mislukt de decodering. Niemand kan met uw bestanden knoeien zonder dat u het weet.

Stap 4: Actieve sleutelstatus is gewist

Wanneer Vaultaire wordt vergrendeld, worden de actieve status van de kluis en de hoofdsleutel gewist en is er nog een ontgrendelingsceremonie nodig voordat de bestanden opnieuw worden weergegeven. Terwijl de kluis open is, bestaan deze symmetrische sleutelbytes noodzakelijkerwijs in het app-proces CryptoKit kan presteren AES-GCM operaties. Vaultaire bewaart ook herstelinformatie, inclusief het patroon en de met zin gecodeerde herstelenvelop, in een AES-GCM gecodeerde database opgeslagen in de iOS Keychain. Dat is wezenlijk anders dan beweren dat het patroon en elke sleutelkopie nergens worden opgeslagen.

De wiskunde erachter (in gewoon Engels)

Je hebt geen diploma computerwetenschappen nodig om te begrijpen waarom dit werkt. De beveiliging komt neer op drie cijfers: hoeveel patronen er mogelijk zijn, hoe lang elke gok duurt en hoeveel gissingen een aanvaller kan maken.

2256
AES-sleutelruimte
5×5
Rastergrootte
Miljarden
Mogelijke patronen

Entropie: de maatstaf van onvoorspelbaarheid

Entropie is een mooi woord voor “hoe moeilijk is dit te raden.” Een muntstukje heeft 1 bit entropie (twee uitkomsten). Een viercijferige pincode heeft ongeveer 13 bits entropie (10.000 uitkomsten). Een goed gekozen patroon op een 5×5-raster, dat 8 of meer punten met elkaar verbindt, kan meer dan 30 bits entropie, overschrijden, meer dan een miljard mogelijke patronen.

De entropie van het patroon vormt het plafond voor een gokaanval. PBKDF2 kan geen entropie creëren die het gebaar niet bevat, maar het kan het testen van elke kandidaat veel duurder maken.

Sleutelafleiding: gissingen duur maken

PBKDF2 neemt het geserialiseerde patroon en voert 600.000 rondes uit HMAC-SHA512. Bij aanvalsschattingen moeten de gemeten kosten van de hardware die het gokken uitvoert, worden gebruikt: bij precies 1 ms per volledige kandidaat zouden 1.000.000.000 kandidaten 1.000.000 s, of ongeveer 11,6 dagen, nodig hebben voor 1 medewerker. Een langzamer gemeten kandidaatkosten nemen die tijd toe; parallelle hardware vermindert dit. De uitvoerlengte van 256 bit verandert niets aan de grootte van de patroonzoekruimte.

Het apparaatbrede zout wordt erin opgeslagen Keychain en is niet ontworpen om geheim te zijn. Keychain en iOS Gegevensbescherming kan de extractie moeilijker maken in een scenario van apparaatinbeslagname, maar de cryptografische analyse moet ervan uitgaan dat een onderzoeker die de gecodeerde bestanden verkrijgt, ook de salt kan verkrijgen. Het zout voorkomt voorberekening tussen apparaten; het is geen vervanging voor een sterk patroon.

AES-256: de standaard waarop overheden vertrouwen

AES-256 is de coderingsstandaard die door de Amerikaanse overheid wordt gebruikt voor geheime informatie. De “256” verwijst naar de sleutellengte in bits. Een 256-bits sleutel heeft er 2256 mogelijke waarden, een getal dat zo groot is dat als elk atoom in het waarneembare heelal een computer zou zijn, en elke computer een biljoen sleutels per seconde zou kunnen testen, ze het nog steeds niet zouden kraken vóór de hittedood van het heelal.

De veiligheid van AES-256 hangt niet af van het geheim houden van het algoritme. Maar het volledige systeem wordt niet alleen beschermd door de AES-sleutelruimte: de praktische gokgrens komt voort uit de entropie van het patroon, de PBKDF2 werkfactor, en de bescherming rond het apparaatzout en gecodeerde opslag. AES-256-GCM biedt sterke, geverifieerde codering zodra de juiste willekeurige hoofdsleutel is ontgrendeld.

Waarom niemand kan doorbreken

Laten we eens kijken naar de belangrijkste manieren waarop iemand zou kunnen proberen toegang te krijgen tot uw gecodeerde bestanden, wat Vaultaire doet om de kosten te verhogen en waar de limieten blijven bestaan.

Brute kracht: elk patroon proberen

PBKDF2 laat elke patroonkandidaat 600.000 betalen HMAC-SHA512 iteraties. Dat is een zinvolle verdediging, maar geen belofte voor een vast aantal jaren: het resultaat hangt af van de patroonkeuze, de gemeten afleidingssnelheid, het parallellisme en of de onderzoeker het apparaatzout heeft teruggevonden. Langere, minder voorspelbare paden zijn belangrijk omdat PBKDF2 verhoogt de gokkosten in plaats van nieuwe entropie te creëren.

Smudge-aanvallen: uw scherm lezen

Op een 3×3-raster kunnen vlekken op het scherm de mogelijke patronen aanzienlijk beperken. Op een 5×5-raster laat het veegpatroon zien welke punten zijn aangeraakt, maar niet de volgorde, richting of verbindingen daartussen. De combinatorische explosie maakt deze aanpak onpraktisch.

Schoudersurfen: kijken hoe je tekent

Patronen die snel op een klein telefoonscherm worden getekend, zijn uiterst moeilijk te onthouden door observatie, vooral op een 5×5-raster. Onderzoek toont aan dat waarnemers het veel moeilijker hebben om complexe patronen te repliceren dan wanneer ze een pincode of wachtwoord hardop horen uitspreken.

Apparaatinbeslagname: uw telefoon in beslag nemen

Als iemand uw telefoon afpakt, blijven de bestandsinhoud en indexen van Vaultaire behouden AES-GCM cijfertekst totdat de vereiste sleutels beschikbaar zijn. De app slaat geen conventionele wachtwoordverificatierecord op, maar dat verwijdert de offline verificatie niet. De bestandsnaam van elke gecodeerde kluisindex bevat een ingekorte hash van de kluissleutel, en AES-GCM geauthenticeerde decodering slaagt of mislukt ook voor een kandidaatsleutel. Apparaatbescherming en patroonsterkte blijven daarom onderdeel van het dreigingsmodel.

Geen verificatie Oracle

Er is geen aparte wachtwoord-hash nodig om een gok te testen aan de hand van geverifieerde cijfertekst. Vaultaire's AES-GCM tags zorgen voor een betrouwbaar succes- of mislukkingsresultaat, en de indexbestandsnaam biedt een goedkopere voorafgaande controle. De verdediging is de kosten en onvoorspelbaarheid van het diploma plus iOS bescherming van lokaal materiaal, niet de afwezigheid van een verificatie-orakel.

Een sterk patroon kiezen

De codering is slechts zo sterk als het patroon dat u kiest. Hier leest u hoe u uw beveiliging met minimale inspanning kunt maximaliseren.

Wat een patroon sterk maakt

  • Gebruik meer punten.Verbind minimaal 8 van de 25 beschikbare punten. Elke extra punt vermenigvuldigt het aantal mogelijke patronen.
  • Kruis je eigen pad.Patronen die teruglopen, punten overslaan of onverwacht van richting veranderen, zijn veel moeilijker te reproduceren vanuit het geheugen of vanuit observatie.
  • Vermijd opvallende vormen.Letters (L, Z, S), eenvoudige geometrische vormen (vierkanten, driehoeken) en rechte lijnen zijn de eerste dingen die een aanvaller zou proberen.
  • Gebruik het volledige raster.Patronen die in één hoek of langs één rand blijven, verspillen de beschikbare entropie. Verspreid.

Wat u moet vermijden

  • Patronen met minimale lengte. Vaultaire vereist minimaal zes punten en twee richtingsveranderingen, maar als je aan het minimum voldoet, wordt een pad niet onvoorspelbaar. Gebruik meer van het raster als u het resultaat betrouwbaar kunt onthouden.
  • Eenvoudige geometrische vormen.Een L-vorm, een zigzaglijn of een rechte diagonale lijn zijn de patroonequivalenten van “password123.”
  • Elke keer vanuit dezelfde hoek beginnen.Uit onderzoek naar Android-vergrendelingspatronen blijkt dat de meeste mensen beginnen vanaf de stip linksboven. Aanvallers weten dit.

De goede plek

Een patroon dat 8–12 punten met ten minste twee richtingsveranderingen verbindt, biedt uitstekende beveiliging en is toch gemakkelijk te onthouden dankzij het spiergeheugen. U hoeft het niet te onthouden zoals een wachtwoord, uw hand onthoudt de beweging, op dezelfde manier waarop hij onthoudt hoe u uw handtekening moet schrijven.

Waarom u zich veilig moet voelen

Patroonversleuteling in Vaultaire is niet alleen een mooier pincodepad. Het gebaar wordt verwerkt door een echte sleutelafleidingsfunctie en moet geverifieerde gecodeerde gegevens ontgrendelen. De kracht hangt nog steeds af van het gebaar dat je kiest, dus Vaultaire combineert het grotere raster met een high PBKDF2 werkfactor in plaats van de uitvoerlengte van 256 bits te presenteren als 256 bits mensgeheime entropie.

Uw patroon en lokale kluissleutel worden niet naar Vaultaire verzonden. Als optionele back-up is ingeschakeld, wordt een afzonderlijke, op een patroon gebaseerde back-upsleutel gecodeerd CloudKit records en een gecodeerd herstelmanifest zorgen ervoor dat de herstelzin de kluis en back-upsleutels kan herstellen. Vaultaire beschikt niet over een providersleutel die deze records ontsleutelt, maar de apparaat- en herstelreferenties blijven veiligheidskritische onderdelen van het ontwerp.

U tekent een vorm. Die vorm beschermt je bestanden. De wiskunde doet de rest.

Veelgestelde vragen

Wat gebeurt er als ik mijn patroon vergeet?

Wanneer u een kluis maakt, genereert Vaultaire een aangepaste herstelzin met daarin 9 afzonderlijke woorden. PBKDF2 leidt uit die zin een herstelsleutel af, die een gecodeerde envelop opent met daarin de kluissleutel. Als u zowel het patroon als de herstelzin kwijtraakt, heeft Vaultaire geen sleutel aan de serverzijde die de kluis kan herstellen.

Is een patroon echt veiliger dan een wachtwoord?

Een goed gekozen patroon op een 5×5-raster kan de entropie van een typisch wachtwoord evenaren of overschrijden. Het voordeel is de bruikbaarheid: mensen kiezen zwakke wachtwoorden omdat sterke moeilijk te onthouden zijn. Patronen maken gebruik van het spiergeheugen, waardoor het natuurlijk wordt om een ​​complex geheugen te gebruiken zonder bewuste memorisatie.

Kan iemand een screenshot maken of mijn patroon opnemen?

Vaultaire past een best-effort screenshot-schild toe op het patroonraster en reageert wanneer iOS rapporteert actieve schermopname. iOS biedt geen openbare vlag voor beveiligd scherm voor willekeurige app-inhoud, dus deze controles verminderen het per ongeluk vastleggen, maar kunnen niet garanderen dat elke vastlegmethode wordt geblokkeerd.

Welk versleutelingsalgoritme gebruikt Vaultaire?

Vaultaire-gebruik PBKDF2-HMAC-SHA512 met 600.000 iteraties om een kluissleutel af te leiden uit het patroon en een apparaatbreed Keychain zout. Die kluissleutel codeert de kluisindex en omhult een willekeurige 256-bits hoofdsleutel. AES-256-GCM onder de hoofdsleutel worden de bestandsinhoud, headers, metagegevens en miniaturen beveiligd met geverifieerde codering.

Is het patroon opgeslagen op mijn apparaat?

Vaultaire slaat herstelinformatie op, inclusief het patroon, in een AES-GCM gecodeerde hersteldatabase in de iOS Keychain. Het patroon wordt niet naar Vaultaire verzonden of opgeslagen in platte tekstbestanden. Terwijl een kluis open is, zijn er sleutelbytes aanwezig in het app-proces; Door de vergrendeling wordt de actieve sleutelstatus van Vaultaire verwijderd.

Heeft Vaultaire toegang tot mijn gecodeerde bestanden?

Vaultaire beheert geen service die uw patroon, herstelzin, decoderingssleutels of leesbare kluisinhoud ontvangt. Gecodeerd iCloud back-ups blijven privé CloudKit database. Deze providergrens beschermt een open kluis niet tegen een gecompromitteerde app-build, besturingssysteem of apparaat.

Probeer Patroonversleuteling

Teken uw eerste patroon en ervaar hoe het voelt om uw bestanden echt beschermd te hebben.

Download Vaultaire Gratis