Deze pagina is machinaal vertaald en wordt nog nagekeken.Lees hem in het Engels

Beveiliging

Beveiliging

Hoe VaultWell beschermt wat je erin bewaart, in gewone woorden. Inclusief wat het niet kan beschermen en wat we nog niet hebben gedaan.

Van je pad naar versleutelde bestandenEen diagram van hoe een kluis wordt vergrendeld. Het pad dat je over de raat trekt, wordt opgerekt met Argon2id, met 64 MiB geheugen en twee rondes. Het resultaat wordt gecombineerd met een geheim dat in de beveiligingshardware van je telefoon zit: de Secure Enclave op iPhone, of de Android Keystore met StrongBox waar beschikbaar. Samen vormen ze de kluissleutel, die de hoofdsleutel van de kluis ontgrendelt. Items worden daarna versleuteld met AES-256-GCM in blokken van 1 MiB, elk afzonderlijk geauthenticeerd, en alleen op je telefoon opgeslagen. Dezelfde stappen staan hieronder uitgeschreven. Je padgetrokken over de raatacht of meer cellen Argon2id64 MiB geheugentwee rondes (t=2) Gecombineerdalleen op deze telefoon Kluissleutelontgrendelt de hoofdsleutel AES-256-GCMblokken van 1 MiBelk geauthenticeerd Versleutelde bestandenbewaard op je telefoonniets naar ons gestuurd HardwaregeheimSecure Enclave op iPhoneStrongBox op Android, waar beschikbaar Van je pad naar versleutelde bestandenEen diagram van hoe een kluis wordt vergrendeld. Het pad dat je over de raat trekt, wordt opgerekt met Argon2id, met 64 MiB geheugen en twee rondes. Het resultaat wordt gecombineerd met een geheim dat in de beveiligingshardware van je telefoon zit: de Secure Enclave op iPhone, of de Android Keystore met StrongBox waar beschikbaar. Samen vormen ze de kluissleutel, die de hoofdsleutel van de kluis ontgrendelt. Items worden daarna versleuteld met AES-256-GCM in blokken van 1 MiB, elk afzonderlijk geauthenticeerd, en alleen op je telefoon opgeslagen. Dezelfde stappen staan hieronder uitgeschreven. Je padgetrokken over de raatacht of meer cellen Argon2id64 MiB geheugentwee rondes (t=2) Gecombineerdalleen op deze telefoon HardwaregeheimSecure Enclave op iPhoneStrongBox op Android, waar beschikbaar Kluissleutelontgrendelt de hoofdsleutel AES-256-GCMblokken van 1 MiBelk geauthenticeerd Versleutelde bestandenbewaard op je telefoonniets naar ons gestuurd
Elke stap gebeurt op je telefoon. Er is geen account en geen server. Lees de stappen in woorden

Tegen wie en wat we beschermen

VaultWell is gemaakt voor alledaagse privacyrisico’s, het soort waar de meeste mensen echt mee te maken krijgen.

  • Iemand pakt je telefoon. Een partner, een familielid, een collega of een vreemde die hem vindt. Zonder het pad blijft de kluis dicht, ook als ze de toegangscode van je telefoon kennen.
  • Iemand zet je onder druk om te ontgrendelen. Je kunt een gewone kluis of de lokkluis openen. Niets op het scherm laat zien dat er andere kluizen zijn.
  • Iemand kopieert de bestanden van de app. De sleutels zijn gekoppeld aan de beveiligingshardware van je telefoon, dus raadpogingen kunnen niet op een snelle computer worden uitgevoerd.
  • Iemand knoeit met opgeslagen bestanden. Elk versleuteld stuk wordt geverifieerd, dus wijzigingen worden opgemerkt in plaats van getoond.

Het is niet gemaakt om stand te houden tegen een aanvaller die al malware op je telefoon heeft gezet, die meekijkt terwijl je je pad trekt, of die je kan dwingen al je paden prijs te geven. Geen enkele app kan dat beloven.

Hoe de versleuteling werkt

  1. Pad. De volgorde van de cellen die je op de raat trekt (minstens acht, zonder herhaling) vormt de invoer.
  2. Argon2id. Die invoer wordt versterkt met Argon2id met 64 MiB geheugen en twee rondes, zodat elke raadpoging echt tijd en geheugen kost.
  3. Hardwarekoppeling. Het resultaat wordt gecombineerd met een geheim in de Secure Enclave op iPhone, of in de Android Keystore (StrongBox waar beschikbaar). Dit geheim kan niet worden geëxporteerd, dus de sleutel kan alleen op je telefoon worden berekend.
  4. Hoofdsleutel. Elke kluis heeft een willekeurige hoofdsleutel van 256 bits, die alleen versleuteld wordt opgeslagen onder de sleutel uit je pad.
  5. AES-GCM in blokken. Onderdelen worden versleuteld met AES-256-GCM in blokken van 1 MiB. Elk blok is gebonden aan zijn onderdeel en positie, dus blokken kunnen niet worden verwisseld, omgewisseld van volgorde of afgekapt zonder dat het misgaat. Miniaturen, de lijst met onderdelen en de instellingen worden ook versleuteld.

Er is geen account en geen server. Je sleutels verlaten je telefoon nooit, en niets in je kluizen wordt naar ons gestuurd.

Verborgen kluizen, en wat een onderzoeker nog kan zien

Op het scherm verraadt VaultWell niets. Het vergrendelscherm is alleen de raat. Een fout pad en een pad dat nooit is gebruikt zien er hetzelfde uit. Er is geen lijst of telling van kluizen. Het instellingenbestand van elke kluis wordt aangevuld tot dezelfde grootte, zodat de opties van een kluis, ook of het de lokkluis is, van buitenaf niet te zien zijn.

Over wat er op de opslag staat willen we precies zijn. Elke kluis wordt bewaard als een eigen versleutelde map. Iemand met volledige toegang tot de ruwe bestanden van de app, bijvoorbeeld via een forensische extractie van een ontgrendelde telefoon, zou die mappen kunnen tellen, en ook hoeveel kluizen een herstelzin hebben. Openen of inzien kan diegene ze niet, maar wel afleiden dat er meer dan één kluis is. We willen dit verminderen, bijvoorbeeld met lokitems, en we publiceren de details zodra dat verandert.

Op het scherm

Verraadt niets

  • Alleen de raat is te zien
  • Geen lijst of aantal kluizen
  • Een verkeerd pad lijkt op een nooit gebruikt pad

In de ruwe bestanden, met volledige toegang

Zou te tellen zijn

  • Hoeveel versleutelde kluismappen er zijn
  • Hoeveel kluizen een herstelzin hebben

Blijft onleesbaar

  • Wat een kluis bevat
  • Welke kluis de lokkluis is

De lokkluis

Als de lokkluis met zijn pad wordt geopend, verwijdert VaultWell eerst het sleutelbestand van elke andere kluis en hun herstelbestanden, en daarna de mappen van die kluizen. Zonder de sleutelbestanden kunnen de gegevens niet worden ontsleuteld. Daarna opent de lokkluis zoals elke andere, zonder melding op het scherm.

  • Het wissen is permanent op de telefoon. Ongedaan maken kan niet.
  • De lokkluis openen met zijn herstelzin wist niets.
  • Reservekopieën en deelkopieën die ergens anders staan, worden niet geraakt.

Reservekopieën en deelkopieën

Reservekopieën (.vwbackup) moeten op een nieuwe telefoon opengaan, dus ze kunnen de hardware van je oude telefoon niet gebruiken. In plaats daarvan vergrendelt elke reservekopie de hoofdsleutel van de kluis met Argon2id op basis van je pad (en zin, als die is ingesteld) met een nieuwe willekeurige salt. Onderdelen blijven versleuteld zoals ze zijn opgeslagen. De veiligheid van een reservekopie hangt af van de sterkte van je pad of zin, dus houd reservekopiebestanden privé.

Deelkopieën (.vwshare) gebruiken een nieuwe willekeurige sleutel, vergrendeld met een aparte deelzin. Onderdelen worden daarin opnieuw versleuteld, zodat de ontvanger de sleutel van je kluis nooit te weten komt. Limieten op het aantal keer openen, de vervaldatum en het opslaan buiten de kopie worden door de app afgedwongen, niet door cryptografie, omdat er geen server is. Iemand met de zin die vastberaden is, kan nog steeds kopiëren wat hij ziet.

Wat we niet beweren

  • Nog geen afgeronde audit. Een onafhankelijke beveiligingsaudit staat gepland vóór de lancering. We publiceren de uitkomst.
  • Niet onzichtbaar. De app is zichtbaar op je telefoon, ook met een vermommingssymbool, en forensisch onderzoek kan laten zien dat er meerdere kluizen zijn.
  • Niet bestand tegen schermafbeeldingen op iPhone. VaultWell beschermt tegen schermopnames, maar iOS laat apps geen schermafbeeldingen blokkeren; VaultWell laat je weten wanneer er een wordt gemaakt. Geen enkele app kan een foto van het scherm tegenhouden.
  • Geen herstel door ons. Als je je pad en zin kwijtraakt, kunnen we je niet helpen. Wij hebben ze nooit.

Een probleem melden

Vind je een beveiligingsprobleem, dan horen we het graag eerst privé, en we noemen je naam als je dat wilt. Contactgegevens volgen vóór de lancering.