Bromite è un fork di Chromium con supporto per il blocco degli annunci e una maggiore privacy.
Bromite è disponibile solo per Android Lollipop (v5.0, livello API 21) e superiori.
Per le domande frequenti vedi F.A.Q..
Per la documentazione vedi il wiki.
Obiettivi
Bromite mira a fornire un’esperienza di navigazione senza disordine, senza caratteristiche invasive per la privacy e con l’aggiunta di un veloce motore di ad-blocking.
Minime modifiche all’interfaccia utente sono applicate per aiutare a frenare l’idea di “browser come piattaforma pubblicitaria”.
Donare
Si prega di donare per sostenere lo sviluppo di Bromite e i costi del sistema di compilazione.
→Supporta lo sviluppo con una donazione:
Indirizzo donazioni BTC: bc1qmpyuqsvs3tz3uaysplmwjr33gg4rzu6cqweaq834ehc25vduxppqkrszel
Indirizzo donazioni ETH: 0xf47ff39223d828f99fec5ab53bd068c5c0522042
Caratteristiche
- filtri adblock personalizzabili tramite URL fornito dall’utente (vedi https://www.bromite.org/custom-filters)
- rimuovi click-tracking e AMP dai risultati di ricerca
- DNS-supporto over-HTTPS con qualsiasi endpoint IETF DoH valido
- modalità sempre in incognito
- disabilita tutte le prove di campo permanentemente
- disabilita la ricerca intelligente per default, permette la ricerca web dalla modalità incognito
- visibili sempre i cookie, javascript e le impostazioni del sito per gli annunci
- rimuove i blob binari di Play integration
- utilizza CFI su tutte le architetture tranne x86
- disabilita il media router e il remoting di default
- disabilita il caricamento dinamico dei moduli
- mostra gli avvisi per TLSv1.0/TLSv1.1
- abilita l’isolamento site-per-process per tutti i dispositivi con memoria > 1GB
- rimuove completamente la navigazione sicura e altre caratteristiche che non rispettano la privacy
- pagina di configurazione proxy con supporto PAC e liste proxy personalizzate
- impostazioni per disabilitare intenti personalizzati e cancellare la sessione in uscita
- flags per attivare le mitigazioni anti-fingerprinting per canvas, audio, client rects, webGL e sensor APIs (vedere la lista completa qui sotto per tutti i nuovi flags)
- uso di User-Agent congelato per nascondere il modello reale e la versione del browser
- patch di miglioramento della privacy da Iridium, Inox patchset, Brave e ungoogled-chromium
- patch di miglioramento della sicurezza dal progetto GrapheneOS
- disabilita lo scroll-to-text-fragment
- granularità referer ridotta
- blocca gli attacchi gateway via websockets
- uso 64-bit ABI per i processi webview
- fare tutte le richieste di favicon su richiesta (mitigazione dei supercookie)
- abilitare tutte le caratteristiche di isolamento della rete (
PartitionConnectionsByNetworkIsolationKey
,PartitionHttpServerPropertiesByNetworkIsolationKey
,SplitHostCacheByNetworkIsolationKey
,AppendFrameOriginToNetworkIsolationKey
,SplitCacheByNetworkIsolationKey
,UseRegistrableDomainInNetworkIsolationKey
,PartitionSSLSessionsByNetworkIsolationKey
,PartitionExpectCTStateByNetworkIsolationKey
,PartitionDomainReliabilityByNetworkIsolationKey
) - ignorare le politiche aziendali che non permettono il DNS sicuro
- chiedere il permesso di riprodurre media protetti
- disabilitare la scoperta ripetuta DIAL
Caratteristiche non correlate alla privacy
- importare/esportare segnalibri
- segnala tutte le schede dal menu raggruppa schede
- flag per permettere gli screenshot delle schede in incognito
- consente la riproduzione di video nelle schede in background e disabilita la pausa quando si cambia scheda
- tutti i codec inclusi (proprietario, aperto H.264 ecc.)
- supporto codecAV1
- decoder dav1d abilitato di default
- costruito con ottimizzazioni ufficiali della velocità
- aumenta il numero di corrispondenze autocomplete da 5 a 10
- consente di cambiare la posizione predefinita di archiviazione dei download
- non ignora la richiesta di salvataggio per utenti senza schede SD
- disabilita articoli e aumentare il numero di icone nella pagina della nuova scheda
- aggiungere un URL come segnalibro cancellerà il suo stato bloccato per le tessere NTP
- sostegno alla cronologia in modalità incognito
- visualizzare la fonte delle pagine
- personalizzazione del fuso orario
- impostazione della modalità desktopsticky
- disabilitare l’autoplay dei video per default, reintrodurre le impostazioni del sito
- personalizzazione dell’agente utente mobile/desktop
- preferenza di accessibilità per forzare l’interfaccia tablet
- utilizzare Alt+D per mettere a fuoco la barra degli indirizzi
Puoi controllare tutte le funzionalità/le modifiche alla privacy leggendo le patch e/o il CHANGELOG.
Flags
Flags che sono state ritirate da Chromium upstream ma sono ancora disponibili in Bromite.
#enable-horizontal-tab-switcher
#pull-to-refresh
#enable-search-ready-omnibox
#darken-websites-checkbox-in-themes-setting
-
#simplified-ntp
, abilitato per default -
#enable-text-fragment-anchor
, disabilitato per default #num-raster-threads
-
#enable-image-reader
, abilitato per default
Nuove flag:
-
#fingerprinting-canvas-image-data-noise
,#fingerprinting-client-rects-noise
e#fingerprinting-canvas-measuretext-noise
, abilitati di default -
#enable-incognito-snapshots-in-android-recents
, disabilitato di default #max-connections-per-host
#resume-background-video
#ipv6-probing
#disable-webgl
-
#enable-device-motion
e#enable-device-orientation
#show-legacy-tls-warnings
-
#save-data-header
, disabilitato di default -
#export-bookmarks-use-saf
, abilitato di default
Limitazioni alla privacy
Le caratteristiche di privacy di Bromite, incluse le mitigazioni anti-fingerprinting (che non sono complete), non sono da considerarsi utili per i giornalisti e le persone che vivono in paesi con limitazioni alla libertà, si prega di guardare Tor Browser in questi casi.
Release
Tutte le versioni costruite sono disponibili come release; il sito ufficiale punta a queste release e – quando si naviga via Android – evidenzierà automaticamente quella adatta al proprio dispositivo (o nessuna altrimenti).
Ogni tag corrisponde a un tag di rilascio di Chromium Stable.
Bromite è attualmente costruito per ARM, ARM64 e x86 e per le versioni 19 e 21 di Android SDK; viene fornito anche Bromite SystemWebView (SDK21+).Per ogni build di Bromite si può sempre trovare una corrispondente build di Chromium vanilla che viene usata per esempio per verificare quali problemi sono specifici di Bromite o meno.
Tutte le release ufficiali sono disponibili anche attraverso il repository ufficiale di terze parti F-Droid.
Integrità e autenticità
Puoi verificare l’integrità di un file APK scaricato da questo progetto con qualsiasi strumento sha256sum
compatibile scaricando il corrispondente file brm_X.Y.Z.sha256.txt
o chr_X.Y.Z.sha256.txt
, dove X.Y.Z è il numero della versione della release. Esempio:
$ sha256sum --check brm_68.0.3440.54.sha256.txtarm64_SystemWebView.apk: OKarm64_ChromePublic.apk: OKarm64_ChromeModernPublic.apk: OK
Puoi verificare l’autenticità, ad esempio che l’autore (csagan5) abbia rilasciato il file, usando gpg2:
$ gpg2 --quiet --verify brm_68.0.3440.54.sha256.txt.ascgpg: assuming signed data in 'brm_68.0.3440.54.sha256.txt'gpg: Signature made Sun 08 Jul 2018 04:22:52 PM CEST using RSA key ID D85DC0C5gpg: Good signature from "csagan5 <[email protected]>"
Puoi scaricare la chiave GnuPG pubblica di csagan5 da qui: csagan5.asc.
Come costruire
Il repository principale di Bromite contiene tag per ogni corrispondente release di Chromium (vedi https://chromium.googlesource.com/chromium/src.git).
Si prega di fare riferimento alla documentazione ufficiale di Chromium per iniziare a costruire Chromium; se si può costruire Chromium per Android, si può costruire Bromite.
Il tag della versione di Chromium usato come base per le patch è disponibile qui: RELEASE; questo corrisponde sempre al tag git per ogni release.Gli args GN usati per costruire Bromite sono disponibili qui: GN_ARGS.Le patch devono essere applicate secondo l’ordine specificato nel file bromite_patches_list.txt
(si può usare git am
).
Come costruire i filtri
Vedi documentazione upstream: https://github.com/chromium/chromium/blob/master/components/subresource_filter/FILTER_LIST_GENERATION.md
Bromite usa un file di filtri non indicizzato, che viene periodicamente pubblicato su https://github.com/bromite/filters
Contribuire
Si prega di inviare problemi seguendo il modello di problema; attenzione che GitHub non visualizza i modelli da mobile.
I patch sono benvenuti e accettati se corrispondono agli obiettivi del progetto.
Per qualsiasi discussione sull’uso o lo sviluppo si prega di usare GitHub Discussions: https://github.com/bromite/bromite/discussions
Crediti
- Progetto Chromium e sviluppatori
- Progetto Iridium per alcune patch
- ungoogled-chromium per alcune patch
- ungoogled-chromium-android per alcune patch
- GrapheneOS per alcune patch di sicurezza
- Inox per alcune patch (via ungoogled-chromium)
- Brave Browser per alcune patch
- Vadim Pleshkov per il logo di Bromite
Crediti per i filtri
- EasyList
- EasyPrivacy
- uBlock Origin
- Lista degli annunci e dei server di tracciamento di Peter Lowe
Gli URL delle liste utilizzate sono disponibili presso: https://github.com/bromite/filters/blob/master/lists.txt
Licenza
Le patch pubblicate come parte del progetto Bromite sono rilasciate sotto GNU GPL v3.