A impressão digital do navegador é a recolha sistemática de informação a partir de um dispositivo remoto com o objetivo de identificar e rastrear de forma única o seu utilizador. A principal motivação por detrás desta técnica é a monetização dos dados dos utilizadores, muitas vezes para campanhas publicitárias personalizadas e perfis de utilizadores.
Ao contrário dos métodos tradicionais de rastreamento como os cookies, a impressão digital funciona silenciosamente e pode ser muito mais persistente. Foi descrito na literatura técnica como um "monstro sem bolachas" porque não requer armazenar ficheiros no dispositivo do utilizador e é completamente transparente para o utilizador.
| Características | Cookies Identificação de Impressões Digitais no Navegador | |
|---|---|---|
| Armazenamento | Armazena pequenos ficheiros no computador do utilizador. | Nenhum ficheiro é armazenado no computador do utilizador ("sem cookies"). |
| Visibilidade e Controlo do Utilizador | Pode ser visualizado, bloqueado ou eliminado pelo utilizador através das definições do navegador. | Funciona de forma transparente. O utilizador não tem forma direta de saber que está a acontecer ou de o prevenir. |
| Persistência | Pode ser removido pelo utilizador. | Altamente persistente. Pode até ser usado para restaurar cookies que um utilizador apagou, voltando a ligar a sua identidade. |
Agora que compreendemos o que é a impressão digital do navegador e porque é mais persistente do que os cookies, vamos explorar as técnicas específicas usadas para criar estes identificadores digitais únicos.
A singularidade de uma impressão digital advém da combinação de muitas informações diferentes, algumas das quais são características simples do navegador, enquanto outras são altamente avançadas e sofisticadas.
Estas são características básicas que podem ser recolhidas através de um navegador para começar a construir um perfil. Cada informação, quando combinada com outras, ajuda a restringir a identidade de um dispositivo.
Estes métodos exploram tecnologias web modernas para extrair detalhes subtis, mas altamente identificativos, de um dispositivo.
Esta técnica utiliza o elemento HTML5 Canvas para desenhar uma imagem ou texto oculto. Como cada dispositivo a renderiza de forma ligeiramente diferente devido a variações na placa gráfica, drivers e sistema operativo, os dados da imagem resultantes podem ser convertidos num hash (uma sequência única de caracteres) que serve como um identificador poderoso.
Uma variação da impressão digital Canvas, este método gera imagens da mesma cadeia de texto várias vezes, cada uma com uma fonte diferente de uma lista pré-definida. As diferenças subtis de renderização entre as várias fontes permitem extrair métricas das imagens geradas, criando um identificador único para o navegador.
Esta técnica utiliza a API WebRTC (uma tecnologia para comunicação em tempo real) para descobrir o verdadeiro endereço IP local de um dispositivo, mesmo que esteja atrás de um router de Tradução de Endereços de Rede (NAT). A combinação deste IP local com o endereço IP público cria um fator de identificação muito estável e consistente.
Este método utiliza a API AudioContext para processar um sinal de áudio padrão gerado por computador (como uma onda senoidal). Não escuta o microfone do dispositivo. O sinal de áudio processado final apresenta variações subtis devido à pilha única de hardware e software do dispositivo. Esta saída é então hashada para criar um identificador único.
| Técnica | Como Funciona (Simplificado) | Porque é Eficaz para Identificação |
|---|---|---|
| Tela | Desenha uma imagem oculta e analisa as subtis diferenças de renderização entre dispositivos. | Variações no hardware gráfico, drivers e fontes tornam a imagem final única para cada dispositivo. |
| Fonte de Tela | Renderiza o mesmo texto com muitas fontes diferentes para medir inconsistências de renderização. | A combinação específica das fontes instaladas e a sua renderização cria um perfil altamente único. |
| WebRTC | Utiliza uma API de comunicação para revelar o endereço IP de rede local do dispositivo. | A combinação dos endereços IP locais e públicos pode identificar de forma única um dispositivo numa rede. |
| AudioContext | Processa um sinal de áudio padrão para detetar diferenças na pilha de áudio de um dispositivo. | O hardware e software de processamento de áudio em cada dispositivo produzem uma saída ligeiramente diferente. |
Embora cada uma destas técnicas reúna uma peça do puzzle, o verdadeiro poder da impressão digital vem da sua combinação; A secção seguinte explica como podemos medir cientificamente esse poder de identificação.
A forma científica de medir o nível de identificação única proporcionado por uma informação chama-se Entropia da Informação, que é medida em "bits". Maior entropia significa mais singularidade.
Uma analogia simples é um dado de seis faces. Um único lançamento tem seis resultados possíveis, fornecendo cerca de 2,58 bits de informação. Se um evento tivesse apenas dois resultados (como um lançamento de moeda), forneceria apenas 1 bit de informação. Quanto mais resultados possíveis, maior a entropia e mais "informação" o resultado fornece.
Quando um site recolhe uma característica do navegador, reduz a incerteza (entropia) sobre quem é. Estima-se que são necessários aproximadamente 33 bits de entropia para identificar de forma única uma única pessoa entre a população global de 7,5 mil milhões.
O projeto de investigação Panopticlick fornece um exemplo claro de como diferentes atributos do navegador contribuem com informações identificativas.
Exemplo: Bits de Informação Identificativa
| Bits Característicos do Navegador | de Significado de Informação Identificativa | para Identificação |
|---|---|---|
| Detalhes do Plugin do Navegador | 9,14 bits | Um valor mais elevado significa que esta característica é mais rara e contribui mais para o tornar único. |
| User Agent | 7,68 bits | Esta combinação de browser e sistema operativo é bastante incomum, acrescentando um poder de identificação significativo. |
| Hash da impressão digital da tela | 6,62 bits | A forma como o teu dispositivo renderiza os gráficos é um forte indicador. |
| Fontes de Sistema | 6,5 bits | A lista específica de fontes na sua máquina é altamente distinta. |
| Fuso Horário | 2,7 bits | Embora não seja único por si só, ajuda a restringir significativamente as possibilidades. |
No teste Panopticlick, a combinação destes e de outros valores resultou num total de pelo menos 20,37 bits de informação identificativa, tornando o navegador único entre mais de 1.357.000 outros testados. Um projeto semelhante, AmIUnique.org, também demonstra isto ao mostrar aos utilizadores como a sua impressão digital do navegador se compara a uma grande base de dados de outras, muitas vezes considerando-a única.
Compreendendo que a impressão digital é uma ciência mensurável para reduzir o anonimato, podemos agora avaliar estratégias para a proteger.
O princípio de defesa mais importante para os utilizadores é simples: quanto mais próximo estiver um dispositivo de uma configuração geral ou padrão, mais difícil é identificá-lo de forma única.
Muitas ferramentas comuns de privacidade não são eficazes contra impressões digitais avançadas.
Um estudo que analisou a eficiência de diferentes medidas de mitigação encontrou um claro vencedor.
Outras medidas potencialmente eficazes, embora por vezes impraticáveis, incluem:
Com estas estratégias defensivas em mente, vamos resumir os pontos mais críticos destas notas.