Articolo creato il: 12 Aprile 2023

GrapheneOS

L'ultimo aggiornamento di questo post è di 3 settimane fa

Difficoltà: ◉◉○○

GrapheneOS, caratteristiche principali

per Android
Open source
sistema operativo basato su Android incentrato su privacy e sicurezza
si possono abilitare i Play Services di Google e verranno utilizzati in maniera isolata e soprattutto senza privilegi da amministratore
si può installare solo ed esclusivamente sui Google Pixel
con i Play Services originali funzionano quasi tutte le applicazioni
audit di sicurezza

Come molti di voi avranno già intuito, mi capita spesso di creare articoli su progetti e alternative che mi son trovato a provare un po’ per necessità e un po’ per pura curiosità. L’articolo di oggi sarà leggermente differente dal solito, soprattutto nella forma, perché volevo parlarne in prima persona anziché in terza come viene fatto normalmente su questo blog.

Prima di iniziare dunque ecco un brevissimo resoconto dunque sul perché ho deciso di provare GrapheneOS. Per motivi personali ho la necessità, in questo periodo, di utilizzare alcune applicazione sul Play Store che non funzionano tramite microG e quindi mi era impossibile mettere sul mio “nuovo” Pixel 6 (ho comprato appositamente un Pixel per questo motivo) un sistema operativo come CalyxOS (qui la differenza tra CalyxOS e GrapheneOS a cura di PrivacyGuides), Murena o come iodé. Perché, come già detto nelle varie recensioni passate, l’implementazione di microG è decisamente interessante ma tante applicazioni non funzionano o comunque possono dare problemi.

GrapheneOS, il sistema operativo alternativo senza microG

Ho però letto in giro, tra cui anche sul nostro meraviglioso gruppo Telegram, che GrapheneOS è diverso perché non utilizza microG bensì ha trovato un sistema probabilmente ancora più interessante per implementare i servizi di Google. I Play Services vengono infatti implementati (opzionalmente, sia chiaro) originali, vengono isolati e gli vengono dati pochi, essenziali, permessi.

Cosa significa esattamente? La documentazione di GrapheneOS è decisamente ampia e potete leggerla in autonomia, tuttavia per farla in breve significa che non hanno i privilegi di amministratore come nei normali smartphone ma vengono utilizzati solo per far funzionare determinate applicazioni. In pratica, ci viene spiegato che i Google Play Services vengono implementati come una qualsiasi altra app e non come un’applicazione con privilegi da amministratore 1.

Dunque non può fare nulla di più di quello che farebbe una qualsiasi altra applicazione. Inoltre, e qui viene forse la parte ancora più bella, funziona solamente all’interno di un profilo. Potreste dunque installare i servizi di Google solamente su un profilo e usarlo solamente per le applicazioni che siete in qualche modo obbligati ad utilizzare.

Play Store o Aurora Store?

Per fare un esempio abbastanza pratico: se decidete di abilitare anche il Play Store non farà altro che installare le app, non avrà nessun altro privilegio. Anzi, a detta del suo sviluppatore se utilizzate GrapheneOS non c’è molta differenza tra l’utilizzare il Play Store originale con un account Google usa e getta e scaricare le applicazioni tramite Aurora Store 2. Questo perché Aurora Store utilizza un account Google condiviso con molti altri utenti per funzionare e il Play Store su GrapheneOS non avrà poteri di amministratore e se utilizzate un account usa e getta funzionerà, bene o male, proprio come Aurora Store.

Questa implementazione fa sì che le applicazioni che non funzionano su GrapheneOS, con i Play Services installati, si contano sulle dita di una mano 3. Esistono sempre delle incompatibilità, ovviamente e purtroppo, ma per esperienza personale posso dire che sono molte meno di quelle che ho avuto utilizzando CalyxOS con microG.

Audit

Prima di elencarvi alcune caratteristiche di GrapheneOS ci tengo a sottolinare che il loro codice ha ricevuto audit di sicurezza 4 ed è costantemente sotto osservazione. È capitato anche che il team di GrapheneOS scoprisse pericolosi bug di Android prima del team di Google 5.

Alcune caratteristiche di GrapheneOS

Ho scritto fino adesso solamente di una minuscola parte delle caratteristiche di GrapheneOS, è la parte diciamo più visiva nell’utilizzo quotidiano. GrapheneOS nasce da AOSP, cioè la versione base e Open source di Android, sulla quale sono state fatte modifiche tutte incentrate sulla sicurezza e sulla privacy. Riuscire a fare un elenco di tutto quello che è stato fatto è abbastanza lungo (e sicuramente noioso) e rimando a tutti gli interessati sul sito ufficiale di GrapheneOS.

Mi limiterò a riportare le caratteristiche più impattanti nell’utilizzo, anche se come già detto la maggior parte sono cose che non vedete nell’utilizzo normale di uno smartphone.

Alcune caratteristiche sono la possibilità di spegnere Bluetooth dopo alcuni minuti oppure ore di inutilizzo 6. I già citati Play Services isolati 7, il firewall integrato per togliere il permesso di accedere alla rete alle applicazioni 8 e la possibilità di disabilitare l’accesso a tutti i sensori non coperti normalmente da Android stock come l’accelerometro, la bussola e qualsiasi altro sensore presente 9.

Vengono automaticamente eliminati tutti gli EXIF all’interno degli screenshot fatti 10 e i numeri all’interno della maschera di PIN per lo sblocco dello smartphone vengono mescolati casualmente ogni volta 11. C’è una bella opzione per riavviare il dispositivo in caso non venisse sbloccato per più di ‘tot’ ore, i profili sono stati migliorati 12 e si possono impostare fino a 32 profili differenti 13.

Insieme a GrapheneOS troviamo anche alcune applicazioni come il Browser e il WebView Vanadium 14, GrapheneOS Camera 15, GrapheneOS PDF Viewer 16 e Auditor 17.

L’installazione

Veniamo ora ai metodi di utilizzo di GrapheneOS. Innanzitutto si può installare esclusivamente su un Google Pixel 18. La sua installazione è incredibilmente semplice e fatta attraverso il proprio Browser. Piccolo avvertimento, visto che l’ho provato di persona. Il cavo utilizzato per fare questa operazione è fondamentale. La cosa migliore e suggerita sarebbe quella di lavorare con USB-C -> USB-C e con il cavo originale. In alternativa potete provare un USB-A -> USB-C ma deve essere un cavo di qualità e deve anche essere attaccato alla porta principale del computer, non attraverso degli hub. Funziona su quasi tutti i sistemi operativi. Su Linux può essere necessaria un’operazione in più: Connecting the phone.

Metodi di utilizzo

Una volta seguite le semplici istruzioni e aver installato GrapheneOS sul proprio smartphone ci sono diversi modi, secondo me, di utilizzarlo. Proverò a dire quelli che più mi sembrano idonei e verosimili ma non date freno alla vostra fantasia!

  • Utilizzo base: questa è probabilmente la scelta migliore e quasi perfetta. GrapheneOS nasce senza nulla di nulla di Google, potete usare F-Droid e Aurora Store per installare le vostre applicazioni preferite. Se non avete la necessità di usare applicazioni vincolate ai servizi di Google (applicazioni bancarie, car sharing, giochi etc) allora questa è sicuramente la soluzione per voi.
  • Utilizzo con i Play Services attivi: nel caso aveste bisogno di utilizzare alcune applicazioni che necessitano dei servizi di Google potete semplicemente installarli come un’applicazione qualunque, come detto all’inizio. La trovate all’interno delle applicazioni preinstallabili insieme a Vanadium (il Browser) e le poche altre presenti. Attenzione che questo non vuol dire necessariamente installare le applicazioni usando il Play Store e quindi un account Google, per installare le applicazioni potete usare sempre Aurora o F-Droid. In questo caso i Google Play Services potete farli aggiornare direttamente dal Play Store senza rischi e anche se non avete un account Google attivo 19. Comunque qui ci sono più possibilità secondo me:
    • nel profilo principale, ovvero in quello che utilizzate principalmente. Quello generalmente definito come “Proprietario”,
    • in un altro profilo, questa è probabilmente la scelta migliore. Su GrapheneOS i profili sono stati migliorati e hanno alcune caratteristiche uniche e interessanti come, per esempio, la possibilità di notificare il profilo in utilizzo in caso di notifiche (perdonate il giro di parole) in un altro profilo. Vi basterà abilitare i multi utenti, crearne uno nuovo e installare lì i servizi di Google. Ora potete installare le applicazioni tramite Aurora o F-Droid e isolarle solo su questo profilo;
    • in un profilo di lavoro, diverso dal profilo utente e meno isolante (qui le differenze tra profilo di lavoro e profili utenti) ma più pratica nell’utilizzo quotidiano. Potete abilitarla e gestirla grazie all’applicazione Shelter e installare solo nel profilo di lavoro i servizi di Google e installare le applicazione grazie ad Aurora o F-Droid.
    • Utilizzo con i Play Services attivi e un account Google: è una sezione identica alla precedente solo che al posto di installare le applicazioni tramite Aurora Store lo farete tramite un account Google vero e proprio. Perfetto dunque se avete fatto degli acquisti e volete recuperarli o se alcune applicazioni non funzionano se installate da Aurora perché vogliono essere installate per forza dal Play Store. Come detto anche prima, secondo lo sviluppatore di GrapheneOS, utilizzando questo sistema operativo non ci sarà molta differenza tra Aurora Store e un Play Store con un account usa e getta e anonimo. Il resto direi che è una copia di quanto detto sopra.

Ora secondo me questi sono i principali metodi di utilizzo per GrapheneOS. Come avete potuto vedere ogni metodo aumenta i compromessi su cui si deve scendere ma ricordatevi che anche se fate il login con un qualsiasi account Google state sempre utilizzando GrapheneOS e dunque non è proprio la stessa cosa di farlo su un telefono Android stock.

Account Google nuovo in pochi minuti

Piccolo paragrafo a parte dedicato all’ultimo punto citato poco fa. Ma lo sapevate che su Android è possibile creare un account Google in 2 minuti e senza numero di telefono? Anche su GrapheneOS! Dunque se proprio dovete usare il Play Store (per esempio per far funzionare una Chromecast) potete andare in Password e account, premere su Aggiungi e poi su Google. Da qui potrete creare un account Google in pochissimi minuti, togliere tutto il tracciamento possibile e non dare alcun numero di telefono.

Incompatibilità e problemi

In base alla mia esperienza con l’ultimo punto, cioè installando applicazioni direttamente dal Play Store con un mio account Google farlocco, i problemi sono stati minori rispetto a quelli che avevo riscontrato con microG.

Ho riscontrato problemi con una sola applicazione di car sharing, ovvero Zity by Mobilize e mi è stato spiegato che è proprio l’applicazione a non supportare deliberatamente alcun sistema operativo differente indipendentemente dai servizi di Google o da dove viene installata.

Dopo qualche giorno di utilizzo ha iniziato a darmi problemi anche l’applicazione Nexi Pay ma da quando l’ho spostata sul profilo di lavoro senza i servizi di Google sembra andare senza problemi.

Inoltre ho notato che la geolocalizzazione è un po’ più lenta del normale, questo è dovuto al fatto che non vengono utilizzati i Play Services per la localizzare lo smartphone ma questa viene prima bypassata da GrapheneOS. Tuttavia potete migliorarla, nel caso abbiate problemi, dando l’accesso alla posizione ai Play Services (se li avete installati) anche se ovviamente questo non è del tutto consigliato (state dando direttamente la vostra posizione a Google).

Ho letto anche che non funzionano i pagamenti con NFC 20, io non li utilizzo dunque non ho potuto provarli in prima in persona. Se avete aggiornamenti su questo, fatemi sapere che aggiornerò l’articolo. So anche che nemmeno Android Auto funziona, anche questa non l’ho provata di persona.

La Chromecast, invece, funziona senza problemi loggandosi su Google. Non funziona bene invece lo screen casting, cioè lo streaming di tutto lo schermo, perché richiede privilegi che GrapheneOS non gli permette di avere 21.

In conclusione, ho riscontrato meno problemi rispetto alla soluzione microG dove non mi andavano alcune applicazioni come Enjoy che invece funziona su GrapheneOS. Non è tutto perfetto purtroppo perché alcune cose non funzionano al meglio o non funzionano proprio ma mi sembra un compromesso migliore e maggiore rispetto alle alternative con microG.

Differenze con LineageOS e altri sistemi operativi

Ma quindi quali sono le differenze tra LineageOS, CalyxOS e GrapheneOS? Eh, bella domanda. Se ascoltiamo il team di GrapheneOS la maggior parte di sistemi alternativi come LineageOS, CalyxOS ed /e/ integrano i servizi di Google con accesso da amministratore 22 e generalmente riducono la sicurezza dello smartphone 23. Diciamo però che loro sembrano avercela un po’ con CalyxOS e con chiunque sviluppi sistemi operativi su Android che non siano GrapheneOS, basta farsi un giro sul loro Twitter per pensarlo: 1 (Nitter), 2 (Nitter), 3 (Nitter). Difficile dunque farsi un’idea completa, sincera e non di parte.

L’idea che mi sono fatto io è che, come spesso accade, è importante valutare il proprio Threat Model ovvero stabilire da quale minaccia state cercando di difendervi. Penso che se siete un utente comune e il vostro obiettivo è solo avere una maggiore consapevolezza, dare meno potere a Google e alle agenzie pubblicitarie allora non avrete grossi problemi a utilizzare LineageOS e simili.

Se invece siete in qualche modo un bersaglio, degli attivisti (soprattutto in questo periodo storico), dei giornalisti o vivete in uno stato poco democratico allora forse è meglio valutare seriamente l’utilizzo di GrapheneOS.

Conclusioni e altri aneddoti su GrapheneOS

Termino l’articolo dicendo che GrapheneOS è sì un sistema operativo sicuramente di nicchia ma oltre ad aver avuto degli endorsement addirittura da parte di Snowden 24 e di recente anche da Android Authority, ha una grossa comunità dietro che gli ha permesso di raggiungere 5000$ al mese solamente su GitHub 25 e decine di migliaia di euro tramite criptovalute 26 con le quali pagano gli sviluppatori che lavorano per loro 27.

Hanno inoltre da poco aperto una fondazione non profit in Canada 28. Il fondatore di GrapheneOS, Daniel Micay, è infatti canadese e prima di GrapheneOS aveva collaborato a CopperheadOS, magari qualcuno di voi se la ricorda ancora.

Io per ora mi ci sto trovando bene, ho installato più cose del dovuto anche solo per provarle e fare alcuni test e capire quanto effettivamente è compatibile con le applicazioni. Non ho trovato grossi difetti di usabilità, quantomeno nel mio modo di utilizzare lo smartphone. Vedremo nelle prossime settimane se ci saranno aggiornamenti come sempre aggiornerò anche l’articolo.

Altre informazioni utili

Nel podcast italiano DigiDati c’è una puntata interamente dedicata a GrapheneOS dove vengono accennate anche altri sistemi operativi e viene fatta una generale infarinatura interessante soprattutto per chi si avvicina per la prima volta a questo mondo: 14 • GrapheneOS, uno smartphone Android senza lo strapotere di Google.

Abbiamo da poco scovato una bella e completa guida sull’utilizzo di GrapheneOS. È stata scritta da iAnonymous3000 e la trovate solo in inglese a questo indirizzo: https://github.com/iAnonymous3000/awesome-grapheneos-guide (Archive). Utilizzate il vostro programma preferito per tradurla in italiano se ne avete bisogno!

  1. Our compatibility layer has to be expanded on a case-by-case basis to teach Play services to work as a regular app without any of the invasive access and integration it expects.[]
  2. Daniel Micay su Aurora Store | Nitter[]
  3. Banking Applications Compatibility with GrapheneOS[]
  4. Is GrapheneOS audited?[]
  5. GrapheneOS su Twitter | Nitter[]
  6. Attack surface reduction[]
  7. Sandboxed Google Play[]
  8. Network permission toggle[]
  9. Sensors permission toggle[]
  10. Private screenshots[]
  11. PIN scrambling[]
  12. Improved user profiles[]
  13. More user profiles[]
  14. Vanadium: hardened WebView and default Browser[]
  15. GrapheneOS Camera[]
  16. GrapheneOS PDF Viewer[]
  17. Auditor app and attestation service[]
  18. Which devices are supported?[]
  19. Update play service[]
  20. Gpay alternatives for grapheneos?[]
  21. GrapheneOS su Twitter | Nitter[]
  22. Tweet di GrapheneOS | Nitter[]
  23. Tweet di GrapheneOS | Nitter[]
  24. Snowden su Twitter | Nitter[]
  25. 80% towards $6,000 per month goal[]
  26. GrapheneOS su Mastodon e forum di Graphene[]
  27. GrapheneOS su Twitter | Nitter[]
  28. GrapheneOS su Twitter | Nitter[]

Unisciti alle comunità




Se hai trovato errori nell'articolo puoi segnalarli cliccando qui, grazie!

Di skariko

Autore ed amministratore del progetto web Le Alternative