O que é a impressão digital do navegador?

Todos os navegadores enviam pequenos sinais, o tamanho do ecrã, os tipos de letra, a placa gráfica, o hardware de áudio, e os sites combinam esses sinais num ID único para o seu dispositivo. Mesmo com os cookies bloqueados, esse ID pode ser usado para o seguir entre sites.

Em resumo

A impressão digital é a forma como os sites criam um ID único do dispositivo sem usar cookies. Combine 30 sinais, ecrã, tipos de letra, GPU, áudio, idioma, fuso horário, plug-ins, e normalmente obtém algo suficientemente único para identificar um único utilizador em toda a web. É mais difícil de bloquear do que os cookies, porque os sinais são coisas reais de que os sites precisam (o tamanho do ecrã para apresentar a página corretamente, por exemplo), e removê-los por completo estraga a web.

Nesta página

  1. Que sinais são usados na impressão digital?
  2. Porque funciona mesmo quando bloqueia os cookies
  3. Como os navegadores se defendem
  4. O que pode realmente fazer

Que sinais são usados na impressão digital?

Os clássicos, por ordem de quão distintivos são:

  • Impressão digital por canvas: um site pede ao navegador que desenhe uma pequena imagem e depois lê os píxeis. Pequenas diferenças nos controladores gráficos, no modelo da GPU e no sistema operativo fazem a imagem sair ligeiramente diferente, o suficiente para que o resultado seja quase único por dispositivo.
  • Impressão digital por WebGL: semelhante ao canvas, mas usando APIs de gráficos 3D. Revela de forma bastante direta o modelo da sua GPU e a versão do controlador.
  • Impressão digital por áudio: o processamento de áudio do navegador tem pequenas diferenças numéricas de sistema para sistema. Um site pode tocar um som através da API (sem que o ouça) e ler a forma de onda resultante.
  • Enumeração de tipos de letra: os tipos de letra que tem instalados são um sinal surpreendentemente distintivo. Um computador típico tem 50 a 200 tipos de letra; é raro a lista exata repetir-se.
  • Tamanho do ecrã e densidade de píxeis
  • Cadeia User-Agent e Client Hints (o seu navegador, a versão, o sistema operativo)
  • Fuso horário, idioma, número de núcleos, memória disponível, API de bateria em alguns navegadores

Cada um destes sinais, isoladamente, é fraco. Combinados, chegam a uma unicidade da ordem de 1 em milhões.

Porque funciona mesmo quando bloqueia os cookies

Os cookies de terceiros estão prestes a desaparecer de todos os principais navegadores. A impressão digital é a alternativa para a qual a indústria publicitária já se virou. Os sinais que usa não são «dados de rastreamento» que pode recusar fornecer: são dados que o navegador tem de enviar para a página ser apresentada corretamente. O tamanho do ecrã importa porque as páginas têm de se adaptar a ele. Os tipos de letra importam porque a página escolhe o melhor para usar. O facto de a combinação ser única é um efeito secundário de ser preciso enviar esses dados.

Como os navegadores se defendem

Duas estratégias, ambas imperfeitas:

  1. Uniformidade (a abordagem do Tor): fazer com que todos os utilizadores do Tor pareçam idênticos. A mesma impressão digital, o mesmo tamanho de ecrã, os mesmos tipos de letra. A desvantagem é que a web deixa de funcionar bem de muitas pequenas formas: as páginas aparecem no tamanho «errado», os tipos de letra são substituídos, as aplicações web detetam mal o seu dispositivo.
  2. Aleatorização (a abordagem do Brave e do Dazr): acrescentar um pequeno ruído por domínio aos sinais. Duas visitas ao mesmo site veem resultados coerentes (para que os inícios de sessão funcionem); dois sites diferentes veem impressões digitais diferentes. É o compromisso que a maioria dos navegadores focados na privacidade para o dia a dia faz.

A defesa do Dazr está ativada por defeito e aplica-se às medições de canvas, WebGL, áudio e tipos de letra, com exceções por site para os raros sites que deixam de funcionar.

O que pode realmente fazer

Para reduzir a sua impressão digital, as opções são limitadas:

  • Use um navegador com proteção contra a impressão digital ativada por defeito (Dazr, Tor Browser, Brave com proteções em modo estrito)
  • Desative a API de bateria, os plug-ins e as funcionalidades desnecessárias do navegador nas definições avançadas
  • Não instale tipos de letra de que não precisa
  • Tenha presente que, mesmo desativando o JavaScript, a impressão digital passiva (cabeçalhos HTTP, IP, tamanho do ecrã através de CSS) continua intacta

Relacionado