Hoe LifeVeil je bestanden beschermt

Deze pagina legt in gewone woorden uit wat LifeVeil doet, en ook wat het niet kan. We willen liever dat je de grenzen kent dan dat je vertrouwt op een belofte die te groot is.

In het kort

Van je patroon naar een sleutel

Je tekent een patroon op een raster van 5×5, zonder een punt twee keer te gebruiken. Een nieuw patroon dat je instelt, heeft minstens 6 punten nodig. LifeVeil maakt van het patroon een sleutel met Argon2id, uit libsodium (versie 1.0.20 op Android).

Beveiligingsniveaus

Elke kluis heeft één niveau. Je kiest het als je begint, en je kunt het later wijzigen via Instellingen > Kluis > Beveiligingsniveau, nadat je het patroon opnieuw hebt getekend.

Hoe bestanden worden versleuteld

Herstelzin

Vingerafdruk

Ontgrendelen met vingerafdruk is optioneel en werkt voor één kluis. Android controleert de vingerafdruk, niet LifeVeil; de app krijgt je vingerafdruk nooit. Een sleutel in de Android Keystore die alleen direct na een sterke biometrische controle werkt, ontgrendelt de hoofdsleutel. Als iemand een nieuwe vingerafdruk aan de telefoon toevoegt, werkt deze sleutel niet meer en moet je je patroon weer gebruiken.

Back-upbestand

Andere bescherming in de app

Raden afremmen

Omdat elk patroon een kluis opent, ziet raden eruit als het openen van veel lege kluizen. LifeVeil remt dit af zonder dat op het scherm te melden, en de wachttijd is voor elk patroon gelijk, ook voor het juiste.

AI en het raden van patronen

Grenzen die je moet kennen

Geen enkele app kan tegen alles beschermen. Dit zijn de eerlijke grenzen van LifeVeil.

Eenvoudige patronen zijn te raden

Korte of veelgebruikte vormen (een L, een Z, een rechte lijn) zijn te raden door je te bekijken, door vegen op het scherm, of in een paar pogingen. Echte patronen zijn veel makkelijker te raden dan het aantal mogelijke patronen doet denken. Gebruik meer punten en meer bochten. De app waarschuwt je voor heel eenvoudige patronen, en voordat hij een kluis bewaart waarvan het patroon minder dan 6 punten heeft.

Hoe lang raden kan duren

In de app duurt elke poging ongeveer een seconde, en herhaald raden maakt elke ontgrendeling trager, tot 5 minuten. Maar iemand die je back-upbestand heeft, of die de apparaatsalt van een geroote telefoon heeft gehaald, kan in plaats daarvan op een computer raden, zonder wachttijden. Argon2id remt dit af, maar een patroon heeft veel minder mogelijkheden dan een lang wachtwoord. Ruwe schattingen voor één krachtige grafische kaart (klasse RTX 4090) met ongeveer 1000 gokken per seconde:

Wat wordt geradenMogelijkhedenTijd, één grafische kaart
De 10.000 meest gebruikte patronen104ongeveer 10 seconden
Alle patronen met 6 punten1,28 × 108ongeveer 1,5 dag
Alle patronen met 7 punten2,42 × 109ongeveer 28 dagen
Alle patronen met 8 punten4,36 × 1010ongeveer 1,4 jaar
Herstelzin (92 bits)4,95 × 1027ongeveer 1,6 × 1017 jaar

Dit zijn schattingen, geen metingen. De aantallen patronen zijn bovengrenzen; echte patronen zijn er veel minder. Meer of snellere hardware maakt raden naar verhouding sneller. Een pincode op het hoogste niveau vermenigvuldigt deze getallen met maximaal 108.

Houd je back-upbestand privé

Het back-upbestand bevat de apparaatsalt niet, dus iedereen die het in handen krijgt, kan offline patronen proberen, zoals hierboven. Bewaar het alleen op een plek waar alleen jij bij kunt, zoals je eigen cloudaccount, en gebruik een langer patroon.

De herstelzin toont ook het patroon

Wie de herstelzin van een kluis heeft, kan die kluis openen, en de app toont dan het patroon en de pincode ervan. Gebruik je hetzelfde patroon ook ergens anders, zoals voor de schermvergrendeling van je telefoon, dan weet diegene dat ook. Bewaar het papier net zo veilig als de bestanden zelf.

Geroote of geïnfecteerde telefoons

Als iemand code kan uitvoeren met de rechten van de app (bijvoorbeeld op een geroote telefoon, of met malware die volledige controle heeft), kan die persoon de apparaatsalt ontgrendelen en offline raden. Terwijl de kluis open is, staan de sleutels in het geheugen en kunnen ze worden gelezen met roottoegang of een debugger. Sommige kopieën die in Android en Flutter worden gemaakt, en foto's die op het scherm staan, kunnen niet meteen uit het geheugen worden gewist.

Sommige informatie is zichtbaar

Het aantal versleutelde bestanden in de opslag van de app, hun globale grootte, en wanneer ze zijn gemaakt of gewijzigd, zijn niet verborgen. Ook het feit dat LifeVeil is geïnstalleerd niet.

De lege kluis misleidt alleen het scherm

Wie de bestanden van de app kan lezen (bijvoorbeeld op een geroote telefoon), kan de kluismappen tellen en zien dat deze instelling aan staat. De rem telt bewaarde en niet-bewaarde lege kluizen op dezelfde manier, dus de wachttijd zelf verraadt het verschil niet.

De vermomming verandert alleen het startscherm

Vingerafdruk is een zwakkere route

Ontgrendelen met vingerafdruk slaat Argon2id over. De sterkte hangt af van de vingerafdruksensor van je telefoon en de Android Keystore. Je kunt het op elk moment uitzetten in Instellingen.

Fotogegevens

Vergrendelen wacht tijdens systeemschermen

Zolang er een systeemscherm open is (toestemmingsverzoek, bevestiging van verwijderen, foto- of bestandskiezer, vingerafdrukvraag) en zolang er een import of export loopt, wacht de app met vergrendelen. Als je de app hebt verlaten, vergrendelt hij 2 seconden nadat dat klaar is.

Kluizen delen één apparaatsalt

Alle kluizen op een telefoon gebruiken dezelfde apparaatsalt. Als iemand die salt heeft, test één gok alle kluizen tegelijk. De moeite om één kluis aan te vallen blijft hetzelfde.

Wat geen enkele app kan tegenhouden

Iemand die meekijkt terwijl je je patroon tekent, of een camera die je scherm filmt.

Zonder zin kan niemand helpen

Als je het patroon vergeet van een kluis zonder herstelzin, of als je zowel het patroon als de zin kwijtraakt, kan niemand de bestanden ervan terughalen. Ook wij niet.