134 lines
5.5 KiB
HTML
134 lines
5.5 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||
<title>Privacy Policy – Password Zebra</title>
|
||
<style>
|
||
body {
|
||
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
|
||
max-width: 720px;
|
||
margin: 40px auto;
|
||
padding: 0 24px 60px;
|
||
color: #1a1a1a;
|
||
line-height: 1.7;
|
||
}
|
||
h1 { font-size: 1.8rem; margin-bottom: 0.25em; }
|
||
h2 { font-size: 1.1rem; margin-top: 2em; color: #333; }
|
||
.meta { color: #666; font-size: 0.9rem; margin-bottom: 2.5em; }
|
||
.lang-divider {
|
||
border: none;
|
||
border-top: 2px solid #e0e0e0;
|
||
margin: 3em 0;
|
||
}
|
||
@media (prefers-color-scheme: dark) {
|
||
body { background: #121212; color: #e0e0e0; }
|
||
h2 { color: #bbb; }
|
||
.meta { color: #888; }
|
||
.lang-divider { border-color: #333; }
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
|
||
<h1>Privacy Policy</h1>
|
||
<p class="meta">Password Zebra | Last updated: 2026-03-06</p>
|
||
|
||
<h2>Overview</h2>
|
||
<p>
|
||
Password Zebra is a fully <strong>offline</strong> application.
|
||
It does not connect to the internet, does not collect any personal data,
|
||
and does not transmit any information to external servers or third parties.
|
||
</p>
|
||
|
||
<h2>Data stored on your device</h2>
|
||
<p>The following data is stored <em>locally on your device only</em>,
|
||
encrypted via the Android Keystore system:</p>
|
||
<ul>
|
||
<li><strong>Device secret</strong> — a random value used together with your master password
|
||
to derive deterministic passwords. It never leaves the device unless you explicitly
|
||
export it via the QR backup feature.</li>
|
||
<li><strong>Service names and rotation counters</strong> — the list of services you have
|
||
used and any password rotation counts. Stored in encrypted SharedPreferences.</li>
|
||
</ul>
|
||
<p>Your master password is <strong>never stored</strong>. It is held in memory only
|
||
for the duration of password generation and immediately wiped afterwards.</p>
|
||
|
||
<h2>Camera</h2>
|
||
<p>Camera access is requested solely to scan QR codes for the import feature.
|
||
No images are saved, transmitted, or processed outside the app.</p>
|
||
|
||
<h2>Biometric authentication</h2>
|
||
<p>Biometric authentication (fingerprint, face unlock, device PIN/pattern) is handled
|
||
entirely by the Android operating system via the BiometricPrompt API.
|
||
The app receives only a success/failure result and has no access to any biometric data.</p>
|
||
|
||
<h2>Permissions</h2>
|
||
<ul>
|
||
<li><code>USE_BIOMETRIC</code> / <code>USE_FINGERPRINT</code> — biometric lock</li>
|
||
<li><code>CAMERA</code> — QR code scanning (import feature)</li>
|
||
</ul>
|
||
<p>No network, location, contacts, or storage permissions are used.</p>
|
||
|
||
<h2>Third-party libraries</h2>
|
||
<p>Password Zebra uses only open-source libraries that run locally and perform no
|
||
network activity: Bouncy Castle (cryptography), ZXing (QR codes), Jetpack / AndroidX.</p>
|
||
|
||
<h2>Contact</h2>
|
||
<p>Questions or concerns: open an issue at
|
||
<a href="https://git.bugsy.cz/beval/password_zebra/issues">git.bugsy.cz/beval/password_zebra/issues</a>.
|
||
</p>
|
||
|
||
<hr class="lang-divider">
|
||
|
||
<h1>Zásady ochrany soukromí</h1>
|
||
<p class="meta">Password Zebra | Poslední aktualizace: 2026-03-06</p>
|
||
|
||
<h2>Přehled</h2>
|
||
<p>
|
||
Password Zebra je zcela <strong>offline</strong> aplikace.
|
||
Nepřipojuje se k internetu, neshromažďuje žádné osobní údaje
|
||
a nepřenáší žádné informace na externí servery ani třetím stranám.
|
||
</p>
|
||
|
||
<h2>Data uložená ve vašem zařízení</h2>
|
||
<p>Následující data jsou uložena <em>výhradně ve vašem zařízení</em>,
|
||
šifrována prostřednictvím systému Android Keystore:</p>
|
||
<ul>
|
||
<li><strong>Device secret</strong> — náhodná hodnota používaná spolu s vaším hlavním heslem
|
||
k odvozování deterministických hesel. Zařízení nikdy neopustí, pokud jej explicitně
|
||
neexportujete prostřednictvím funkce QR zálohy.</li>
|
||
<li><strong>Názvy služeb a čítače rotací</strong> — seznam použitých služeb a případné
|
||
čítače rotace hesel. Uloženo v šifrovaných SharedPreferences.</li>
|
||
</ul>
|
||
<p>Vaše hlavní heslo <strong>není nikdy uloženo</strong>. Je drženo v paměti pouze
|
||
po dobu generování hesla a poté okamžitě vymazáno.</p>
|
||
|
||
<h2>Kamera</h2>
|
||
<p>Přístup ke kameře je vyžadován výhradně ke skenování QR kódů pro funkci importu.
|
||
Žádné snímky nejsou ukládány, přenášeny ani zpracovávány mimo aplikaci.</p>
|
||
|
||
<h2>Biometrické ověření</h2>
|
||
<p>Biometrické ověření (otisk prstu, odemčení obličejem, PIN/gesto) je plně zajišťováno
|
||
operačním systémem Android prostřednictvím rozhraní BiometricPrompt API.
|
||
Aplikace obdrží pouze výsledek úspěch/selhání a nemá přístup k žádným biometrickým datům.</p>
|
||
|
||
<h2>Oprávnění</h2>
|
||
<ul>
|
||
<li><code>USE_BIOMETRIC</code> / <code>USE_FINGERPRINT</code> — biometrický zámek</li>
|
||
<li><code>CAMERA</code> — skenování QR kódů (funkce importu)</li>
|
||
</ul>
|
||
<p>Nejsou použita žádná síťová, polohová, kontaktní ani úložišční oprávnění.</p>
|
||
|
||
<h2>Open-source knihovny</h2>
|
||
<p>Password Zebra používá pouze open-source knihovny fungující lokálně bez síťové aktivity:
|
||
Bouncy Castle (kryptografie), ZXing (QR kódy), Jetpack / AndroidX.</p>
|
||
|
||
<h2>Kontakt</h2>
|
||
<p>Dotazy nebo připomínky: otevřete issue na
|
||
<a href="https://git.bugsy.cz/beval/password_zebra/issues">git.bugsy.cz/beval/password_zebra/issues</a>.
|
||
</p>
|
||
|
||
</body>
|
||
</html>
|