Uno dei sviluppatori della piattaforma JavaScript Deno, responsabile del catalogo dei pacchetti JSR.io, ha sottolineato la discriminazione nel motore del browser Chromium, relativa all'offerta di funzionalità aggiuntive ai servizi di Google non disponibili per altri siti senza l'installazione di un'estensione separata. Si parla dell'estensione integrata hangout_services, che è attiva di default e non appare negli elenchi delle estensioni funzionanti nel browser.
L'estensione fornisce funzionalità per ottenere informazioni sul carico della CPU e della GPU nel contesto di singole schede e dell'intero sistema, oltre al consumo di memoria nel sistema. L'API fornita dall'estensione è accessibile solo da sottodomini di "google.com". L'estensione è preinstallata in Chrome, varie build di Chromium, Microsoft Edge, Brave e probabilmente in altri browser basati sul motore Chromium.
L'offerta di un tale componente integrato è vista come concorrenza sleale e una violazione del principio di fornire un'API unica per tutti i siti, poiché grazie all'estensione i servizi di Google ottengono un vantaggio competitivo grazie alla possibilità di accedere a informazioni sul funzionamento del sistema non disponibili ai servizi di altre aziende. Ad esempio, il servizio Google Meet può adattare il suo funzionamento a seconda del carico sul sistema dell'utente, mentre in Zoom e altri servizi è necessaria l'installazione di un'estensione esterna con conferma delle autorizzazioni fornite (per i servizi di Google questa funzionalità è disponibile di default).
I dati forniti dall'estensione sono visualizzati nel servizio meet.google.com nel pannello "Troubleshooting". Per verificare la presenza dell'estensione hangout_services, è possibile cercare l'identificatore "nkeimhogjdpnpccoofpliimaahmaaome" nel file resources.pak fornito con Chrome, e per controllarne l'attivazione si deve aprire nel browser qualsiasi sito relativo a dominio google.com, e inviare una richiesta all'estensione dalla console degli strumenti per sviluppatori web: chrome.runtime.sendMessage(‘nkeimhogjdpnpccoofpliimaahmaaome’, {method: ‘cpu.getInfo’}, response => {console.log(JSON.stringify(response, null, 2));});
$ strings /opt/google/chrome/resources.pak| grep -A 10 «nkeimhogjdpnpccoofpliimaahmaaome» // Extension ID: nkeimhogjdpnpccoofpliimaahmaaome «key»: «….», «name»: «Google Hangouts», // Nota: Aggiorna sempre il numero di versione quando questo file è aggiornato. Chrome // attiva l'aggiornamento delle preferenze per l'estensione in caso di incremento della versione. «version»: «1.3.21», «manifest_version»: 2, «externally_connectable»: { «matches»: [ «https:/*google.com/*» ] }
Fonte: opennet.ru
