Beveiliging Architectuur

Technische specificaties voor onze Client-Side Encryption (CSE)-protocollen en betrouwbare opslaginfrastructuur.

Basisprincipes van beveiliging

  • End-to-end-codering in uw browser: lokaal gecodeerd vóór het uploaden, zodat platte tekst uw apparaat nooit verlaat.
  • De encryptie-/decryptiesleutel wordt gegenereerd in uw browser en ingebed in de gedeelde link. PrivateNote.ai ontvangt of bewaart het nooit.
  • Onze servers slaan alleen gecodeerde cijfertekst op en beschikken niet over de sleutels die nodig zijn om deze te decoderen.

Versleuteling aan de clientzijde

Notities worden lokaal in het browsergeheugen gecodeerd voordat ze worden verzonden met behulp van de Web Crypto API. De server ziet alleen de resulterende cijfertekstblob.

Sleutelafhandeling

Standaard privénotities coderen de onbewerkte 256-bits sleutel als Base64url in het URL-fragment (#...). Met een wachtwoord beveiligde notities omsluiten de inhoudssleutel met van Argon2id afgeleide sleutels.

De gedeelde link geeft toegang tot de notitie. Deel deze alleen met beoogde ontvangers.

Cryptografie

Symmetrische codering

  • AES-256-GCM

    Geauthenticeerde encryptie met 128-bit auth-tags en aanvullende authenticated data (AAD) bindende notitie-ID, verval- en leeslimieten. 256-bits sleutels blijven een praktische barrière, zelfs bij het zoeken naar kwantumsleutels in Grover-stijl.

  • 12-byte cryptografische IV

    Unieke initialisatievectoren voorkomen patroonherkenning over meerdere notities.

Sleutelafleiding (KDF)

  • Argon2id (v2-profiel)

    Met een wachtwoord beveiligde notities gebruiken Argon2id met harde geheugenparameters (tijd=3, geheugen=64 MiB, parallellisme=1) om de brute-force-kosten te verhogen, vooral bij GPU/ASIC-aanvallers.

  • 16-byte cryptografisch zout

    Unieke salt per notitie biedt bescherming tegen rainbow-table-aanvallen.

Infrastructuur en operationele veiligheid

Opslag in EU-rechtsgebied

Authenticatiegegevens, gecodeerde notities en operationele gegevens worden opgeslagen in de infrastructuur van het EU-rechtsgebied.

Atoomstaatbeheer

Cloudflare Durable Objects bieden atomaire consistentie voor read-once-logica, waardoor racecondities en dubbel gebruik worden voorkomen.

Geen trackingcookies

Staatloze API. Er zijn nooit advertenties of trackingpixels geladen.

Turnstile-verificatie

Verificatie van verzoeken alleen door mensen voorkomt brute force-opsomming van notities.

Toeleveringsketen en integriteit

Omdat de encryptie in je browser draait, maakt de appbundel die je laadt deel uit van het vertrouwensmodel. We vertrouwen op statische hosting, vastgezette CI-builds en browserguardrails; geen garantie tegen een gecompromitteerde client, maar opzettelijke beperkingen op wat kan worden uitgevoerd.

Implementatie- en browserbeveiligingen
  • Static Cloudflare Pages wordt geïmplementeerd met inhoud-gehashte build-middelen van CI
  • HTTP-inhoudsbeveiligingsbeleid plus beveiligingsheaders; alleen toelatingslijsten waar functies dit vereisen (Turnstile, AI CDN's op het apparaat, WASM)
  • Reproduceerbare installaties vanaf package-lock.json (npm ci in implementatiepijplijnen)
  • HTTPS met HSTS (preload) aan de rand via Cloudflare
  • Geen advertentie- of analysescripts; JS van derden bestaat voornamelijk uit Turnstile en optionele AI CDN-ladingen wanneer u deze functies gebruikt

AI-gegevensverwerking

AI is optioneel bij het opstellen van een notitie; je hebt het nooit nodig om een ​​veilige link te maken. Wanneer u het gebruikt, kunt u kiezen tussen Private AI op het apparaat en de opt-in Cloud Assist; ze hebben verschillende privacygrenzen.

Privé-AI (op apparaat)

Privacy

Wordt uitgevoerd in uw browser (WebLLM). De concepttekst wordt niet verzonden naar PrivateNote.ai of een derde partij voor gevolgtrekking.

Nadat u hebt opgeslagen

Uw tekst wordt lokaal verwerkt. Alleen de gecodeerde notitie wordt geüpload. De AI-prompt reist niet naar onze servers.

Apparaatvereisten

Indien ondersteund, laden we Qwen3 0.6B of Gemma 2 2B op voor WebGPU geschikte desktops. Verwacht tot ~1 GB browseropslag voor modelgewichten en voldoende GPU-geheugen om ze uit te voeren. Vaak kan niet worden uitgevoerd op telefoons of zwakkere laptops: gebruik Cloud Assist of schrijf zonder AI.

Eerste keer instellen

Bij het eerste gebruik kunnen gekwantiseerde gewichten (tot ~1 GB) worden gedownload van openbare CDN's (bijvoorbeeld Hugging Face of jsDelivr), los van uw gecodeerde notitie-upload. Latere sessies kunnen in de cache opgeslagen gewichten hergebruiken.

Cloud Assist (gehost)

Privacy

Werkt op Cloudflare Workers AI (Meta Llama 3.2 3B Instruct). U moet zich aanmelden: het concept platte tekst verlaat uw apparaat. Er wordt niets verzonden totdat u Cloud Assist bevestigt.

Nadat u hebt opgeslagen

Alleen de gecodeerde notitie wordt geüpload. Tijdens het opstellen gaat uw prompt door de PrivateNote.ai Worker in platte tekst. We slaan deze niet op, maar onze edge handelt deze voor dat verzoek af voordat Cloudflare deze verwerkt.

Apparaatvereisten

Elke moderne browser met een netwerkverbinding:geen GPU of grote lokale opslag vereist. Wordt gebruikt wanneer Private AI niet op uw apparaat kan worden uitgevoerd of u kiest voor gehost opstellen.

Eerste keer instellen

Geen vereist. Geen modeldownload, installatiestap of lokale cache: meld u aan en stuur een concept wanneer daarom wordt gevraagd.

Bedreigingsmodel en beperkingen

Een nuttig dreigingsmodel geeft aan wat we beschermen, tegen wie we beschermen, wat we aannemen, welke controles van toepassing zijn – en wat we expliciet niet dekken. Beveiligingen eerder op deze pagina verwijzen naar sectie 4; secties 1–3 en 5 definiëren de grenzen.

Wat we beschermen

  • Let op platte tekst

  • Encryptiesleutels

  • Garanties voor één keer lezen

  • Verval- en leeslimieten

  • Gegevens van gebruikersaccount

  • Authenticatiegegevens

Aannames

  • Het apparaat en de browser van de gebruiker worden vertrouwd bij het coderen of decoderen.
  • De browser implementeert Web Crypto correct.
  • TLS naar onze oorsprong werkt zoals bedoeld.
  • Aangeleverde applicatiecode is niet kwaadwillig gewijzigd (zie Supply Chain & Integriteit).
  • De notitielink wordt alleen gedeeld met de beoogde ontvangers.

Wat we behandelen

  • Server- of databasecompromis (alleen cijfertekst in rust)
  • Kwaadwillende of nieuwsgierige beheerders die toegang hebben tot opgeslagen notities
  • Inbreuk op de opslag- of infrastructuurprovider
  • Netwerkonderschepping van notitieverkeer (TLS plus cijfertekst)
  • Geautomatiseerde enumeratie en misbruik van notities (Turnstile, snelheidslimieten)
  • Brute force-pogingen tegen met een wachtwoord beveiligde notities (Argon2id)
  • Pogingen tot accountovername (HttpOnly-sessies, roulatie bij inloggen, tarieflimieten, optionele TOTP, step-up voor gevoelige acties)
  • Tweede keer ophalen of opnieuw afspelen van eenmaal gelezen notities (atoomverbruik bij eerste weergave)

Wat wij niet dekken

  • Malware op apparaten van afzender of ontvanger
  • Schadelijke browserextensies
  • Gecompromitteerde besturingssystemen
  • Software voor schermopname of opname
  • Klembordbewaking
  • Het delen van de volledige notitie-URL (inclusief de #fragment-sleutel) via onveilige kanalen of met ongeautoriseerde partijen
  • Compromis van de geleverde JavaScript-applicatie
  • Phishing-aanvallen tegen gebruikers
  • Sociale techniek
  • Cloud Assist-gevolgtrekking wanneer u zich aanmeldt (verwerking door derden van concept-platte tekst)

Technische integriteit

Wij geven prioriteit aan duidelijkheid en meetbare veiligheidsgaranties boven marketingclaims.

Start een beveiligde sessie