Na tej stronie
Architektura Bezpieczeństwa
Specyfikacja techniczna protokołów szyfrowania po stronie klienta (CSE) i infrastruktury przechowywania bez zaufania.
Podstawy bezpieczeństwa
- Szyfrowanie end-to-end w przeglądarce — szyfrowane lokalnie przed przesłaniem, więc zwykły tekst nigdy nie opuszcza urządzenia.
- Klucz szyfrowania/odszyfrowania jest generowany w przeglądarce i osadzany w udostępnionym linku. PrivateNote.ai nigdy go nie otrzymuje ani nie przechowuje.
- Nasze serwery przechowują tylko zaszyfrowany szyfrogram i nie posiadają kluczy potrzebnych do odszyfrowania.
Szyfrowanie po stronie klienta
Notatki są szyfrowane lokalnie w pamięci przeglądarki przed transmisją za pomocą Web Crypto API. Serwer widzi tylko wynikowy blob szyfrogramu.
Obsługa kluczy
Standardowe prywatne notatki kodują surowy 256-bitowy klucz jako Base64url we fragmencie URL (#...). Notatki chronione hasłem opakowują klucz treści kluczami wyprowadzonymi z Argon2id.
Udostępniony link daje dostęp do notatki. Udostępniaj go tylko zamierzonym odbiorcom.
Kryptografia
Szyfrowanie symetryczne
AES-256-GCM
Szyfrowanie uwierzytelnione z 128-bitowymi tagami uwierzytelniania i dodatkowymi danymi uwierzytelnionymi (AAD) wiążącymi id notatki, wygaśnięcie i limity odczytów. 256-bitowe klucze pozostają praktyczną barierą nawet wobec kwantowego wyszukiwania kluczy w stylu Grovera.
12-bajtowy kryptograficzny IV
Unikalne wektory inicjalizacji zapobiegają rozpoznawaniu wzorców między notatkami.
Wyprowadzanie kluczy (KDF)
Argon2id (profil v2)
Notatki chronione hasłem używają Argon2id z parametrami wymagającymi pamięci (time=3, memory=64 MiB, parallelism=1), aby zwiększyć koszt brute-force, zwłaszcza wobec atakujących GPU/ASIC.
16-bajtowa sól kryptograficzna
Unikalna sól na notatkę chroni przed atakami tablic tęczowych.
Infrastruktura i bezpieczeństwo operacyjne
Przechowywanie pod jurysdykcją UE
Dane uwierzytelniania, zaszyfrowane notatki i zapisy operacyjne są przechowywane w infrastrukturze pod jurysdykcją UE.
Atomowe zarządzanie stanem
Cloudflare Durable Objects zapewniają atomową spójność logiki jednokrotnego odczytu, zapobiegając wyścigom i podwójnemu zużyciu.
Bez plików cookie śledzących
Bezstanowe API. Nigdy nie ładujemy pikseli reklamowych ani śledzących.
Weryfikacja Turnstile
Weryfikacja żądań tylko od ludzi zapobiega enumeracji notatek brute-force.
Łańcuch dostaw i integralność
Ponieważ szyfrowanie działa w przeglądarce, ładowany pakiet aplikacji jest częścią modelu zaufania. Opieramy się na statycznym hostingu, pinowanych kompilacjach CI i zabezpieczeniach przeglądarki — to nie gwarancja wobec skompromitowanego klienta, ale świadome ograniczenie tego, co może się wykonać.
Zabezpieczenia wdrożenia i przeglądarki
- Statyczne wdrożenia Cloudflare Pages z zasobami o hashowanej treści z CI
- HTTP Content Security Policy plus nagłówki bezpieczeństwa; listy dozwolonych tylko tam, gdzie wymagają tego funkcje (Turnstile, CDN AI na urządzeniu, WASM)
- Odtwarzalne instalacje z package-lock.json (npm ci w potokach wdrożenia)
- HTTPS z HSTS (preload) na krawędzi przez Cloudflare
- Bez skryptów reklamowych ani analityki; JS stron trzecich to głównie Turnstile i opcjonalne ładowania CDN AI, gdy używasz tych funkcji
Obsługa danych AI
AI jest opcjonalne przy szkicowaniu notatki — nigdy nie jest potrzebne, aby utworzyć bezpieczny link. Gdy z niego korzystasz, wybierz między Private AI na urządzeniu a opcjonalnym Cloud Assist; mają różne granice prywatności.
Private AI (na urządzeniu)
Prywatność
Działa w przeglądarce (WebLLM). Tekst szkicu nie jest wysyłany do PrivateNote.ai ani żadnej strony trzeciej do wnioskowania.
Po zapisaniu
Tekst jest przetwarzany lokalnie. Przesyłana jest tylko zaszyfrowana notatka — prompt AI nie trafia na nasze serwery.
Wymagania urządzenia
Gdy jest obsługiwane, ładujemy Qwen3 0.6B lub Gemma 2 2B na komputerach z WebGPU. Spodziewaj się do ~1 GB pamięci przeglądarki na wagi modelu i wystarczającej pamięci GPU, aby je uruchomić. Często nie działa na telefonach ani słabszych laptopach — użyj Cloud Assist albo pisz bez AI.
Pierwsza konfiguracja
Pierwsze użycie może pobrać skwantyzowane wagi (do ~1 GB) z publicznych CDN (np. Hugging Face lub jsDelivr) — osobno od przesyłania zaszyfrowanej notatki. Późniejsze sesje mogą ponownie użyć buforowanych wag.
Cloud Assist (hostowane)
Prywatność
Działa na Cloudflare Workers AI (Google Gemma 4 26B). Musisz wyrazić zgodę — szkic w zwykłym tekście opuszcza urządzenie. Nic nie jest wysyłane, dopóki nie potwierdzisz Cloud Assist.
Po zapisaniu
Przesyłana jest tylko zaszyfrowana notatka. Podczas szkicowania prompt przechodzi przez PrivateNote.ai Worker w zwykłym tekście — nie przechowujemy go, ale nasza krawędź obsługuje to żądanie, zanim Cloudflare je przetworzy.
Wymagania urządzenia
Każda nowoczesna przeglądarka z połączeniem sieciowym — bez GPU ani dużej lokalnej pamięci. Używane, gdy Private AI nie może działać na urządzeniu albo wybierzesz hostowane szkicowanie.
Pierwsza konfiguracja
Nie jest wymagana. Bez pobierania modelu, instalacji ani lokalnego cache — wyraź zgodę i wyślij szkic, gdy zostaniesz o to poproszony.
Model zagrożeń i ograniczenia
Przydatny model zagrożeń określa, co chronimy, przed kim, co zakładamy, które mechanizmy działają — i czego wyraźnie nie obejmujemy. Ochrony wcześniej na tej stronie mapują się na sekcję 4; sekcje 1–3 i 5 określają granice.
Co chronimy
Zwykły tekst notatki
Klucze szyfrowania
Gwarancje jednokrotnego odczytu
Wygaśnięcie i limity odczytów
Dane konta użytkownika
Dane uwierzytelniania
Założenia
- Urządzenie i przeglądarka użytkownika są zaufane przy szyfrowaniu lub odszyfrowywaniu.
- Przeglądarka poprawnie implementuje Web Crypto.
- TLS do naszego origin działa zgodnie z założeniem.
- Dostarczony kod aplikacji nie został złośliwie zmodyfikowany (zob. Łańcuch dostaw i integralność).
- Link notatki jest udostępniany tylko zamierzonym odbiorcom.
Co obejmujemy
- Kompromitacja serwera lub bazy (tylko szyfrogram w spoczynku)
- Złośliwi lub ciekawscy administratorzy uzyskujący dostęp do przechowywanych notatek
- Naruszenie u dostawcy pamięci lub infrastruktury
- Przechwycenie ruchu notatek w sieci (TLS plus szyfrogram)
- Automatyczna enumeracja notatek i nadużycia (Turnstile, limity tempa)
- Próby brute-force wobec notatek chronionych hasłem (Argon2id)
- Próby przejęcia konta (sesje HttpOnly, rotacja przy logowaniu, limity tempa, opcjonalne TOTP, step-up dla wrażliwych działań)
- Drugi fetch lub replay notatek jednokrotnego odczytu (atomowe zużycie przy pierwszym wyświetleniu)
Czego nie obejmujemy
- Złośliwym oprogramowaniem na urządzeniach nadawcy lub odbiorcy
- Złośliwymi rozszerzeniami przeglądarki
- Skompromitowanymi systemami operacyjnymi
- Oprogramowaniem do przechwytywania lub nagrywania ekranu
- Monitorowaniem schowka
- Udostępnianiem pełnego URL notatki (w tym klucza we fragmencie #) przez niezabezpieczone kanały lub nieuprawnionym osobom
- Kompromitacją dostarczonej aplikacji JavaScript
- Atakami phishingowymi na użytkowników
- Socjotechniką
- Wnioskowaniem Cloud Assist, gdy wyrazisz zgodę (przetwarzanie szkicu w zwykłym tekście przez stronę trzecią)
Integralność techniczna
Priorytetem jest jasność i mierzalne gwarancje bezpieczeństwa, a nie hasła marketingowe.