Quando as definições de Resist Fingerprinting estão ativadas nas Preferências Avançadas do Firefox (a página do Editor de Configuração about:config), pode ajudar a impedir que os websites o identifiquem de forma única, limitando a informação que podem recolher sobre o seu dispositivo. Embora isto possa ser ideal para quem dá prioridade à privacidade máxima, pode fazer com que alguns websites funcionem incorretamente. Para a maioria dos utilizadores, a Mozilla recomenda o modo de Proteção contra impressão digital nas Definições do Firefox para a Proteção Melhorada Contra a Monitorização, que bloqueia métodos de monitorização invasivos, mantendo a compatibilidade com a maioria dos websites.
As Extensões podem ativar a Resist Fingerprinting nas Preferências Avançadas, o que significa que pode estar ativa sem que a tenha ativado explicitamente. Pode gerir as definições de privacy.resistFingerprinting na página about:config.
Como saber se tem a Resist Fingerprinting ativada e, em caso afirmativo, como a desativar
Prossiga apenas se estiver à vontade com as definições avançadas e compreender os potenciais impactos.
- Digite about:config na barra de endereço e pressione EnterReturn.
Poderá aparecer uma página de aviso. Clique em para ir para a página de about:config. - Na barra de pesquisa no topo, pesquise por privacy.resistFingerprinting.
- Aparecerão várias preferências, mas verifique se privacy.resistFingerprinting ou privacy.resistFingerprinting.pbMode têm o valor true.
- Para saber se uma extensão está a controlar esta preferência, pode clicar para alterar o valor de volta para false e reiniciar o seu navegador. Depois de reiniciar, visite novamente a página about:config e veja se o valor voltou a ser true.
Se tiver voltado, terá de determinar qual das suas extensões está a controlar a preferência e desativá-la ou removê-la. Uma forma de o fazer é desativar as extensões instaladas uma a uma e reiniciar o navegador, verificando se a preferência é alterada ao reiniciar o Firefox. Tenha em atenção que, em casos raros, várias extensões podem estar a definir a preferência.
Como é que a Resist Fingerprinting pode danificar as páginas web?
A Resist Fingerprinting causa uma série de comportamentos estranhos que são comummente reportados como erros. Embora façam com que o website se comporte de forma estranha ou incorreta, estes comportamentos também significam que a Resist Fingerprinting está a funcionar como previsto, razão pela qual não recomendamos esta funcionalidade para o utilizador médio do Firefox.
Também é importante notar que se privacy.resistFingerprinting.pbMode estiver definida, mas privacy.resistFingerprinting não estiver – continuará a ter certos comportamentos da Resist Fingerprinting em janelas normais, porque não é possível separar estes comportamentos por janela. Isto inclui a utilização de cores fixas em vez das cores do sistema, entre outros.
Os comportamentos inesperados mais comuns incluem:
- As horas são apresentadas incorretamente ou, mais precisamente, são apresentadas no fuso horário errado.
- As imagens, especialmente as criadas como resultado do carregamento/edição de uma imagem no navegador, podem apresentar linhas aleatórias. Por exemplo:
- Certas animações ou jogos podem ser executados lentamente.
- As páginas podem não ser localizadas no idioma esperado e aparecer em inglês.
- Os utilizadores de macOS ou Linux podem receber informações ou transferências destinadas ao sistema operativo Windows.
- Os ícones, mapas ou imagens podem não ser renderizados em alta fidelidade e parecer desfocados ou com baixa resolução.
- Os comandos de jogos não funcionam.
- Tablets de escrita, canetas ou ecrãs táteis não funcionam como esperado.
- As preferências de visualização, como o Modo Claro/Escuro, Animações Reduzidas e Transparência Reduzida, não são respeitadas.
- Quando novas janelas são abertas, são fixadas a um tamanho específico.
- As cores nativas do sistema são substituídas e, em vez disso, são utilizados valores fixos.
O que é que a Resist Fingerprinting altera?
A Resist Fingerprinting altera muitos comportamentos do navegador – a lista abaixo pretende ser de natureza técnica e o mais abrangente possível, mas ainda pode omitir coisas por acidente.
- Quando um website extrai uma imagem de um elemento canvas, o valor devolvido é ruído aleatório para impedir a impressão digital do canvas. Isto pode manifestar-se como estranhas linhas verticais inesperadas que aparecem como artefactos gráficos.
- O fuso horário é reportado como UTC ou islandês.
- As operações matemáticas em JavaScript podem reportar valores ligeiramente diferentes do normal.
- A localidade é reportada como en-US.
- Os únicos tipos de letra disponíveis para serem utilizados pelos websites são os pré-instalados no Sistema Operativo. Isto também exclui os tipos de letra em pacotes de idiomas.
- Várias propriedades do objeto do navegador são fixas, incluindo o valor de simultaneidade do hardware, a versão da aplicação e o ID da compilação. A versão do Agente do Utilizador é reportada como sendo a versão principal (por exemplo, 119.0 em vez de 119.1).
- Sem conceder qualquer permissão, apenas uma câmara e um microfone são reportados como dispositivos multimédia. Certos erros de dispositivo podem ser reportados como “não permitido” em vez de “não encontrado”. Os eventos de Alteração de Dispositivo não são reportados.
- Os rótulos dos fluxos de vídeo e áudio são fixados em “Câmara Interna” ou “Microfone Interno”.
- As Capacidades Multimédia são reportadas como sendo suportadas, suaves e não eficientes em termos de energia.
- O Modo de Orientação de Vídeo é um valor fixo.
- A taxa de amostragem preferida para Áudio é reportada como 44100, e a taxa de amostragem é reportada como 48000.
- A latência do Contexto de Áudio é fixa, e o número máximo de canais é reportado como 2.
- Nenhum comando de jogos é reportado como presente.
- O tipo de Ligação de Rede é reportado como “Desconhecido”.
- No macOS, a preferência de Suavização de Tipo de Letra do SO não é respeitada.
- Todos os Sensores de Dispositivo estão desativados.
- A taxa de fotogramas está bloqueada a 60fps.
- A precisão de todos os carimbos de data/hora, temporizadores e relógios reportados é reduzida para 16,67ms (para corresponder a 60fps).
- As dimensões da Janela Externa são reportadas como sendo as mesmas que as dimensões da janela interna.
- As propriedades window.screenX e screenY, bem como mozInnerScreenX e mozInnerScreenY, e as coordenadas do ecrã do evento são sempre reportadas como 0,0.
- O topo, a esquerda, a largura e a altura do ecrã, e o topo, a esquerda, a largura e a altura disponíveis do ecrã são todos reportados como sendo os mesmos que as dimensões internas da janela.
- A Profundidade de Píxeis do Ecrã é reportada como 24.
- A proporção de píxeis do dispositivo é reportada como 2.0.
- A Resolução CSS é reportada como o nível de zoom, em vez de ter em conta a verdadeira proporção de píxeis do dispositivo.
- A orientação do ecrã é definida como Paisagem, uma vez que o ângulo do ecrã é definido como 0. Os eventos OrientationChanged são suprimidos.
- Os atributos Raio, Rotação e Força dos Eventos de Toque são definidos como 0.
- O Máximo de Ponteiros de Toque para Eventos de Ponteiro é definido como 0.
- Vários atributos de Eventos de Ponteiro, como Inclinação e Pressão, são definidos com valores constantes.
- Todos os eventos de ponteiro são definidos para provir de um único dispositivo de apontamento primário.
- As capacidades do ponteiro são reportadas como Grosseiras (Android) ou Finas e Flutuantes (Computador).
- Os códigos de tecla para Eventos de Teclado são modificados para evitar a fuga da disposição do teclado.
- A API WebSpeech não reporta quaisquer vozes disponíveis.
- O CSS reportará o esquema de cores preferido como Claro.
- O CSS reportará o movimento reduzido preferido como Falso.
- O CSS reportará o contraste preferido como Sem Preferência.