What does brave remove from the Chromium engine? Segui
(Nota che questa pagina è in fase di sviluppo e potrebbe essere aggiornata frequentemente)
Brave per desktop è basato sul progetto open-source Chromium. Aggiungiamo funzionalità sopra quelle esistenti e rimuoviamo anche funzionalità o pezzi di codice. Queste deviazioni che facciamo toccando il codice centrale di Chromium vengono effettuate tramite patching.
Chromium non è lo stesso di Google Chrome. Per alcune differenze, vedere https://chromium.googlesource.com/chromium/src/+/master/docs/chromium_browser_vs_google_chrome.md.
Come funziona
If you wanted to do an audit of the code, you would start with the brave-browser repository. Our wiki has instructions about what steps need to be done to perform a build after cloning the source
Il sorgente Chromium viene scaricato
L'utility gclient (parte degli strumenti di gestione del repository) scaricherà il codice sorgente ufficiale di Chromium. Il tag che viene scaricato è catturato nel nostro package.json(per esempio,70.0.3538.35). Tutto il codice sorgente verrà scaricato nella cartella ./src/
Il codice Brave viene scaricato
Come parte del processo di configurazione, scarichiamo anche il nostro codice. Il repository brave-core contiene il codice che rende il browser Brave. Il branch che deve essere clonato è contenuto anche in quel package.json. C'è anche un file DEPS in brave-core che recupera sub-dipendenze (come l'estensione brave-extension)
Vengono eseguiti degli hook
Dopo che il comando gclient sync viene eseguito e scarica tutto il codice (incluso brave-core), vengono eseguiti gli hook. Uno degli hook che viene eseguito applica le patch (che può vedere qui) che sono contenute in brave-core. Se desidera conoscere maggiori dettagli su COME funziona il patching, può consultare la nostra pagina wiki sul patching.
Quali funzionalità di Chromium vengono rimosse per motivi di privacy/sicurezza?
Servizi & Funzionalità che Disabilitiamo Completamente
- L'integrazione degli account Google ("GAIA") è disabilitata
- Tutte le funzionalità che inviano dati a Google vengono rimosse dalle impostazioni
- Il prefetching DNS è disabilitato
- Google URL Tracker di Chrome è disabilitato
- L'affidabilità del servizio di dominio è disabilitata
- Le estensioni in linea sono disabilitate
- La sincronizzazione in background è disabilitata
- L'attributo
pingdel collegamento ipertestuale è disabilitato - Disabilita API della Batteria
- Disabilita API WebBluetooth
- Il caricamento dei log di debug WebRTC è disabilitato
- Il caricamento delle impostazioni dopo il ripristino del profilo è disabilitato
- Il recupero delle impostazioni predefinite OEM dopo il ripristino del profilo è disabilitato
- Il caricamento dei log di crash è disabilitato
- Google Cloud Messaging è disabilitato
- Firebase Cloud Messaging è disabilitato
- Gli aggiornamenti del canale del client Push sono disabilitati
- Il tracker del tempo di rete è disabilitato
- La normalizzazione degli indirizzi assistita da Google è disabilitata
-
Funzionalità specifiche sono disabilitate all'avvio tramite CLI (cercare
disabled_features) - Rimuovi il repository dl.google.com dai pacchetti Linux
- Disabilita rapporti di metriche
- Disabilita i suggerimenti di navigazione degli URL simili
- Disabilita gli osservatori dei rapporti e API di segnalazione
- Disabilita il frammento di testo Scorri per
- Disabilita sensori di movimento
- Disabilita navigator.credentials
- Disabilita l'integrazione OTP di Android
- Disabilita SXG
- Disabilita NFC
- Disabilita WebBundles
- Disabilita gli indizi del client (lang)
- Disabilita Sockets Diretti/Raw
- Disabilita rilevazione di inattività
- Disabilita i trigger di notifica
- Disabilita File System API
- Disabilita Digital Goods API
- Disabilita Serial API
- Disabilita Apprendimento Federato di Coorti (FLoC)
- Disabilita Network Information API
Servizi che proxi attraverso i server di Brave
Google non riceve alcuna informazione su quale client sta eseguendo queste richieste (neanche il Suo indirizzo IP).
- Le richieste di SafeBrowsing sono proxate
- Le richieste di geolocalizzazione sono proxate
- Gli aggiornamenti del plugin sono proxati
- Le richieste di revoca dei certificati sono proxy
- Le richieste per i CRLSets sono proxyate
- Le richieste per gli aggiornamenti dei componenti sono proxyate
- Le richieste per i dizionari del correttore ortografico sono proxyate
- Le richieste negli strumenti per sviluppatori sono proxyate
Endpoint proxyati
https://dl.google.com/release2/chrome_component/*crl-set*https://*.gvt1.com/edgedl/release2/chrome_component/*https://*.gvt1.com/edgedl/chrome/dict/*.bdichttps://storage.googleapis.com/update-delta/hfnkpimlhhgieaddgfemjhofmfblmnib/.+crxdhttps://safebrowsing.googleapis.com/https://sb-ssl.google.com/https://safebrowsing.google.comhttps://ssl.gstatic.comhttps://gstatic.comhttps://update.googleapis.comhttps://chrome-devtools-frontend.appspot.comhttps://clients2.googleusercontent.comhttps://clients2.google.comhttps://clients4.google.comhttps://chrome-devtools-frontend.appspot.comhttps://accounts.google.comhttps://*.infura.iohttps://*.gvt1.com/edgel/chromewebstore/*/*https://*.gvt1.com/edgedl/release2/*/*http://dl.google.com/release2/*/*
Funzionalità e caratteristiche modificate
- I cookie hanno unadurata massimadi 7 giorni per i cookie impostati tramite JavaScript e di 6 mesi per i cookie impostati tramite HTTP
- I valori del referrer sono limitati a
strict-origin-when-cross-origine possono essere solo rafforzati dalla policy del referrer, non indeboliti. Inoltre, le richieste cross-origin da un servizio.onionhanno un'intestazione diReferervuota e un'intestazionenullOrigin, proprio come nel browser Tor. - Media Router (Chromecast) è disabilitato di default su Desktop. Può essere attivato cambiando l'interruttore in brave://settings.
- Le ricerche remote di protezione dai download omettono URL e nomi di file (https://github.com/brave/brave-core/pull/6763).
- Il report di StorageManager.estimate segnala un valore fisso (problema #11543)
- Molte caratteristiche hanno aggiunto la casualità o hanno generalizzato i valori come difesa contro il fingerprinting, inclusi:
- L'elenco dei nomi host con certificati CA bloccati viene sostituito con uno specifico per Braveuno specifico per Brave.
- Ripristino del requisito del gesto per l'accesso in scrittura asincrona negli appunti
Commenti
Alcuni dei punti sopra elencati (insieme ad altre questioni) sono stati precedentemente tracciati in https://github.com/brave/brave-browser/issues/13.
Potrebbe notare alcune richieste a domini di Google. Alcune di queste, comeclients*.google.com e update.googleapis.com sono necessarie per controllare gli aggiornamenti delle estensioni se ha installato estensioni.
Come Brave si confronta con ungoogled-chromium?
Descrizione di ungoogled-chromium, secondo la loro pagina GitHub:
ungoogled-chromium è Google Chromium, senza integrazione con Google. Include anche alcune modifiche per migliorare la privacy, il controllo e la trasparenza(quasi tutte richiedono l'attivazione manuale).
Abbiamo acquisito un problema per importare patch rilevanti dalungoogled-chromiumprogetto. Ilungoogled-chromiumprogetto ha similmente acquisito un problema dove menzionano l'importazione di patch da Brave.