1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
+++
title = "HardenedPass"
date = 2026-11-05T00:00:00Z
description = "HardenedPass è un client Android per pass, il gestore di password standard di Unix: file cifrati con OpenPGP in un repository git, senza Google Play Services e senza telemetria."
draft = false
+++
{{< image src="/uppies/2026/11/hardenedpass-banner.png" alt="Il banner di HardenedPass: un lucchetto a forma di scudo attraversato da un ramo git, accanto al nome dell'app." />}}
Tengo le mie password in [pass](https://www.passwordstore.org/): semplici file, cifrati con
OpenPGP, in un repository git che ospito io. Sul telefono usavo Android Password Store, finché
non è stato archiviato a ottobre 2024. Il mio telefono usa GrapheneOS, volevo un client di cui
fidarmi lì, e non avevo voglia di andare a cercare un gestore di password con il suo cloud.
Così ne ho fatto un fork.
HardenedPass riparte dall'ultimo commit di upstream. L'obiettivo è semplice: funzionare in modo
impeccabile su GrapheneOS, senza Google Play Services e senza telemetria. Tutto il merito del
lavoro originale va agli autori di Android Password Store.
{{< actions url="https://github.com/danixland/HardenedPass/releases/latest" desc="Scarica l'ultima release" use="site" caption="HardenedPass non è su nessuno store. L'APK si scarica da GitHub." >}}
{{< latest-release repo="danixland/HardenedPass" label="Ultima release" >}}
## Cosa cambia rispetto a upstream
- Legge quello che scrive il GnuPG moderno. Upstream rifiutava i messaggi OCB che GnuPG 2.3 e
successivi producono di default.
- Rifiuta in fase di importazione le chiavi senza sottochiave di cifratura.
- Librerie crittografiche aggiornate, che risolvono vulnerabilità note.
- Le altre app non possono più raggiungere la schermata di decifratura con percorsi arbitrari.
- Niente report di crash, niente Google Play Services, un'unica build FOSS.
- Una nuova interfaccia, fatta con Jetpack Compose.
- Un application ID tutto suo: si installa accanto a upstream, non sopra.
## Da dove partire
- Non hai mai usato `pass`? Parti da [Concetti]({{< relref "/hardenedpass/getting-started/concepts" >}}).
- Hai già un archivio? [Installa]({{< relref "/hardenedpass/getting-started/install" >}}) l'app, poi [collegala]({{< relref "/hardenedpass/getting-started/connect" >}}).
{{< actions url="https://ko-fi.com/K6Y520C9I6" desc="Sostieni su Ko-fi" use="site" >}}
Il codice è su [GitHub](https://github.com/danixland/HardenedPass), sotto licenza GPL-3.0.
Bug e idee vanno sul [tracker](https://github.com/danixland/HardenedPass/issues).
|